Index: runtime/vm/intermediate_language.cc |
diff --git a/runtime/vm/intermediate_language.cc b/runtime/vm/intermediate_language.cc |
index 0bd7f486a76fa298fc165a719c1f7aa3229f5825..08cb3b527bfa1644fef2d336a6459383a45fc252 100644 |
--- a/runtime/vm/intermediate_language.cc |
+++ b/runtime/vm/intermediate_language.cc |
@@ -131,6 +131,15 @@ intptr_t CreateArrayComp::InputCount() const { |
} |
+Value* CreateArrayComp::InputAt(intptr_t i) const { |
+ if (i == 0) { |
+ return element_type(); |
+ } else { |
+ return ElementAt(i - 1); |
+ } |
+} |
+ |
+ |
intptr_t BranchInstr::InputCount() const { |
return 1; |
} |
@@ -840,7 +849,7 @@ void StoreInstanceFieldComp::EmitNativeCode(FlowGraphCompiler* compiler) { |
LocationSummary* ThrowInstr::MakeLocationSummary() const { |
const int kNumInputs = 0; |
const int kNumTemps = 0; |
- return new LocationSummary(kNumInputs, kNumTemps); |
+ return new LocationSummary(kNumInputs, kNumTemps, LocationSummary::kCall); |
} |
@@ -858,7 +867,7 @@ void ThrowInstr::EmitNativeCode(FlowGraphCompiler* compiler) { |
LocationSummary* ReThrowInstr::MakeLocationSummary() const { |
const int kNumInputs = 0; |
const int kNumTemps = 0; |
- return new LocationSummary(kNumInputs, kNumTemps); |
+ return new LocationSummary(kNumInputs, kNumTemps, LocationSummary::kCall); |
} |
@@ -875,11 +884,17 @@ void ReThrowInstr::EmitNativeCode(FlowGraphCompiler* compiler) { |
LocationSummary* BranchInstr::MakeLocationSummary() const { |
if (is_fused_with_comparison()) { |
- return LocationSummary::Make(0, Location::NoLocation()); |
+ return LocationSummary::Make(0, |
+ Location::NoLocation(), |
+ LocationSummary::kNoCall, |
+ LocationSummary::kBranch); |
} else { |
const int kNumInputs = 1; |
const int kNumTemps = 0; |
- LocationSummary* locs = new LocationSummary(kNumInputs, kNumTemps); |
+ LocationSummary* locs = new LocationSummary(kNumInputs, |
+ kNumTemps, |
+ LocationSummary::kNoCall, |
+ LocationSummary::kBranch); |
locs->set_in(0, Location::RequiresRegister()); |
return locs; |
} |
@@ -1077,7 +1092,9 @@ void AssertAssignableComp::EmitNativeCode(FlowGraphCompiler* compiler) { |
LocationSummary* AssertBooleanComp::MakeLocationSummary() const { |
- return LocationSummary::Make(1, Location::SameAsFirstInput()); |
+ return LocationSummary::Make(1, |
+ Location::SameAsFirstInput(), |
+ LocationSummary::kCall); |
} |