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 1047 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1058 // function and jumps to the miss label if the fast checks fail. The | 1058 // function and jumps to the miss label if the fast checks fail. The |
1059 // function register will be untouched; the other registers may be | 1059 // function register will be untouched; the other registers may be |
1060 // clobbered. | 1060 // clobbered. |
1061 void TryGetFunctionPrototype(Register function, Register result, | 1061 void TryGetFunctionPrototype(Register function, Register result, |
1062 Register scratch, Label* miss); | 1062 Register scratch, Label* miss); |
1063 | 1063 |
1064 void GetObjectType(Register function, | 1064 void GetObjectType(Register function, |
1065 Register map, | 1065 Register map, |
1066 Register type_reg); | 1066 Register type_reg); |
1067 | 1067 |
| 1068 void GetInstanceType(Register object_map, Register object_instance_type) { |
| 1069 lbu(object_instance_type, |
| 1070 FieldMemOperand(object_map, Map::kInstanceTypeOffset)); |
| 1071 } |
| 1072 |
1068 // Check if a map for a JSObject indicates that the object has fast elements. | 1073 // Check if a map for a JSObject indicates that the object has fast elements. |
1069 // Jump to the specified label if it does not. | 1074 // Jump to the specified label if it does not. |
1070 void CheckFastElements(Register map, | 1075 void CheckFastElements(Register map, |
1071 Register scratch, | 1076 Register scratch, |
1072 Label* fail); | 1077 Label* fail); |
1073 | 1078 |
1074 // Check if a map for a JSObject indicates that the object can have both smi | 1079 // Check if a map for a JSObject indicates that the object can have both smi |
1075 // and HeapObject elements. Jump to the specified label if it does not. | 1080 // and HeapObject elements. Jump to the specified label if it does not. |
1076 void CheckFastObjectElements(Register map, | 1081 void CheckFastObjectElements(Register map, |
1077 Register scratch, | 1082 Register scratch, |
(...skipping 708 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1786 #define __FILE_LINE__ __FILE__ ":" CODE_COVERAGE_TOSTRING(__LINE__) | 1791 #define __FILE_LINE__ __FILE__ ":" CODE_COVERAGE_TOSTRING(__LINE__) |
1787 #define ACCESS_MASM(masm) masm->stop(__FILE_LINE__); masm-> | 1792 #define ACCESS_MASM(masm) masm->stop(__FILE_LINE__); masm-> |
1788 #else | 1793 #else |
1789 #define ACCESS_MASM(masm) masm-> | 1794 #define ACCESS_MASM(masm) masm-> |
1790 #endif | 1795 #endif |
1791 | 1796 |
1792 } // namespace internal | 1797 } // namespace internal |
1793 } // namespace v8 | 1798 } // namespace v8 |
1794 | 1799 |
1795 #endif // V8_MIPS_MACRO_ASSEMBLER_MIPS_H_ | 1800 #endif // V8_MIPS_MACRO_ASSEMBLER_MIPS_H_ |
OLD | NEW |