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/arm64/assembler-arm64.h" | 10 #include "src/arm64/assembler-arm64.h" |
(...skipping 1162 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1173 | 1173 |
1174 // Registers used through the invocation chain are hard-coded. | 1174 // Registers used through the invocation chain are hard-coded. |
1175 // We force passing the parameters to ensure the contracts are correctly | 1175 // We force passing the parameters to ensure the contracts are correctly |
1176 // honoured by the caller. | 1176 // honoured by the caller. |
1177 // 'function' must be x1. | 1177 // 'function' must be x1. |
1178 // 'actual' must use an immediate or x0. | 1178 // 'actual' must use an immediate or x0. |
1179 // 'expected' must use an immediate or x2. | 1179 // 'expected' must use an immediate or x2. |
1180 // 'call_kind' must be x5. | 1180 // 'call_kind' must be x5. |
1181 void InvokePrologue(const ParameterCount& expected, | 1181 void InvokePrologue(const ParameterCount& expected, |
1182 const ParameterCount& actual, | 1182 const ParameterCount& actual, |
1183 Handle<Code> code_constant, | |
1184 Register code_reg, | |
1185 Label* done, | 1183 Label* done, |
1186 InvokeFlag flag, | 1184 InvokeFlag flag, |
1187 bool* definitely_mismatches, | 1185 bool* definitely_mismatches, |
1188 const CallWrapper& call_wrapper); | 1186 const CallWrapper& call_wrapper); |
1189 void InvokeCode(Register code, | 1187 void InvokeCode(Register code, |
1190 const ParameterCount& expected, | 1188 const ParameterCount& expected, |
1191 const ParameterCount& actual, | 1189 const ParameterCount& actual, |
1192 InvokeFlag flag, | 1190 InvokeFlag flag, |
1193 const CallWrapper& call_wrapper); | 1191 const CallWrapper& call_wrapper); |
1194 // Invoke the JavaScript function in the given register. | 1192 // Invoke the JavaScript function in the given register. |
(...skipping 1095 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2290 #error "Unsupported option" | 2288 #error "Unsupported option" |
2291 #define CODE_COVERAGE_STRINGIFY(x) #x | 2289 #define CODE_COVERAGE_STRINGIFY(x) #x |
2292 #define CODE_COVERAGE_TOSTRING(x) CODE_COVERAGE_STRINGIFY(x) | 2290 #define CODE_COVERAGE_TOSTRING(x) CODE_COVERAGE_STRINGIFY(x) |
2293 #define __FILE_LINE__ __FILE__ ":" CODE_COVERAGE_TOSTRING(__LINE__) | 2291 #define __FILE_LINE__ __FILE__ ":" CODE_COVERAGE_TOSTRING(__LINE__) |
2294 #define ACCESS_MASM(masm) masm->stop(__FILE_LINE__); masm-> | 2292 #define ACCESS_MASM(masm) masm->stop(__FILE_LINE__); masm-> |
2295 #else | 2293 #else |
2296 #define ACCESS_MASM(masm) masm-> | 2294 #define ACCESS_MASM(masm) masm-> |
2297 #endif | 2295 #endif |
2298 | 2296 |
2299 #endif // V8_ARM64_MACRO_ASSEMBLER_ARM64_H_ | 2297 #endif // V8_ARM64_MACRO_ASSEMBLER_ARM64_H_ |
OLD | NEW |