Changeset 227725 in webkit for trunk/Source/JavaScriptCore/runtime/RegExp.cpp
- Timestamp:
- Jan 29, 2018, 2:43:13 AM (7 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/JavaScriptCore/runtime/RegExp.cpp
r227469 r227725 308 308 #if ENABLE(YARR_JIT) 309 309 if (!pattern.m_containsBackreferences && !pattern.containsUnsignedLengthPattern() && VM::canUseRegExpJIT()) { 310 Yarr::jitCompile(pattern, charSize, vm,m_regExpJITCode);310 Yarr::jitCompile(pattern, charSize, m_regExpJITCode); 311 311 if (!m_regExpJITCode.failureReason()) { 312 312 m_state = JITCode; … … 327 327 int RegExp::match(VM& vm, const String& s, unsigned startOffset, Vector<int>& ovector) 328 328 { 329 return matchInline(vm, s, startOffset, ovector);329 return matchInline(vm, Concurrency::MainThread, s, startOffset, ovector); 330 330 } 331 331 … … 338 338 return false; 339 339 340 position = match (vm, s, startOffset, ovector);340 position = matchInline(vm, Concurrency::Concurrent, s, startOffset, ovector); 341 341 return true; 342 342 } … … 364 364 #if ENABLE(YARR_JIT) 365 365 if (!pattern.m_containsBackreferences && !pattern.containsUnsignedLengthPattern() && VM::canUseRegExpJIT()) { 366 Yarr::jitCompile(pattern, charSize, vm,m_regExpJITCode, Yarr::MatchOnly);366 Yarr::jitCompile(pattern, charSize, m_regExpJITCode, Yarr::MatchOnly); 367 367 if (!m_regExpJITCode.failureReason()) { 368 368 m_state = JITCode; … … 383 383 MatchResult RegExp::match(VM& vm, const String& s, unsigned startOffset) 384 384 { 385 return matchInline(vm, s, startOffset);385 return matchInline(vm, Concurrency::MainThread, s, startOffset); 386 386 } 387 387 … … 393 393 return false; 394 394 395 result = match (vm, s, startOffset);395 result = matchInline(vm, Concurrency::Concurrent, s, startOffset); 396 396 return true; 397 397 } … … 408 408 #endif 409 409 m_regExpBytecode = nullptr; 410 } 411 412 String RegExp::toSourceString() const 413 { 414 char postfix[8] = { '/', 0, 0, 0, 0, 0, 0, 0 }; 415 int index = 1; 416 if (global()) 417 postfix[index++] = 'g'; 418 if (ignoreCase()) 419 postfix[index++] = 'i'; 420 if (multiline()) 421 postfix[index++] = 'm'; 422 if (dotAll()) 423 postfix[index++] = 's'; 424 if (unicode()) 425 postfix[index++] = 'u'; 426 if (sticky()) 427 postfix[index++] = 'y'; 428 429 return makeString("/", pattern(), postfix); 410 430 } 411 431
Note:
See TracChangeset
for help on using the changeset viewer.