|
V8 Project
|
#include <regexp-macro-assembler.h>
Inheritance diagram for v8::internal::RegExpMacroAssembler:
Collaboration diagram for v8::internal::RegExpMacroAssembler:Public Types | |
| enum | IrregexpImplementation { kIA32Implementation , kARMImplementation , kARM64Implementation , kMIPSImplementation , kX64Implementation , kX87Implementation , kBytecodeImplementation } |
| enum | StackCheckFlag { kNoStackLimitCheck = false , kCheckStackLimit = true } |
| enum | GlobalMode { NOT_GLOBAL , GLOBAL , GLOBAL_NO_ZERO_LENGTH_CHECK } |
Public Member Functions | |
| RegExpMacroAssembler (Zone *zone) | |
| virtual | ~RegExpMacroAssembler () |
| virtual int | stack_limit_slack ()=0 |
| virtual bool | CanReadUnaligned ()=0 |
| virtual void | AdvanceCurrentPosition (int by)=0 |
| virtual void | AdvanceRegister (int reg, int by)=0 |
| virtual void | Backtrack ()=0 |
| virtual void | Bind (Label *label)=0 |
| virtual void | CheckAtStart (Label *on_at_start)=0 |
| virtual void | CheckCharacter (unsigned c, Label *on_equal)=0 |
| virtual void | CheckCharacterAfterAnd (unsigned c, unsigned and_with, Label *on_equal)=0 |
| virtual void | CheckCharacterGT (uc16 limit, Label *on_greater)=0 |
| virtual void | CheckCharacterLT (uc16 limit, Label *on_less)=0 |
| virtual void | CheckGreedyLoop (Label *on_tos_equals_current_position)=0 |
| virtual void | CheckNotAtStart (Label *on_not_at_start)=0 |
| virtual void | CheckNotBackReference (int start_reg, Label *on_no_match)=0 |
| virtual void | CheckNotBackReferenceIgnoreCase (int start_reg, Label *on_no_match)=0 |
| virtual void | CheckNotCharacter (unsigned c, Label *on_not_equal)=0 |
| virtual void | CheckNotCharacterAfterAnd (unsigned c, unsigned and_with, Label *on_not_equal)=0 |
| virtual void | CheckNotCharacterAfterMinusAnd (uc16 c, uc16 minus, uc16 and_with, Label *on_not_equal)=0 |
| virtual void | CheckCharacterInRange (uc16 from, uc16 to, Label *on_in_range)=0 |
| virtual void | CheckCharacterNotInRange (uc16 from, uc16 to, Label *on_not_in_range)=0 |
| virtual void | CheckBitInTable (Handle< ByteArray > table, Label *on_bit_set)=0 |
| virtual void | CheckPosition (int cp_offset, Label *on_outside_input) |
| virtual bool | CheckSpecialCharacterClass (uc16 type, Label *on_no_match) |
| virtual void | Fail ()=0 |
| virtual Handle< HeapObject > | GetCode (Handle< String > source)=0 |
| virtual void | GoTo (Label *label)=0 |
| virtual void | IfRegisterGE (int reg, int comparand, Label *if_ge)=0 |
| virtual void | IfRegisterLT (int reg, int comparand, Label *if_lt)=0 |
| virtual void | IfRegisterEqPos (int reg, Label *if_eq)=0 |
| virtual IrregexpImplementation | Implementation ()=0 |
| virtual void | LoadCurrentCharacter (int cp_offset, Label *on_end_of_input, bool check_bounds=true, int characters=1)=0 |
| virtual void | PopCurrentPosition ()=0 |
| virtual void | PopRegister (int register_index)=0 |
| virtual void | PushBacktrack (Label *label)=0 |
| virtual void | PushCurrentPosition ()=0 |
| virtual void | PushRegister (int register_index, StackCheckFlag check_stack_limit)=0 |
| virtual void | ReadCurrentPositionFromRegister (int reg)=0 |
| virtual void | ReadStackPointerFromRegister (int reg)=0 |
| virtual void | SetCurrentPositionFromEnd (int by)=0 |
| virtual void | SetRegister (int register_index, int to)=0 |
| virtual bool | Succeed ()=0 |
| virtual void | WriteCurrentPositionToRegister (int reg, int cp_offset)=0 |
| virtual void | ClearRegisters (int reg_from, int reg_to)=0 |
| virtual void | WriteStackPointerToRegister (int reg)=0 |
| void | set_slow_safe (bool ssc) |
| bool | slow_safe () |
| void | set_global_mode (GlobalMode mode) |
| bool | global () |
| bool | global_with_zero_length_check () |
| Zone * | zone () const |
Static Public Attributes | |
| static const int | kMaxRegister = (1 << 16) - 1 |
| static const int | kMaxCPOffset = (1 << 15) - 1 |
| static const int | kMinCPOffset = -(1 << 15) |
| static const int | kTableSizeBits = 7 |
| static const int | kTableSize = 1 << kTableSizeBits |
| static const int | kTableMask = kTableSize - 1 |
Private Attributes | |
| bool | slow_safe_compiler_ |
| bool | global_mode_ |
| Zone * | zone_ |
Definition at line 19 of file regexp-macro-assembler.h.
| Enumerator | |
|---|---|
| NOT_GLOBAL | |
| GLOBAL | |
| GLOBAL_NO_ZERO_LENGTH_CHECK | |
Definition at line 151 of file regexp-macro-assembler.h.
| Enumerator | |
|---|---|
| kIA32Implementation | |
| kARMImplementation | |
| kARM64Implementation | |
| kMIPSImplementation | |
| kX64Implementation | |
| kX87Implementation | |
| kBytecodeImplementation | |
Definition at line 30 of file regexp-macro-assembler.h.
| Enumerator | |
|---|---|
| kNoStackLimitCheck | |
| kCheckStackLimit | |
Definition at line 40 of file regexp-macro-assembler.h.
|
explicit |
Definition at line 16 of file regexp-macro-assembler.cc.
|
virtual |
Definition at line 23 of file regexp-macro-assembler.cc.
|
pure virtual |
Implemented in v8::internal::RegExpMacroAssemblerX87, v8::internal::RegExpMacroAssemblerX64, v8::internal::RegExpMacroAssemblerTracer, v8::internal::RegExpMacroAssemblerMIPS, v8::internal::RegExpMacroAssemblerMIPS, v8::internal::RegExpMacroAssemblerIA32, v8::internal::RegExpMacroAssemblerARM64, and v8::internal::RegExpMacroAssemblerARM.
Referenced by v8::internal::RegExpMacroAssemblerTracer::AdvanceCurrentPosition(), v8::internal::LoopChoiceNode::Emit(), v8::internal::ChoiceNode::EmitGreedyLoop(), v8::internal::BoyerMooreLookahead::EmitSkipInstructions(), and v8::internal::Trace::Flush().
Here is the caller graph for this function:Implemented in v8::internal::RegExpMacroAssemblerX87, v8::internal::RegExpMacroAssemblerX64, v8::internal::RegExpMacroAssemblerTracer, v8::internal::RegExpMacroAssemblerMIPS, v8::internal::RegExpMacroAssemblerMIPS, v8::internal::RegExpMacroAssemblerIA32, v8::internal::RegExpMacroAssemblerARM64, and v8::internal::RegExpMacroAssemblerARM.
Referenced by v8::internal::RegExpMacroAssemblerTracer::AdvanceRegister(), and v8::internal::Trace::PerformDeferredActions().
Here is the caller graph for this function:
|
pure virtual |
Implemented in v8::internal::RegExpMacroAssemblerX87, v8::internal::RegExpMacroAssemblerX64, v8::internal::RegExpMacroAssemblerTracer, v8::internal::RegExpMacroAssemblerMIPS, v8::internal::RegExpMacroAssemblerMIPS, v8::internal::RegExpMacroAssemblerIA32, v8::internal::RegExpMacroAssemblerARM64, and v8::internal::RegExpMacroAssemblerARM.
Referenced by v8::internal::RegExpMacroAssemblerTracer::Backtrack(), v8::internal::ActionNode::Emit(), v8::internal::NegativeSubmatchSuccess::Emit(), and v8::internal::Trace::Flush().
Here is the caller graph for this function:
|
pure virtual |
Implemented in v8::internal::RegExpMacroAssemblerX87, v8::internal::RegExpMacroAssemblerX64, v8::internal::RegExpMacroAssemblerTracer, v8::internal::RegExpMacroAssemblerMIPS, v8::internal::RegExpMacroAssemblerMIPS, v8::internal::RegExpMacroAssemblerIA32, v8::internal::RegExpMacroAssemblerARM64, and v8::internal::RegExpMacroAssemblerARM.
Referenced by v8::internal::RegExpCompiler::Assemble(), v8::internal::AssertionNode::BacktrackIfPrevious(), v8::internal::RegExpMacroAssemblerTracer::Bind(), v8::internal::ActionNode::Emit(), v8::internal::AssertionNode::Emit(), v8::internal::EndNode::Emit(), v8::internal::NegativeSubmatchSuccess::Emit(), v8::internal::ChoiceNode::Emit(), v8::internal::EmitAtomLetter(), v8::internal::AssertionNode::EmitBoundaryCheck(), v8::internal::EmitCharClass(), v8::internal::ChoiceNode::EmitChoices(), v8::internal::ChoiceNode::EmitGreedyLoop(), v8::internal::EmitHat(), v8::internal::ChoiceNode::EmitOutOfLineContinuation(), v8::internal::BoyerMooreLookahead::EmitSkipInstructions(), v8::internal::Trace::Flush(), v8::internal::GenerateBranches(), and v8::internal::RegExpNode::LimitVersions().
Here is the caller graph for this function:
|
pure virtual |
Implemented in v8::internal::NativeRegExpMacroAssembler, v8::internal::RegExpMacroAssemblerTracer, v8::internal::RegExpMacroAssemblerMIPS, v8::internal::RegExpMacroAssemblerMIPS, v8::internal::RegExpMacroAssemblerARM64, and v8::internal::RegExpMacroAssemblerARM.
Referenced by v8::internal::ChoiceNode::CalculatePreloadCharacters(), v8::internal::RegExpMacroAssemblerTracer::CanReadUnaligned(), and v8::internal::RegExpNode::EmitQuickCheck().
Here is the caller graph for this function:
|
pure virtual |
Implemented in v8::internal::RegExpMacroAssemblerX87, v8::internal::RegExpMacroAssemblerX64, v8::internal::RegExpMacroAssemblerTracer, v8::internal::RegExpMacroAssemblerMIPS, v8::internal::RegExpMacroAssemblerMIPS, v8::internal::RegExpMacroAssemblerIA32, v8::internal::RegExpMacroAssemblerARM64, and v8::internal::RegExpMacroAssemblerARM.
Referenced by v8::internal::AssertionNode::BacktrackIfPrevious(), v8::internal::RegExpMacroAssemblerTracer::CheckAtStart(), and v8::internal::EmitHat().
Here is the caller graph for this function:
|
pure virtual |
Implemented in v8::internal::RegExpMacroAssemblerX87, v8::internal::RegExpMacroAssemblerX64, v8::internal::RegExpMacroAssemblerTracer, v8::internal::RegExpMacroAssemblerMIPS, v8::internal::RegExpMacroAssemblerMIPS, v8::internal::RegExpMacroAssemblerIA32, v8::internal::RegExpMacroAssemblerARM64, and v8::internal::RegExpMacroAssemblerARM.
Referenced by v8::internal::RegExpMacroAssemblerTracer::CheckBitInTable(), v8::internal::BoyerMooreLookahead::EmitSkipInstructions(), and v8::internal::EmitUseLookupTable().
Here is the caller graph for this function:
|
pure virtual |
Implemented in v8::internal::RegExpMacroAssemblerTracer, v8::internal::RegExpMacroAssemblerARM64, and v8::internal::RegExpMacroAssemblerARM.
Referenced by v8::internal::RegExpMacroAssemblerTracer::CheckCharacter(), v8::internal::EmitAtomLetter(), v8::internal::EmitDoubleBoundaryTest(), v8::internal::EmitHat(), v8::internal::RegExpNode::EmitQuickCheck(), v8::internal::BoyerMooreLookahead::EmitSkipInstructions(), and v8::internal::EmitWordCheck().
Here is the caller graph for this function:
|
pure virtual |
Implemented in v8::internal::RegExpMacroAssemblerARM64, v8::internal::RegExpMacroAssemblerARM, and v8::internal::RegExpMacroAssemblerTracer.
Referenced by v8::internal::RegExpMacroAssemblerTracer::CheckCharacterAfterAnd(), v8::internal::EmitHat(), v8::internal::RegExpNode::EmitQuickCheck(), and v8::internal::BoyerMooreLookahead::EmitSkipInstructions().
Here is the caller graph for this function:
|
pure virtual |
Implemented in v8::internal::RegExpMacroAssemblerX87, v8::internal::RegExpMacroAssemblerX64, v8::internal::RegExpMacroAssemblerTracer, v8::internal::RegExpMacroAssemblerMIPS, v8::internal::RegExpMacroAssemblerMIPS, v8::internal::RegExpMacroAssemblerIA32, v8::internal::RegExpMacroAssemblerARM64, and v8::internal::RegExpMacroAssemblerARM.
Referenced by v8::internal::RegExpMacroAssemblerTracer::CheckCharacterGT(), v8::internal::EmitBoundaryTest(), v8::internal::EmitWordCheck(), and v8::internal::GenerateBranches().
Here is the caller graph for this function:
|
pure virtual |
Implemented in v8::internal::RegExpMacroAssemblerX87, v8::internal::RegExpMacroAssemblerX64, v8::internal::RegExpMacroAssemblerTracer, v8::internal::RegExpMacroAssemblerMIPS, v8::internal::RegExpMacroAssemblerMIPS, v8::internal::RegExpMacroAssemblerIA32, v8::internal::RegExpMacroAssemblerARM64, and v8::internal::RegExpMacroAssemblerARM.
Referenced by v8::internal::RegExpMacroAssemblerTracer::CheckCharacterInRange(), and v8::internal::EmitDoubleBoundaryTest().
Here is the caller graph for this function:
|
pure virtual |
Implemented in v8::internal::RegExpMacroAssemblerX87, v8::internal::RegExpMacroAssemblerX64, v8::internal::RegExpMacroAssemblerTracer, v8::internal::RegExpMacroAssemblerMIPS, v8::internal::RegExpMacroAssemblerMIPS, v8::internal::RegExpMacroAssemblerIA32, v8::internal::RegExpMacroAssemblerARM64, and v8::internal::RegExpMacroAssemblerARM.
Referenced by v8::internal::RegExpMacroAssemblerTracer::CheckCharacterLT(), v8::internal::EmitBoundaryTest(), v8::internal::EmitWordCheck(), and v8::internal::GenerateBranches().
Here is the caller graph for this function:
|
pure virtual |
Implemented in v8::internal::RegExpMacroAssemblerX87, v8::internal::RegExpMacroAssemblerX64, v8::internal::RegExpMacroAssemblerTracer, v8::internal::RegExpMacroAssemblerMIPS, v8::internal::RegExpMacroAssemblerMIPS, v8::internal::RegExpMacroAssemblerIA32, v8::internal::RegExpMacroAssemblerARM64, and v8::internal::RegExpMacroAssemblerARM.
Referenced by v8::internal::RegExpMacroAssemblerTracer::CheckCharacterNotInRange(), and v8::internal::EmitDoubleBoundaryTest().
Here is the caller graph for this function:
|
pure virtual |
Implemented in v8::internal::RegExpMacroAssemblerX87, v8::internal::RegExpMacroAssemblerX64, v8::internal::RegExpMacroAssemblerTracer, v8::internal::RegExpMacroAssemblerMIPS, v8::internal::RegExpMacroAssemblerMIPS, v8::internal::RegExpMacroAssemblerIA32, v8::internal::RegExpMacroAssemblerARM64, and v8::internal::RegExpMacroAssemblerARM.
Referenced by v8::internal::RegExpMacroAssemblerTracer::CheckGreedyLoop(), and v8::internal::ChoiceNode::EmitGreedyLoop().
Here is the caller graph for this function:
|
pure virtual |
Implemented in v8::internal::RegExpMacroAssemblerX87, v8::internal::RegExpMacroAssemblerX64, v8::internal::RegExpMacroAssemblerTracer, v8::internal::RegExpMacroAssemblerMIPS, v8::internal::RegExpMacroAssemblerMIPS, v8::internal::RegExpMacroAssemblerIA32, v8::internal::RegExpMacroAssemblerARM64, and v8::internal::RegExpMacroAssemblerARM.
Referenced by v8::internal::RegExpMacroAssemblerTracer::CheckNotAtStart(), and v8::internal::AssertionNode::Emit().
Here is the caller graph for this function:
|
pure virtual |
Implemented in v8::internal::RegExpMacroAssemblerX87, v8::internal::RegExpMacroAssemblerX64, v8::internal::RegExpMacroAssemblerTracer, v8::internal::RegExpMacroAssemblerMIPS, v8::internal::RegExpMacroAssemblerMIPS, v8::internal::RegExpMacroAssemblerIA32, v8::internal::RegExpMacroAssemblerARM64, and v8::internal::RegExpMacroAssemblerARM.
Referenced by v8::internal::RegExpMacroAssemblerTracer::CheckNotBackReference(), and v8::internal::BackReferenceNode::Emit().
Here is the caller graph for this function:
|
pure virtual |
Implemented in v8::internal::RegExpMacroAssemblerX87, v8::internal::RegExpMacroAssemblerX64, v8::internal::RegExpMacroAssemblerTracer, v8::internal::RegExpMacroAssemblerMIPS, v8::internal::RegExpMacroAssemblerMIPS, v8::internal::RegExpMacroAssemblerIA32, v8::internal::RegExpMacroAssemblerARM64, and v8::internal::RegExpMacroAssemblerARM.
Referenced by v8::internal::RegExpMacroAssemblerTracer::CheckNotBackReferenceIgnoreCase(), and v8::internal::BackReferenceNode::Emit().
Here is the caller graph for this function:
|
pure virtual |
Implemented in v8::internal::RegExpMacroAssemblerTracer, v8::internal::RegExpMacroAssemblerARM64, and v8::internal::RegExpMacroAssemblerARM.
Referenced by v8::internal::RegExpMacroAssemblerTracer::CheckNotCharacter(), v8::internal::EmitAtomLetter(), v8::internal::EmitAtomNonLetter(), v8::internal::EmitDoubleBoundaryTest(), v8::internal::EmitHat(), v8::internal::RegExpNode::EmitQuickCheck(), v8::internal::EmitSimpleCharacter(), and v8::internal::EmitWordCheck().
Here is the caller graph for this function:
|
pure virtual |
Implemented in v8::internal::RegExpMacroAssemblerARM64, v8::internal::RegExpMacroAssemblerARM, and v8::internal::RegExpMacroAssemblerTracer.
Referenced by v8::internal::RegExpMacroAssemblerTracer::CheckNotCharacterAfterAnd(), v8::internal::RegExpNode::EmitQuickCheck(), and v8::internal::ShortCutEmitCharacterPair().
Here is the caller graph for this function:
|
pure virtual |
Implemented in v8::internal::RegExpMacroAssemblerX87, v8::internal::RegExpMacroAssemblerX64, v8::internal::RegExpMacroAssemblerMIPS, v8::internal::RegExpMacroAssemblerMIPS, v8::internal::RegExpMacroAssemblerIA32, v8::internal::RegExpMacroAssemblerARM64, v8::internal::RegExpMacroAssemblerARM, and v8::internal::RegExpMacroAssemblerTracer.
Referenced by v8::internal::RegExpMacroAssemblerTracer::CheckNotCharacterAfterMinusAnd(), and v8::internal::ShortCutEmitCharacterPair().
Here is the caller graph for this function:
|
inlinevirtual |
Reimplemented in v8::internal::RegExpMacroAssemblerX87, v8::internal::RegExpMacroAssemblerX64, v8::internal::RegExpMacroAssemblerMIPS, v8::internal::RegExpMacroAssemblerMIPS, v8::internal::RegExpMacroAssemblerIA32, v8::internal::RegExpMacroAssemblerARM64, and v8::internal::RegExpMacroAssemblerARM.
Definition at line 101 of file regexp-macro-assembler.h.
References LoadCurrentCharacter().
Referenced by v8::internal::AssertionNode::Emit(), and v8::internal::EmitCharClass().
Here is the call graph for this function:
Here is the caller graph for this function:
|
inlinevirtual |
Reimplemented in v8::internal::RegExpMacroAssemblerX87, v8::internal::RegExpMacroAssemblerX64, v8::internal::RegExpMacroAssemblerTracer, v8::internal::RegExpMacroAssemblerMIPS, v8::internal::RegExpMacroAssemblerMIPS, v8::internal::RegExpMacroAssemblerIA32, v8::internal::RegExpMacroAssemblerARM64, and v8::internal::RegExpMacroAssemblerARM.
Definition at line 108 of file regexp-macro-assembler.h.
Referenced by v8::internal::RegExpMacroAssemblerTracer::CheckSpecialCharacterClass(), v8::internal::EmitCharClass(), v8::internal::EmitHat(), and v8::internal::EmitWordCheck().
Here is the caller graph for this function:
|
pure virtual |
Implemented in v8::internal::RegExpMacroAssemblerX87, v8::internal::RegExpMacroAssemblerX64, v8::internal::RegExpMacroAssemblerTracer, v8::internal::RegExpMacroAssemblerMIPS, v8::internal::RegExpMacroAssemblerMIPS, v8::internal::RegExpMacroAssemblerIA32, v8::internal::RegExpMacroAssemblerARM64, and v8::internal::RegExpMacroAssemblerARM.
Referenced by v8::internal::RegExpMacroAssemblerTracer::ClearRegisters(), v8::internal::ActionNode::Emit(), v8::internal::NegativeSubmatchSuccess::Emit(), v8::internal::Trace::PerformDeferredActions(), and v8::internal::Trace::RestoreAffectedRegisters().
Here is the caller graph for this function:
|
pure virtual |
Implemented in v8::internal::RegExpMacroAssemblerX87, v8::internal::RegExpMacroAssemblerX64, v8::internal::RegExpMacroAssemblerTracer, v8::internal::RegExpMacroAssemblerMIPS, v8::internal::RegExpMacroAssemblerMIPS, v8::internal::RegExpMacroAssemblerIA32, v8::internal::RegExpMacroAssemblerARM64, and v8::internal::RegExpMacroAssemblerARM.
Referenced by v8::internal::RegExpCompiler::Assemble(), and v8::internal::RegExpMacroAssemblerTracer::Fail().
Here is the caller graph for this function:
|
pure virtual |
Implemented in v8::internal::RegExpMacroAssemblerX87, v8::internal::RegExpMacroAssemblerX64, v8::internal::RegExpMacroAssemblerTracer, v8::internal::RegExpMacroAssemblerMIPS, v8::internal::RegExpMacroAssemblerMIPS, v8::internal::RegExpMacroAssemblerIA32, v8::internal::RegExpMacroAssemblerARM64, and v8::internal::RegExpMacroAssemblerARM.
Referenced by v8::internal::RegExpCompiler::Assemble(), and v8::internal::RegExpMacroAssemblerTracer::GetCode().
Here is the caller graph for this function:
|
inline |
|
inline |
Definition at line 156 of file regexp-macro-assembler.h.
References GLOBAL, and global_mode_.
|
pure virtual |
Implemented in v8::internal::RegExpMacroAssemblerX87, v8::internal::RegExpMacroAssemblerX64, v8::internal::RegExpMacroAssemblerTracer, v8::internal::RegExpMacroAssemblerMIPS, v8::internal::RegExpMacroAssemblerMIPS, v8::internal::RegExpMacroAssemblerIA32, v8::internal::RegExpMacroAssemblerARM64, and v8::internal::RegExpMacroAssemblerARM.
Referenced by v8::internal::ActionNode::Emit(), v8::internal::AssertionNode::Emit(), v8::internal::EndNode::Emit(), v8::internal::LoopChoiceNode::Emit(), v8::internal::AssertionNode::EmitBoundaryCheck(), v8::internal::EmitBoundaryTest(), v8::internal::EmitCharClass(), v8::internal::ChoiceNode::EmitChoices(), v8::internal::EmitDoubleBoundaryTest(), v8::internal::ChoiceNode::EmitGreedyLoop(), v8::internal::ChoiceNode::EmitOutOfLineContinuation(), v8::internal::BoyerMooreLookahead::EmitSkipInstructions(), v8::internal::EmitUseLookupTable(), v8::internal::Trace::Flush(), v8::internal::RegExpMacroAssemblerTracer::GoTo(), v8::internal::RegExpNode::LimitVersions(), and v8::internal::TextNode::TextEmitPass().
Here is the caller graph for this function:
|
pure virtual |
Implemented in v8::internal::RegExpMacroAssemblerX87, v8::internal::RegExpMacroAssemblerX64, v8::internal::RegExpMacroAssemblerTracer, v8::internal::RegExpMacroAssemblerMIPS, v8::internal::RegExpMacroAssemblerMIPS, v8::internal::RegExpMacroAssemblerIA32, v8::internal::RegExpMacroAssemblerARM64, and v8::internal::RegExpMacroAssemblerARM.
Referenced by v8::internal::ActionNode::Emit(), and v8::internal::RegExpMacroAssemblerTracer::IfRegisterEqPos().
Here is the caller graph for this function:
|
pure virtual |
Implemented in v8::internal::RegExpMacroAssemblerX87, v8::internal::RegExpMacroAssemblerX64, v8::internal::RegExpMacroAssemblerTracer, v8::internal::RegExpMacroAssemblerMIPS, v8::internal::RegExpMacroAssemblerMIPS, v8::internal::RegExpMacroAssemblerIA32, v8::internal::RegExpMacroAssemblerARM64, and v8::internal::RegExpMacroAssemblerARM.
Referenced by v8::internal::ChoiceNode::GenerateGuard(), and v8::internal::RegExpMacroAssemblerTracer::IfRegisterGE().
Here is the caller graph for this function:
|
pure virtual |
Implemented in v8::internal::RegExpMacroAssemblerX87, v8::internal::RegExpMacroAssemblerX64, v8::internal::RegExpMacroAssemblerTracer, v8::internal::RegExpMacroAssemblerMIPS, v8::internal::RegExpMacroAssemblerMIPS, v8::internal::RegExpMacroAssemblerIA32, v8::internal::RegExpMacroAssemblerARM64, and v8::internal::RegExpMacroAssemblerARM.
Referenced by v8::internal::ActionNode::Emit(), v8::internal::ChoiceNode::GenerateGuard(), and v8::internal::RegExpMacroAssemblerTracer::IfRegisterLT().
Here is the caller graph for this function:
|
pure virtual |
Implemented in v8::internal::RegExpMacroAssemblerX87, v8::internal::RegExpMacroAssemblerX64, v8::internal::RegExpMacroAssemblerTracer, v8::internal::RegExpMacroAssemblerMIPS, v8::internal::RegExpMacroAssemblerMIPS, v8::internal::RegExpMacroAssemblerIA32, v8::internal::RegExpMacroAssemblerARM64, and v8::internal::RegExpMacroAssemblerARM.
Referenced by v8::internal::RegExpMacroAssemblerTracer::Implementation(), and v8::internal::RegExpMacroAssemblerTracer::RegExpMacroAssemblerTracer().
Here is the caller graph for this function:
|
pure virtual |
Implemented in v8::internal::RegExpMacroAssemblerX87, v8::internal::RegExpMacroAssemblerX64, v8::internal::RegExpMacroAssemblerTracer, v8::internal::RegExpMacroAssemblerMIPS, v8::internal::RegExpMacroAssemblerMIPS, v8::internal::RegExpMacroAssemblerIA32, v8::internal::RegExpMacroAssemblerARM64, and v8::internal::RegExpMacroAssemblerARM.
Referenced by v8::internal::AssertionNode::BacktrackIfPrevious(), CheckPosition(), v8::internal::EmitAtomLetter(), v8::internal::EmitAtomNonLetter(), v8::internal::AssertionNode::EmitBoundaryCheck(), v8::internal::EmitCharClass(), v8::internal::EmitHat(), v8::internal::ChoiceNode::EmitOutOfLineContinuation(), v8::internal::RegExpNode::EmitQuickCheck(), v8::internal::EmitSimpleCharacter(), v8::internal::BoyerMooreLookahead::EmitSkipInstructions(), and v8::internal::RegExpMacroAssemblerTracer::LoadCurrentCharacter().
Here is the caller graph for this function:
|
pure virtual |
Implemented in v8::internal::RegExpMacroAssemblerX87, v8::internal::RegExpMacroAssemblerX64, v8::internal::RegExpMacroAssemblerTracer, v8::internal::RegExpMacroAssemblerMIPS, v8::internal::RegExpMacroAssemblerMIPS, v8::internal::RegExpMacroAssemblerIA32, v8::internal::RegExpMacroAssemblerARM64, and v8::internal::RegExpMacroAssemblerARM.
Referenced by v8::internal::Trace::Flush(), and v8::internal::RegExpMacroAssemblerTracer::PopCurrentPosition().
Here is the caller graph for this function:
|
pure virtual |
Implemented in v8::internal::RegExpMacroAssemblerX87, v8::internal::RegExpMacroAssemblerX64, v8::internal::RegExpMacroAssemblerTracer, v8::internal::RegExpMacroAssemblerMIPS, v8::internal::RegExpMacroAssemblerMIPS, v8::internal::RegExpMacroAssemblerIA32, v8::internal::RegExpMacroAssemblerARM64, and v8::internal::RegExpMacroAssemblerARM.
Referenced by v8::internal::RegExpMacroAssemblerTracer::PopRegister(), and v8::internal::Trace::RestoreAffectedRegisters().
Here is the caller graph for this function:
|
pure virtual |
Implemented in v8::internal::RegExpMacroAssemblerX87, v8::internal::RegExpMacroAssemblerX64, v8::internal::RegExpMacroAssemblerTracer, v8::internal::RegExpMacroAssemblerMIPS, v8::internal::RegExpMacroAssemblerMIPS, v8::internal::RegExpMacroAssemblerIA32, v8::internal::RegExpMacroAssemblerARM64, and v8::internal::RegExpMacroAssemblerARM.
Referenced by v8::internal::RegExpCompiler::Assemble(), v8::internal::Trace::Flush(), and v8::internal::RegExpMacroAssemblerTracer::PushBacktrack().
Here is the caller graph for this function:
|
pure virtual |
Implemented in v8::internal::RegExpMacroAssemblerX87, v8::internal::RegExpMacroAssemblerX64, v8::internal::RegExpMacroAssemblerTracer, v8::internal::RegExpMacroAssemblerMIPS, v8::internal::RegExpMacroAssemblerMIPS, v8::internal::RegExpMacroAssemblerIA32, v8::internal::RegExpMacroAssemblerARM64, and v8::internal::RegExpMacroAssemblerARM.
Referenced by v8::internal::ChoiceNode::EmitGreedyLoop(), v8::internal::Trace::Flush(), and v8::internal::RegExpMacroAssemblerTracer::PushCurrentPosition().
Here is the caller graph for this function:
|
pure virtual |
Implemented in v8::internal::RegExpMacroAssemblerX87, v8::internal::RegExpMacroAssemblerX64, v8::internal::RegExpMacroAssemblerTracer, v8::internal::RegExpMacroAssemblerMIPS, v8::internal::RegExpMacroAssemblerMIPS, v8::internal::RegExpMacroAssemblerIA32, v8::internal::RegExpMacroAssemblerARM64, and v8::internal::RegExpMacroAssemblerARM.
Referenced by v8::internal::Trace::PerformDeferredActions(), and v8::internal::RegExpMacroAssemblerTracer::PushRegister().
Here is the caller graph for this function:
|
pure virtual |
Implemented in v8::internal::RegExpMacroAssemblerX87, v8::internal::RegExpMacroAssemblerX64, v8::internal::RegExpMacroAssemblerTracer, v8::internal::RegExpMacroAssemblerMIPS, v8::internal::RegExpMacroAssemblerMIPS, v8::internal::RegExpMacroAssemblerIA32, v8::internal::RegExpMacroAssemblerARM64, and v8::internal::RegExpMacroAssemblerARM.
Referenced by v8::internal::ActionNode::Emit(), v8::internal::NegativeSubmatchSuccess::Emit(), and v8::internal::RegExpMacroAssemblerTracer::ReadCurrentPositionFromRegister().
Here is the caller graph for this function:
|
pure virtual |
Implemented in v8::internal::RegExpMacroAssemblerX87, v8::internal::RegExpMacroAssemblerX64, v8::internal::RegExpMacroAssemblerTracer, v8::internal::RegExpMacroAssemblerMIPS, v8::internal::RegExpMacroAssemblerMIPS, v8::internal::RegExpMacroAssemblerIA32, v8::internal::RegExpMacroAssemblerARM64, and v8::internal::RegExpMacroAssemblerARM.
Referenced by v8::internal::ActionNode::Emit(), v8::internal::NegativeSubmatchSuccess::Emit(), and v8::internal::RegExpMacroAssemblerTracer::ReadStackPointerFromRegister().
Here is the caller graph for this function:
|
inline |
Definition at line 154 of file regexp-macro-assembler.h.
References global_mode_, and mode().
Referenced by v8::internal::RegExpEngine::Compile().
Here is the call graph for this function:
Here is the caller graph for this function:
|
inline |
Definition at line 148 of file regexp-macro-assembler.h.
References slow_safe_compiler_.
Referenced by v8::internal::RegExpCompiler::Assemble().
Here is the caller graph for this function:
|
pure virtual |
Implemented in v8::internal::RegExpMacroAssemblerX87, v8::internal::RegExpMacroAssemblerX64, v8::internal::RegExpMacroAssemblerTracer, v8::internal::RegExpMacroAssemblerMIPS, v8::internal::RegExpMacroAssemblerMIPS, v8::internal::RegExpMacroAssemblerIA32, v8::internal::RegExpMacroAssemblerARM64, and v8::internal::RegExpMacroAssemblerARM.
Referenced by v8::internal::RegExpMacroAssemblerTracer::SetCurrentPositionFromEnd().
Here is the caller graph for this function:
|
pure virtual |
Implemented in v8::internal::RegExpMacroAssemblerX87, v8::internal::RegExpMacroAssemblerX64, v8::internal::RegExpMacroAssemblerTracer, v8::internal::RegExpMacroAssemblerMIPS, v8::internal::RegExpMacroAssemblerMIPS, v8::internal::RegExpMacroAssemblerIA32, v8::internal::RegExpMacroAssemblerARM64, and v8::internal::RegExpMacroAssemblerARM.
Referenced by v8::internal::Trace::PerformDeferredActions(), and v8::internal::RegExpMacroAssemblerTracer::SetRegister().
Here is the caller graph for this function:
|
inline |
Definition at line 149 of file regexp-macro-assembler.h.
References slow_safe_compiler_.
Referenced by v8::internal::NativeRegExpMacroAssembler::CanReadUnaligned().
Here is the caller graph for this function:
|
pure virtual |
Implemented in v8::internal::RegExpMacroAssemblerX87, v8::internal::RegExpMacroAssemblerX64, v8::internal::RegExpMacroAssemblerTracer, v8::internal::RegExpMacroAssemblerMIPS, v8::internal::RegExpMacroAssemblerMIPS, v8::internal::RegExpMacroAssemblerIA32, v8::internal::RegExpMacroAssemblerARM64, and v8::internal::RegExpMacroAssemblerARM.
Referenced by v8::internal::Trace::PerformDeferredActions(), and v8::internal::RegExpMacroAssemblerTracer::stack_limit_slack().
Here is the caller graph for this function:
|
pure virtual |
Implemented in v8::internal::RegExpMacroAssemblerX87, v8::internal::RegExpMacroAssemblerX64, v8::internal::RegExpMacroAssemblerTracer, v8::internal::RegExpMacroAssemblerMIPS, v8::internal::RegExpMacroAssemblerMIPS, v8::internal::RegExpMacroAssemblerIA32, v8::internal::RegExpMacroAssemblerARM64, and v8::internal::RegExpMacroAssemblerARM.
Referenced by v8::internal::EndNode::Emit(), and v8::internal::RegExpMacroAssemblerTracer::Succeed().
Here is the caller graph for this function:
|
pure virtual |
Implemented in v8::internal::RegExpMacroAssemblerX87, v8::internal::RegExpMacroAssemblerX64, v8::internal::RegExpMacroAssemblerTracer, v8::internal::RegExpMacroAssemblerMIPS, v8::internal::RegExpMacroAssemblerMIPS, v8::internal::RegExpMacroAssemblerIA32, v8::internal::RegExpMacroAssemblerARM64, and v8::internal::RegExpMacroAssemblerARM.
Referenced by v8::internal::ActionNode::Emit(), v8::internal::Trace::PerformDeferredActions(), and v8::internal::RegExpMacroAssemblerTracer::WriteCurrentPositionToRegister().
Here is the caller graph for this function:
|
pure virtual |
Implemented in v8::internal::RegExpMacroAssemblerX87, v8::internal::RegExpMacroAssemblerX64, v8::internal::RegExpMacroAssemblerTracer, v8::internal::RegExpMacroAssemblerMIPS, v8::internal::RegExpMacroAssemblerMIPS, v8::internal::RegExpMacroAssemblerIA32, v8::internal::RegExpMacroAssemblerARM64, and v8::internal::RegExpMacroAssemblerARM.
Referenced by v8::internal::ActionNode::Emit(), and v8::internal::RegExpMacroAssemblerTracer::WriteStackPointerToRegister().
Here is the caller graph for this function:
|
inline |
Definition at line 160 of file regexp-macro-assembler.h.
References zone_.
Referenced by v8::internal::BoyerMooreLookahead::EmitSkipInstructions(), v8::internal::EmitUseLookupTable(), v8::internal::TextNode::GetQuickCheckDetails(), v8::internal::RegExpMacroAssemblerX64::MarkPositionForCodeRelativeFixup(), and v8::internal::TextNode::TextEmitPass().
Here is the caller graph for this function:
|
private |
Definition at line 164 of file regexp-macro-assembler.h.
Referenced by global(), global_with_zero_length_check(), and set_global_mode().
|
static |
Definition at line 23 of file regexp-macro-assembler.h.
Referenced by v8::internal::Trace::AdvanceCurrentPositionInTrace(), and v8::internal::TextNode::Emit().
|
static |
Definition at line 22 of file regexp-macro-assembler.h.
Referenced by v8::internal::RegExpCompiler::AllocateRegister(), v8::internal::RegExpEngine::Compile(), and v8::internal::RegExpCompiler::RegExpCompiler().
|
static |
Definition at line 24 of file regexp-macro-assembler.h.
|
static |
Definition at line 28 of file regexp-macro-assembler.h.
Referenced by v8::internal::RegExpMacroAssemblerTracer::CheckBitInTable(), v8::internal::FrequencyCollator::CountCharacter(), v8::internal::BoyerMooreLookahead::EmitSkipInstructions(), v8::internal::EmitUseLookupTable(), v8::internal::FrequencyCollator::Frequency(), v8::internal::RawMatch(), and v8::internal::SplitSearchSpace().
|
static |
Definition at line 27 of file regexp-macro-assembler.h.
Referenced by v8::internal::RegExpMacroAssemblerTracer::CheckBitInTable(), v8::internal::BoyerMooreLookahead::EmitSkipInstructions(), v8::internal::EmitUseLookupTable(), v8::internal::BoyerMooreLookahead::FindBestInterval(), v8::internal::FrequencyCollator::FrequencyCollator(), v8::internal::BoyerMooreLookahead::GetSkipTable(), and v8::internal::SplitSearchSpace().
|
static |
Definition at line 26 of file regexp-macro-assembler.h.
Referenced by v8::internal::GenerateBranches().
|
private |
Definition at line 163 of file regexp-macro-assembler.h.
Referenced by set_slow_safe(), and slow_safe().
|
private |
Definition at line 165 of file regexp-macro-assembler.h.
Referenced by zone().