OLD | NEW |
1 // Copyright 2013 the V8 project authors. All rights reserved. | 1 // Copyright 2013 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_ARM64_MACRO_ASSEMBLER_ARM64_H_ | 5 #ifndef V8_ARM64_MACRO_ASSEMBLER_ARM64_H_ |
6 #define V8_ARM64_MACRO_ASSEMBLER_ARM64_H_ | 6 #define V8_ARM64_MACRO_ASSEMBLER_ARM64_H_ |
7 | 7 |
8 #include <vector> | 8 #include <vector> |
9 | 9 |
10 #include "src/bailout-reason.h" | 10 #include "src/bailout-reason.h" |
(...skipping 22 matching lines...) Expand all Loading... |
33 | 33 |
34 namespace v8 { | 34 namespace v8 { |
35 namespace internal { | 35 namespace internal { |
36 | 36 |
37 // Give alias names to registers for calling conventions. | 37 // Give alias names to registers for calling conventions. |
38 // TODO(titzer): arm64 is a pain for aliasing; get rid of these macros | 38 // TODO(titzer): arm64 is a pain for aliasing; get rid of these macros |
39 #define kReturnRegister0 x0 | 39 #define kReturnRegister0 x0 |
40 #define kReturnRegister1 x1 | 40 #define kReturnRegister1 x1 |
41 #define kJSFunctionRegister x1 | 41 #define kJSFunctionRegister x1 |
42 #define kContextRegister cp | 42 #define kContextRegister cp |
| 43 #define kInterpreterAccumulatorRegister x0 |
| 44 #define kInterpreterRegisterFileRegister x18 |
43 #define kInterpreterBytecodeOffsetRegister x19 | 45 #define kInterpreterBytecodeOffsetRegister x19 |
44 #define kInterpreterBytecodeArrayRegister x20 | 46 #define kInterpreterBytecodeArrayRegister x20 |
45 #define kInterpreterDispatchTableRegister x21 | 47 #define kInterpreterDispatchTableRegister x21 |
46 #define kRuntimeCallFunctionRegister x1 | 48 #define kRuntimeCallFunctionRegister x1 |
47 #define kRuntimeCallArgCountRegister x0 | 49 #define kRuntimeCallArgCountRegister x0 |
48 | 50 |
49 #define LS_MACRO_LIST(V) \ | 51 #define LS_MACRO_LIST(V) \ |
50 V(Ldrb, Register&, rt, LDRB_w) \ | 52 V(Ldrb, Register&, rt, LDRB_w) \ |
51 V(Strb, Register&, rt, STRB_w) \ | 53 V(Strb, Register&, rt, STRB_w) \ |
52 V(Ldrsb, Register&, rt, rt.Is64Bits() ? LDRSB_x : LDRSB_w) \ | 54 V(Ldrsb, Register&, rt, rt.Is64Bits() ? LDRSB_x : LDRSB_w) \ |
(...skipping 2255 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2308 #error "Unsupported option" | 2310 #error "Unsupported option" |
2309 #define CODE_COVERAGE_STRINGIFY(x) #x | 2311 #define CODE_COVERAGE_STRINGIFY(x) #x |
2310 #define CODE_COVERAGE_TOSTRING(x) CODE_COVERAGE_STRINGIFY(x) | 2312 #define CODE_COVERAGE_TOSTRING(x) CODE_COVERAGE_STRINGIFY(x) |
2311 #define __FILE_LINE__ __FILE__ ":" CODE_COVERAGE_TOSTRING(__LINE__) | 2313 #define __FILE_LINE__ __FILE__ ":" CODE_COVERAGE_TOSTRING(__LINE__) |
2312 #define ACCESS_MASM(masm) masm->stop(__FILE_LINE__); masm-> | 2314 #define ACCESS_MASM(masm) masm->stop(__FILE_LINE__); masm-> |
2313 #else | 2315 #else |
2314 #define ACCESS_MASM(masm) masm-> | 2316 #define ACCESS_MASM(masm) masm-> |
2315 #endif | 2317 #endif |
2316 | 2318 |
2317 #endif // V8_ARM64_MACRO_ASSEMBLER_ARM64_H_ | 2319 #endif // V8_ARM64_MACRO_ASSEMBLER_ARM64_H_ |
OLD | NEW |