Bug 151795

Summary: FTL::OSRExitDescriptor should use less memory by having a companion object that dies after compilation
Product: WebKit Reporter: Saam Barati <saam>
Component: JavaScriptCoreAssignee: Saam Barati <saam>
Status: RESOLVED FIXED    
Severity: Normal CC: commit-queue, keith_miller, mark.lam, msaboff
Priority: P2    
Version: WebKit Nightly Build   
Hardware: Unspecified   
OS: Unspecified   
Attachments:
Description Flags
patch ggaren: review+

Description Saam Barati 2015-12-02 23:22:54 PST
We only use the field while compiling so there is no need for it to live forever.
Comment 1 Saam Barati 2015-12-03 01:29:35 PST
Created attachment 266521 [details]
patch
Comment 2 WebKit Commit Bot 2015-12-03 01:31:39 PST
Attachment 266521 [details] did not pass style-queue:


ERROR: Source/JavaScriptCore/ftl/FTLOSRExitCompilationInfo.h:33:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/JavaScriptCore/ftl/FTLOSRExit.cpp:47:  Wrong number of spaces before statement. (expected: 8)  [whitespace/indent] [4]
Total errors found: 2 in 9 files


If any of these errors are false positives, please file a bug against check-webkit-style.
Comment 3 Geoffrey Garen 2015-12-03 11:53:21 PST
Comment on attachment 266521 [details]
patch

View in context: https://bugs.webkit.org/attachment.cgi?id=266521&action=review

r=me

> Source/JavaScriptCore/ftl/FTLCompile.cpp:485
> +    HashMap<OSRExitDescriptor*, OSRExitDescriptorCompilationInfo*> genericUnwindOSRExitDescriptors;

Can we call this OSRExitDescriptorImpl? This seems to be the impl pattern, where most of the implementation of the object is in another object.
Comment 4 Saam Barati 2015-12-03 12:00:46 PST
(In reply to comment #3)
> Comment on attachment 266521 [details]
> patch
> 
> View in context:
> https://bugs.webkit.org/attachment.cgi?id=266521&action=review
> 
> r=me
> 
> > Source/JavaScriptCore/ftl/FTLCompile.cpp:485
> > +    HashMap<OSRExitDescriptor*, OSRExitDescriptorCompilationInfo*> genericUnwindOSRExitDescriptors;
> 
> Can we call this OSRExitDescriptorImpl? This seems to be the impl pattern,
> where most of the implementation of the object is in another object.

Sounds good to me.
Comment 5 Saam Barati 2015-12-03 13:10:22 PST
landed in:
http://trac.webkit.org/changeset/193371