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

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

Issue 2686723004: [stubs] Port LoadFunctionPrototypeStub to CSA (Closed)
Patch Set: Created 3 years, 10 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
« no previous file with comments | « src/x64/code-stubs-x64.cc ('k') | src/x64/macro-assembler-x64.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2012 the V8 project authors. All rights reserved. 1 // Copyright 2012 the V8 project authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef V8_X64_MACRO_ASSEMBLER_X64_H_ 5 #ifndef V8_X64_MACRO_ASSEMBLER_X64_H_
6 #define V8_X64_MACRO_ASSEMBLER_X64_H_ 6 #define V8_X64_MACRO_ASSEMBLER_X64_H_
7 7
8 #include "src/assembler.h" 8 #include "src/assembler.h"
9 #include "src/bailout-reason.h" 9 #include "src/bailout-reason.h"
10 #include "src/base/flags.h" 10 #include "src/base/flags.h"
(...skipping 1335 matching lines...) Expand 10 before | Expand all | Expand 10 after
1346 1346
1347 // Check if result is zero and any of op1 and op2 are negative. 1347 // Check if result is zero and any of op1 and op2 are negative.
1348 // Register scratch is destroyed, and it must be different from op2. 1348 // Register scratch is destroyed, and it must be different from op2.
1349 void NegativeZeroTest(Register result, Register op1, Register op2, 1349 void NegativeZeroTest(Register result, Register op1, Register op2,
1350 Register scratch, Label* then_label); 1350 Register scratch, Label* then_label);
1351 1351
1352 // Machine code version of Map::GetConstructor(). 1352 // Machine code version of Map::GetConstructor().
1353 // |temp| holds |result|'s map when done. 1353 // |temp| holds |result|'s map when done.
1354 void GetMapConstructor(Register result, Register map, Register temp); 1354 void GetMapConstructor(Register result, Register map, Register temp);
1355 1355
1356 // Try to get function prototype of a function and puts the value in
1357 // the result register. Checks that the function really is a
1358 // function and jumps to the miss label if the fast checks fail. The
1359 // function register will be untouched; the other register may be
1360 // clobbered.
1361 void TryGetFunctionPrototype(Register function, Register result, Label* miss);
1362
1363 // Find the function context up the context chain. 1356 // Find the function context up the context chain.
1364 void LoadContext(Register dst, int context_chain_length); 1357 void LoadContext(Register dst, int context_chain_length);
1365 1358
1366 // Load the global object from the current context. 1359 // Load the global object from the current context.
1367 void LoadGlobalObject(Register dst) { 1360 void LoadGlobalObject(Register dst) {
1368 LoadNativeContextSlot(Context::EXTENSION_INDEX, dst); 1361 LoadNativeContextSlot(Context::EXTENSION_INDEX, dst);
1369 } 1362 }
1370 1363
1371 // Load the global proxy from the current context. 1364 // Load the global proxy from the current context.
1372 void LoadGlobalProxy(Register dst) { 1365 void LoadGlobalProxy(Register dst) {
(...skipping 315 matching lines...) Expand 10 before | Expand all | Expand 10 after
1688 inline Operand StackOperandForReturnAddress(int32_t disp) { 1681 inline Operand StackOperandForReturnAddress(int32_t disp) {
1689 return Operand(rsp, disp); 1682 return Operand(rsp, disp);
1690 } 1683 }
1691 1684
1692 #define ACCESS_MASM(masm) masm-> 1685 #define ACCESS_MASM(masm) masm->
1693 1686
1694 } // namespace internal 1687 } // namespace internal
1695 } // namespace v8 1688 } // namespace v8
1696 1689
1697 #endif // V8_X64_MACRO_ASSEMBLER_X64_H_ 1690 #endif // V8_X64_MACRO_ASSEMBLER_X64_H_
OLDNEW
« no previous file with comments | « src/x64/code-stubs-x64.cc ('k') | src/x64/macro-assembler-x64.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698