OLD | NEW |
1 // Copyright (c) 2014, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2014, the Dart project authors. Please see the AUTHORS file |
2 // for details. All rights reserved. Use of this source code is governed by a | 2 // for details. All rights reserved. Use of this source code is governed by a |
3 // BSD-style license that can be found in the LICENSE file. | 3 // BSD-style license that can be found in the LICENSE file. |
4 | 4 |
5 #ifndef VM_REGEXP_ASSEMBLER_H_ | 5 #ifndef VM_REGEXP_ASSEMBLER_H_ |
6 #define VM_REGEXP_ASSEMBLER_H_ | 6 #define VM_REGEXP_ASSEMBLER_H_ |
7 | 7 |
8 #include "vm/assembler.h" | 8 #include "vm/assembler.h" |
9 #include "vm/intermediate_language.h" | 9 #include "vm/intermediate_language.h" |
10 #include "vm/object.h" | 10 #include "vm/object.h" |
(...skipping 81 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
92 // The implementation must be able to handle at least: | 92 // The implementation must be able to handle at least: |
93 static const intptr_t kMaxRegister = (1 << 16) - 1; | 93 static const intptr_t kMaxRegister = (1 << 16) - 1; |
94 static const intptr_t kMaxCPOffset = (1 << 15) - 1; | 94 static const intptr_t kMaxCPOffset = (1 << 15) - 1; |
95 static const intptr_t kMinCPOffset = -(1 << 15); | 95 static const intptr_t kMinCPOffset = -(1 << 15); |
96 | 96 |
97 static const intptr_t kTableSizeBits = 7; | 97 static const intptr_t kTableSizeBits = 7; |
98 static const intptr_t kTableSize = 1 << kTableSizeBits; | 98 static const intptr_t kTableSize = 1 << kTableSizeBits; |
99 static const intptr_t kTableMask = kTableSize - 1; | 99 static const intptr_t kTableMask = kTableSize - 1; |
100 | 100 |
101 enum { | 101 enum { |
102 kParamStringIndex = 0, | 102 kParamRegExpIndex = 0, |
| 103 kParamStringIndex, |
103 kParamStartOffsetIndex, | 104 kParamStartOffsetIndex, |
104 kParamCount | 105 kParamCount |
105 }; | 106 }; |
106 | 107 |
107 enum IrregexpImplementation { | 108 enum IrregexpImplementation { |
108 kBytecodeImplementation, | 109 kBytecodeImplementation, |
109 kIRImplementation | 110 kIRImplementation |
110 }; | 111 }; |
111 | 112 |
112 explicit RegExpMacroAssembler(Zone* zone); | 113 explicit RegExpMacroAssembler(Zone* zone); |
(...skipping 125 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
238 | 239 |
239 private: | 240 private: |
240 bool slow_safe_compiler_; | 241 bool slow_safe_compiler_; |
241 bool global_mode_; | 242 bool global_mode_; |
242 Zone* zone_; | 243 Zone* zone_; |
243 }; | 244 }; |
244 | 245 |
245 } // namespace dart | 246 } // namespace dart |
246 | 247 |
247 #endif // VM_REGEXP_ASSEMBLER_H_ | 248 #endif // VM_REGEXP_ASSEMBLER_H_ |
OLD | NEW |