OLD | NEW |
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 696 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
707 void GetMapConstructor(Register result, Register map, Register temp); | 707 void GetMapConstructor(Register result, Register map, Register temp); |
708 | 708 |
709 // Try to get function prototype of a function and puts the value in | 709 // Try to get function prototype of a function and puts the value in |
710 // the result register. Checks that the function really is a | 710 // the result register. Checks that the function really is a |
711 // function and jumps to the miss label if the fast checks fail. The | 711 // function and jumps to the miss label if the fast checks fail. The |
712 // function register will be untouched; the other registers may be | 712 // function register will be untouched; the other registers may be |
713 // clobbered. | 713 // clobbered. |
714 void TryGetFunctionPrototype(Register function, Register result, | 714 void TryGetFunctionPrototype(Register function, Register result, |
715 Register scratch, Label* miss); | 715 Register scratch, Label* miss); |
716 | 716 |
717 // Picks out an array index from the hash field. | |
718 // Register use: | |
719 // hash - holds the index's hash. Clobbered. | |
720 // index - holds the overwritten index on exit. | |
721 void IndexFromHash(Register hash, Register index); | |
722 | |
723 // --------------------------------------------------------------------------- | 717 // --------------------------------------------------------------------------- |
724 // Runtime calls | 718 // Runtime calls |
725 | 719 |
726 // Call a code stub. Generate the code if necessary. | 720 // Call a code stub. Generate the code if necessary. |
727 void CallStub(CodeStub* stub, TypeFeedbackId ast_id = TypeFeedbackId::None()); | 721 void CallStub(CodeStub* stub, TypeFeedbackId ast_id = TypeFeedbackId::None()); |
728 | 722 |
729 // Tail call a code stub (jump). Generate the code if necessary. | 723 // Tail call a code stub (jump). Generate the code if necessary. |
730 void TailCallStub(CodeStub* stub); | 724 void TailCallStub(CodeStub* stub); |
731 | 725 |
732 // Return from a code stub after popping its arguments. | 726 // Return from a code stub after popping its arguments. |
(...skipping 335 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1068 inline Operand NativeContextOperand() { | 1062 inline Operand NativeContextOperand() { |
1069 return ContextOperand(esi, Context::NATIVE_CONTEXT_INDEX); | 1063 return ContextOperand(esi, Context::NATIVE_CONTEXT_INDEX); |
1070 } | 1064 } |
1071 | 1065 |
1072 #define ACCESS_MASM(masm) masm-> | 1066 #define ACCESS_MASM(masm) masm-> |
1073 | 1067 |
1074 } // namespace internal | 1068 } // namespace internal |
1075 } // namespace v8 | 1069 } // namespace v8 |
1076 | 1070 |
1077 #endif // V8_IA32_MACRO_ASSEMBLER_IA32_H_ | 1071 #endif // V8_IA32_MACRO_ASSEMBLER_IA32_H_ |
OLD | NEW |