Changeset 227738 in webkit for trunk/Source/JavaScriptCore/runtime/RegExp.cpp
- Timestamp:
- Jan 29, 2018, 9:47:30 AM (7 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/JavaScriptCore/runtime/RegExp.cpp
r227725 r227738 308 308 #if ENABLE(YARR_JIT) 309 309 if (!pattern.m_containsBackreferences && !pattern.containsUnsignedLengthPattern() && VM::canUseRegExpJIT()) { 310 Yarr::jitCompile(pattern, charSize, m_regExpJITCode);310 Yarr::jitCompile(pattern, charSize, vm, 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, Concurrency::MainThread,s, startOffset, ovector);329 return matchInline(vm, s, startOffset, ovector); 330 330 } 331 331 … … 338 338 return false; 339 339 340 position = match Inline(vm, Concurrency::Concurrent, s, startOffset, ovector);340 position = match(vm, 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, m_regExpJITCode, Yarr::MatchOnly);366 Yarr::jitCompile(pattern, charSize, vm, 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, Concurrency::MainThread,s, startOffset);385 return matchInline(vm, s, startOffset); 386 386 } 387 387 … … 393 393 return false; 394 394 395 result = match Inline(vm, Concurrency::Concurrent, s, startOffset);395 result = match(vm, s, startOffset); 396 396 return true; 397 397 } … … 408 408 #endif 409 409 m_regExpBytecode = nullptr; 410 }411 412 String RegExp::toSourceString() const413 {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);430 410 } 431 411
Note:
See TracChangeset
for help on using the changeset viewer.