Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(175)

Side by Side Diff: src/ia32/macro-assembler-ia32.h

Issue 3211002: Fast string construct stub (ia32 only for now). (Closed)
Patch Set: Simpler map loading Created 10 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2006-2009 the V8 project authors. All rights reserved. 1 // Copyright 2006-2009 the V8 project authors. All rights reserved.
2 // Redistribution and use in source and binary forms, with or without 2 // Redistribution and use in source and binary forms, with or without
3 // modification, are permitted provided that the following conditions are 3 // modification, are permitted provided that the following conditions are
4 // met: 4 // met:
5 // 5 //
6 // * Redistributions of source code must retain the above copyright 6 // * Redistributions of source code must retain the above copyright
7 // notice, this list of conditions and the following disclaimer. 7 // notice, this list of conditions and the following disclaimer.
8 // * Redistributions in binary form must reproduce the above 8 // * Redistributions in binary form must reproduce the above
9 // copyright notice, this list of conditions and the following 9 // copyright notice, this list of conditions and the following
10 // disclaimer in the documentation and/or other materials provided 10 // disclaimer in the documentation and/or other materials provided
(...skipping 122 matching lines...) Expand 10 before | Expand all | Expand 10 after
133 void EnterApiExitFrame(ExitFrame::Mode mode, int stack_space, int argc); 133 void EnterApiExitFrame(ExitFrame::Mode mode, int stack_space, int argc);
134 134
135 // Leave the current exit frame. Expects the return value in 135 // Leave the current exit frame. Expects the return value in
136 // register eax:edx (untouched) and the pointer to the first 136 // register eax:edx (untouched) and the pointer to the first
137 // argument in register esi. 137 // argument in register esi.
138 void LeaveExitFrame(ExitFrame::Mode mode); 138 void LeaveExitFrame(ExitFrame::Mode mode);
139 139
140 // Find the function context up the context chain. 140 // Find the function context up the context chain.
141 void LoadContext(Register dst, int context_chain_length); 141 void LoadContext(Register dst, int context_chain_length);
142 142
143 // Load the global function with the given index.
144 void LoadGlobalFunction(int index, Register function);
145
146 // Load the initial map from the global function. The registers
147 // function and map can be the same.
148 void LoadGlobalFunctionInitialMap(Register function, Register map);
149
143 // --------------------------------------------------------------------------- 150 // ---------------------------------------------------------------------------
144 // JavaScript invokes 151 // JavaScript invokes
145 152
146 // Invoke the JavaScript function code by either calling or jumping. 153 // Invoke the JavaScript function code by either calling or jumping.
147 void InvokeCode(const Operand& code, 154 void InvokeCode(const Operand& code,
148 const ParameterCount& expected, 155 const ParameterCount& expected,
149 const ParameterCount& actual, 156 const ParameterCount& actual,
150 InvokeFlag flag); 157 InvokeFlag flag);
151 158
152 void InvokeCode(Handle<Code> code, 159 void InvokeCode(Handle<Code> code,
(...skipping 486 matching lines...) Expand 10 before | Expand all | Expand 10 after
639 } \ 646 } \
640 masm-> 647 masm->
641 #else 648 #else
642 #define ACCESS_MASM(masm) masm-> 649 #define ACCESS_MASM(masm) masm->
643 #endif 650 #endif
644 651
645 652
646 } } // namespace v8::internal 653 } } // namespace v8::internal
647 654
648 #endif // V8_IA32_MACRO_ASSEMBLER_IA32_H_ 655 #endif // V8_IA32_MACRO_ASSEMBLER_IA32_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698