Chromium Code Reviews| Index: src/assembler-re2k.h |
| =================================================================== |
| --- src/assembler-re2k.h (revision 707) |
| +++ src/assembler-re2k.h (working copy) |
| @@ -33,7 +33,8 @@ |
| void PushCurrentPosition(int cp_offset = 0); |
| void PushBacktrack(Label* l); |
| void PushRegister(int index); |
| - void SetRegister(int index, int cp_offset = 0); |
| + void SetRegisterToCurrentPosition(int index, int cp_offset = 0); |
| + void SetRegister(int index, int value); |
| void PopCurrentPosition(); |
| void PopBacktrack(); |
| @@ -43,6 +44,8 @@ |
| void FailIfWithin(int distance_from_end); |
| void Succeed(); |
| + void Break(); // This insn will cause a fatal VM error if hit. |
|
Lasse Reichstein
2008/11/07 10:57:35
insn->instruction
|
| + |
| void Bind(Label* l); // binds an unbound label L to the current code position |
| void AdvanceCP(int cp_offset = 1); |
| @@ -56,11 +59,14 @@ |
| void CheckChar(uc16 c, Label* on_mismatch); |
| void CheckNotChar(uc16 c, Label* on_match); |
| + // Checks current char register against the magic end-of-input symbol. |
| + void CheckEnd(Label* on_not_end); |
| + void CheckNotEnd(Label* on_end); |
| + |
| // Checks current char register against a range. |
| void CheckRange(uc16 start, uc16 end, Label* on_mismatch); |
| void CheckNotRange(uc16 start, uc16 end, Label* on_match); |
| - |
| // Checks that the current char is in the range and that the corresponding bit |
| // is set in the bitmap. |
| void CheckBitmap(uc16 start, uc16 end, const byte* bits, Label* on_mismatch); |
| @@ -75,12 +81,8 @@ |
| // Checks a register for equal, less than or equal, less than, greater than |
| // or equal, greater than, not equal. |
| - void CheckRegisterEq(int reg_index, uint16_t vs, Label* on_equal); |
| - void CheckRegisterLe(int reg_index, uint16_t vs, Label* on_less_equal); |
| void CheckRegisterLt(int reg_index, uint16_t vs, Label* on_less_than); |
| void CheckRegisterGe(int reg_index, uint16_t vs, Label* on_greater_equal); |
| - void CheckRegisterGt(int reg_index, uint16_t vs, Label* on_greater_than); |
| - void CheckRegisterNe(int reg_index, uint16_t vs, Label* on_not_equal); |
| // Code and bitmap emission. |
| inline void Emit32(uint32_t x); |