RESOLVED FIXED 22063
Calls have to make a CTI call, if they are not linked.
https://bugs.webkit.org/show_bug.cgi?id=22063
Summary Calls have to make a CTI call, if they are not linked.
Gavin Barraclough
Reported 2008-11-03 20:26:29 PST
On the unlinked path, stop making a cti call – unless the codeblock needs JITting, or the number of parameters passed does not match the callee arity.
Attachments
the patch (18.55 KB, patch)
2008-11-03 20:28 PST, Gavin Barraclough
no flags
Now with new improved changelogy goodness! (19.58 KB, patch)
2008-11-03 20:33 PST, Gavin Barraclough
oliver: review+
Gavin Barraclough
Comment 1 2008-11-03 20:28:47 PST
Created attachment 24881 [details] the patch ~ 1% progression on sunspider --v8
Gavin Barraclough
Comment 2 2008-11-03 20:33:29 PST
Created attachment 24882 [details] Now with new improved changelogy goodness!
Oliver Hunt
Comment 3 2008-11-03 20:40:36 PST
Comment on attachment 24882 [details] Now with new improved changelogy goodness! Bad boy, commneted out code: > > @@ -679,6 +676,7 @@ void CTI::compileOpCall(OpcodeID opcodeI > m_jit.addl_i32r(registerOffset * sizeof(Register), X86::edi); > > // Call to the callee > +// m_jit.movl_i32r(argCount, X86::edx); > m_callStructureStubCompilationInfo[callLinkInfoIndex].hotPathOther = emitNakedCall(i, unreachable); r=me
Gavin Barraclough
Comment 4 2008-11-06 17:32:16 PST
Sending JavaScriptCore/ChangeLog Sending JavaScriptCore/VM/CTI.cpp Sending JavaScriptCore/VM/CTI.h Sending JavaScriptCore/VM/Machine.cpp Sending JavaScriptCore/VM/Machine.h Sending JavaScriptCore/parser/Nodes.h Transmitting file data ...... Committed revision 38209.
Note You need to log in before you can comment on or make changes to this bug.