| 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);
|
| }
|
|
|
|
|
|
|