RESOLVED FIXED 27017
In the nitro-extreme branch, remove constants from the register file.
https://bugs.webkit.org/show_bug.cgi?id=27017
Summary In the nitro-extreme branch, remove constants from the register file.
Gavin Barraclough
Reported 2009-07-06 19:33:59 PDT
Use special constants (highest bit in a positive int32_t) to flag constants, and load them directly from the CodeBlock.
Attachments
The patch (100.31 KB, patch)
2009-07-06 19:44 PDT, Gavin Barraclough
sam: review+
With layout test tweakage. (102.89 KB, patch)
2009-07-06 22:16 PDT, Gavin Barraclough
ggaren: review+
Gavin Barraclough
Comment 1 2009-07-06 19:44:33 PDT
Created attachment 32353 [details] The patch ~0.75% progression
Sam Weinig
Comment 2 2009-07-06 20:15:07 PDT
Comment on attachment 32353 [details] The patch r=me Can this be a static const instead of a #define. How about a comment explaining the magic number? > +#define FirstConstantRegisterIndex 0x40000000
Gavin Barraclough
Comment 3 2009-07-06 22:16:09 PDT
Created attachment 32359 [details] With layout test tweakage.
Geoffrey Garen
Comment 4 2009-07-06 22:20:39 PDT
Comment on attachment 32359 [details] With layout test tweakage. r=me on the layout test change
Gavin Barraclough
Comment 5 2009-07-06 22:35:27 PDT
Sending JavaScriptCore/ChangeLog Sending JavaScriptCore/bytecode/CodeBlock.cpp Sending JavaScriptCore/bytecode/CodeBlock.h Sending JavaScriptCore/bytecode/Opcode.h Sending JavaScriptCore/bytecompiler/BytecodeGenerator.cpp Sending JavaScriptCore/bytecompiler/BytecodeGenerator.h Sending JavaScriptCore/interpreter/CallFrame.h Sending JavaScriptCore/interpreter/Interpreter.cpp Sending JavaScriptCore/jit/JIT.cpp Sending JavaScriptCore/jit/JITInlineMethods.h Sending JavaScriptCore/jit/JITOpcodes.cpp Sending JavaScriptCore/parser/Nodes.cpp Sending JavaScriptCore/runtime/JSActivation.cpp Sending JavaScriptCore/wtf/Platform.h Sending LayoutTests/ChangeLog Sending LayoutTests/fast/js/global-recursion-on-full-stack.html Transmitting file data ................ Committed revision 45586.
Note You need to log in before you can comment on or make changes to this bug.