<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>237836</bug_id>
          
          <creation_ts>2022-03-14 10:03:40 -0700</creation_ts>
          <short_desc>[JSC] Add a resolve_and_get_from_scope bytecode opcode</short_desc>
          <delta_ts>2022-06-27 09:26:47 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>JavaScriptCore</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>NEW</bug_status>
          <resolution></resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Robin Morisset">rmorisset</reporter>
          <assigned_to name="Yijia Huang">yijia_huang</assigned_to>
          <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1850920</commentid>
    <comment_count>0</comment_count>
    <who name="Robin Morisset">rmorisset</who>
    <bug_when>2022-03-14 10:03:40 -0700</bug_when>
    <thetext>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 &gt; 3% of all bytecode if I remember correctly).
Now that we&apos;ve got checkpoints in bytecode ops it should be quite easy to add a shared opcode.

We&apos;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.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1853242</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2022-03-21 10:38:50 -0700</bug_when>
    <thetext>&lt;rdar://problem/90575798&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1878503</commentid>
    <comment_count>2</comment_count>
    <who name="Yijia Huang">yijia_huang</who>
    <bug_when>2022-06-27 09:26:47 -0700</bug_when>
    <thetext>Pull request: https://github.com/WebKit/WebKit/pull/1579</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>