diff options
Diffstat (limited to 'deps/v8/src/compiler/common-operator.cc')
-rw-r--r-- | deps/v8/src/compiler/common-operator.cc | 21 |
1 files changed, 18 insertions, 3 deletions
diff --git a/deps/v8/src/compiler/common-operator.cc b/deps/v8/src/compiler/common-operator.cc index 253a92eb84..9ed6943367 100644 --- a/deps/v8/src/compiler/common-operator.cc +++ b/deps/v8/src/compiler/common-operator.cc @@ -136,6 +136,13 @@ const Operator* CommonOperatorBuilder::MarkAsSafetyCheck( } } +const Operator* CommonOperatorBuilder::DelayedStringConstant( + const StringConstantBase* str) { + return new (zone()) Operator1<const StringConstantBase*>( + IrOpcode::kDelayedStringConstant, Operator::kPure, + "DelayedStringConstant", 0, 0, 0, 1, 0, 0, str); +} + bool operator==(SelectParameters const& lhs, SelectParameters const& rhs) { return lhs.representation() == rhs.representation() && lhs.hint() == rhs.hint(); @@ -1194,6 +1201,11 @@ Handle<HeapObject> HeapConstantOf(const Operator* op) { return OpParameter<Handle<HeapObject>>(op); } +const StringConstantBase* StringConstantBaseOf(const Operator* op) { + DCHECK_EQ(IrOpcode::kDelayedStringConstant, op->opcode()); + return OpParameter<const StringConstantBase*>(op); +} + const Operator* CommonOperatorBuilder::RelocatableInt32Constant( int32_t value, RelocInfo::Mode rmode) { return new (zone()) Operator1<RelocatablePtrConstantInfo>( // -- @@ -1431,7 +1443,8 @@ const Operator* CommonOperatorBuilder::Call( Operator::ZeroIfNoThrow(call_descriptor->properties()), call_descriptor) {} - void PrintParameter(std::ostream& os, PrintVerbosity verbose) const { + void PrintParameter(std::ostream& os, + PrintVerbosity verbose) const override { os << "[" << *parameter() << "]"; } }; @@ -1455,7 +1468,8 @@ const Operator* CommonOperatorBuilder::CallWithCallerSavedRegisters( Operator::ZeroIfNoThrow(call_descriptor->properties()), call_descriptor) {} - void PrintParameter(std::ostream& os, PrintVerbosity verbose) const { + void PrintParameter(std::ostream& os, + PrintVerbosity verbose) const override { os << "[" << *parameter() << "]"; } }; @@ -1474,7 +1488,8 @@ const Operator* CommonOperatorBuilder::TailCall( call_descriptor->FrameStateCount(), 1, 1, 0, 0, 1, call_descriptor) {} - void PrintParameter(std::ostream& os, PrintVerbosity verbose) const { + void PrintParameter(std::ostream& os, + PrintVerbosity verbose) const override { os << "[" << *parameter() << "]"; } }; |