Changeset 286249 in webkit
- Timestamp:
- Nov 29, 2021, 11:55:59 AM (5 years ago)
- Location:
- trunk
- Files:
-
- 1 added
- 4 edited
-
JSTests/ChangeLog (modified) (1 diff)
-
JSTests/stress/termination-error-in-private-name.js (added)
-
Source/JavaScriptCore/ChangeLog (modified) (1 diff)
-
Source/JavaScriptCore/jit/JITOperations.cpp (modified) (4 diffs)
-
Source/JavaScriptCore/llint/LLIntSlowPaths.cpp (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
trunk/JSTests/ChangeLog
r286228 r286249 1 2021-11-29 Yusuke Suzuki <ysuzuki@apple.com> 2 3 [JSC] private name operation should use RETURN_IF_EXCEPTION 4 https://bugs.webkit.org/show_bug.cgi?id=233577 5 rdar://85813869 6 7 Reviewed by Mark Lam. 8 9 * stress/termination-error-in-private-name.js: Added. 10 (C): 11 1 12 2021-11-29 Yusuke Suzuki <ysuzuki@apple.com> 2 13 -
trunk/Source/JavaScriptCore/ChangeLog
r286248 r286249 1 2021-11-29 Yusuke Suzuki <ysuzuki@apple.com> 2 3 [JSC] private name operation should use RETURN_IF_EXCEPTION 4 https://bugs.webkit.org/show_bug.cgi?id=233577 5 rdar://85813869 6 7 Reviewed by Mark Lam. 8 9 Because of TerminatedExecutionError, error can be thrown at any time. 10 11 * jit/JITOperations.cpp: 12 (JSC::JSC_DEFINE_JIT_OPERATION): 13 (JSC::putPrivateNameOptimize): 14 (JSC::putPrivateName): 15 * llint/LLIntSlowPaths.cpp: 16 (JSC::LLInt::LLINT_SLOW_PATH_DECL): 17 1 18 2021-11-29 Yusuke Suzuki <ysuzuki@apple.com> 2 19 -
trunk/Source/JavaScriptCore/jit/JITOperations.cpp
r285795 r286249 529 529 ASSERT(propertyValue.isSymbol()); 530 530 auto property = propertyValue.toPropertyKey(globalObject); 531 EXCEPTION_ASSERT(!scope.exception());531 RETURN_IF_EXCEPTION(scope, { }); 532 532 533 533 PropertySlot slot(baseObject, PropertySlot::InternalMethodType::HasProperty); … … 563 563 ASSERT(propertyValue.isSymbol()); 564 564 auto property = propertyValue.toPropertyKey(globalObject); 565 EXCEPTION_ASSERT(!scope.exception());565 RETURN_IF_EXCEPTION(scope, { }); 566 566 567 567 return JSValue::encode(jsBoolean(asObject(baseValue)->hasPrivateField(globalObject, property))); … … 1325 1325 1326 1326 auto propertyName = subscript.toPropertyKey(globalObject); 1327 EXCEPTION_ASSERT(!scope.exception());1327 RETURN_IF_EXCEPTION(scope, void()); 1328 1328 1329 1329 // Private fields can only be accessed within class lexical scope … … 1359 1359 1360 1360 auto propertyName = subscript.toPropertyKey(globalObject); 1361 EXCEPTION_ASSERT(!scope.exception());1361 RETURN_IF_EXCEPTION(scope, void()); 1362 1362 1363 1363 scope.release(); -
trunk/Source/JavaScriptCore/llint/LLIntSlowPaths.cpp
r285795 r286249 1469 1469 ASSERT(propertyValue.isSymbol()); 1470 1470 auto property = propertyValue.toPropertyKey(globalObject); 1471 EXCEPTION_ASSERT(!throwScope.exception());1471 LLINT_CHECK_EXCEPTION(); 1472 1472 1473 1473 LLINT_RETURN(jsBoolean(asObject(baseValue)->hasPrivateField(globalObject, property)));
Note:
See TracChangeset
for help on using the changeset viewer.