Bug 237836 - [JSC] Add a resolve_and_get_from_scope bytecode opcode
Summary: [JSC] Add a resolve_and_get_from_scope bytecode opcode
Status: NEW
Alias: None
Product: WebKit
Classification: Unclassified
Component: JavaScriptCore (show other bugs)
Version: WebKit Nightly Build
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Yijia Huang
URL:
Keywords: InRadar
Depends on:
Blocks:
 
Reported: 2022-03-14 10:03 PDT by Robin Morisset
Modified: 2022-06-27 09:26 PDT (History)
1 user (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Robin Morisset 2022-03-14 10:03:40 PDT
resolve_scope followed by get_from_scope is exceedingly common, it is visible both in manual checks of JS2, and was also found by Keith when he more rigorously looked at the most common pairs of opcodes (it was > 3% of all bytecode if I remember correctly).
Now that we've got checkpoints in bytecode ops it should be quite easy to add a shared opcode.

We've found in the past that optimizing bytecode size matters a lot, both to Ramification and to real-world websites.
As a bonus, this change should also reduce the interpretation overhead, making the LLint faster.
Comment 1 Radar WebKit Bug Importer 2022-03-21 10:38:50 PDT
<rdar://problem/90575798>
Comment 2 Yijia Huang 2022-06-27 09:26:47 PDT
Pull request: https://github.com/WebKit/WebKit/pull/1579