Bug 127326

Summary: IC status classes should directly query exit site information
Product: WebKit Reporter: Filip Pizlo <fpizlo>
Component: JavaScriptCoreAssignee: Filip Pizlo <fpizlo>
Status: RESOLVED FIXED    
Severity: Normal CC: barraclough, commit-queue, ggaren, mark.lam, mhahnenberg, mmirman, msaboff, nrotem, oliver, sam
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: All   
OS: All   
Bug Depends on:    
Bug Blocks: 127325    
Attachments:
Description Flags
the patch ggaren: review+

Description Filip Pizlo 2014-01-20 17:37:31 PST
This consolidates all of the reasoning about whether or not to inline an IC at the IR level.

Patch forthcoming.
Comment 1 Filip Pizlo 2014-01-20 17:38:25 PST
Created attachment 221707 [details]
the patch
Comment 2 WebKit Commit Bot 2014-01-20 17:40:18 PST
Attachment 221707 [details] did not pass style-queue:


ERROR: Source/JavaScriptCore/bytecode/CodeBlock.h:581:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
Total errors found: 1 in 11 files


If any of these errors are false positives, please file a bug against check-webkit-style.
Comment 3 Filip Pizlo 2014-01-20 19:29:52 PST
Landed in branch in http://trac.webkit.org/changeset/162424
Comment 4 Geoffrey Garen 2014-01-20 20:48:51 PST
Looks like the no DFG build needs some help:

     1>..\bytecode\CallLinkStatus.cpp(111): error C2039: 'hasExitSite' : is not a member of 'JSC::CodeBlock'
                 c:\cygwin\home\buildbot\webkit\source\javascriptcore\bytecode\CodeBlock.h(96) : see declaration of 'JSC::CodeBlock'
         ExitKind.cpp
     1>..\bytecode\CallLinkStatus.cpp(112): error C2039: 'hasExitSite' : is not a member of 'JSC::CodeBlock'
                 c:\cygwin\home\buildbot\webkit\source\javascriptcore\bytecode\CodeBlock.h(96) : see declaration of 'JSC::CodeBlock'
     1>..\bytecode\CallLinkStatus.cpp(113): error C2039: 'hasExitSite' : is not a member of 'JSC::CodeBlock'
                 c:\cygwin\home\buildbot\webkit\source\javascriptcore\bytecode\CodeBlock.h(96) : see declaration of 'JSC::CodeBlock'
     1>..\bytecode\CallLinkStatus.cpp(131): error C2039: 'hasExitSite' : is not a member of 'JSC::CodeBlock'
                 c:\cygwin\home\buildbot\webkit\source\javascriptcore\bytecode\CodeBlock.h(96) : see declaration of 'JSC::CodeBlock'
     1>c:\cygwin\home\buildbot\webkit\source\javascriptcore\assembler\X86Assembler.h(2348): warning C4309: 'argument' : truncation of constant value (..\bytecode\CodeBlockJettisoningWatchpoint.cpp)
         GetByIdStatus.cpp
         InlineCallFrameSet.cpp
         JumpTable.cpp
     1>c:\cygwin\home\buildbot\webkit\source\javascriptcore\assembler\X86Assembler.h(2348): warning C4309: 'argument' : truncation of constant value (..\bytecode\InlineCallFrameSet.cpp)
     1>c:\cygwin\home\buildbot\webkit\source\javascriptcore\assembler\X86Assembler.h(2348): warning C4309: 'argument' : truncation of constant value (..\bytecode\ExecutionCounter.cpp)
     1>c:\cygwin\home\buildbot\webkit\source\javascriptcore\assembler\X86Assembler.h(2348): warning C4309: 'argument' : truncation of constant value (..\bytecode\JumpTable.cpp)
     1>c:\cygwin\home\buildbot\webkit\source\javascriptcore\assembler\X86Assembler.h(2348): warning C4309: 'argument' : truncation of constant value (..\bytecode\GetByIdStatus.cpp)
Comment 5 Geoffrey Garen 2014-01-20 20:49:02 PST
Comment on attachment 221707 [details]
the patch

r=me with fixed build
Comment 6 Filip Pizlo 2014-01-25 20:02:55 PST
Landed in http://trac.webkit.org/changeset/162424