Bug 180644

Summary: [JSC] Optimize Object.assign by single transition acceleration
Product: WebKit Reporter: Yusuke Suzuki <ysuzuki>
Component: New BugsAssignee: Yusuke Suzuki <ysuzuki>
Status: RESOLVED FIXED    
Severity: Normal CC: fpizlo, jfbastien, keith_miller, mark.lam, msaboff, saam, webkit-bug-importer
Priority: P2 Keywords: InRadar
Version: WebKit Nightly Build   
Hardware: Unspecified   
OS: Unspecified   
Bug Depends on:    
Bug Blocks: 185350    
Attachments:
Description Flags
Patch
none
Patch saam: review+

Yusuke Suzuki
Reported 2017-12-11 06:04:06 PST
[JSC] Optimize Object.assign by single transition acceleration and reify shortcut
Attachments
Patch (3.46 KB, patch)
2017-12-11 06:07 PST, Yusuke Suzuki
no flags
Patch (1.88 KB, patch)
2017-12-12 23:44 PST, Yusuke Suzuki
saam: review+
Yusuke Suzuki
Comment 1 2017-12-11 06:07:05 PST
Saam Barati
Comment 2 2017-12-11 11:34:07 PST
Comment on attachment 328962 [details] Patch I’m r- because I don’t want to add more code for this reification method table. I’ve already spoken to JF and other folks offline about removing this call from this code path. I think the right answer is to either: - Call defineOwnProperty for static getter/setters on classes. We can probably keep calling putDirect when defining it on an object literal since plain objects don’t have lazy properties. - move this reification call into define_getter_setter_by_id
Yusuke Suzuki
Comment 3 2017-12-12 18:11:43 PST
(In reply to Saam Barati from comment #2) > Comment on attachment 328962 [details] > Patch > > I’m r- because I don’t want to add more code for this reification method > table. I’ve already spoken to JF and other folks offline about removing this > call from this code path. I think the right answer is to either: > - Call defineOwnProperty for static getter/setters on classes. We can > probably keep calling putDirect when defining it on an object literal since > plain objects don’t have lazy properties. > - move this reification call into define_getter_setter_by_id Hm, ok, I'll drop this part from my patch. Yeah, this reification method is called in putDirect path, so everytime we put non-indexed property, this function is called. We should remove or alleviate this.
Yusuke Suzuki
Comment 4 2017-12-12 23:44:12 PST
Yusuke Suzuki
Comment 5 2017-12-12 23:51:22 PST
Radar WebKit Bug Importer
Comment 6 2017-12-12 23:52:15 PST
Note You need to log in before you can comment on or make changes to this bug.