| Index: src/compiler/common-operator.cc
|
| diff --git a/src/compiler/common-operator.cc b/src/compiler/common-operator.cc
|
| index 3bb1b34495fbcef242e04a7257c9b579a7552de0..4b26102afe7977afbd360f10f62d0b20e17cc0c7 100644
|
| --- a/src/compiler/common-operator.cc
|
| +++ b/src/compiler/common-operator.cc
|
| @@ -142,6 +142,25 @@ std::ostream& operator<<(std::ostream& os, ParameterInfo const& i) {
|
| return os;
|
| }
|
|
|
| +bool operator==(RelocatablePtrConstantInfo const& lhs,
|
| + RelocatablePtrConstantInfo const& rhs) {
|
| + return lhs.rmode() == rhs.rmode() && lhs.value() == rhs.value();
|
| +}
|
| +
|
| +bool operator!=(RelocatablePtrConstantInfo const& lhs,
|
| + RelocatablePtrConstantInfo const& rhs) {
|
| + return !(lhs == rhs);
|
| +}
|
| +
|
| +size_t hash_value(RelocatablePtrConstantInfo const& p) {
|
| + return base::hash_combine(p.value(), p.rmode());
|
| +}
|
| +
|
| +std::ostream& operator<<(std::ostream& os,
|
| + RelocatablePtrConstantInfo const& p) {
|
| + return os << p.value() << "|" << p.rmode();
|
| +}
|
| +
|
| #define CACHED_OP_LIST(V) \
|
| V(Dead, Operator::kFoldable, 0, 0, 0, 1, 1, 1) \
|
| V(DeoptimizeIf, Operator::kFoldable, 2, 1, 1, 0, 0, 1) \
|
| @@ -668,6 +687,23 @@ const Operator* CommonOperatorBuilder::HeapConstant(
|
| value); // parameter
|
| }
|
|
|
| +const Operator* CommonOperatorBuilder::RelocatableInt32Constant(
|
| + int32_t value, RelocInfo::Mode rmode) {
|
| + return new (zone()) Operator1<RelocatablePtrConstantInfo>( // --
|
| + IrOpcode::kRelocatableInt32Constant, Operator::kPure, // opcode
|
| + "RelocatableInt32Constant", // name
|
| + 0, 0, 0, 1, 0, 0, // counts
|
| + RelocatablePtrConstantInfo(value, rmode)); // parameter
|
| +}
|
| +
|
| +const Operator* CommonOperatorBuilder::RelocatableInt64Constant(
|
| + int64_t value, RelocInfo::Mode rmode) {
|
| + return new (zone()) Operator1<RelocatablePtrConstantInfo>( // --
|
| + IrOpcode::kRelocatableInt64Constant, Operator::kPure, // opcode
|
| + "RelocatableInt64Constant", // name
|
| + 0, 0, 0, 1, 0, 0, // counts
|
| + RelocatablePtrConstantInfo(value, rmode)); // parameter
|
| +}
|
|
|
| const Operator* CommonOperatorBuilder::Select(MachineRepresentation rep,
|
| BranchHint hint) {
|
|
|