| OLD | NEW |
| 1 // Copyright 2008 the V8 project authors. All rights reserved. | 1 // Copyright 2008 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_MACRO_ASSEMBLER_TRACER_H_ | 5 #ifndef V8_REGEXP_MACRO_ASSEMBLER_TRACER_H_ |
| 6 #define V8_REGEXP_MACRO_ASSEMBLER_TRACER_H_ | 6 #define V8_REGEXP_MACRO_ASSEMBLER_TRACER_H_ |
| 7 | 7 |
| 8 namespace v8 { | 8 namespace v8 { |
| 9 namespace internal { | 9 namespace internal { |
| 10 | 10 |
| 11 // Decorator on a RegExpMacroAssembler that write all calls. | 11 // Decorator on a RegExpMacroAssembler that write all calls. |
| 12 class RegExpMacroAssemblerTracer: public RegExpMacroAssembler { | 12 class RegExpMacroAssemblerTracer: public RegExpMacroAssembler { |
| 13 public: | 13 public: |
| 14 RegExpMacroAssemblerTracer(Isolate* isolate, RegExpMacroAssembler* assembler); | 14 RegExpMacroAssemblerTracer(Isolate* isolate, RegExpMacroAssembler* assembler); |
| 15 virtual ~RegExpMacroAssemblerTracer(); | 15 virtual ~RegExpMacroAssemblerTracer(); |
| 16 virtual void AbortedCodeGeneration(); |
| 16 virtual int stack_limit_slack() { return assembler_->stack_limit_slack(); } | 17 virtual int stack_limit_slack() { return assembler_->stack_limit_slack(); } |
| 17 virtual bool CanReadUnaligned() { return assembler_->CanReadUnaligned(); } | 18 virtual bool CanReadUnaligned() { return assembler_->CanReadUnaligned(); } |
| 18 virtual void AdvanceCurrentPosition(int by); // Signed cp change. | 19 virtual void AdvanceCurrentPosition(int by); // Signed cp change. |
| 19 virtual void AdvanceRegister(int reg, int by); // r[reg] += by. | 20 virtual void AdvanceRegister(int reg, int by); // r[reg] += by. |
| 20 virtual void Backtrack(); | 21 virtual void Backtrack(); |
| 21 virtual void Bind(Label* label); | 22 virtual void Bind(Label* label); |
| 22 virtual void CheckAtStart(Label* on_at_start); | 23 virtual void CheckAtStart(Label* on_at_start); |
| 23 virtual void CheckCharacter(unsigned c, Label* on_equal); | 24 virtual void CheckCharacter(unsigned c, Label* on_equal); |
| 24 virtual void CheckCharacterAfterAnd(unsigned c, | 25 virtual void CheckCharacterAfterAnd(unsigned c, |
| 25 unsigned and_with, | 26 unsigned and_with, |
| (...skipping 48 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 74 virtual void ClearRegisters(int reg_from, int reg_to); | 75 virtual void ClearRegisters(int reg_from, int reg_to); |
| 75 virtual void WriteStackPointerToRegister(int reg); | 76 virtual void WriteStackPointerToRegister(int reg); |
| 76 | 77 |
| 77 private: | 78 private: |
| 78 RegExpMacroAssembler* assembler_; | 79 RegExpMacroAssembler* assembler_; |
| 79 }; | 80 }; |
| 80 | 81 |
| 81 }} // namespace v8::internal | 82 }} // namespace v8::internal |
| 82 | 83 |
| 83 #endif // V8_REGEXP_MACRO_ASSEMBLER_TRACER_H_ | 84 #endif // V8_REGEXP_MACRO_ASSEMBLER_TRACER_H_ |
| OLD | NEW |