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/compiler/type-hints.h" | 8 #include "src/compiler/type-hints.h" |
9 #include "src/runtime/runtime.h" | 9 #include "src/runtime/runtime.h" |
10 | 10 |
(...skipping 26 matching lines...) Expand all Loading... |
37 const FeedbackVectorSlot slot_; | 37 const FeedbackVectorSlot slot_; |
38 }; | 38 }; |
39 | 39 |
40 bool operator==(VectorSlotPair const&, VectorSlotPair const&); | 40 bool operator==(VectorSlotPair const&, VectorSlotPair const&); |
41 bool operator!=(VectorSlotPair const&, VectorSlotPair const&); | 41 bool operator!=(VectorSlotPair const&, VectorSlotPair const&); |
42 | 42 |
43 size_t hash_value(VectorSlotPair const&); | 43 size_t hash_value(VectorSlotPair const&); |
44 | 44 |
45 | 45 |
46 // The ConvertReceiverMode is used as parameter by JSConvertReceiver operators. | 46 // The ConvertReceiverMode is used as parameter by JSConvertReceiver operators. |
47 ConvertReceiverMode ConvertReceiverModeOf(const Operator* op); | 47 ConvertReceiverMode ConvertReceiverModeOf(Operator const* op); |
| 48 |
| 49 |
| 50 // The ToBooleanHints are used as parameter by JSToBoolean operators. |
| 51 ToBooleanHints ToBooleanHintsOf(Operator const* op); |
48 | 52 |
49 | 53 |
50 // Defines whether tail call optimization is allowed. | 54 // Defines whether tail call optimization is allowed. |
51 enum class TailCallMode : unsigned { kAllow, kDisallow }; | 55 enum class TailCallMode : unsigned { kAllow, kDisallow }; |
52 | 56 |
53 size_t hash_value(TailCallMode); | 57 size_t hash_value(TailCallMode); |
54 | 58 |
55 std::ostream& operator<<(std::ostream&, TailCallMode); | 59 std::ostream& operator<<(std::ostream&, TailCallMode); |
56 | 60 |
57 | 61 |
(...skipping 432 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
490 const Operator* Add(LanguageMode language_mode, BinaryOperationHints hints); | 494 const Operator* Add(LanguageMode language_mode, BinaryOperationHints hints); |
491 const Operator* Subtract(LanguageMode language_mode, | 495 const Operator* Subtract(LanguageMode language_mode, |
492 BinaryOperationHints hints); | 496 BinaryOperationHints hints); |
493 const Operator* Multiply(LanguageMode language_mode, | 497 const Operator* Multiply(LanguageMode language_mode, |
494 BinaryOperationHints hints); | 498 BinaryOperationHints hints); |
495 const Operator* Divide(LanguageMode language_mode, | 499 const Operator* Divide(LanguageMode language_mode, |
496 BinaryOperationHints hints); | 500 BinaryOperationHints hints); |
497 const Operator* Modulus(LanguageMode language_mode, | 501 const Operator* Modulus(LanguageMode language_mode, |
498 BinaryOperationHints hints); | 502 BinaryOperationHints hints); |
499 | 503 |
500 const Operator* ToBoolean(); | 504 const Operator* ToBoolean(ToBooleanHints hints); |
501 const Operator* ToNumber(); | 505 const Operator* ToNumber(); |
502 const Operator* ToString(); | 506 const Operator* ToString(); |
503 const Operator* ToName(); | 507 const Operator* ToName(); |
504 const Operator* ToObject(); | 508 const Operator* ToObject(); |
505 const Operator* Yield(); | 509 const Operator* Yield(); |
506 | 510 |
507 const Operator* Create(); | 511 const Operator* Create(); |
508 const Operator* CreateArguments(CreateArgumentsParameters::Type type, | 512 const Operator* CreateArguments(CreateArgumentsParameters::Type type, |
509 int start_index); | 513 int start_index); |
510 const Operator* CreateArray(size_t arity, Handle<AllocationSite> site); | 514 const Operator* CreateArray(size_t arity, Handle<AllocationSite> site); |
(...skipping 70 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
581 Zone* const zone_; | 585 Zone* const zone_; |
582 | 586 |
583 DISALLOW_COPY_AND_ASSIGN(JSOperatorBuilder); | 587 DISALLOW_COPY_AND_ASSIGN(JSOperatorBuilder); |
584 }; | 588 }; |
585 | 589 |
586 } // namespace compiler | 590 } // namespace compiler |
587 } // namespace internal | 591 } // namespace internal |
588 } // namespace v8 | 592 } // namespace v8 |
589 | 593 |
590 #endif // V8_COMPILER_JS_OPERATOR_H_ | 594 #endif // V8_COMPILER_JS_OPERATOR_H_ |
OLD | NEW |