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 1119 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1130 int num_reg_arguments, | 1130 int num_reg_arguments, |
1131 int num_double_arguments); | 1131 int num_double_arguments); |
1132 | 1132 |
1133 // Calls an API function. Allocates HandleScope, extracts returned value | 1133 // Calls an API function. Allocates HandleScope, extracts returned value |
1134 // from handle and propagates exceptions. | 1134 // from handle and propagates exceptions. |
1135 // 'stack_space' is the space to be unwound on exit (includes the call JS | 1135 // 'stack_space' is the space to be unwound on exit (includes the call JS |
1136 // arguments space and the additional space allocated for the fast call). | 1136 // arguments space and the additional space allocated for the fast call). |
1137 // 'spill_offset' is the offset from the stack pointer where | 1137 // 'spill_offset' is the offset from the stack pointer where |
1138 // CallApiFunctionAndReturn can spill registers. | 1138 // CallApiFunctionAndReturn can spill registers. |
1139 void CallApiFunctionAndReturn(Register function_address, | 1139 void CallApiFunctionAndReturn(Register function_address, |
1140 ExternalReference thunk_ref, | 1140 ExternalReference thunk_ref, int stack_space, |
1141 int stack_space, | 1141 MemOperand* stack_space_operand, |
1142 int spill_offset, | 1142 int spill_offset, |
1143 MemOperand return_value_operand, | 1143 MemOperand return_value_operand, |
1144 MemOperand* context_restore_operand); | 1144 MemOperand* context_restore_operand); |
1145 | 1145 |
1146 // The number of register that CallApiFunctionAndReturn will need to save on | 1146 // The number of register that CallApiFunctionAndReturn will need to save on |
1147 // the stack. The space for these registers need to be allocated in the | 1147 // the stack. The space for these registers need to be allocated in the |
1148 // ExitFrame before calling CallApiFunctionAndReturn. | 1148 // ExitFrame before calling CallApiFunctionAndReturn. |
1149 static const int kCallApiFunctionSpillSpace = 4; | 1149 static const int kCallApiFunctionSpillSpace = 4; |
1150 | 1150 |
1151 // Jump to a runtime routine. | 1151 // Jump to a runtime routine. |
(...skipping 1179 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2331 #error "Unsupported option" | 2331 #error "Unsupported option" |
2332 #define CODE_COVERAGE_STRINGIFY(x) #x | 2332 #define CODE_COVERAGE_STRINGIFY(x) #x |
2333 #define CODE_COVERAGE_TOSTRING(x) CODE_COVERAGE_STRINGIFY(x) | 2333 #define CODE_COVERAGE_TOSTRING(x) CODE_COVERAGE_STRINGIFY(x) |
2334 #define __FILE_LINE__ __FILE__ ":" CODE_COVERAGE_TOSTRING(__LINE__) | 2334 #define __FILE_LINE__ __FILE__ ":" CODE_COVERAGE_TOSTRING(__LINE__) |
2335 #define ACCESS_MASM(masm) masm->stop(__FILE_LINE__); masm-> | 2335 #define ACCESS_MASM(masm) masm->stop(__FILE_LINE__); masm-> |
2336 #else | 2336 #else |
2337 #define ACCESS_MASM(masm) masm-> | 2337 #define ACCESS_MASM(masm) masm-> |
2338 #endif | 2338 #endif |
2339 | 2339 |
2340 #endif // V8_ARM64_MACRO_ASSEMBLER_ARM64_H_ | 2340 #endif // V8_ARM64_MACRO_ASSEMBLER_ARM64_H_ |
OLD | NEW |