Bug 152695

Summary: Turn off Internal Function inlining in the DFG for super calls.
Product: WebKit Reporter: Keith Miller <keith_miller>
Component: New BugsAssignee: Keith Miller <keith_miller>
Status: RESOLVED FIXED    
Severity: Normal CC: commit-queue, mark.lam, msaboff, saam
Priority: P2    
Version: WebKit Nightly Build   
Hardware: Unspecified   
OS: Unspecified   
Bug Depends on:    
Bug Blocks: 152706    
Attachments:
Description Flags
Patch
ggaren: review+
Benchmark results none

Description Keith Miller 2016-01-04 10:00:12 PST
Turn off Internal Function inlining in the DFG for super calls.
Comment 1 Keith Miller 2016-01-04 10:11:59 PST
Created attachment 268203 [details]
Patch
Comment 2 Keith Miller 2016-01-04 10:20:41 PST
Created attachment 268204 [details]
Benchmark results
Comment 3 Geoffrey Garen 2016-01-04 11:00:28 PST
Comment on attachment 268203 [details]
Patch

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

r- because this needs a test case.

> Source/JavaScriptCore/dfg/DFGByteCodeParser.cpp:2433
> +        // FIXME: If we have inlined super calls up to the call site, however, we should be able to figure out the structure.

You should file a bug for this fixme.
Comment 4 Keith Miller 2016-01-04 11:13:34 PST
> r- because this needs a test case.
> 

I'm not sure what behavior you want me to test. This patch just ensures that we take a slow path when subclassing an InternalFunction. There is no non-performance difference here.

> > Source/JavaScriptCore/dfg/DFGByteCodeParser.cpp:2433
> > +        // FIXME: If we have inlined super calls up to the call site, however, we should be able to figure out the structure.
> 
> You should file a bug for this fix me.

Fixed. https://bugs.webkit.org/show_bug.cgi?id=152700
Comment 5 Geoffrey Garen 2016-01-04 15:15:11 PST
Comment on attachment 268203 [details]
Patch

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

r=me

I guess the test case will come later, once the slow path starts to do the right thing.

>> Source/JavaScriptCore/dfg/DFGByteCodeParser.cpp:2433
>> +        // FIXME: If we have inlined super calls up to the call site, however, we should be able to figure out the structure.
> 
> You should file a bug for this fixme.

Please paste the bug link in the source code.

> Source/JavaScriptCore/dfg/DFGByteCodeParser.cpp:2441
> -        
> +

Revert.
Comment 6 Keith Miller 2016-01-04 16:21:01 PST
(In reply to comment #5)
> Comment on attachment 268203 [details]
> Patch
> 
> View in context:
> https://bugs.webkit.org/attachment.cgi?id=268203&action=review
> 
> r=me
> 
> I guess the test case will come later, once the slow path starts to do the
> right thing.
> 
> >> Source/JavaScriptCore/dfg/DFGByteCodeParser.cpp:2433
> >> +        // FIXME: If we have inlined super calls up to the call site, however, we should be able to figure out the structure.
> > 
> > You should file a bug for this fixme.
> 
> Please paste the bug link in the source code.

It's already there.

> 
> > Source/JavaScriptCore/dfg/DFGByteCodeParser.cpp:2441
> > -        
> > +
> 
> Revert.

Fixed.
Comment 7 Keith Miller 2016-01-04 16:35:30 PST
Committed r194565: <http://trac.webkit.org/changeset/194565>