Index: src/compiler/common-operator.cc |
diff --git a/src/compiler/common-operator.cc b/src/compiler/common-operator.cc |
index bc36c5208bd2b5ad2ab98a0b41896f8aa5d09911..5862e6719cd17c7c665856692f41f984e7184ff9 100644 |
--- a/src/compiler/common-operator.cc |
+++ b/src/compiler/common-operator.cc |
@@ -221,6 +221,11 @@ RegionObservability RegionObservabilityOf(Operator const* op) { |
return OpParameter<RegionObservability>(op); |
} |
+Type* SigmaTypeOf(Operator const* op) { |
+ DCHECK_EQ(IrOpcode::kSigma, op->opcode()); |
+ return OpParameter<Type*>(op); |
+} |
+ |
std::ostream& operator<<(std::ostream& os, |
const ZoneVector<MachineType>* types) { |
// Print all the MachineTypes, separated by commas. |
@@ -853,6 +858,13 @@ const Operator* CommonOperatorBuilder::Phi(MachineRepresentation rep, |
rep); // parameter |
} |
+const Operator* CommonOperatorBuilder::Sigma(Type* type) { |
+ return new (zone()) Operator1<Type*>( // -- |
+ IrOpcode::kSigma, Operator::kPure, // opcode |
+ "Sigma", // name |
+ 1, 0, 1, 1, 0, 0, // counts |
+ type); // parameter |
+} |
const Operator* CommonOperatorBuilder::EffectPhi(int effect_input_count) { |
DCHECK(effect_input_count > 0); // Disallow empty effect phis. |