<?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>174645</bug_id>
          
          <creation_ts>2017-07-18 16:30:58 -0700</creation_ts>
          <short_desc>Reduce memory usage during OSR</short_desc>
          <delta_ts>2017-08-17 14:52:34 -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>ASSIGNED</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>
          <dependson>175144</dependson>
    
    <dependson>175145</dependson>
    
    <dependson>175453</dependson>
    
    <dependson>174694</dependson>
    
    <dependson>174696</dependson>
    
    <dependson>174697</dependson>
    
    <dependson>174809</dependson>
    
    <dependson>174837</dependson>
    
    <dependson>175446</dependson>
    
    <dependson>175549</dependson>
    
    <dependson>175617</dependson>
    
    <dependson>175688</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Mark Lam">mark.lam</reporter>
          <assigned_to name="Mark Lam">mark.lam</assigned_to>
          <cc>fpizlo</cc>
    
    <cc>jfbastien</cc>
    
    <cc>keith_miller</cc>
    
    <cc>msaboff</cc>
    
    <cc>saam</cc>
    
    <cc>ticaiolima</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>ysuzuki</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1330195</commentid>
    <comment_count>0</comment_count>
    <who name="Mark Lam">mark.lam</who>
    <bug_when>2017-07-18 16:30:58 -0700</bug_when>
    <thetext>Details coming.

&lt;rdar://problem/33183238&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1330199</commentid>
    <comment_count>1</comment_count>
    <who name="Mark Lam">mark.lam</who>
    <bug_when>2017-07-18 16:35:58 -0700</bug_when>
    <thetext>Currently, when we have to do an OSR exit (DFG-&gt;baseline or FTL-&gt;baseline), we generate &gt;=1kb of machine code that does the exit.  We don’t need to generate any code for every exit; we could just have one shared JIT probe that calls a C++ function that does the exit.  This would save a lot of executable memory.

This also means that supporting the JIT probe mechanism will be required in order to use the DFG and FTL going forward.  Currently, the only CPU targets that support the JIT probe are ARM, ARMv7, ARM64, x86, and x86_64.</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>