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_MIPS_MACRO_ASSEMBLER_MIPS_H_ | 5 #ifndef V8_MIPS_MACRO_ASSEMBLER_MIPS_H_ |
6 #define V8_MIPS_MACRO_ASSEMBLER_MIPS_H_ | 6 #define V8_MIPS_MACRO_ASSEMBLER_MIPS_H_ |
7 | 7 |
8 #include "src/assembler.h" | 8 #include "src/assembler.h" |
9 #include "src/globals.h" | 9 #include "src/globals.h" |
10 #include "src/mips/assembler-mips.h" | 10 #include "src/mips/assembler-mips.h" |
(...skipping 1092 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1103 Register end_address, Register filler); | 1103 Register end_address, Register filler); |
1104 | 1104 |
1105 // ------------------------------------------------------------------------- | 1105 // ------------------------------------------------------------------------- |
1106 // Support functions. | 1106 // Support functions. |
1107 | 1107 |
1108 // Machine code version of Map::GetConstructor(). | 1108 // Machine code version of Map::GetConstructor(). |
1109 // |temp| holds |result|'s map when done, and |temp2| its instance type. | 1109 // |temp| holds |result|'s map when done, and |temp2| its instance type. |
1110 void GetMapConstructor(Register result, Register map, Register temp, | 1110 void GetMapConstructor(Register result, Register map, Register temp, |
1111 Register temp2); | 1111 Register temp2); |
1112 | 1112 |
1113 // Try to get function prototype of a function and puts the value in | |
1114 // the result register. Checks that the function really is a | |
1115 // function and jumps to the miss label if the fast checks fail. The | |
1116 // function register will be untouched; the other registers may be | |
1117 // clobbered. | |
1118 void TryGetFunctionPrototype(Register function, Register result, | |
1119 Register scratch, Label* miss); | |
1120 | |
1121 void GetObjectType(Register function, | 1113 void GetObjectType(Register function, |
1122 Register map, | 1114 Register map, |
1123 Register type_reg); | 1115 Register type_reg); |
1124 | 1116 |
1125 void GetInstanceType(Register object_map, Register object_instance_type) { | 1117 void GetInstanceType(Register object_map, Register object_instance_type) { |
1126 lbu(object_instance_type, | 1118 lbu(object_instance_type, |
1127 FieldMemOperand(object_map, Map::kInstanceTypeOffset)); | 1119 FieldMemOperand(object_map, Map::kInstanceTypeOffset)); |
1128 } | 1120 } |
1129 | 1121 |
1130 // Compare an object's map with the specified map and its transitioned | 1122 // Compare an object's map with the specified map and its transitioned |
(...skipping 702 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1833 dd(GetLabelFunction(index)); | 1825 dd(GetLabelFunction(index)); |
1834 } | 1826 } |
1835 } | 1827 } |
1836 | 1828 |
1837 #define ACCESS_MASM(masm) masm-> | 1829 #define ACCESS_MASM(masm) masm-> |
1838 | 1830 |
1839 } // namespace internal | 1831 } // namespace internal |
1840 } // namespace v8 | 1832 } // namespace v8 |
1841 | 1833 |
1842 #endif // V8_MIPS_MACRO_ASSEMBLER_MIPS_H_ | 1834 #endif // V8_MIPS_MACRO_ASSEMBLER_MIPS_H_ |
OLD | NEW |