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

Side by Side Diff: src/ia32/macro-assembler-ia32.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/ia32/code-stubs-ia32.cc ('k') | src/ia32/macro-assembler-ia32.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_IA32_MACRO_ASSEMBLER_IA32_H_ 5 #ifndef V8_IA32_MACRO_ASSEMBLER_IA32_H_
6 #define V8_IA32_MACRO_ASSEMBLER_IA32_H_ 6 #define V8_IA32_MACRO_ASSEMBLER_IA32_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/frames.h" 10 #include "src/frames.h"
(...skipping 630 matching lines...) Expand 10 before | Expand all | Expand 10 after
641 641
642 // Check if result is zero and any of op1 and op2 are negative. 642 // Check if result is zero and any of op1 and op2 are negative.
643 // Register scratch is destroyed, and it must be different from op2. 643 // Register scratch is destroyed, and it must be different from op2.
644 void NegativeZeroTest(Register result, Register op1, Register op2, 644 void NegativeZeroTest(Register result, Register op1, Register op2,
645 Register scratch, Label* then_label); 645 Register scratch, Label* then_label);
646 646
647 // Machine code version of Map::GetConstructor(). 647 // Machine code version of Map::GetConstructor().
648 // |temp| holds |result|'s map when done. 648 // |temp| holds |result|'s map when done.
649 void GetMapConstructor(Register result, Register map, Register temp); 649 void GetMapConstructor(Register result, Register map, Register temp);
650 650
651 // Try to get function prototype of a function and puts the value in
652 // the result register. Checks that the function really is a
653 // function and jumps to the miss label if the fast checks fail. The
654 // function register will be untouched; the other registers may be
655 // clobbered.
656 void TryGetFunctionPrototype(Register function, Register result,
657 Register scratch, Label* miss);
658
659 // --------------------------------------------------------------------------- 651 // ---------------------------------------------------------------------------
660 // Runtime calls 652 // Runtime calls
661 653
662 // Call a code stub. Generate the code if necessary. 654 // Call a code stub. Generate the code if necessary.
663 void CallStub(CodeStub* stub, TypeFeedbackId ast_id = TypeFeedbackId::None()); 655 void CallStub(CodeStub* stub, TypeFeedbackId ast_id = TypeFeedbackId::None());
664 656
665 // Tail call a code stub (jump). Generate the code if necessary. 657 // Tail call a code stub (jump). Generate the code if necessary.
666 void TailCallStub(CodeStub* stub); 658 void TailCallStub(CodeStub* stub);
667 659
668 // Return from a code stub after popping its arguments. 660 // Return from a code stub after popping its arguments.
(...skipping 317 matching lines...) Expand 10 before | Expand all | Expand 10 after
986 inline Operand NativeContextOperand() { 978 inline Operand NativeContextOperand() {
987 return ContextOperand(esi, Context::NATIVE_CONTEXT_INDEX); 979 return ContextOperand(esi, Context::NATIVE_CONTEXT_INDEX);
988 } 980 }
989 981
990 #define ACCESS_MASM(masm) masm-> 982 #define ACCESS_MASM(masm) masm->
991 983
992 } // namespace internal 984 } // namespace internal
993 } // namespace v8 985 } // namespace v8
994 986
995 #endif // V8_IA32_MACRO_ASSEMBLER_IA32_H_ 987 #endif // V8_IA32_MACRO_ASSEMBLER_IA32_H_
OLDNEW
« no previous file with comments | « src/ia32/code-stubs-ia32.cc ('k') | src/ia32/macro-assembler-ia32.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698