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_X64_REGEXP_MACRO_ASSEMBLER_X64_H_ | 5 #ifndef V8_X64_REGEXP_MACRO_ASSEMBLER_X64_H_ |
6 #define V8_X64_REGEXP_MACRO_ASSEMBLER_X64_H_ | 6 #define V8_X64_REGEXP_MACRO_ASSEMBLER_X64_H_ |
7 | 7 |
8 #include "src/macro-assembler.h" | 8 #include "src/macro-assembler.h" |
9 #include "src/x64/assembler-x64-inl.h" | 9 #include "src/x64/assembler-x64-inl.h" |
10 #include "src/x64/assembler-x64.h" | 10 #include "src/x64/assembler-x64.h" |
11 #include "src/x64/macro-assembler-x64.h" | 11 #include "src/x64/macro-assembler-x64.h" |
12 | 12 |
13 namespace v8 { | 13 namespace v8 { |
14 namespace internal { | 14 namespace internal { |
15 | 15 |
16 #ifndef V8_INTERPRETED_REGEXP | 16 #ifndef V8_INTERPRETED_REGEXP |
17 | 17 |
18 class RegExpMacroAssemblerX64: public NativeRegExpMacroAssembler { | 18 class RegExpMacroAssemblerX64: public NativeRegExpMacroAssembler { |
19 public: | 19 public: |
20 RegExpMacroAssemblerX64(Mode mode, int registers_to_save, Zone* zone); | 20 RegExpMacroAssemblerX64(Isolate* isolate, Zone* zone, Mode mode, |
| 21 int registers_to_save); |
21 virtual ~RegExpMacroAssemblerX64(); | 22 virtual ~RegExpMacroAssemblerX64(); |
22 virtual int stack_limit_slack(); | 23 virtual int stack_limit_slack(); |
23 virtual void AdvanceCurrentPosition(int by); | 24 virtual void AdvanceCurrentPosition(int by); |
24 virtual void AdvanceRegister(int reg, int by); | 25 virtual void AdvanceRegister(int reg, int by); |
25 virtual void Backtrack(); | 26 virtual void Backtrack(); |
26 virtual void Bind(Label* label); | 27 virtual void Bind(Label* label); |
27 virtual void CheckAtStart(Label* on_at_start); | 28 virtual void CheckAtStart(Label* on_at_start); |
28 virtual void CheckCharacter(uint32_t c, Label* on_equal); | 29 virtual void CheckCharacter(uint32_t c, Label* on_equal); |
29 virtual void CheckCharacterAfterAnd(uint32_t c, | 30 virtual void CheckCharacterAfterAnd(uint32_t c, |
30 uint32_t mask, | 31 uint32_t mask, |
(...skipping 241 matching lines...) Loading... |
272 Label exit_label_; | 273 Label exit_label_; |
273 Label check_preempt_label_; | 274 Label check_preempt_label_; |
274 Label stack_overflow_label_; | 275 Label stack_overflow_label_; |
275 }; | 276 }; |
276 | 277 |
277 #endif // V8_INTERPRETED_REGEXP | 278 #endif // V8_INTERPRETED_REGEXP |
278 | 279 |
279 }} // namespace v8::internal | 280 }} // namespace v8::internal |
280 | 281 |
281 #endif // V8_X64_REGEXP_MACRO_ASSEMBLER_X64_H_ | 282 #endif // V8_X64_REGEXP_MACRO_ASSEMBLER_X64_H_ |
OLD | NEW |