OLD | NEW |
1 // Copyright 2013 the V8 project authors. All rights reserved. | 1 // Copyright 2013 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_COMPILER_JS_OPERATOR_H_ | 5 #ifndef V8_COMPILER_JS_OPERATOR_H_ |
6 #define V8_COMPILER_JS_OPERATOR_H_ | 6 #define V8_COMPILER_JS_OPERATOR_H_ |
7 | 7 |
8 #include "src/runtime/runtime.h" | 8 #include "src/runtime/runtime.h" |
9 #include "src/unique.h" | 9 #include "src/unique.h" |
10 | 10 |
(...skipping 199 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
210 // AST. Most operators have no parameters, thus can be globally shared for all | 210 // AST. Most operators have no parameters, thus can be globally shared for all |
211 // graphs. | 211 // graphs. |
212 class JSOperatorBuilder final : public ZoneObject { | 212 class JSOperatorBuilder final : public ZoneObject { |
213 public: | 213 public: |
214 explicit JSOperatorBuilder(Zone* zone); | 214 explicit JSOperatorBuilder(Zone* zone); |
215 | 215 |
216 const Operator* Equal(); | 216 const Operator* Equal(); |
217 const Operator* NotEqual(); | 217 const Operator* NotEqual(); |
218 const Operator* StrictEqual(); | 218 const Operator* StrictEqual(); |
219 const Operator* StrictNotEqual(); | 219 const Operator* StrictNotEqual(); |
220 const Operator* LessThan(); | 220 const Operator* LessThan(LanguageMode language_mode); |
221 const Operator* GreaterThan(); | 221 const Operator* GreaterThan(LanguageMode language_mode); |
222 const Operator* LessThanOrEqual(); | 222 const Operator* LessThanOrEqual(LanguageMode language_mode); |
223 const Operator* GreaterThanOrEqual(); | 223 const Operator* GreaterThanOrEqual(LanguageMode language_mode); |
224 const Operator* BitwiseOr(); | 224 const Operator* BitwiseOr(LanguageMode language_mode); |
225 const Operator* BitwiseXor(); | 225 const Operator* BitwiseXor(LanguageMode language_mode); |
226 const Operator* BitwiseAnd(); | 226 const Operator* BitwiseAnd(LanguageMode language_mode); |
227 const Operator* ShiftLeft(); | 227 const Operator* ShiftLeft(LanguageMode language_mode); |
228 const Operator* ShiftRight(); | 228 const Operator* ShiftRight(LanguageMode language_mode); |
229 const Operator* ShiftRightLogical(); | 229 const Operator* ShiftRightLogical(LanguageMode language_mode); |
230 const Operator* Add(); | 230 const Operator* Add(LanguageMode language_mode); |
231 const Operator* Subtract(); | 231 const Operator* Subtract(LanguageMode language_mode); |
232 const Operator* Multiply(); | 232 const Operator* Multiply(LanguageMode language_mode); |
233 const Operator* Divide(); | 233 const Operator* Divide(LanguageMode language_mode); |
234 const Operator* Modulus(); | 234 const Operator* Modulus(LanguageMode language_mode); |
235 | 235 |
236 const Operator* UnaryNot(); | 236 const Operator* UnaryNot(LanguageMode language_mode); |
237 const Operator* ToBoolean(); | 237 const Operator* ToBoolean(); |
238 const Operator* ToNumber(); | 238 const Operator* ToNumber(); |
239 const Operator* ToString(); | 239 const Operator* ToString(); |
240 const Operator* ToName(); | 240 const Operator* ToName(); |
241 const Operator* ToObject(); | 241 const Operator* ToObject(); |
242 const Operator* Yield(); | 242 const Operator* Yield(); |
243 | 243 |
244 const Operator* Create(); | 244 const Operator* Create(); |
245 | 245 |
246 const Operator* CallFunction(size_t arity, CallFunctionFlags flags); | 246 const Operator* CallFunction(size_t arity, CallFunctionFlags flags); |
(...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
286 Zone* const zone_; | 286 Zone* const zone_; |
287 | 287 |
288 DISALLOW_COPY_AND_ASSIGN(JSOperatorBuilder); | 288 DISALLOW_COPY_AND_ASSIGN(JSOperatorBuilder); |
289 }; | 289 }; |
290 | 290 |
291 } // namespace compiler | 291 } // namespace compiler |
292 } // namespace internal | 292 } // namespace internal |
293 } // namespace v8 | 293 } // namespace v8 |
294 | 294 |
295 #endif // V8_COMPILER_JS_OPERATOR_H_ | 295 #endif // V8_COMPILER_JS_OPERATOR_H_ |
OLD | NEW |