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 710 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
721 | 721 |
722 // Machine code version of Map::GetConstructor(). | 722 // Machine code version of Map::GetConstructor(). |
723 // |temp| holds |result|'s map when done. | 723 // |temp| holds |result|'s map when done. |
724 void GetMapConstructor(Register result, Register map, Register temp); | 724 void GetMapConstructor(Register result, Register map, Register temp); |
725 | 725 |
726 // Try to get function prototype of a function and puts the value in | 726 // Try to get function prototype of a function and puts the value in |
727 // the result register. Checks that the function really is a | 727 // the result register. Checks that the function really is a |
728 // function and jumps to the miss label if the fast checks fail. The | 728 // function and jumps to the miss label if the fast checks fail. The |
729 // function register will be untouched; the other registers may be | 729 // function register will be untouched; the other registers may be |
730 // clobbered. | 730 // clobbered. |
731 void TryGetFunctionPrototype(Register function, | 731 void TryGetFunctionPrototype(Register function, Register result, |
732 Register result, | 732 Register scratch, Label* miss); |
733 Register scratch, | |
734 Label* miss, | |
735 bool miss_on_bound_function = false); | |
736 | 733 |
737 // Picks out an array index from the hash field. | 734 // Picks out an array index from the hash field. |
738 // Register use: | 735 // Register use: |
739 // hash - holds the index's hash. Clobbered. | 736 // hash - holds the index's hash. Clobbered. |
740 // index - holds the overwritten index on exit. | 737 // index - holds the overwritten index on exit. |
741 void IndexFromHash(Register hash, Register index); | 738 void IndexFromHash(Register hash, Register index); |
742 | 739 |
743 // --------------------------------------------------------------------------- | 740 // --------------------------------------------------------------------------- |
744 // Runtime calls | 741 // Runtime calls |
745 | 742 |
(...skipping 363 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1109 } \ | 1106 } \ |
1110 masm-> | 1107 masm-> |
1111 #else | 1108 #else |
1112 #define ACCESS_MASM(masm) masm-> | 1109 #define ACCESS_MASM(masm) masm-> |
1113 #endif | 1110 #endif |
1114 | 1111 |
1115 | 1112 |
1116 } } // namespace v8::internal | 1113 } } // namespace v8::internal |
1117 | 1114 |
1118 #endif // V8_IA32_MACRO_ASSEMBLER_IA32_H_ | 1115 #endif // V8_IA32_MACRO_ASSEMBLER_IA32_H_ |
OLD | NEW |