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 307 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
318 // AST. Most operators have no parameters, thus can be globally shared for all | 318 // AST. Most operators have no parameters, thus can be globally shared for all |
319 // graphs. | 319 // graphs. |
320 class JSOperatorBuilder final : public ZoneObject { | 320 class JSOperatorBuilder final : public ZoneObject { |
321 public: | 321 public: |
322 explicit JSOperatorBuilder(Zone* zone); | 322 explicit JSOperatorBuilder(Zone* zone); |
323 | 323 |
324 const Operator* Equal(); | 324 const Operator* Equal(); |
325 const Operator* NotEqual(); | 325 const Operator* NotEqual(); |
326 const Operator* StrictEqual(); | 326 const Operator* StrictEqual(); |
327 const Operator* StrictNotEqual(); | 327 const Operator* StrictNotEqual(); |
328 const Operator* LessThan(LanguageMode language_mode); | 328 const Operator* LessThan(Strength strength); |
rossberg
2015/06/08 11:34:21
As discussed offline, on the abstraction level of
conradw
2015/06/08 11:48:49
Done.
| |
329 const Operator* GreaterThan(LanguageMode language_mode); | 329 const Operator* GreaterThan(Strength strength); |
330 const Operator* LessThanOrEqual(LanguageMode language_mode); | 330 const Operator* LessThanOrEqual(Strength strength); |
331 const Operator* GreaterThanOrEqual(LanguageMode language_mode); | 331 const Operator* GreaterThanOrEqual(Strength strength); |
332 const Operator* BitwiseOr(LanguageMode language_mode); | 332 const Operator* BitwiseOr(Strength strength); |
333 const Operator* BitwiseXor(LanguageMode language_mode); | 333 const Operator* BitwiseXor(Strength strength); |
334 const Operator* BitwiseAnd(LanguageMode language_mode); | 334 const Operator* BitwiseAnd(Strength strength); |
335 const Operator* ShiftLeft(LanguageMode language_mode); | 335 const Operator* ShiftLeft(Strength strength); |
336 const Operator* ShiftRight(LanguageMode language_mode); | 336 const Operator* ShiftRight(Strength strength); |
337 const Operator* ShiftRightLogical(LanguageMode language_mode); | 337 const Operator* ShiftRightLogical(Strength strength); |
338 const Operator* Add(LanguageMode language_mode); | 338 const Operator* Add(Strength strength); |
339 const Operator* Subtract(LanguageMode language_mode); | 339 const Operator* Subtract(Strength strength); |
340 const Operator* Multiply(LanguageMode language_mode); | 340 const Operator* Multiply(Strength strength); |
341 const Operator* Divide(LanguageMode language_mode); | 341 const Operator* Divide(Strength strength); |
342 const Operator* Modulus(LanguageMode language_mode); | 342 const Operator* Modulus(Strength strength); |
343 | 343 |
344 const Operator* UnaryNot(); | 344 const Operator* UnaryNot(); |
345 const Operator* ToBoolean(); | 345 const Operator* ToBoolean(); |
346 const Operator* ToNumber(); | 346 const Operator* ToNumber(); |
347 const Operator* ToString(); | 347 const Operator* ToString(); |
348 const Operator* ToName(); | 348 const Operator* ToName(); |
349 const Operator* ToObject(); | 349 const Operator* ToObject(); |
350 const Operator* Yield(); | 350 const Operator* Yield(); |
351 | 351 |
352 const Operator* Create(); | 352 const Operator* Create(); |
(...skipping 57 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
410 Zone* const zone_; | 410 Zone* const zone_; |
411 | 411 |
412 DISALLOW_COPY_AND_ASSIGN(JSOperatorBuilder); | 412 DISALLOW_COPY_AND_ASSIGN(JSOperatorBuilder); |
413 }; | 413 }; |
414 | 414 |
415 } // namespace compiler | 415 } // namespace compiler |
416 } // namespace internal | 416 } // namespace internal |
417 } // namespace v8 | 417 } // namespace v8 |
418 | 418 |
419 #endif // V8_COMPILER_JS_OPERATOR_H_ | 419 #endif // V8_COMPILER_JS_OPERATOR_H_ |
OLD | NEW |