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 1301 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1312 Condition IsObjectStringType(Register obj, | 1312 Condition IsObjectStringType(Register obj, |
1313 Register type, | 1313 Register type, |
1314 Register result) { | 1314 Register result) { |
1315 ld(type, FieldMemOperand(obj, HeapObject::kMapOffset)); | 1315 ld(type, FieldMemOperand(obj, HeapObject::kMapOffset)); |
1316 lbu(type, FieldMemOperand(type, Map::kInstanceTypeOffset)); | 1316 lbu(type, FieldMemOperand(type, Map::kInstanceTypeOffset)); |
1317 And(type, type, Operand(kIsNotStringMask)); | 1317 And(type, type, Operand(kIsNotStringMask)); |
1318 DCHECK_EQ(0u, kStringTag); | 1318 DCHECK_EQ(0u, kStringTag); |
1319 return eq; | 1319 return eq; |
1320 } | 1320 } |
1321 | 1321 |
1322 | |
1323 // Picks out an array index from the hash field. | |
1324 // Register use: | |
1325 // hash - holds the index's hash. Clobbered. | |
1326 // index - holds the overwritten index on exit. | |
1327 void IndexFromHash(Register hash, Register index); | |
1328 | |
1329 // Get the number of least significant bits from a register. | 1322 // Get the number of least significant bits from a register. |
1330 void GetLeastBitsFromSmi(Register dst, Register src, int num_least_bits); | 1323 void GetLeastBitsFromSmi(Register dst, Register src, int num_least_bits); |
1331 void GetLeastBitsFromInt32(Register dst, Register src, int mun_least_bits); | 1324 void GetLeastBitsFromInt32(Register dst, Register src, int mun_least_bits); |
1332 | 1325 |
1333 // Load the value of a number object into a FPU double register. If the | 1326 // Load the value of a number object into a FPU double register. If the |
1334 // object is not a number a jump to the label not_number is performed | 1327 // object is not a number a jump to the label not_number is performed |
1335 // and the FPU double register is unchanged. | 1328 // and the FPU double register is unchanged. |
1336 void ObjectToDoubleFPURegister( | 1329 void ObjectToDoubleFPURegister( |
1337 Register object, | 1330 Register object, |
1338 FPURegister value, | 1331 FPURegister value, |
(...skipping 720 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2059 dd(GetLabelFunction(index)); | 2052 dd(GetLabelFunction(index)); |
2060 } | 2053 } |
2061 } | 2054 } |
2062 | 2055 |
2063 #define ACCESS_MASM(masm) masm-> | 2056 #define ACCESS_MASM(masm) masm-> |
2064 | 2057 |
2065 } // namespace internal | 2058 } // namespace internal |
2066 } // namespace v8 | 2059 } // namespace v8 |
2067 | 2060 |
2068 #endif // V8_MIPS_MACRO_ASSEMBLER_MIPS_H_ | 2061 #endif // V8_MIPS_MACRO_ASSEMBLER_MIPS_H_ |
OLD | NEW |