Bug 210023

Summary: [JSC] Implement JSMapIterator/JSSetIterator with JSInternalFieldObjectImpl
Product: WebKit Reporter: Yusuke Suzuki <ysuzuki>
Component: New BugsAssignee: Yusuke Suzuki <ysuzuki>
Status: RESOLVED FIXED    
Severity: Normal CC: alecflett, beidson, ews-watchlist, hi, joepeck, jsbell, keith_miller, mark.lam, msaboff, saam, tzagallo, webkit-bug-importer
Priority: P2 Keywords: InRadar
Version: WebKit Nightly Build   
Hardware: Unspecified   
OS: Unspecified   
Bug Depends on:    
Bug Blocks: 175454    
Attachments:
Description Flags
Patch
none
Patch
none
Patch
none
Patch
none
Patch
none
Patch
none
Patch keith_miller: review+

Yusuke Suzuki
Reported 2020-04-05 04:58:16 PDT
[JSC] Implement JSMapIterator with JSInternalFieldObjectImpl
Attachments
Patch (79.11 KB, patch)
2020-04-05 05:00 PDT, Yusuke Suzuki
no flags
Patch (77.42 KB, patch)
2020-04-05 05:13 PDT, Yusuke Suzuki
no flags
Patch (83.84 KB, patch)
2020-04-05 05:27 PDT, Yusuke Suzuki
no flags
Patch (117.95 KB, patch)
2020-04-05 22:41 PDT, Yusuke Suzuki
no flags
Patch (118.09 KB, patch)
2020-04-05 23:06 PDT, Yusuke Suzuki
no flags
Patch (123.67 KB, patch)
2020-04-06 00:48 PDT, Yusuke Suzuki
no flags
Patch (123.05 KB, patch)
2020-04-06 00:57 PDT, Yusuke Suzuki
keith_miller: review+
Yusuke Suzuki
Comment 1 2020-04-05 05:00:59 PDT
Yusuke Suzuki
Comment 2 2020-04-05 05:13:15 PDT
Yusuke Suzuki
Comment 3 2020-04-05 05:27:12 PDT
Yusuke Suzuki
Comment 4 2020-04-05 22:41:26 PDT
Yusuke Suzuki
Comment 5 2020-04-05 23:06:52 PDT
Yusuke Suzuki
Comment 6 2020-04-06 00:48:50 PDT
Yusuke Suzuki
Comment 7 2020-04-06 00:57:05 PDT
Keith Miller
Comment 8 2020-04-15 14:22:36 PDT
Comment on attachment 395553 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=395553&action=review r=me. > Source/JavaScriptCore/dfg/DFGByteCodeParser.cpp:3225 > + // Add the constant before exit becomes invalid because we may want to insert (redundant) checks on it in Fixup. > + Node* kindNode = jsConstant(jsNumber(static_cast<uint32_t>(kind))); Why does exit become invalid here? Seems like nothing here has effects should prevent an exit? > Source/JavaScriptCore/ftl/FTLOperations.cpp:131 > + target->internalField(static_cast<typename JSCellType::Field>(property.location().info())).set(vm, target, JSValue::decode(values[i])); Maybe add an ASSERT(property.location().info() < typename JSCellType::numberOfInternalFields);?
Yusuke Suzuki
Comment 9 2020-04-16 06:00:42 PDT
Comment on attachment 395553 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=395553&action=review >> Source/JavaScriptCore/dfg/DFGByteCodeParser.cpp:3225 >> + Node* kindNode = jsConstant(jsNumber(static_cast<uint32_t>(kind))); > > Why does exit become invalid here? Seems like nothing here has effects should prevent an exit? Ah, right. Removed the comment. >> Source/JavaScriptCore/ftl/FTLOperations.cpp:131 >> + target->internalField(static_cast<typename JSCellType::Field>(property.location().info())).set(vm, target, JSValue::decode(values[i])); > > Maybe add an ASSERT(property.location().info() < typename JSCellType::numberOfInternalFields);? Sounds nice!
Yusuke Suzuki
Comment 10 2020-04-16 06:07:55 PDT
Radar WebKit Bug Importer
Comment 11 2020-04-16 06:08:25 PDT
Yusuke Suzuki
Comment 12 2020-04-16 16:30:06 PDT
Note You need to log in before you can comment on or make changes to this bug.