| Index: runtime/vm/intermediate_language_arm64.cc
|
| ===================================================================
|
| --- runtime/vm/intermediate_language_arm64.cc (revision 36483)
|
| +++ runtime/vm/intermediate_language_arm64.cc (working copy)
|
| @@ -37,7 +37,7 @@
|
| const intptr_t kNumInputs = 1;
|
| const intptr_t kNumTemps= 0;
|
| LocationSummary* locs =
|
| - new LocationSummary(kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + new (isolate) LocationSummary(isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| locs->set_in(0, Location::AnyOrConstant(value()));
|
| return locs;
|
| }
|
| @@ -66,7 +66,7 @@
|
| const intptr_t kNumInputs = 1;
|
| const intptr_t kNumTemps = 0;
|
| LocationSummary* locs =
|
| - new LocationSummary(kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + new (isolate) LocationSummary(isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| locs->set_in(0, Location::RegisterLocation(R0));
|
| return locs;
|
| }
|
| @@ -183,7 +183,7 @@
|
| const intptr_t kNumInputs = 1;
|
| const intptr_t kNumTemps = 0;
|
| LocationSummary* summary =
|
| - new LocationSummary(kNumInputs, kNumTemps, LocationSummary::kCall);
|
| + new (isolate) LocationSummary(isolate, kNumInputs, kNumTemps, LocationSummary::kCall);
|
| summary->set_in(0, Location::RegisterLocation(R0)); // Function.
|
| summary->set_out(0, Location::RegisterLocation(R0));
|
| return summary;
|
| @@ -293,7 +293,7 @@
|
| const intptr_t kNumInputs = 3;
|
| const intptr_t kNumTemps = 0;
|
| LocationSummary* summary =
|
| - new LocationSummary(kNumInputs, kNumTemps, LocationSummary::kCall);
|
| + new (isolate) LocationSummary(isolate, kNumInputs, kNumTemps, LocationSummary::kCall);
|
| summary->set_in(0, Location::RegisterLocation(R0)); // Value.
|
| summary->set_in(1, Location::RegisterLocation(R2)); // Instantiator.
|
| summary->set_in(2, Location::RegisterLocation(R1)); // Type arguments.
|
| @@ -306,7 +306,7 @@
|
| const intptr_t kNumInputs = 1;
|
| const intptr_t kNumTemps = 0;
|
| LocationSummary* locs =
|
| - new LocationSummary(kNumInputs, kNumTemps, LocationSummary::kCall);
|
| + new (isolate) LocationSummary(isolate, kNumInputs, kNumTemps, LocationSummary::kCall);
|
| locs->set_in(0, Location::RegisterLocation(R0));
|
| locs->set_out(0, Location::RegisterLocation(R0));
|
| return locs;
|
| @@ -427,7 +427,7 @@
|
| if (operation_cid() == kDoubleCid) {
|
| const intptr_t kNumTemps = 0;
|
| LocationSummary* locs =
|
| - new LocationSummary(kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + new (isolate) LocationSummary(isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| locs->set_in(0, Location::RequiresFpuRegister());
|
| locs->set_in(1, Location::RequiresFpuRegister());
|
| locs->set_out(0, Location::RequiresRegister());
|
| @@ -436,7 +436,7 @@
|
| if (operation_cid() == kSmiCid) {
|
| const intptr_t kNumTemps = 0;
|
| LocationSummary* locs =
|
| - new LocationSummary(kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + new (isolate) LocationSummary(isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| locs->set_in(0, Location::RegisterOrConstant(left()));
|
| // Only one input can be a constant operand. The case of two constant
|
| // operands should be handled by constant propagation.
|
| @@ -532,7 +532,7 @@
|
| const intptr_t kNumInputs = 2;
|
| const intptr_t kNumTemps = 0;
|
| LocationSummary* locs =
|
| - new LocationSummary(kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + new (isolate) LocationSummary(isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| locs->set_in(0, Location::RequiresRegister());
|
| // Only one input can be a constant operand. The case of two constant
|
| // operands should be handled by constant propagation.
|
| @@ -576,7 +576,7 @@
|
| const intptr_t kNumInputs = 1;
|
| const intptr_t kNumTemps = 1;
|
| LocationSummary* locs =
|
| - new LocationSummary(kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + new (isolate) LocationSummary(isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| locs->set_in(0, Location::RequiresRegister());
|
| locs->set_temp(0, Location::RequiresRegister());
|
| locs->set_out(0, Location::RequiresRegister());
|
| @@ -651,7 +651,7 @@
|
| const intptr_t kNumTemps = 0;
|
| if (operation_cid() == kDoubleCid) {
|
| LocationSummary* summary =
|
| - new LocationSummary(kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + new (isolate) LocationSummary(isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| summary->set_in(0, Location::RequiresFpuRegister());
|
| summary->set_in(1, Location::RequiresFpuRegister());
|
| summary->set_out(0, Location::RequiresRegister());
|
| @@ -659,7 +659,7 @@
|
| }
|
| ASSERT(operation_cid() == kSmiCid);
|
| LocationSummary* summary =
|
| - new LocationSummary(kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + new (isolate) LocationSummary(isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| summary->set_in(0, Location::RegisterOrConstant(left()));
|
| // Only one input can be a constant operand. The case of two constant
|
| // operands should be handled by constant propagation.
|
| @@ -722,7 +722,7 @@
|
| const intptr_t kNumInputs = 0;
|
| const intptr_t kNumTemps = 3;
|
| LocationSummary* locs =
|
| - new LocationSummary(kNumInputs, kNumTemps, LocationSummary::kCall);
|
| + new (isolate) LocationSummary(isolate, kNumInputs, kNumTemps, LocationSummary::kCall);
|
| locs->set_temp(0, Location::RegisterLocation(R1));
|
| locs->set_temp(1, Location::RegisterLocation(R2));
|
| locs->set_temp(2, Location::RegisterLocation(R5));
|
| @@ -825,7 +825,7 @@
|
| const intptr_t kNumInputs = 1;
|
| const intptr_t kNumTemps = 0;
|
| LocationSummary* summary =
|
| - new LocationSummary(kNumInputs, kNumTemps, LocationSummary::kCall);
|
| + new (isolate) LocationSummary(isolate, kNumInputs, kNumTemps, LocationSummary::kCall);
|
| summary->set_in(0, Location::RegisterLocation(R0));
|
| summary->set_out(0, Location::RegisterLocation(R0));
|
| return summary;
|
| @@ -957,7 +957,7 @@
|
| const intptr_t kNumInputs = 2;
|
| const intptr_t kNumTemps = 0;
|
| LocationSummary* locs =
|
| - new LocationSummary(kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + new (isolate) LocationSummary(isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| locs->set_in(0, Location::RequiresRegister());
|
| // The smi index is either untagged (element size == 1), or it is left smi
|
| // tagged (for all element sizes > 1).
|
| @@ -1125,7 +1125,7 @@
|
| const intptr_t kNumInputs = 3;
|
| const intptr_t kNumTemps = 0;
|
| LocationSummary* locs =
|
| - new LocationSummary(kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + new (isolate) LocationSummary(isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| locs->set_in(0, Location::RequiresRegister());
|
| // The smi index is either untagged (element size == 1), or it is left smi
|
| // tagged (for all element sizes > 1).
|
| @@ -1336,7 +1336,7 @@
|
| LocationSummary* GuardFieldInstr::MakeLocationSummary(bool opt) const {
|
| const intptr_t kNumInputs = 1;
|
| LocationSummary* summary =
|
| - new LocationSummary(kNumInputs, 0, LocationSummary::kNoCall);
|
| + new (isolate) LocationSummary(isolate, kNumInputs, 0, LocationSummary::kNoCall);
|
| summary->set_in(0, Location::RequiresRegister());
|
| const bool field_has_length = field().needs_length_check();
|
| summary->AddTemp(Location::RequiresRegister());
|
| @@ -1690,7 +1690,7 @@
|
| const intptr_t kNumInputs = 2;
|
| const intptr_t kNumTemps = 0;
|
| LocationSummary* summary =
|
| - new LocationSummary(kNumInputs, kNumTemps,
|
| + new (isolate) LocationSummary(isolate, kNumInputs, kNumTemps,
|
| !field().IsNull() &&
|
| ((field().guarded_cid() == kIllegalCid) || is_initialization_)
|
| ? LocationSummary::kCallOnSlowPath
|
| @@ -1922,7 +1922,7 @@
|
| const intptr_t kNumInputs = 1;
|
| const intptr_t kNumTemps = 0;
|
| LocationSummary* summary =
|
| - new LocationSummary(kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + new (isolate) LocationSummary(isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| summary->set_in(0, Location::RequiresRegister());
|
| summary->set_out(0, Location::RequiresRegister());
|
| return summary;
|
| @@ -1942,7 +1942,7 @@
|
|
|
|
|
| LocationSummary* StoreStaticFieldInstr::MakeLocationSummary(bool opt) const {
|
| - LocationSummary* locs = new LocationSummary(1, 1, LocationSummary::kNoCall);
|
| + LocationSummary* locs = new (isolate) LocationSummary(isolate, 1, 1, LocationSummary::kNoCall);
|
| locs->set_in(0, value()->NeedsStoreBuffer() ? Location::WritableRegister()
|
| : Location::RequiresRegister());
|
| locs->set_temp(0, Location::RequiresRegister());
|
| @@ -1968,7 +1968,7 @@
|
| const intptr_t kNumInputs = 3;
|
| const intptr_t kNumTemps = 0;
|
| LocationSummary* summary =
|
| - new LocationSummary(kNumInputs, kNumTemps, LocationSummary::kCall);
|
| + new (isolate) LocationSummary(isolate, kNumInputs, kNumTemps, LocationSummary::kCall);
|
| summary->set_in(0, Location::RegisterLocation(R0));
|
| summary->set_in(1, Location::RegisterLocation(R2));
|
| summary->set_in(2, Location::RegisterLocation(R1));
|
| @@ -1995,7 +1995,7 @@
|
| const intptr_t kNumInputs = 2;
|
| const intptr_t kNumTemps = 0;
|
| LocationSummary* locs =
|
| - new LocationSummary(kNumInputs, kNumTemps, LocationSummary::kCall);
|
| + new (isolate) LocationSummary(isolate, kNumInputs, kNumTemps, LocationSummary::kCall);
|
| locs->set_in(kElementTypePos, Location::RegisterLocation(R1));
|
| locs->set_in(kLengthPos, Location::RegisterLocation(R2));
|
| locs->set_out(0, Location::RegisterLocation(R0));
|
| @@ -2115,7 +2115,7 @@
|
| const intptr_t kNumInputs = 1;
|
| const intptr_t kNumTemps = 0;
|
| LocationSummary* locs =
|
| - new LocationSummary(
|
| + new (isolate) LocationSummary(isolate,
|
| kNumInputs, kNumTemps,
|
| (opt && !IsPotentialUnboxedLoad())
|
| ? LocationSummary::kNoCall
|
| @@ -2255,7 +2255,7 @@
|
| const intptr_t kNumInputs = 1;
|
| const intptr_t kNumTemps = 0;
|
| LocationSummary* locs =
|
| - new LocationSummary(kNumInputs, kNumTemps, LocationSummary::kCall);
|
| + new (isolate) LocationSummary(isolate, kNumInputs, kNumTemps, LocationSummary::kCall);
|
| locs->set_in(0, Location::RegisterLocation(R0));
|
| locs->set_out(0, Location::RegisterLocation(R0));
|
| return locs;
|
| @@ -2287,7 +2287,7 @@
|
| const intptr_t kNumInputs = 1;
|
| const intptr_t kNumTemps = 0;
|
| LocationSummary* locs =
|
| - new LocationSummary(kNumInputs, kNumTemps, LocationSummary::kCall);
|
| + new (isolate) LocationSummary(isolate, kNumInputs, kNumTemps, LocationSummary::kCall);
|
| locs->set_in(0, Location::RegisterLocation(R0));
|
| locs->set_out(0, Location::RegisterLocation(R0));
|
| return locs;
|
| @@ -2354,7 +2354,7 @@
|
| const intptr_t kNumInputs = 0;
|
| const intptr_t kNumTemps = 1;
|
| LocationSummary* locs =
|
| - new LocationSummary(kNumInputs, kNumTemps, LocationSummary::kCall);
|
| + new (isolate) LocationSummary(isolate, kNumInputs, kNumTemps, LocationSummary::kCall);
|
| locs->set_temp(0, Location::RegisterLocation(R1));
|
| locs->set_out(0, Location::RegisterLocation(R0));
|
| return locs;
|
| @@ -2379,7 +2379,7 @@
|
| const intptr_t kNumInputs = 1;
|
| const intptr_t kNumTemps = 0;
|
| LocationSummary* locs =
|
| - new LocationSummary(kNumInputs, kNumTemps, LocationSummary::kCall);
|
| + new (isolate) LocationSummary(isolate, kNumInputs, kNumTemps, LocationSummary::kCall);
|
| locs->set_in(0, Location::RegisterLocation(R0));
|
| locs->set_out(0, Location::RegisterLocation(R0));
|
| return locs;
|
| @@ -2443,7 +2443,7 @@
|
| const intptr_t kNumInputs = 0;
|
| const intptr_t kNumTemps = 1;
|
| LocationSummary* summary =
|
| - new LocationSummary(kNumInputs,
|
| + new (isolate) LocationSummary(isolate, kNumInputs,
|
| kNumTemps,
|
| LocationSummary::kCallOnSlowPath);
|
| summary->set_temp(0, Location::RequiresRegister());
|
| @@ -2670,7 +2670,7 @@
|
| const intptr_t kNumInputs = 2;
|
| const intptr_t kNumTemps = 0;
|
| LocationSummary* summary =
|
| - new LocationSummary(kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + new (isolate) LocationSummary(isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| if (op_kind() == Token::kTRUNCDIV) {
|
| summary->set_in(0, Location::RequiresRegister());
|
| if (RightIsPowerOfTwoConstant()) {
|
| @@ -2995,7 +2995,7 @@
|
| const intptr_t kNumInputs = 2;
|
| const intptr_t kNumTemps = 0;
|
| LocationSummary* summary =
|
| - new LocationSummary(kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + new (isolate) LocationSummary(isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| summary->set_in(0, Location::RequiresRegister());
|
| summary->set_in(1, Location::RequiresRegister());
|
| return summary;
|
| @@ -3025,7 +3025,7 @@
|
| const intptr_t kNumInputs = 1;
|
| const intptr_t kNumTemps = 0;
|
| LocationSummary* summary =
|
| - new LocationSummary(kNumInputs,
|
| + new (isolate) LocationSummary(isolate, kNumInputs,
|
| kNumTemps,
|
| LocationSummary::kCallOnSlowPath);
|
| summary->set_in(0, Location::RequiresFpuRegister());
|
| @@ -3054,7 +3054,7 @@
|
| const intptr_t kNumInputs = 1;
|
| const intptr_t kNumTemps = 0;
|
| LocationSummary* summary =
|
| - new LocationSummary(kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + new (isolate) LocationSummary(isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| summary->set_in(0, Location::RequiresRegister());
|
| summary->set_out(0, Location::RequiresFpuRegister());
|
| return summary;
|
| @@ -3102,7 +3102,7 @@
|
| const intptr_t kNumInputs = 1;
|
| const intptr_t kNumTemps = 0;
|
| LocationSummary* summary =
|
| - new LocationSummary(kNumInputs,
|
| + new (isolate) LocationSummary(isolate, kNumInputs,
|
| kNumTemps,
|
| LocationSummary::kCallOnSlowPath);
|
| summary->set_in(0, Location::RequiresFpuRegister());
|
| @@ -3132,7 +3132,7 @@
|
| const intptr_t kNumInputs = 1;
|
| const intptr_t kNumTemps = 0;
|
| LocationSummary* summary =
|
| - new LocationSummary(kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + new (isolate) LocationSummary(isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| summary->set_in(0, Location::RequiresRegister());
|
| summary->set_out(0, Location::RequiresFpuRegister());
|
| return summary;
|
| @@ -3160,7 +3160,7 @@
|
| const intptr_t kNumInputs = 1;
|
| const intptr_t kNumTemps = 0;
|
| LocationSummary* summary =
|
| - new LocationSummary(kNumInputs,
|
| + new (isolate) LocationSummary(isolate, kNumInputs,
|
| kNumTemps,
|
| LocationSummary::kCallOnSlowPath);
|
| summary->set_in(0, Location::RequiresFpuRegister());
|
| @@ -3190,7 +3190,7 @@
|
| const intptr_t kNumInputs = 1;
|
| const intptr_t kNumTemps = 0;
|
| LocationSummary* summary =
|
| - new LocationSummary(kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + new (isolate) LocationSummary(isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| summary->set_in(0, Location::RequiresRegister());
|
| summary->set_out(0, Location::RequiresFpuRegister());
|
| return summary;
|
| @@ -3218,7 +3218,7 @@
|
| const intptr_t kNumInputs = 1;
|
| const intptr_t kNumTemps = 0;
|
| LocationSummary* summary =
|
| - new LocationSummary(kNumInputs,
|
| + new (isolate) LocationSummary(isolate, kNumInputs,
|
| kNumTemps,
|
| LocationSummary::kCallOnSlowPath);
|
| summary->set_in(0, Location::RequiresFpuRegister());
|
| @@ -3280,7 +3280,7 @@
|
| const intptr_t kNumInputs = 1;
|
| const intptr_t kNumTemps = 0;
|
| LocationSummary* summary =
|
| - new LocationSummary(kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + new (isolate) LocationSummary(isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| summary->set_in(0, Location::RequiresRegister());
|
| summary->set_out(0, Location::RequiresFpuRegister());
|
| return summary;
|
| @@ -3308,7 +3308,7 @@
|
| const intptr_t kNumInputs = 2;
|
| const intptr_t kNumTemps = 0;
|
| LocationSummary* summary =
|
| - new LocationSummary(kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + new (isolate) LocationSummary(isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| summary->set_in(0, Location::RequiresFpuRegister());
|
| summary->set_in(1, Location::RequiresFpuRegister());
|
| summary->set_out(0, Location::RequiresFpuRegister());
|
| @@ -3334,7 +3334,7 @@
|
| const intptr_t kNumInputs = 2;
|
| const intptr_t kNumTemps = 0;
|
| LocationSummary* summary =
|
| - new LocationSummary(kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + new (isolate) LocationSummary(isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| summary->set_in(0, Location::RequiresFpuRegister());
|
| summary->set_in(1, Location::RequiresFpuRegister());
|
| summary->set_out(0, Location::RequiresFpuRegister());
|
| @@ -3361,7 +3361,7 @@
|
| const intptr_t kNumInputs = 2;
|
| const intptr_t kNumTemps = 0;
|
| LocationSummary* summary =
|
| - new LocationSummary(kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + new (isolate) LocationSummary(isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| summary->set_in(0, Location::RequiresFpuRegister());
|
| summary->set_in(1, Location::RequiresFpuRegister());
|
| summary->set_out(0, Location::RequiresFpuRegister());
|
| @@ -3422,7 +3422,7 @@
|
| const intptr_t kNumInputs = 4;
|
| const intptr_t kNumTemps = 0;
|
| LocationSummary* summary =
|
| - new LocationSummary(kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + new (isolate) LocationSummary(isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| summary->set_in(0, Location::RequiresFpuRegister());
|
| summary->set_in(1, Location::RequiresFpuRegister());
|
| summary->set_in(2, Location::RequiresFpuRegister());
|
| @@ -3454,7 +3454,7 @@
|
| const intptr_t kNumInputs = 0;
|
| const intptr_t kNumTemps = 0;
|
| LocationSummary* summary =
|
| - new LocationSummary(kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + new (isolate) LocationSummary(isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| summary->set_out(0, Location::RequiresFpuRegister());
|
| return summary;
|
| }
|
| @@ -3470,7 +3470,7 @@
|
| const intptr_t kNumInputs = 1;
|
| const intptr_t kNumTemps = 0;
|
| LocationSummary* summary =
|
| - new LocationSummary(kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + new (isolate) LocationSummary(isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| summary->set_in(0, Location::RequiresFpuRegister());
|
| summary->set_out(0, Location::RequiresFpuRegister());
|
| return summary;
|
| @@ -3526,7 +3526,7 @@
|
| const intptr_t kNumInputs = 2;
|
| const intptr_t kNumTemps = 0;
|
| LocationSummary* summary =
|
| - new LocationSummary(kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + new (isolate) LocationSummary(isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| summary->set_in(0, Location::RequiresFpuRegister());
|
| summary->set_in(1, Location::RequiresFpuRegister());
|
| summary->set_out(0, Location::RequiresFpuRegister());
|
| @@ -3598,7 +3598,7 @@
|
| const intptr_t kNumInputs = 1;
|
| const intptr_t kNumTemps = 0;
|
| LocationSummary* summary =
|
| - new LocationSummary(kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + new (isolate) LocationSummary(isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| summary->set_in(0, Location::RequiresFpuRegister());
|
| summary->set_out(0, Location::RequiresFpuRegister());
|
| return summary;
|
| @@ -3625,7 +3625,7 @@
|
| const intptr_t kNumInputs = 0;
|
| const intptr_t kNumTemps = 0;
|
| LocationSummary* summary =
|
| - new LocationSummary(kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + new (isolate) LocationSummary(isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| summary->set_out(0, Location::RequiresFpuRegister());
|
| return summary;
|
| }
|
| @@ -3641,7 +3641,7 @@
|
| const intptr_t kNumInputs = 1;
|
| const intptr_t kNumTemps = 0;
|
| LocationSummary* summary =
|
| - new LocationSummary(kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + new (isolate) LocationSummary(isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| summary->set_in(0, Location::RequiresFpuRegister());
|
| summary->set_out(0, Location::RequiresFpuRegister());
|
| return summary;
|
| @@ -3660,7 +3660,7 @@
|
| const intptr_t kNumInputs = 2;
|
| const intptr_t kNumTemps = 0;
|
| LocationSummary* summary =
|
| - new LocationSummary(kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + new (isolate) LocationSummary(isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| summary->set_in(0, Location::RequiresFpuRegister());
|
| summary->set_in(1, Location::RequiresFpuRegister());
|
| summary->set_out(0, Location::RequiresFpuRegister());
|
| @@ -3795,7 +3795,7 @@
|
| const intptr_t kNumInputs = 1;
|
| const intptr_t kNumTemps = 0;
|
| LocationSummary* summary =
|
| - new LocationSummary(kNumInputs, kNumTemps, LocationSummary::kCall);
|
| + new (isolate) LocationSummary(isolate, kNumInputs, kNumTemps, LocationSummary::kCall);
|
| summary->set_in(0, Location::FpuRegisterLocation(V0));
|
| summary->set_out(0, Location::FpuRegisterLocation(V0));
|
| return summary;
|
| @@ -3805,7 +3805,7 @@
|
| const intptr_t kNumInputs = 1;
|
| const intptr_t kNumTemps = 0;
|
| LocationSummary* summary =
|
| - new LocationSummary(kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + new (isolate) LocationSummary(isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| summary->set_in(0, Location::RequiresFpuRegister());
|
| summary->set_out(0, Location::RequiresFpuRegister());
|
| return summary;
|
| @@ -3834,7 +3834,7 @@
|
| const intptr_t kNumInputs = 2;
|
| const intptr_t kNumTemps = 0;
|
| LocationSummary* summary =
|
| - new LocationSummary(kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + new (isolate) LocationSummary(isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| summary->set_in(0, Location::RequiresFpuRegister());
|
| summary->set_in(1, Location::RequiresFpuRegister());
|
| // Reuse the left register so that code can be made shorter.
|
| @@ -3845,7 +3845,7 @@
|
| const intptr_t kNumInputs = 2;
|
| const intptr_t kNumTemps = 0;
|
| LocationSummary* summary =
|
| - new LocationSummary(kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + new (isolate) LocationSummary(isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| summary->set_in(0, Location::RequiresRegister());
|
| summary->set_in(1, Location::RequiresRegister());
|
| // Reuse the left register so that code can be made shorter.
|
| @@ -3918,7 +3918,7 @@
|
| const intptr_t kNumInputs = 1;
|
| const intptr_t kNumTemps = 0;
|
| LocationSummary* summary =
|
| - new LocationSummary(kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + new (isolate) LocationSummary(isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| summary->set_in(0, Location::RequiresRegister());
|
| // We make use of 3-operand instructions by not requiring result register
|
| // to be identical to first input register as on Intel.
|
| @@ -3955,7 +3955,7 @@
|
| const intptr_t kNumInputs = 1;
|
| const intptr_t kNumTemps = 0;
|
| LocationSummary* summary =
|
| - new LocationSummary(kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + new (isolate) LocationSummary(isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| summary->set_in(0, Location::RequiresFpuRegister());
|
| summary->set_out(0, Location::RequiresFpuRegister());
|
| return summary;
|
| @@ -3973,7 +3973,7 @@
|
| const intptr_t kNumInputs = 1;
|
| const intptr_t kNumTemps = 0;
|
| LocationSummary* result =
|
| - new LocationSummary(kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + new (isolate) LocationSummary(isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| result->set_in(0, Location::WritableRegister());
|
| result->set_out(0, Location::RequiresFpuRegister());
|
| return result;
|
| @@ -3992,7 +3992,7 @@
|
| const intptr_t kNumInputs = 1;
|
| const intptr_t kNumTemps = 0;
|
| LocationSummary* result =
|
| - new LocationSummary(kNumInputs, kNumTemps, LocationSummary::kCall);
|
| + new (isolate) LocationSummary(isolate, kNumInputs, kNumTemps, LocationSummary::kCall);
|
| result->set_in(0, Location::RegisterLocation(R1));
|
| result->set_out(0, Location::RegisterLocation(R0));
|
| return result;
|
| @@ -4044,7 +4044,7 @@
|
| LocationSummary* DoubleToSmiInstr::MakeLocationSummary(bool opt) const {
|
| const intptr_t kNumInputs = 1;
|
| const intptr_t kNumTemps = 0;
|
| - LocationSummary* result = new LocationSummary(
|
| + LocationSummary* result = new (isolate) LocationSummary(isolate,
|
| kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| result->set_in(0, Location::RequiresFpuRegister());
|
| result->set_out(0, Location::RequiresRegister());
|
| @@ -4088,7 +4088,7 @@
|
| const intptr_t kNumInputs = 1;
|
| const intptr_t kNumTemps = 0;
|
| LocationSummary* result =
|
| - new LocationSummary(kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + new (isolate) LocationSummary(isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| result->set_in(0, Location::RequiresFpuRegister());
|
| result->set_out(0, Location::RequiresFpuRegister());
|
| return result;
|
| @@ -4106,7 +4106,7 @@
|
| const intptr_t kNumInputs = 1;
|
| const intptr_t kNumTemps = 0;
|
| LocationSummary* result =
|
| - new LocationSummary(kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + new (isolate) LocationSummary(isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| result->set_in(0, Location::RequiresFpuRegister());
|
| result->set_out(0, Location::RequiresFpuRegister());
|
| return result;
|
| @@ -4124,7 +4124,7 @@
|
| ASSERT((InputCount() == 1) || (InputCount() == 2));
|
| const intptr_t kNumTemps = 0;
|
| LocationSummary* result =
|
| - new LocationSummary(InputCount(), kNumTemps, LocationSummary::kCall);
|
| + new (isolate) LocationSummary(isolate, InputCount(), kNumTemps, LocationSummary::kCall);
|
| result->set_in(0, Location::FpuRegisterLocation(V0));
|
| if (InputCount() == 2) {
|
| result->set_in(1, Location::FpuRegisterLocation(V1));
|
| @@ -4264,7 +4264,7 @@
|
| ASSERT(opt);
|
| const intptr_t kNumInputs = 1;
|
| LocationSummary* summary =
|
| - new LocationSummary(kNumInputs, 0, LocationSummary::kNoCall);
|
| + new (isolate) LocationSummary(isolate, kNumInputs, 0, LocationSummary::kNoCall);
|
| if (representation() == kUnboxedDouble) {
|
| if (index() == 0) {
|
| summary->set_in(0, Location::Pair(Location::RequiresFpuRegister(),
|
| @@ -4313,7 +4313,7 @@
|
| const intptr_t kNumInputs = 2;
|
| const intptr_t kNumTemps = 0;
|
| LocationSummary* summary =
|
| - new LocationSummary(kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + new (isolate) LocationSummary(isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| summary->set_in(0, Location::RequiresRegister());
|
| summary->set_in(1, Location::RequiresRegister());
|
| // Output is a pair of registers.
|
| @@ -4449,7 +4449,7 @@
|
| const intptr_t kNumInputs = 1;
|
| const intptr_t kNumTemps = 0;
|
| LocationSummary* summary =
|
| - new LocationSummary(kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + new (isolate) LocationSummary(isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| summary->set_in(0, Location::RequiresRegister());
|
| if (!IsNullCheck()) {
|
| summary->AddTemp(Location::RequiresRegister());
|
| @@ -4502,7 +4502,7 @@
|
| const intptr_t kNumInputs = 1;
|
| const intptr_t kNumTemps = 0;
|
| LocationSummary* summary =
|
| - new LocationSummary(kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + new (isolate) LocationSummary(isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| summary->set_in(0, Location::RequiresRegister());
|
| return summary;
|
| }
|
| @@ -4520,7 +4520,7 @@
|
| const intptr_t kNumInputs = 2;
|
| const intptr_t kNumTemps = 0;
|
| LocationSummary* locs =
|
| - new LocationSummary(kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + new (isolate) LocationSummary(isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| locs->set_in(kLengthPos, Location::RegisterOrSmiConstant(length()));
|
| locs->set_in(kIndexPos, Location::RegisterOrSmiConstant(index()));
|
| return locs;
|
| @@ -4626,7 +4626,7 @@
|
|
|
|
|
| LocationSummary* ThrowInstr::MakeLocationSummary(bool opt) const {
|
| - return new LocationSummary(0, 0, LocationSummary::kCall);
|
| + return new (isolate) LocationSummary(isolate, 0, 0, LocationSummary::kCall);
|
| }
|
|
|
|
|
| @@ -4641,7 +4641,7 @@
|
|
|
|
|
| LocationSummary* ReThrowInstr::MakeLocationSummary(bool opt) const {
|
| - return new LocationSummary(0, 0, LocationSummary::kCall);
|
| + return new (isolate) LocationSummary(isolate, 0, 0, LocationSummary::kCall);
|
| }
|
|
|
|
|
| @@ -4682,7 +4682,7 @@
|
|
|
|
|
| LocationSummary* GotoInstr::MakeLocationSummary(bool opt) const {
|
| - return new LocationSummary(0, 0, LocationSummary::kNoCall);
|
| + return new (isolate) LocationSummary(isolate, 0, 0, LocationSummary::kNoCall);
|
| }
|
|
|
|
|
| @@ -4727,14 +4727,14 @@
|
| const intptr_t kNumTemps = 0;
|
| if (needs_number_check()) {
|
| LocationSummary* locs =
|
| - new LocationSummary(kNumInputs, kNumTemps, LocationSummary::kCall);
|
| + new (isolate) LocationSummary(isolate, kNumInputs, kNumTemps, LocationSummary::kCall);
|
| locs->set_in(0, Location::RegisterLocation(R0));
|
| locs->set_in(1, Location::RegisterLocation(R1));
|
| locs->set_out(0, Location::RegisterLocation(R0));
|
| return locs;
|
| }
|
| LocationSummary* locs =
|
| - new LocationSummary(kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + new (isolate) LocationSummary(isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| locs->set_in(0, Location::RegisterOrConstant(left()));
|
| // Only one of the inputs can be a constant. Choose register if the first one
|
| // is a constant.
|
|
|