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_REGEXP_ARM64_REGEXP_MACRO_ASSEMBLER_ARM64_H_ | 5 #ifndef V8_REGEXP_ARM64_REGEXP_MACRO_ASSEMBLER_ARM64_H_ |
6 #define V8_REGEXP_ARM64_REGEXP_MACRO_ASSEMBLER_ARM64_H_ | 6 #define V8_REGEXP_ARM64_REGEXP_MACRO_ASSEMBLER_ARM64_H_ |
7 | 7 |
8 #include "src/arm64/assembler-arm64.h" | 8 #include "src/arm64/assembler-arm64.h" |
9 #include "src/macro-assembler.h" | 9 #include "src/macro-assembler.h" |
10 #include "src/regexp/regexp-macro-assembler.h" | 10 #include "src/regexp/regexp-macro-assembler.h" |
(...skipping 73 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
84 virtual void PushRegister(int register_index, | 84 virtual void PushRegister(int register_index, |
85 StackCheckFlag check_stack_limit); | 85 StackCheckFlag check_stack_limit); |
86 virtual void ReadCurrentPositionFromRegister(int reg); | 86 virtual void ReadCurrentPositionFromRegister(int reg); |
87 virtual void ReadStackPointerFromRegister(int reg); | 87 virtual void ReadStackPointerFromRegister(int reg); |
88 virtual void SetCurrentPositionFromEnd(int by); | 88 virtual void SetCurrentPositionFromEnd(int by); |
89 virtual void SetRegister(int register_index, int to); | 89 virtual void SetRegister(int register_index, int to); |
90 virtual bool Succeed(); | 90 virtual bool Succeed(); |
91 virtual void WriteCurrentPositionToRegister(int reg, int cp_offset); | 91 virtual void WriteCurrentPositionToRegister(int reg, int cp_offset); |
92 virtual void ClearRegisters(int reg_from, int reg_to); | 92 virtual void ClearRegisters(int reg_from, int reg_to); |
93 virtual void WriteStackPointerToRegister(int reg); | 93 virtual void WriteStackPointerToRegister(int reg); |
94 virtual bool CanReadUnaligned(); | |
95 | 94 |
96 // Called from RegExp if the stack-guard is triggered. | 95 // Called from RegExp if the stack-guard is triggered. |
97 // If the code object is relocated, the return address is fixed before | 96 // If the code object is relocated, the return address is fixed before |
98 // returning. | 97 // returning. |
99 static int CheckStackGuardState(Address* return_address, | 98 static int CheckStackGuardState(Address* return_address, |
100 Code* re_code, | 99 Code* re_code, |
101 Address re_frame, | 100 Address re_frame, |
102 int start_offset, | 101 int start_offset, |
103 const byte** input_start, | 102 const byte** input_start, |
104 const byte** input_end); | 103 const byte** input_end); |
(...skipping 183 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
288 Label stack_overflow_label_; | 287 Label stack_overflow_label_; |
289 }; | 288 }; |
290 | 289 |
291 #endif // V8_INTERPRETED_REGEXP | 290 #endif // V8_INTERPRETED_REGEXP |
292 | 291 |
293 | 292 |
294 } // namespace internal | 293 } // namespace internal |
295 } // namespace v8 | 294 } // namespace v8 |
296 | 295 |
297 #endif // V8_REGEXP_ARM64_REGEXP_MACRO_ASSEMBLER_ARM64_H_ | 296 #endif // V8_REGEXP_ARM64_REGEXP_MACRO_ASSEMBLER_ARM64_H_ |
OLD | NEW |