WebKit Bugzilla
New
Browse
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
RESOLVED FIXED
22171
CTI refactoring: remove m_callFrame; batch JIT all static trampolines.
https://bugs.webkit.org/show_bug.cgi?id=22171
Summary
CTI refactoring: remove m_callFrame; batch JIT all static trampolines.
Gavin Barraclough
Reported
2008-11-10 20:14:24 PST
Batch compile the set of static trampolines at the point Machine is constructed, using a single allocation. Refactor out m_callFrame from CTI, since this is only needed to access the global data (instead store a pointer to the global data directly, since this is available at the point the Machine is constructed). Add a method to align the code buffer, to allow JIT generation for multiple trampolines in one block.
Attachments
The patch
(31.47 KB, patch)
2008-11-10 20:15 PST
,
Gavin Barraclough
zwarich
: review+
Details
Formatted Diff
Diff
View All
Add attachment
proposed patch, testcase, etc.
Gavin Barraclough
Comment 1
2008-11-10 20:15:35 PST
Created
attachment 25042
[details]
The patch no performance impact
Cameron Zwarich (cpst)
Comment 2
2008-11-10 20:53:19 PST
Comment on
attachment 25042
[details]
The patch r=me, but remove the trailing whitespace you added before emitInt3().
Gavin Barraclough
Comment 3
2008-11-10 21:10:11 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/masm/X86Assembler.h Sending JavaScriptCore/runtime/JSGlobalData.cpp Transmitting file data ....... Committed revision 38286.
Geoffrey Garen
Comment 4
2008-11-10 22:45:59 PST
I think you should fold the initialize function into the Machine constructor. Is there any reason for it to be separate?
Note
You need to
log in
before you can comment on or make changes to this bug.
Top of Page
Format For Printing
XML
Clone This Bug