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/mips64/assembler-mips64.h" | 10 #include "src/mips64/assembler-mips64.h" |
(...skipping 1146 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1157 Register end_address, Register filler); | 1157 Register end_address, Register filler); |
1158 | 1158 |
1159 // ------------------------------------------------------------------------- | 1159 // ------------------------------------------------------------------------- |
1160 // Support functions. | 1160 // Support functions. |
1161 | 1161 |
1162 // Machine code version of Map::GetConstructor(). | 1162 // Machine code version of Map::GetConstructor(). |
1163 // |temp| holds |result|'s map when done, and |temp2| its instance type. | 1163 // |temp| holds |result|'s map when done, and |temp2| its instance type. |
1164 void GetMapConstructor(Register result, Register map, Register temp, | 1164 void GetMapConstructor(Register result, Register map, Register temp, |
1165 Register temp2); | 1165 Register temp2); |
1166 | 1166 |
1167 // Try to get function prototype of a function and puts the value in | |
1168 // the result register. Checks that the function really is a | |
1169 // function and jumps to the miss label if the fast checks fail. The | |
1170 // function register will be untouched; the other registers may be | |
1171 // clobbered. | |
1172 void TryGetFunctionPrototype(Register function, Register result, | |
1173 Register scratch, Label* miss); | |
1174 | |
1175 void GetObjectType(Register function, | 1167 void GetObjectType(Register function, |
1176 Register map, | 1168 Register map, |
1177 Register type_reg); | 1169 Register type_reg); |
1178 | 1170 |
1179 void GetInstanceType(Register object_map, Register object_instance_type) { | 1171 void GetInstanceType(Register object_map, Register object_instance_type) { |
1180 lbu(object_instance_type, | 1172 lbu(object_instance_type, |
1181 FieldMemOperand(object_map, Map::kInstanceTypeOffset)); | 1173 FieldMemOperand(object_map, Map::kInstanceTypeOffset)); |
1182 } | 1174 } |
1183 | 1175 |
1184 // Compare an object's map with the specified map and its transitioned | 1176 // Compare an object's map with the specified map and its transitioned |
(...skipping 792 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1977 dd(GetLabelFunction(index)); | 1969 dd(GetLabelFunction(index)); |
1978 } | 1970 } |
1979 } | 1971 } |
1980 | 1972 |
1981 #define ACCESS_MASM(masm) masm-> | 1973 #define ACCESS_MASM(masm) masm-> |
1982 | 1974 |
1983 } // namespace internal | 1975 } // namespace internal |
1984 } // namespace v8 | 1976 } // namespace v8 |
1985 | 1977 |
1986 #endif // V8_MIPS_MACRO_ASSEMBLER_MIPS_H_ | 1978 #endif // V8_MIPS_MACRO_ASSEMBLER_MIPS_H_ |
OLD | NEW |