Changeset 285592 in webkit
- Timestamp:
- Nov 10, 2021, 10:54:59 AM (5 years ago)
- Location:
- trunk
- Files:
-
- 2 added
- 5 edited
-
JSTests/ChangeLog (modified) (1 diff)
-
JSTests/stress/dont-in-by-id-when-index-2.js (added)
-
JSTests/stress/dont-in-by-id-when-index.js (added)
-
Source/JavaScriptCore/ChangeLog (modified) (1 diff)
-
Source/JavaScriptCore/dfg/DFGAbstractInterpreterInlines.h (modified) (1 diff)
-
Source/JavaScriptCore/dfg/DFGConstantFoldingPhase.cpp (modified) (1 diff)
-
Source/JavaScriptCore/dfg/DFGValidate.cpp (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/JSTests/ChangeLog
r285578 r285592 1 2021-11-10 Saam Barati <sbarati@apple.com> 2 3 in_by_val should not constant fold to in_by_id when the property is a property index 4 https://bugs.webkit.org/show_bug.cgi?id=232753 5 6 Reviewed by Yusuke Suzuki. 7 8 * stress/dont-in-by-id-when-index-2.js: Added. 9 (assert): 10 (main.v179): 11 (main.async v244): 12 (main): 13 * stress/dont-in-by-id-when-index.js: Added. 14 (assert): 15 (test): 16 1 17 2021-11-10 Xan Lopez <xan@igalia.com> 2 18 -
trunk/Source/JavaScriptCore/ChangeLog
r285538 r285592 1 2021-11-10 Saam Barati <sbarati@apple.com> 2 3 in_by_val should not constant fold to in_by_id when the property is a property index 4 https://bugs.webkit.org/show_bug.cgi?id=232753 5 6 Reviewed by Yusuke Suzuki. 7 8 * dfg/DFGAbstractInterpreterInlines.h: 9 (JSC::DFG::AbstractInterpreter<AbstractStateType>::executeEffects): 10 * dfg/DFGConstantFoldingPhase.cpp: 11 (JSC::DFG::ConstantFoldingPhase::foldConstants): 12 * dfg/DFGValidate.cpp: 13 1 14 2021-11-09 Commit Queue <commit-queue@webkit.org> 2 15 -
trunk/Source/JavaScriptCore/dfg/DFGAbstractInterpreterInlines.h
r285525 r285592 4249 4249 if (constant.isString()) { 4250 4250 JSString* string = asString(constant); 4251 if (CacheableIdentifier::isCacheableIdentifierCell(string) )4251 if (CacheableIdentifier::isCacheableIdentifierCell(string) && !parseIndex(CacheableIdentifier::createFromCell(string).uid())) 4252 4252 m_state.setShouldTryConstantFolding(true); 4253 4253 } -
trunk/Source/JavaScriptCore/dfg/DFGConstantFoldingPhase.cpp
r284726 r285592 682 682 if (constant.isString()) { 683 683 JSString* string = asString(constant); 684 if (CacheableIdentifier::isCacheableIdentifierCell(string) ) {684 if (CacheableIdentifier::isCacheableIdentifierCell(string) && !parseIndex(CacheableIdentifier::createFromCell(string).uid())) { 685 685 const StringImpl* impl = string->tryGetValueImpl(); 686 686 RELEASE_ASSERT(impl); -
trunk/Source/JavaScriptCore/dfg/DFGValidate.cpp
r284646 r285592 30 30 31 31 #include "ButterflyInlines.h" 32 #include "CacheableIdentifierInlines.h" 32 33 #include "DFGClobberize.h" 33 34 #include "DFGClobbersExitState.h" … … 234 235 if (!node->child1()) 235 236 VALIDATE((node), !node->child2()); 237 } 238 239 if (node->hasCacheableIdentifier()) { 240 auto* uid = node->cacheableIdentifier().uid(); 241 VALIDATE((node), !parseIndex(*uid)); 236 242 } 237 243
Note:
See TracChangeset
for help on using the changeset viewer.