| Index: runtime/vm/intermediate_language_x64.cc
|
| ===================================================================
|
| --- runtime/vm/intermediate_language_x64.cc (revision 42919)
|
| +++ runtime/vm/intermediate_language_x64.cc (working copy)
|
| @@ -32,20 +32,20 @@
|
|
|
| // Generic summary for call instructions that have all arguments pushed
|
| // on the stack and return the result in a fixed register RAX.
|
| -LocationSummary* Instruction::MakeCallSummary(Isolate* isolate) {
|
| - LocationSummary* result = new(isolate) LocationSummary(
|
| - Isolate::Current(), 0, 0, LocationSummary::kCall);
|
| +LocationSummary* Instruction::MakeCallSummary(Zone* zone) {
|
| + LocationSummary* result = new(zone) LocationSummary(
|
| + zone, 0, 0, LocationSummary::kCall);
|
| result->set_out(0, Location::RegisterLocation(RAX));
|
| return result;
|
| }
|
|
|
|
|
| -LocationSummary* PushArgumentInstr::MakeLocationSummary(Isolate* isolate,
|
| +LocationSummary* PushArgumentInstr::MakeLocationSummary(Zone* zone,
|
| bool opt) const {
|
| const intptr_t kNumInputs = 1;
|
| const intptr_t kNumTemps = 0;
|
| - LocationSummary* locs = new(isolate) LocationSummary(
|
| - isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + LocationSummary* locs = new(zone) LocationSummary(
|
| + zone, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| locs->set_in(0, Location::AnyOrConstant(value()));
|
| return locs;
|
| }
|
| @@ -68,12 +68,12 @@
|
| }
|
|
|
|
|
| -LocationSummary* ReturnInstr::MakeLocationSummary(Isolate* isolate,
|
| +LocationSummary* ReturnInstr::MakeLocationSummary(Zone* zone,
|
| bool opt) const {
|
| const intptr_t kNumInputs = 1;
|
| const intptr_t kNumTemps = 0;
|
| - LocationSummary* locs = new(isolate) LocationSummary(
|
| - isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + LocationSummary* locs = new(zone) LocationSummary(
|
| + zone, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| locs->set_in(0, Location::RegisterLocation(RAX));
|
| return locs;
|
| }
|
| @@ -136,9 +136,9 @@
|
| }
|
|
|
|
|
| -LocationSummary* IfThenElseInstr::MakeLocationSummary(Isolate* isolate,
|
| +LocationSummary* IfThenElseInstr::MakeLocationSummary(Zone* zone,
|
| bool opt) const {
|
| - comparison()->InitializeLocationSummary(isolate, opt);
|
| + comparison()->InitializeLocationSummary(zone, opt);
|
| // TODO(vegorov): support byte register constraints in the register allocator.
|
| comparison()->locs()->set_out(0, Location::RegisterLocation(RDX));
|
| return comparison()->locs();
|
| @@ -194,13 +194,13 @@
|
| }
|
|
|
|
|
| -LocationSummary* LoadLocalInstr::MakeLocationSummary(Isolate* isolate,
|
| +LocationSummary* LoadLocalInstr::MakeLocationSummary(Zone* zone,
|
| bool opt) const {
|
| const intptr_t kNumInputs = 0;
|
| const intptr_t stack_index = (local().index() < 0)
|
| ? kFirstLocalSlotFromFp - local().index()
|
| : kParamEndSlotFromFp - local().index();
|
| - return LocationSummary::Make(isolate,
|
| + return LocationSummary::Make(zone,
|
| kNumInputs,
|
| Location::StackSlot(stack_index),
|
| LocationSummary::kNoCall);
|
| @@ -213,10 +213,10 @@
|
| }
|
|
|
|
|
| -LocationSummary* StoreLocalInstr::MakeLocationSummary(Isolate* isolate,
|
| +LocationSummary* StoreLocalInstr::MakeLocationSummary(Zone* zone,
|
| bool opt) const {
|
| const intptr_t kNumInputs = 1;
|
| - return LocationSummary::Make(isolate,
|
| + return LocationSummary::Make(zone,
|
| kNumInputs,
|
| Location::SameAsFirstInput(),
|
| LocationSummary::kNoCall);
|
| @@ -231,10 +231,10 @@
|
| }
|
|
|
|
|
| -LocationSummary* ConstantInstr::MakeLocationSummary(Isolate* isolate,
|
| +LocationSummary* ConstantInstr::MakeLocationSummary(Zone* zone,
|
| bool opt) const {
|
| const intptr_t kNumInputs = 0;
|
| - return LocationSummary::Make(isolate,
|
| + return LocationSummary::Make(zone,
|
| kNumInputs,
|
| Location::RequiresRegister(),
|
| LocationSummary::kNoCall);
|
| @@ -250,12 +250,12 @@
|
| }
|
|
|
|
|
| -LocationSummary* UnboxedConstantInstr::MakeLocationSummary(Isolate* isolate,
|
| +LocationSummary* UnboxedConstantInstr::MakeLocationSummary(Zone* zone,
|
| bool opt) const {
|
| const intptr_t kNumInputs = 0;
|
| const intptr_t kNumTemps = 0;
|
| - LocationSummary* locs = new(isolate) LocationSummary(
|
| - isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + LocationSummary* locs = new(zone) LocationSummary(
|
| + zone, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| switch (representation()) {
|
| case kUnboxedDouble:
|
| locs->set_out(0, Location::RequiresFpuRegister());
|
| @@ -296,12 +296,12 @@
|
| }
|
|
|
|
|
| -LocationSummary* AssertAssignableInstr::MakeLocationSummary(Isolate* isolate,
|
| +LocationSummary* AssertAssignableInstr::MakeLocationSummary(Zone* zone,
|
| bool opt) const {
|
| const intptr_t kNumInputs = 3;
|
| const intptr_t kNumTemps = 0;
|
| - LocationSummary* summary = new(isolate) LocationSummary(
|
| - isolate, kNumInputs, kNumTemps, LocationSummary::kCall);
|
| + LocationSummary* summary = new(zone) LocationSummary(
|
| + zone, kNumInputs, kNumTemps, LocationSummary::kCall);
|
| summary->set_in(0, Location::RegisterLocation(RAX)); // Value.
|
| summary->set_in(1, Location::RegisterLocation(RCX)); // Instantiator.
|
| summary->set_in(2, Location::RegisterLocation(RDX)); // Type arguments.
|
| @@ -310,12 +310,12 @@
|
| }
|
|
|
|
|
| -LocationSummary* AssertBooleanInstr::MakeLocationSummary(Isolate* isolate,
|
| +LocationSummary* AssertBooleanInstr::MakeLocationSummary(Zone* zone,
|
| bool opt) const {
|
| const intptr_t kNumInputs = 1;
|
| const intptr_t kNumTemps = 0;
|
| - LocationSummary* locs = new(isolate) LocationSummary(
|
| - isolate, kNumInputs, kNumTemps, LocationSummary::kCall);
|
| + LocationSummary* locs = new(zone) LocationSummary(
|
| + zone, kNumInputs, kNumTemps, LocationSummary::kCall);
|
| locs->set_in(0, Location::RegisterLocation(RAX));
|
| locs->set_out(0, Location::RegisterLocation(RAX));
|
| return locs;
|
| @@ -379,13 +379,13 @@
|
| }
|
|
|
|
|
| -LocationSummary* EqualityCompareInstr::MakeLocationSummary(Isolate* isolate,
|
| +LocationSummary* EqualityCompareInstr::MakeLocationSummary(Zone* zone,
|
| bool opt) const {
|
| const intptr_t kNumInputs = 2;
|
| if (operation_cid() == kMintCid) {
|
| const intptr_t kNumTemps = 0;
|
| - LocationSummary* locs = new(isolate) LocationSummary(
|
| - isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + LocationSummary* locs = new(zone) LocationSummary(
|
| + zone, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| locs->set_in(0, Location::RequiresRegister());
|
| locs->set_in(1, Location::RequiresRegister());
|
| locs->set_out(0, Location::RequiresRegister());
|
| @@ -393,8 +393,8 @@
|
| }
|
| if (operation_cid() == kDoubleCid) {
|
| const intptr_t kNumTemps = 0;
|
| - LocationSummary* locs = new(isolate) LocationSummary(
|
| - isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + LocationSummary* locs = new(zone) LocationSummary(
|
| + zone, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| locs->set_in(0, Location::RequiresFpuRegister());
|
| locs->set_in(1, Location::RequiresFpuRegister());
|
| locs->set_out(0, Location::RequiresRegister());
|
| @@ -402,8 +402,8 @@
|
| }
|
| if (operation_cid() == kSmiCid) {
|
| const intptr_t kNumTemps = 0;
|
| - LocationSummary* locs = new(isolate) LocationSummary(
|
| - isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + LocationSummary* locs = new(zone) LocationSummary(
|
| + zone, 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.
|
| @@ -572,12 +572,12 @@
|
| }
|
|
|
|
|
| -LocationSummary* TestSmiInstr::MakeLocationSummary(Isolate* isolate,
|
| +LocationSummary* TestSmiInstr::MakeLocationSummary(Zone* zone,
|
| bool opt) const {
|
| const intptr_t kNumInputs = 2;
|
| const intptr_t kNumTemps = 0;
|
| - LocationSummary* locs = new(isolate) LocationSummary(
|
| - isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + LocationSummary* locs = new(zone) LocationSummary(
|
| + zone, 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.
|
| @@ -618,12 +618,12 @@
|
|
|
|
|
|
|
| -LocationSummary* TestCidsInstr::MakeLocationSummary(Isolate* isolate,
|
| +LocationSummary* TestCidsInstr::MakeLocationSummary(Zone* zone,
|
| bool opt) const {
|
| const intptr_t kNumInputs = 1;
|
| const intptr_t kNumTemps = 1;
|
| - LocationSummary* locs = new(isolate) LocationSummary(
|
| - isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + LocationSummary* locs = new(zone) LocationSummary(
|
| + zone, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| locs->set_in(0, Location::RequiresRegister());
|
| locs->set_temp(0, Location::RequiresRegister());
|
| locs->set_out(0, Location::RequiresRegister());
|
| @@ -690,20 +690,20 @@
|
| }
|
|
|
|
|
| -LocationSummary* RelationalOpInstr::MakeLocationSummary(Isolate* isolate,
|
| +LocationSummary* RelationalOpInstr::MakeLocationSummary(Zone* zone,
|
| bool opt) const {
|
| const intptr_t kNumInputs = 2;
|
| const intptr_t kNumTemps = 0;
|
| if (operation_cid() == kDoubleCid) {
|
| - LocationSummary* summary = new(isolate) LocationSummary(
|
| - isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + LocationSummary* summary = new(zone) LocationSummary(
|
| + zone, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| summary->set_in(0, Location::RequiresFpuRegister());
|
| summary->set_in(1, Location::RequiresFpuRegister());
|
| summary->set_out(0, Location::RequiresRegister());
|
| return summary;
|
| } else if (operation_cid() == kMintCid) {
|
| - LocationSummary* summary = new(isolate) LocationSummary(
|
| - isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + LocationSummary* summary = new(zone) LocationSummary(
|
| + zone, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| summary->set_in(0, Location::RequiresRegister());
|
| summary->set_in(1, Location::RequiresRegister());
|
| summary->set_out(0, Location::RequiresRegister());
|
| @@ -710,8 +710,8 @@
|
| return summary;
|
| }
|
| ASSERT(operation_cid() == kSmiCid);
|
| - LocationSummary* summary = new(isolate) LocationSummary(
|
| - isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + LocationSummary* summary = new(zone) LocationSummary(
|
| + zone, 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.
|
| @@ -759,9 +759,9 @@
|
| }
|
|
|
|
|
| -LocationSummary* NativeCallInstr::MakeLocationSummary(Isolate* isolate,
|
| +LocationSummary* NativeCallInstr::MakeLocationSummary(Zone* zone,
|
| bool opt) const {
|
| - return MakeCallSummary(isolate);
|
| + return MakeCallSummary(zone);
|
| }
|
|
|
|
|
| @@ -809,11 +809,11 @@
|
| }
|
|
|
|
|
| -LocationSummary* StringFromCharCodeInstr::MakeLocationSummary(Isolate* isolate,
|
| +LocationSummary* StringFromCharCodeInstr::MakeLocationSummary(Zone* zone,
|
| bool opt) const {
|
| const intptr_t kNumInputs = 1;
|
| // TODO(fschneider): Allow immediate operands for the char code.
|
| - return LocationSummary::Make(isolate,
|
| + return LocationSummary::Make(zone,
|
| kNumInputs,
|
| Location::RequiresRegister(),
|
| LocationSummary::kNoCall);
|
| @@ -832,10 +832,10 @@
|
| }
|
|
|
|
|
| -LocationSummary* StringToCharCodeInstr::MakeLocationSummary(Isolate* isolate,
|
| +LocationSummary* StringToCharCodeInstr::MakeLocationSummary(Zone* zone,
|
| bool opt) const {
|
| const intptr_t kNumInputs = 1;
|
| - return LocationSummary::Make(isolate,
|
| + return LocationSummary::Make(zone,
|
| kNumInputs,
|
| Location::RequiresRegister(),
|
| LocationSummary::kNoCall);
|
| @@ -859,12 +859,12 @@
|
| }
|
|
|
|
|
| -LocationSummary* StringInterpolateInstr::MakeLocationSummary(Isolate* isolate,
|
| +LocationSummary* StringInterpolateInstr::MakeLocationSummary(Zone* zone,
|
| bool opt) const {
|
| const intptr_t kNumInputs = 1;
|
| const intptr_t kNumTemps = 0;
|
| - LocationSummary* summary = new(isolate) LocationSummary(
|
| - isolate, kNumInputs, kNumTemps, LocationSummary::kCall);
|
| + LocationSummary* summary = new(zone) LocationSummary(
|
| + zone, kNumInputs, kNumTemps, LocationSummary::kCall);
|
| summary->set_in(0, Location::RegisterLocation(RAX));
|
| summary->set_out(0, Location::RegisterLocation(RAX));
|
| return summary;
|
| @@ -887,10 +887,10 @@
|
| }
|
|
|
|
|
| -LocationSummary* LoadUntaggedInstr::MakeLocationSummary(Isolate* isolate,
|
| +LocationSummary* LoadUntaggedInstr::MakeLocationSummary(Zone* zone,
|
| bool opt) const {
|
| const intptr_t kNumInputs = 1;
|
| - return LocationSummary::Make(isolate,
|
| + return LocationSummary::Make(zone,
|
| kNumInputs,
|
| Location::RequiresRegister(),
|
| LocationSummary::kNoCall);
|
| @@ -909,10 +909,10 @@
|
| }
|
|
|
|
|
| -LocationSummary* LoadClassIdInstr::MakeLocationSummary(Isolate* isolate,
|
| +LocationSummary* LoadClassIdInstr::MakeLocationSummary(Zone* zone,
|
| bool opt) const {
|
| const intptr_t kNumInputs = 1;
|
| - return LocationSummary::Make(isolate,
|
| + return LocationSummary::Make(zone,
|
| kNumInputs,
|
| Location::RequiresRegister(),
|
| LocationSummary::kNoCall);
|
| @@ -1013,12 +1013,12 @@
|
| }
|
|
|
|
|
| -LocationSummary* LoadIndexedInstr::MakeLocationSummary(Isolate* isolate,
|
| +LocationSummary* LoadIndexedInstr::MakeLocationSummary(Zone* zone,
|
| bool opt) const {
|
| const intptr_t kNumInputs = 2;
|
| const intptr_t kNumTemps = 0;
|
| - LocationSummary* locs = new(isolate) LocationSummary(
|
| - isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + LocationSummary* locs = new(zone) LocationSummary(
|
| + zone, 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).
|
| @@ -1145,12 +1145,12 @@
|
| }
|
|
|
|
|
| -LocationSummary* LoadCodeUnitsInstr::MakeLocationSummary(Isolate* isolate,
|
| +LocationSummary* LoadCodeUnitsInstr::MakeLocationSummary(Zone* zone,
|
| bool opt) const {
|
| const intptr_t kNumInputs = 2;
|
| const intptr_t kNumTemps = 0;
|
| - LocationSummary* summary = new(isolate) LocationSummary(
|
| - isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + LocationSummary* summary = new(zone) LocationSummary(
|
| + zone, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| summary->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).
|
| @@ -1238,12 +1238,12 @@
|
| }
|
|
|
|
|
| -LocationSummary* StoreIndexedInstr::MakeLocationSummary(Isolate* isolate,
|
| +LocationSummary* StoreIndexedInstr::MakeLocationSummary(Zone* zone,
|
| bool opt) const {
|
| const intptr_t kNumInputs = 3;
|
| const intptr_t kNumTemps = 0;
|
| - LocationSummary* locs = new(isolate) LocationSummary(
|
| - isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + LocationSummary* locs = new(zone) LocationSummary(
|
| + zone, 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).
|
| @@ -1407,7 +1407,7 @@
|
| }
|
|
|
|
|
| -LocationSummary* GuardFieldClassInstr::MakeLocationSummary(Isolate* isolate,
|
| +LocationSummary* GuardFieldClassInstr::MakeLocationSummary(Zone* zone,
|
| bool opt) const {
|
| const intptr_t kNumInputs = 1;
|
|
|
| @@ -1427,8 +1427,8 @@
|
| num_temps++;
|
| }
|
|
|
| - LocationSummary* summary = new(isolate) LocationSummary(
|
| - isolate, kNumInputs, num_temps, LocationSummary::kNoCall);
|
| + LocationSummary* summary = new(zone) LocationSummary(
|
| + zone, kNumInputs, num_temps, LocationSummary::kNoCall);
|
| summary->set_in(0, Location::RequiresRegister());
|
|
|
| for (intptr_t i = 0; i < num_temps; i++) {
|
| @@ -1562,13 +1562,13 @@
|
| }
|
|
|
|
|
| -LocationSummary* GuardFieldLengthInstr::MakeLocationSummary(Isolate* isolate,
|
| +LocationSummary* GuardFieldLengthInstr::MakeLocationSummary(Zone* zone,
|
| bool opt) const {
|
| const intptr_t kNumInputs = 1;
|
| if (!opt || (field().guarded_list_length() == Field::kUnknownFixedLength)) {
|
| const intptr_t kNumTemps = 3;
|
| - LocationSummary* summary = new(isolate) LocationSummary(
|
| - isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + LocationSummary* summary = new(zone) LocationSummary(
|
| + zone, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| summary->set_in(0, Location::RequiresRegister());
|
| // We need temporaries for field object, length offset and expected length.
|
| summary->set_temp(0, Location::RequiresRegister());
|
| @@ -1576,8 +1576,8 @@
|
| summary->set_temp(2, Location::RequiresRegister());
|
| return summary;
|
| } else {
|
| - LocationSummary* summary = new(isolate) LocationSummary(
|
| - isolate, kNumInputs, 0, LocationSummary::kNoCall);
|
| + LocationSummary* summary = new(zone) LocationSummary(
|
| + zone, kNumInputs, 0, LocationSummary::kNoCall);
|
| summary->set_in(0, Location::RequiresRegister());
|
| return summary;
|
| }
|
| @@ -1716,14 +1716,14 @@
|
| };
|
|
|
|
|
| -LocationSummary* StoreInstanceFieldInstr::MakeLocationSummary(Isolate* isolate,
|
| +LocationSummary* StoreInstanceFieldInstr::MakeLocationSummary(Zone* zone,
|
| bool opt) const {
|
| const intptr_t kNumInputs = 2;
|
| const intptr_t kNumTemps =
|
| (IsUnboxedStore() && opt) ? 2 :
|
| ((IsPotentialUnboxedStore()) ? 3 : 0);
|
| - LocationSummary* summary = new(isolate) LocationSummary(
|
| - isolate, kNumInputs, kNumTemps,
|
| + LocationSummary* summary = new(zone) LocationSummary(
|
| + zone, kNumInputs, kNumTemps,
|
| ((IsUnboxedStore() && opt && is_potential_unboxed_initialization_) ||
|
| IsPotentialUnboxedStore())
|
| ? LocationSummary::kCallOnSlowPath
|
| @@ -1947,12 +1947,12 @@
|
| }
|
|
|
|
|
| -LocationSummary* LoadStaticFieldInstr::MakeLocationSummary(Isolate* isolate,
|
| +LocationSummary* LoadStaticFieldInstr::MakeLocationSummary(Zone* zone,
|
| bool opt) const {
|
| const intptr_t kNumInputs = 1;
|
| const intptr_t kNumTemps = 0;
|
| - LocationSummary* summary = new(isolate) LocationSummary(
|
| - isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + LocationSummary* summary = new(zone) LocationSummary(
|
| + zone, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| summary->set_in(0, Location::RequiresRegister());
|
| summary->set_out(0, Location::RequiresRegister());
|
| return summary;
|
| @@ -1971,10 +1971,10 @@
|
| }
|
|
|
|
|
| -LocationSummary* StoreStaticFieldInstr::MakeLocationSummary(Isolate* isolate,
|
| +LocationSummary* StoreStaticFieldInstr::MakeLocationSummary(Zone* zone,
|
| bool opt) const {
|
| - LocationSummary* locs = new(isolate) LocationSummary(
|
| - isolate, 1, 1, LocationSummary::kNoCall);
|
| + LocationSummary* locs = new(zone) LocationSummary(
|
| + zone, 1, 1, LocationSummary::kNoCall);
|
| locs->set_in(0, value()->NeedsStoreBuffer() ? Location::WritableRegister()
|
| : Location::RequiresRegister());
|
| locs->set_temp(0, Location::RequiresRegister());
|
| @@ -1997,12 +1997,12 @@
|
| }
|
|
|
|
|
| -LocationSummary* InstanceOfInstr::MakeLocationSummary(Isolate* isolate,
|
| +LocationSummary* InstanceOfInstr::MakeLocationSummary(Zone* zone,
|
| bool opt) const {
|
| const intptr_t kNumInputs = 3;
|
| const intptr_t kNumTemps = 0;
|
| - LocationSummary* summary = new(isolate) LocationSummary(
|
| - isolate, kNumInputs, kNumTemps, LocationSummary::kCall);
|
| + LocationSummary* summary = new(zone) LocationSummary(
|
| + zone, kNumInputs, kNumTemps, LocationSummary::kCall);
|
| summary->set_in(0, Location::RegisterLocation(RAX));
|
| summary->set_in(1, Location::RegisterLocation(RCX));
|
| summary->set_in(2, Location::RegisterLocation(RDX));
|
| @@ -2027,12 +2027,12 @@
|
|
|
| // TODO(srdjan): In case of constant inputs make CreateArray kNoCall and
|
| // use slow path stub.
|
| -LocationSummary* CreateArrayInstr::MakeLocationSummary(Isolate* isolate,
|
| +LocationSummary* CreateArrayInstr::MakeLocationSummary(Zone* zone,
|
| bool opt) const {
|
| const intptr_t kNumInputs = 2;
|
| const intptr_t kNumTemps = 0;
|
| - LocationSummary* locs = new(isolate) LocationSummary(
|
| - isolate, kNumInputs, kNumTemps, LocationSummary::kCall);
|
| + LocationSummary* locs = new(zone) LocationSummary(
|
| + zone, kNumInputs, kNumTemps, LocationSummary::kCall);
|
| locs->set_in(0, Location::RegisterLocation(RBX));
|
| locs->set_in(1, Location::RegisterLocation(R10));
|
| locs->set_out(0, Location::RegisterLocation(RAX));
|
| @@ -2139,14 +2139,14 @@
|
| }
|
|
|
|
|
| -LocationSummary* LoadFieldInstr::MakeLocationSummary(Isolate* isolate,
|
| +LocationSummary* LoadFieldInstr::MakeLocationSummary(Zone* zone,
|
| bool opt) const {
|
| const intptr_t kNumInputs = 1;
|
| const intptr_t kNumTemps =
|
| (IsUnboxedLoad() && opt) ? 1 :
|
| ((IsPotentialUnboxedLoad()) ? 2 : 0);
|
| - LocationSummary* locs = new(isolate) LocationSummary(
|
| - isolate, kNumInputs, kNumTemps,
|
| + LocationSummary* locs = new(zone) LocationSummary(
|
| + zone, kNumInputs, kNumTemps,
|
| (opt && !IsPotentialUnboxedLoad())
|
| ? LocationSummary::kNoCall
|
| : LocationSummary::kCallOnSlowPath);
|
| @@ -2264,12 +2264,12 @@
|
| }
|
|
|
|
|
| -LocationSummary* InstantiateTypeInstr::MakeLocationSummary(Isolate* isolate,
|
| +LocationSummary* InstantiateTypeInstr::MakeLocationSummary(Zone* zone,
|
| bool opt) const {
|
| const intptr_t kNumInputs = 1;
|
| const intptr_t kNumTemps = 0;
|
| - LocationSummary* locs = new(isolate) LocationSummary(
|
| - isolate, kNumInputs, kNumTemps, LocationSummary::kCall);
|
| + LocationSummary* locs = new(zone) LocationSummary(
|
| + zone, kNumInputs, kNumTemps, LocationSummary::kCall);
|
| locs->set_in(0, Location::RegisterLocation(RAX));
|
| locs->set_out(0, Location::RegisterLocation(RAX));
|
| return locs;
|
| @@ -2297,11 +2297,11 @@
|
|
|
|
|
| LocationSummary* InstantiateTypeArgumentsInstr::MakeLocationSummary(
|
| - Isolate* isolate, bool opt) const {
|
| + Zone* zone, bool opt) const {
|
| const intptr_t kNumInputs = 1;
|
| const intptr_t kNumTemps = 0;
|
| - LocationSummary* locs = new(isolate) LocationSummary(
|
| - isolate, kNumInputs, kNumTemps, LocationSummary::kCall);
|
| + LocationSummary* locs = new(zone) LocationSummary(
|
| + zone, kNumInputs, kNumTemps, LocationSummary::kCall);
|
| locs->set_in(0, Location::RegisterLocation(RAX));
|
| locs->set_out(0, Location::RegisterLocation(RAX));
|
| return locs;
|
| @@ -2369,13 +2369,13 @@
|
|
|
|
|
| LocationSummary* AllocateUninitializedContextInstr::MakeLocationSummary(
|
| - Isolate* isolate,
|
| + Zone* zone,
|
| bool opt) const {
|
| ASSERT(opt);
|
| const intptr_t kNumInputs = 0;
|
| const intptr_t kNumTemps = 1;
|
| - LocationSummary* locs = new(isolate) LocationSummary(
|
| - isolate, kNumInputs, kNumTemps, LocationSummary::kCallOnSlowPath);
|
| + LocationSummary* locs = new(zone) LocationSummary(
|
| + zone, kNumInputs, kNumTemps, LocationSummary::kCallOnSlowPath);
|
| locs->set_temp(0, Location::RegisterLocation(R10));
|
| locs->set_out(0, Location::RegisterLocation(RAX));
|
| return locs;
|
| @@ -2437,12 +2437,12 @@
|
| }
|
|
|
|
|
| -LocationSummary* AllocateContextInstr::MakeLocationSummary(Isolate* isolate,
|
| +LocationSummary* AllocateContextInstr::MakeLocationSummary(Zone* zone,
|
| bool opt) const {
|
| const intptr_t kNumInputs = 0;
|
| const intptr_t kNumTemps = 1;
|
| - LocationSummary* locs = new(isolate) LocationSummary(
|
| - isolate, kNumInputs, kNumTemps, LocationSummary::kCall);
|
| + LocationSummary* locs = new(zone) LocationSummary(
|
| + zone, kNumInputs, kNumTemps, LocationSummary::kCall);
|
| locs->set_temp(0, Location::RegisterLocation(R10));
|
| locs->set_out(0, Location::RegisterLocation(RAX));
|
| return locs;
|
| @@ -2463,12 +2463,12 @@
|
| }
|
|
|
|
|
| -LocationSummary* InitStaticFieldInstr::MakeLocationSummary(Isolate* isolate,
|
| +LocationSummary* InitStaticFieldInstr::MakeLocationSummary(Zone* zone,
|
| bool opt) const {
|
| const intptr_t kNumInputs = 1;
|
| const intptr_t kNumTemps = 1;
|
| - LocationSummary* locs = new(isolate) LocationSummary(
|
| - isolate, kNumInputs, kNumTemps, LocationSummary::kCall);
|
| + LocationSummary* locs = new(zone) LocationSummary(
|
| + zone, kNumInputs, kNumTemps, LocationSummary::kCall);
|
| locs->set_in(0, Location::RegisterLocation(RAX));
|
| locs->set_temp(0, Location::RegisterLocation(RCX));
|
| return locs;
|
| @@ -2501,12 +2501,12 @@
|
| }
|
|
|
|
|
| -LocationSummary* CloneContextInstr::MakeLocationSummary(Isolate* isolate,
|
| +LocationSummary* CloneContextInstr::MakeLocationSummary(Zone* zone,
|
| bool opt) const {
|
| const intptr_t kNumInputs = 1;
|
| const intptr_t kNumTemps = 0;
|
| - LocationSummary* locs = new(isolate) LocationSummary(
|
| - isolate, kNumInputs, kNumTemps, LocationSummary::kCall);
|
| + LocationSummary* locs = new(zone) LocationSummary(
|
| + zone, kNumInputs, kNumTemps, LocationSummary::kCall);
|
| locs->set_in(0, Location::RegisterLocation(RAX));
|
| locs->set_out(0, Location::RegisterLocation(RAX));
|
| return locs;
|
| @@ -2529,7 +2529,7 @@
|
| }
|
|
|
|
|
| -LocationSummary* CatchBlockEntryInstr::MakeLocationSummary(Isolate* isolate,
|
| +LocationSummary* CatchBlockEntryInstr::MakeLocationSummary(Zone* zone,
|
| bool opt) const {
|
| UNREACHABLE();
|
| return NULL;
|
| @@ -2567,12 +2567,12 @@
|
| }
|
|
|
|
|
| -LocationSummary* CheckStackOverflowInstr::MakeLocationSummary(Isolate* isolate,
|
| +LocationSummary* CheckStackOverflowInstr::MakeLocationSummary(Zone* zone,
|
| bool opt) const {
|
| const intptr_t kNumInputs = 0;
|
| const intptr_t kNumTemps = 1;
|
| - LocationSummary* summary = new(isolate) LocationSummary(
|
| - isolate, kNumInputs,
|
| + LocationSummary* summary = new(zone) LocationSummary(
|
| + zone, kNumInputs,
|
| kNumTemps,
|
| LocationSummary::kCallOnSlowPath);
|
| summary->set_temp(0, Location::RequiresRegister());
|
| @@ -2797,7 +2797,7 @@
|
| }
|
|
|
|
|
| -LocationSummary* BinarySmiOpInstr::MakeLocationSummary(Isolate* isolate,
|
| +LocationSummary* BinarySmiOpInstr::MakeLocationSummary(Zone* zone,
|
| bool opt) const {
|
| const intptr_t kNumInputs = 2;
|
|
|
| @@ -2809,8 +2809,8 @@
|
| (op_kind() != Token::kMOD) &&
|
| CanBeImmediate(right_constant->value())) {
|
| const intptr_t kNumTemps = 0;
|
| - LocationSummary* summary = new(isolate) LocationSummary(
|
| - isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + LocationSummary* summary = new(zone) LocationSummary(
|
| + zone, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| summary->set_in(0, Location::RequiresRegister());
|
| summary->set_in(1, Location::Constant(right_constant));
|
| summary->set_out(0, Location::SameAsFirstInput());
|
| @@ -2819,8 +2819,8 @@
|
|
|
| if (op_kind() == Token::kTRUNCDIV) {
|
| const intptr_t kNumTemps = 1;
|
| - LocationSummary* summary = new(isolate) LocationSummary(
|
| - isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + LocationSummary* summary = new(zone) LocationSummary(
|
| + zone, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| if (RightIsPowerOfTwoConstant()) {
|
| summary->set_in(0, Location::RequiresRegister());
|
| ConstantInstr* right_constant = right()->definition()->AsConstant();
|
| @@ -2838,8 +2838,8 @@
|
| return summary;
|
| } else if (op_kind() == Token::kMOD) {
|
| const intptr_t kNumTemps = 1;
|
| - LocationSummary* summary = new(isolate) LocationSummary(
|
| - isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + LocationSummary* summary = new(zone) LocationSummary(
|
| + zone, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| // Both inputs must be writable because they will be untagged.
|
| summary->set_in(0, Location::RegisterLocation(RDX));
|
| summary->set_in(1, Location::WritableRegister());
|
| @@ -2849,8 +2849,8 @@
|
| return summary;
|
| } else if (op_kind() == Token::kSHR) {
|
| const intptr_t kNumTemps = 0;
|
| - LocationSummary* summary = new(isolate) LocationSummary(
|
| - isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + LocationSummary* summary = new(zone) LocationSummary(
|
| + zone, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| summary->set_in(0, Location::RequiresRegister());
|
| summary->set_in(1, Location::FixedRegisterOrSmiConstant(right(), RCX));
|
| summary->set_out(0, Location::SameAsFirstInput());
|
| @@ -2857,8 +2857,8 @@
|
| return summary;
|
| } else if (op_kind() == Token::kSHL) {
|
| const intptr_t kNumTemps = can_overflow() ? 1 : 0;
|
| - LocationSummary* summary = new(isolate) LocationSummary(
|
| - isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + LocationSummary* summary = new(zone) LocationSummary(
|
| + zone, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| summary->set_in(0, Location::RequiresRegister());
|
| summary->set_in(1, Location::FixedRegisterOrSmiConstant(right(), RCX));
|
| if (can_overflow()) {
|
| @@ -2868,8 +2868,8 @@
|
| return summary;
|
| } else {
|
| const intptr_t kNumTemps = 0;
|
| - LocationSummary* summary = new(isolate) LocationSummary(
|
| - isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + LocationSummary* summary = new(zone) LocationSummary(
|
| + zone, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| summary->set_in(0, Location::RequiresRegister());
|
| ConstantInstr* constant = right()->definition()->AsConstant();
|
| if (constant != NULL) {
|
| @@ -3218,7 +3218,7 @@
|
| }
|
|
|
|
|
| -LocationSummary* CheckEitherNonSmiInstr::MakeLocationSummary(Isolate* isolate,
|
| +LocationSummary* CheckEitherNonSmiInstr::MakeLocationSummary(Zone* zone,
|
| bool opt) const {
|
| intptr_t left_cid = left()->Type()->ToCid();
|
| intptr_t right_cid = right()->Type()->ToCid();
|
| @@ -3228,8 +3228,8 @@
|
| && (left_cid != kSmiCid)
|
| && (right_cid != kSmiCid);
|
| const intptr_t kNumTemps = need_temp ? 1 : 0;
|
| - LocationSummary* summary = new(isolate) LocationSummary(
|
| - isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + LocationSummary* summary = new(zone) LocationSummary(
|
| + zone, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| summary->set_in(0, Location::RequiresRegister());
|
| summary->set_in(1, Location::RequiresRegister());
|
| if (need_temp) summary->set_temp(0, Location::RequiresRegister());
|
| @@ -3261,12 +3261,12 @@
|
| }
|
|
|
|
|
| -LocationSummary* BoxInstr::MakeLocationSummary(Isolate* isolate,
|
| +LocationSummary* BoxInstr::MakeLocationSummary(Zone* zone,
|
| bool opt) const {
|
| const intptr_t kNumInputs = 1;
|
| const intptr_t kNumTemps = 0;
|
| - LocationSummary* summary = new(isolate) LocationSummary(
|
| - isolate, kNumInputs, kNumTemps, LocationSummary::kCallOnSlowPath);
|
| + LocationSummary* summary = new(zone) LocationSummary(
|
| + zone, kNumInputs, kNumTemps, LocationSummary::kCallOnSlowPath);
|
| summary->set_in(0, Location::RequiresFpuRegister());
|
| summary->set_out(0, Location::RequiresRegister());
|
| return summary;
|
| @@ -3296,7 +3296,7 @@
|
| }
|
|
|
|
|
| -LocationSummary* UnboxInstr::MakeLocationSummary(Isolate* isolate,
|
| +LocationSummary* UnboxInstr::MakeLocationSummary(Zone* zone,
|
| bool opt) const {
|
| const intptr_t kNumInputs = 1;
|
| const intptr_t kNumTemps = 0;
|
| @@ -3303,8 +3303,8 @@
|
| const bool needs_writable_input =
|
| (representation() != kUnboxedMint) &&
|
| (value()->Type()->ToNullableCid() != BoxCid());
|
| - LocationSummary* summary = new(isolate) LocationSummary(
|
| - isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + LocationSummary* summary = new(zone) LocationSummary(
|
| + zone, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| summary->set_in(0, needs_writable_input ? Location::WritableRegister()
|
| : Location::RequiresRegister());
|
| if (representation() == kUnboxedMint) {
|
| @@ -3412,12 +3412,12 @@
|
| }
|
|
|
|
|
| -LocationSummary* UnboxInteger32Instr::MakeLocationSummary(Isolate* isolate,
|
| +LocationSummary* UnboxInteger32Instr::MakeLocationSummary(Zone* zone,
|
| bool opt) const {
|
| const intptr_t kNumInputs = 1;
|
| const intptr_t kNumTemps = (!is_truncating() && CanDeoptimize()) ? 1 : 0;
|
| - LocationSummary* summary = new(isolate) LocationSummary(
|
| - isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + LocationSummary* summary = new(zone) LocationSummary(
|
| + zone, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| summary->set_in(0, Location::RequiresRegister());
|
| summary->set_out(0, Location::SameAsFirstInput());
|
| if (kNumTemps > 0) {
|
| @@ -3460,14 +3460,14 @@
|
| }
|
|
|
|
|
| -LocationSummary* BoxInteger32Instr::MakeLocationSummary(Isolate* isolate,
|
| +LocationSummary* BoxInteger32Instr::MakeLocationSummary(Zone* zone,
|
| bool opt) const {
|
| ASSERT((from_representation() == kUnboxedInt32) ||
|
| (from_representation() == kUnboxedUint32));
|
| const intptr_t kNumInputs = 1;
|
| const intptr_t kNumTemps = 0;
|
| - LocationSummary* summary = new(isolate) LocationSummary(
|
| - isolate,
|
| + LocationSummary* summary = new(zone) LocationSummary(
|
| + zone,
|
| kNumInputs,
|
| kNumTemps,
|
| LocationSummary::kNoCall);
|
| @@ -3493,12 +3493,12 @@
|
| }
|
|
|
|
|
| -LocationSummary* BoxInt64Instr::MakeLocationSummary(Isolate* isolate,
|
| +LocationSummary* BoxInt64Instr::MakeLocationSummary(Zone* zone,
|
| bool opt) const {
|
| const intptr_t kNumInputs = 1;
|
| const intptr_t kNumTemps = 0;
|
| - LocationSummary* summary = new(isolate) LocationSummary(
|
| - isolate,
|
| + LocationSummary* summary = new(zone) LocationSummary(
|
| + zone,
|
| kNumInputs,
|
| kNumTemps,
|
| ValueFitsSmi() ? LocationSummary::kNoCall
|
| @@ -3525,12 +3525,12 @@
|
| }
|
|
|
|
|
| -LocationSummary* BinaryDoubleOpInstr::MakeLocationSummary(Isolate* isolate,
|
| +LocationSummary* BinaryDoubleOpInstr::MakeLocationSummary(Zone* zone,
|
| bool opt) const {
|
| const intptr_t kNumInputs = 2;
|
| const intptr_t kNumTemps = 0;
|
| - LocationSummary* summary = new(isolate) LocationSummary(
|
| - isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + LocationSummary* summary = new(zone) LocationSummary(
|
| + zone, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| summary->set_in(0, Location::RequiresFpuRegister());
|
| summary->set_in(1, Location::RequiresFpuRegister());
|
| summary->set_out(0, Location::SameAsFirstInput());
|
| @@ -3554,12 +3554,12 @@
|
| }
|
|
|
|
|
| -LocationSummary* BinaryFloat32x4OpInstr::MakeLocationSummary(Isolate* isolate,
|
| +LocationSummary* BinaryFloat32x4OpInstr::MakeLocationSummary(Zone* zone,
|
| bool opt) const {
|
| const intptr_t kNumInputs = 2;
|
| const intptr_t kNumTemps = 0;
|
| - LocationSummary* summary = new(isolate) LocationSummary(
|
| - isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + LocationSummary* summary = new(zone) LocationSummary(
|
| + zone, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| summary->set_in(0, Location::RequiresFpuRegister());
|
| summary->set_in(1, Location::RequiresFpuRegister());
|
| summary->set_out(0, Location::SameAsFirstInput());
|
| @@ -3583,12 +3583,12 @@
|
| }
|
|
|
|
|
| -LocationSummary* BinaryFloat64x2OpInstr::MakeLocationSummary(Isolate* isolate,
|
| +LocationSummary* BinaryFloat64x2OpInstr::MakeLocationSummary(Zone* zone,
|
| bool opt) const {
|
| const intptr_t kNumInputs = 2;
|
| const intptr_t kNumTemps = 0;
|
| - LocationSummary* summary = new(isolate) LocationSummary(
|
| - isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + LocationSummary* summary = new(zone) LocationSummary(
|
| + zone, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| summary->set_in(0, Location::RequiresFpuRegister());
|
| summary->set_in(1, Location::RequiresFpuRegister());
|
| summary->set_out(0, Location::SameAsFirstInput());
|
| @@ -3612,12 +3612,12 @@
|
| }
|
|
|
|
|
| -LocationSummary* Simd32x4ShuffleInstr::MakeLocationSummary(Isolate* isolate,
|
| +LocationSummary* Simd32x4ShuffleInstr::MakeLocationSummary(Zone* zone,
|
| bool opt) const {
|
| const intptr_t kNumInputs = 1;
|
| const intptr_t kNumTemps = 0;
|
| - LocationSummary* summary = new(isolate) LocationSummary(
|
| - isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + LocationSummary* summary = new(zone) LocationSummary(
|
| + zone, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| summary->set_in(0, Location::RequiresFpuRegister());
|
| summary->set_out(0, Location::SameAsFirstInput());
|
| return summary;
|
| @@ -3655,12 +3655,12 @@
|
| }
|
|
|
|
|
| -LocationSummary* Simd32x4ShuffleMixInstr::MakeLocationSummary(Isolate* isolate,
|
| +LocationSummary* Simd32x4ShuffleMixInstr::MakeLocationSummary(Zone* zone,
|
| bool opt) const {
|
| const intptr_t kNumInputs = 2;
|
| const intptr_t kNumTemps = 0;
|
| - LocationSummary* summary = new(isolate) LocationSummary(
|
| - isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + LocationSummary* summary = new(zone) LocationSummary(
|
| + zone, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| summary->set_in(0, Location::RequiresFpuRegister());
|
| summary->set_in(1, Location::RequiresFpuRegister());
|
| summary->set_out(0, Location::SameAsFirstInput());
|
| @@ -3683,12 +3683,12 @@
|
| }
|
|
|
|
|
| -LocationSummary* Simd32x4GetSignMaskInstr::MakeLocationSummary(Isolate* isolate,
|
| +LocationSummary* Simd32x4GetSignMaskInstr::MakeLocationSummary(Zone* zone,
|
| bool opt) const {
|
| const intptr_t kNumInputs = 1;
|
| const intptr_t kNumTemps = 0;
|
| - LocationSummary* summary = new(isolate) LocationSummary(
|
| - isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + LocationSummary* summary = new(zone) LocationSummary(
|
| + zone, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| summary->set_in(0, Location::RequiresFpuRegister());
|
| summary->set_out(0, Location::RequiresRegister());
|
| return summary;
|
| @@ -3705,11 +3705,11 @@
|
|
|
|
|
| LocationSummary* Float32x4ConstructorInstr::MakeLocationSummary(
|
| - Isolate* isolate, bool opt) const {
|
| + Zone* zone, bool opt) const {
|
| const intptr_t kNumInputs = 4;
|
| const intptr_t kNumTemps = 0;
|
| - LocationSummary* summary = new(isolate) LocationSummary(
|
| - isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + LocationSummary* summary = new(zone) LocationSummary(
|
| + zone, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| summary->set_in(0, Location::RequiresFpuRegister());
|
| summary->set_in(1, Location::RequiresFpuRegister());
|
| summary->set_in(2, Location::RequiresFpuRegister());
|
| @@ -3742,12 +3742,12 @@
|
| }
|
|
|
|
|
| -LocationSummary* Float32x4ZeroInstr::MakeLocationSummary(Isolate* isolate,
|
| +LocationSummary* Float32x4ZeroInstr::MakeLocationSummary(Zone* zone,
|
| bool opt) const {
|
| const intptr_t kNumInputs = 0;
|
| const intptr_t kNumTemps = 0;
|
| - LocationSummary* summary = new(isolate) LocationSummary(
|
| - isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + LocationSummary* summary = new(zone) LocationSummary(
|
| + zone, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| summary->set_out(0, Location::RequiresFpuRegister());
|
| return summary;
|
| }
|
| @@ -3759,12 +3759,12 @@
|
| }
|
|
|
|
|
| -LocationSummary* Float32x4SplatInstr::MakeLocationSummary(Isolate* isolate,
|
| +LocationSummary* Float32x4SplatInstr::MakeLocationSummary(Zone* zone,
|
| bool opt) const {
|
| const intptr_t kNumInputs = 1;
|
| const intptr_t kNumTemps = 0;
|
| - LocationSummary* summary = new(isolate) LocationSummary(
|
| - isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + LocationSummary* summary = new(zone) LocationSummary(
|
| + zone, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| summary->set_in(0, Location::RequiresFpuRegister());
|
| summary->set_out(0, Location::SameAsFirstInput());
|
| return summary;
|
| @@ -3781,12 +3781,12 @@
|
| }
|
|
|
|
|
| -LocationSummary* Float32x4ComparisonInstr::MakeLocationSummary(Isolate* isolate,
|
| +LocationSummary* Float32x4ComparisonInstr::MakeLocationSummary(Zone* zone,
|
| bool opt) const {
|
| const intptr_t kNumInputs = 2;
|
| const intptr_t kNumTemps = 0;
|
| - LocationSummary* summary = new(isolate) LocationSummary(
|
| - isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + LocationSummary* summary = new(zone) LocationSummary(
|
| + zone, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| summary->set_in(0, Location::RequiresFpuRegister());
|
| summary->set_in(1, Location::RequiresFpuRegister());
|
| summary->set_out(0, Location::SameAsFirstInput());
|
| @@ -3825,12 +3825,12 @@
|
| }
|
|
|
|
|
| -LocationSummary* Float32x4MinMaxInstr::MakeLocationSummary(Isolate* isolate,
|
| +LocationSummary* Float32x4MinMaxInstr::MakeLocationSummary(Zone* zone,
|
| bool opt) const {
|
| const intptr_t kNumInputs = 2;
|
| const intptr_t kNumTemps = 0;
|
| - LocationSummary* summary = new(isolate) LocationSummary(
|
| - isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + LocationSummary* summary = new(zone) LocationSummary(
|
| + zone, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| summary->set_in(0, Location::RequiresFpuRegister());
|
| summary->set_in(1, Location::RequiresFpuRegister());
|
| summary->set_out(0, Location::SameAsFirstInput());
|
| @@ -3856,12 +3856,12 @@
|
| }
|
|
|
|
|
| -LocationSummary* Float32x4ScaleInstr::MakeLocationSummary(Isolate* isolate,
|
| +LocationSummary* Float32x4ScaleInstr::MakeLocationSummary(Zone* zone,
|
| bool opt) const {
|
| const intptr_t kNumInputs = 2;
|
| const intptr_t kNumTemps = 0;
|
| - LocationSummary* summary = new(isolate) LocationSummary(
|
| - isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + LocationSummary* summary = new(zone) LocationSummary(
|
| + zone, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| summary->set_in(0, Location::RequiresFpuRegister());
|
| summary->set_in(1, Location::RequiresFpuRegister());
|
| summary->set_out(0, Location::SameAsFirstInput());
|
| @@ -3886,12 +3886,12 @@
|
| }
|
|
|
|
|
| -LocationSummary* Float32x4SqrtInstr::MakeLocationSummary(Isolate* isolate,
|
| +LocationSummary* Float32x4SqrtInstr::MakeLocationSummary(Zone* zone,
|
| bool opt) const {
|
| const intptr_t kNumInputs = 1;
|
| const intptr_t kNumTemps = 0;
|
| - LocationSummary* summary = new(isolate) LocationSummary(
|
| - isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + LocationSummary* summary = new(zone) LocationSummary(
|
| + zone, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| summary->set_in(0, Location::RequiresFpuRegister());
|
| summary->set_out(0, Location::SameAsFirstInput());
|
| return summary;
|
| @@ -3918,12 +3918,12 @@
|
| }
|
|
|
|
|
| -LocationSummary* Float32x4ZeroArgInstr::MakeLocationSummary(Isolate* isolate,
|
| +LocationSummary* Float32x4ZeroArgInstr::MakeLocationSummary(Zone* zone,
|
| bool opt) const {
|
| const intptr_t kNumInputs = 1;
|
| const intptr_t kNumTemps = 0;
|
| - LocationSummary* summary = new(isolate) LocationSummary(
|
| - isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + LocationSummary* summary = new(zone) LocationSummary(
|
| + zone, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| summary->set_in(0, Location::RequiresFpuRegister());
|
| summary->set_out(0, Location::SameAsFirstInput());
|
| return summary;
|
| @@ -3946,12 +3946,12 @@
|
| }
|
|
|
|
|
| -LocationSummary* Float32x4ClampInstr::MakeLocationSummary(Isolate* isolate,
|
| +LocationSummary* Float32x4ClampInstr::MakeLocationSummary(Zone* zone,
|
| bool opt) const {
|
| const intptr_t kNumInputs = 3;
|
| const intptr_t kNumTemps = 0;
|
| - LocationSummary* summary = new(isolate) LocationSummary(
|
| - isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + LocationSummary* summary = new(zone) LocationSummary(
|
| + zone, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| summary->set_in(0, Location::RequiresFpuRegister());
|
| summary->set_in(1, Location::RequiresFpuRegister());
|
| summary->set_in(2, Location::RequiresFpuRegister());
|
| @@ -3970,12 +3970,12 @@
|
| }
|
|
|
|
|
| -LocationSummary* Float32x4WithInstr::MakeLocationSummary(Isolate* isolate,
|
| +LocationSummary* Float32x4WithInstr::MakeLocationSummary(Zone* zone,
|
| bool opt) const {
|
| const intptr_t kNumInputs = 2;
|
| const intptr_t kNumTemps = 0;
|
| - LocationSummary* summary = new(isolate) LocationSummary(
|
| - isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + LocationSummary* summary = new(zone) LocationSummary(
|
| + zone, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| summary->set_in(0, Location::RequiresFpuRegister());
|
| summary->set_in(1, Location::RequiresFpuRegister());
|
| summary->set_out(0, Location::SameAsFirstInput());
|
| @@ -4039,12 +4039,12 @@
|
| }
|
|
|
|
|
| -LocationSummary* Float32x4ToInt32x4Instr::MakeLocationSummary(Isolate* isolate,
|
| +LocationSummary* Float32x4ToInt32x4Instr::MakeLocationSummary(Zone* zone,
|
| bool opt) const {
|
| const intptr_t kNumInputs = 1;
|
| const intptr_t kNumTemps = 0;
|
| - LocationSummary* summary = new(isolate) LocationSummary(
|
| - isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + LocationSummary* summary = new(zone) LocationSummary(
|
| + zone, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| summary->set_in(0, Location::RequiresFpuRegister());
|
| summary->set_out(0, Location::SameAsFirstInput());
|
| return summary;
|
| @@ -4056,12 +4056,12 @@
|
| }
|
|
|
|
|
| -LocationSummary* Simd64x2ShuffleInstr::MakeLocationSummary(Isolate* isolate,
|
| +LocationSummary* Simd64x2ShuffleInstr::MakeLocationSummary(Zone* zone,
|
| bool opt) const {
|
| const intptr_t kNumInputs = 1;
|
| const intptr_t kNumTemps = 0;
|
| - LocationSummary* summary = new(isolate) LocationSummary(
|
| - isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + LocationSummary* summary = new(zone) LocationSummary(
|
| + zone, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| summary->set_in(0, Location::RequiresFpuRegister());
|
| summary->set_out(0, Location::SameAsFirstInput());
|
| return summary;
|
| @@ -4084,12 +4084,12 @@
|
| }
|
|
|
|
|
| -LocationSummary* Float64x2ZeroInstr::MakeLocationSummary(Isolate* isolate,
|
| +LocationSummary* Float64x2ZeroInstr::MakeLocationSummary(Zone* zone,
|
| bool opt) const {
|
| const intptr_t kNumInputs = 0;
|
| const intptr_t kNumTemps = 0;
|
| - LocationSummary* summary = new(isolate) LocationSummary(
|
| - isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + LocationSummary* summary = new(zone) LocationSummary(
|
| + zone, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| summary->set_out(0, Location::RequiresFpuRegister());
|
| return summary;
|
| }
|
| @@ -4101,12 +4101,12 @@
|
| }
|
|
|
|
|
| -LocationSummary* Float64x2SplatInstr::MakeLocationSummary(Isolate* isolate,
|
| +LocationSummary* Float64x2SplatInstr::MakeLocationSummary(Zone* zone,
|
| bool opt) const {
|
| const intptr_t kNumInputs = 1;
|
| const intptr_t kNumTemps = 0;
|
| - LocationSummary* summary = new(isolate) LocationSummary(
|
| - isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + LocationSummary* summary = new(zone) LocationSummary(
|
| + zone, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| summary->set_in(0, Location::RequiresFpuRegister());
|
| summary->set_out(0, Location::SameAsFirstInput());
|
| return summary;
|
| @@ -4120,11 +4120,11 @@
|
|
|
|
|
| LocationSummary* Float64x2ConstructorInstr::MakeLocationSummary(
|
| - Isolate* isolate, bool opt) const {
|
| + Zone* zone, bool opt) const {
|
| const intptr_t kNumInputs = 2;
|
| const intptr_t kNumTemps = 0;
|
| - LocationSummary* summary = new(isolate) LocationSummary(
|
| - isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + LocationSummary* summary = new(zone) LocationSummary(
|
| + zone, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| summary->set_in(0, Location::RequiresFpuRegister());
|
| summary->set_in(1, Location::RequiresFpuRegister());
|
| summary->set_out(0, Location::SameAsFirstInput());
|
| @@ -4144,11 +4144,11 @@
|
|
|
|
|
| LocationSummary* Float64x2ToFloat32x4Instr::MakeLocationSummary(
|
| - Isolate* isolate, bool opt) const {
|
| + Zone* zone, bool opt) const {
|
| const intptr_t kNumInputs = 1;
|
| const intptr_t kNumTemps = 0;
|
| - LocationSummary* summary = new(isolate) LocationSummary(
|
| - isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + LocationSummary* summary = new(zone) LocationSummary(
|
| + zone, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| summary->set_in(0, Location::RequiresFpuRegister());
|
| summary->set_out(0, Location::SameAsFirstInput());
|
| return summary;
|
| @@ -4162,11 +4162,11 @@
|
|
|
|
|
| LocationSummary* Float32x4ToFloat64x2Instr::MakeLocationSummary(
|
| - Isolate* isolate, bool opt) const {
|
| + Zone* zone, bool opt) const {
|
| const intptr_t kNumInputs = 1;
|
| const intptr_t kNumTemps = 0;
|
| - LocationSummary* summary = new(isolate) LocationSummary(
|
| - isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + LocationSummary* summary = new(zone) LocationSummary(
|
| + zone, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| summary->set_in(0, Location::RequiresFpuRegister());
|
| summary->set_out(0, Location::SameAsFirstInput());
|
| return summary;
|
| @@ -4179,12 +4179,12 @@
|
| }
|
|
|
|
|
| -LocationSummary* Float64x2ZeroArgInstr::MakeLocationSummary(Isolate* isolate,
|
| +LocationSummary* Float64x2ZeroArgInstr::MakeLocationSummary(Zone* zone,
|
| bool opt) const {
|
| const intptr_t kNumInputs = 1;
|
| const intptr_t kNumTemps = 0;
|
| - LocationSummary* summary = new(isolate) LocationSummary(
|
| - isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + LocationSummary* summary = new(zone) LocationSummary(
|
| + zone, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| summary->set_in(0, Location::RequiresFpuRegister());
|
| if (representation() == kTagged) {
|
| ASSERT(op_kind() == MethodRecognizer::kFloat64x2GetSignMask);
|
| @@ -4222,12 +4222,12 @@
|
| }
|
|
|
|
|
| -LocationSummary* Float64x2OneArgInstr::MakeLocationSummary(Isolate* isolate,
|
| +LocationSummary* Float64x2OneArgInstr::MakeLocationSummary(Zone* zone,
|
| bool opt) const {
|
| const intptr_t kNumInputs = 2;
|
| const intptr_t kNumTemps = 0;
|
| - LocationSummary* summary = new(isolate) LocationSummary(
|
| - isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + LocationSummary* summary = new(zone) LocationSummary(
|
| + zone, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| summary->set_in(0, Location::RequiresFpuRegister());
|
| summary->set_in(1, Location::RequiresFpuRegister());
|
| summary->set_out(0, Location::SameAsFirstInput());
|
| @@ -4277,11 +4277,11 @@
|
|
|
|
|
| LocationSummary* Int32x4ConstructorInstr::MakeLocationSummary(
|
| - Isolate* isolate, bool opt) const {
|
| + Zone* zone, bool opt) const {
|
| const intptr_t kNumInputs = 4;
|
| const intptr_t kNumTemps = 0;
|
| - LocationSummary* summary = new(isolate) LocationSummary(
|
| - isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + LocationSummary* summary = new(zone) LocationSummary(
|
| + zone, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| summary->set_in(0, Location::RequiresRegister());
|
| summary->set_in(1, Location::RequiresRegister());
|
| summary->set_in(2, Location::RequiresRegister());
|
| @@ -4308,11 +4308,11 @@
|
|
|
|
|
| LocationSummary* Int32x4BoolConstructorInstr::MakeLocationSummary(
|
| - Isolate* isolate, bool opt) const {
|
| + Zone* zone, bool opt) const {
|
| const intptr_t kNumInputs = 4;
|
| const intptr_t kNumTemps = 1;
|
| - LocationSummary* summary = new(isolate) LocationSummary(
|
| - isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + LocationSummary* summary = new(zone) LocationSummary(
|
| + zone, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| summary->set_in(0, Location::RequiresRegister());
|
| summary->set_in(1, Location::RequiresRegister());
|
| summary->set_in(2, Location::RequiresRegister());
|
| @@ -4377,12 +4377,12 @@
|
| }
|
|
|
|
|
| -LocationSummary* Int32x4GetFlagInstr::MakeLocationSummary(Isolate* isolate,
|
| +LocationSummary* Int32x4GetFlagInstr::MakeLocationSummary(Zone* zone,
|
| bool opt) const {
|
| const intptr_t kNumInputs = 1;
|
| const intptr_t kNumTemps = 0;
|
| - LocationSummary* summary = new(isolate) LocationSummary(
|
| - isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + LocationSummary* summary = new(zone) LocationSummary(
|
| + zone, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| summary->set_in(0, Location::RequiresFpuRegister());
|
| summary->set_out(0, Location::RequiresRegister());
|
| return summary;
|
| @@ -4423,12 +4423,12 @@
|
| }
|
|
|
|
|
| -LocationSummary* Int32x4SelectInstr::MakeLocationSummary(Isolate* isolate,
|
| +LocationSummary* Int32x4SelectInstr::MakeLocationSummary(Zone* zone,
|
| bool opt) const {
|
| const intptr_t kNumInputs = 3;
|
| const intptr_t kNumTemps = 1;
|
| - LocationSummary* summary = new(isolate) LocationSummary(
|
| - isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + LocationSummary* summary = new(zone) LocationSummary(
|
| + zone, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| summary->set_in(0, Location::RequiresFpuRegister());
|
| summary->set_in(1, Location::RequiresFpuRegister());
|
| summary->set_in(2, Location::RequiresFpuRegister());
|
| @@ -4458,12 +4458,12 @@
|
| }
|
|
|
|
|
| -LocationSummary* Int32x4SetFlagInstr::MakeLocationSummary(Isolate* isolate,
|
| +LocationSummary* Int32x4SetFlagInstr::MakeLocationSummary(Zone* zone,
|
| bool opt) const {
|
| const intptr_t kNumInputs = 2;
|
| const intptr_t kNumTemps = 1;
|
| - LocationSummary* summary = new(isolate) LocationSummary(
|
| - isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + LocationSummary* summary = new(zone) LocationSummary(
|
| + zone, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| summary->set_in(0, Location::RequiresFpuRegister());
|
| summary->set_in(1, Location::RequiresRegister());
|
| summary->set_temp(0, Location::RequiresRegister());
|
| @@ -4525,12 +4525,12 @@
|
| }
|
|
|
|
|
| -LocationSummary* Int32x4ToFloat32x4Instr::MakeLocationSummary(Isolate* isolate,
|
| +LocationSummary* Int32x4ToFloat32x4Instr::MakeLocationSummary(Zone* zone,
|
| bool opt) const {
|
| const intptr_t kNumInputs = 1;
|
| const intptr_t kNumTemps = 0;
|
| - LocationSummary* summary = new(isolate) LocationSummary(
|
| - isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + LocationSummary* summary = new(zone) LocationSummary(
|
| + zone, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| summary->set_in(0, Location::RequiresFpuRegister());
|
| summary->set_out(0, Location::SameAsFirstInput());
|
| return summary;
|
| @@ -4542,12 +4542,12 @@
|
| }
|
|
|
|
|
| -LocationSummary* BinaryInt32x4OpInstr::MakeLocationSummary(Isolate* isolate,
|
| +LocationSummary* BinaryInt32x4OpInstr::MakeLocationSummary(Zone* zone,
|
| bool opt) const {
|
| const intptr_t kNumInputs = 2;
|
| const intptr_t kNumTemps = 0;
|
| - LocationSummary* summary = new(isolate) LocationSummary(
|
| - isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + LocationSummary* summary = new(zone) LocationSummary(
|
| + zone, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| summary->set_in(0, Location::RequiresFpuRegister());
|
| summary->set_in(1, Location::RequiresFpuRegister());
|
| summary->set_out(0, Location::SameAsFirstInput());
|
| @@ -4583,7 +4583,7 @@
|
| }
|
|
|
|
|
| -LocationSummary* MathUnaryInstr::MakeLocationSummary(Isolate* isolate,
|
| +LocationSummary* MathUnaryInstr::MakeLocationSummary(Zone* zone,
|
| bool opt) const {
|
| if ((kind() == MathUnaryInstr::kSin) || (kind() == MathUnaryInstr::kCos)) {
|
| // Calling convention on x64 uses XMM0 and XMM1 to pass the first two
|
| @@ -4592,8 +4592,8 @@
|
| // assumes that XMM0 is free at all times.
|
| // TODO(vegorov): allow XMM0 to be used.
|
| const intptr_t kNumTemps = 1;
|
| - LocationSummary* summary = new(isolate) LocationSummary(
|
| - isolate, InputCount(), kNumTemps, LocationSummary::kCall);
|
| + LocationSummary* summary = new(zone) LocationSummary(
|
| + zone, InputCount(), kNumTemps, LocationSummary::kCall);
|
| summary->set_in(0, Location::FpuRegisterLocation(XMM1));
|
| // R13 is chosen because it is callee saved so we do not need to back it
|
| // up before calling into the runtime.
|
| @@ -4605,8 +4605,8 @@
|
| (kind() == MathUnaryInstr::kDoubleSquare));
|
| const intptr_t kNumInputs = 1;
|
| const intptr_t kNumTemps = 0;
|
| - LocationSummary* summary = new(isolate) LocationSummary(
|
| - isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + LocationSummary* summary = new(zone) LocationSummary(
|
| + zone, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| summary->set_in(0, Location::RequiresFpuRegister());
|
| if (kind() == MathUnaryInstr::kDoubleSquare) {
|
| summary->set_out(0, Location::SameAsFirstInput());
|
| @@ -4640,10 +4640,10 @@
|
|
|
|
|
| LocationSummary* CaseInsensitiveCompareUC16Instr::MakeLocationSummary(
|
| - Isolate* isolate, bool opt) const {
|
| + Zone* zone, bool opt) const {
|
| const intptr_t kNumTemps = 0;
|
| - LocationSummary* summary = new(isolate) LocationSummary(
|
| - isolate, InputCount(), kNumTemps, LocationSummary::kCall);
|
| + LocationSummary* summary = new(zone) LocationSummary(
|
| + zone, InputCount(), kNumTemps, LocationSummary::kCall);
|
| summary->set_in(0, Location::RegisterLocation(CallingConventions::kArg1Reg));
|
| summary->set_in(1, Location::RegisterLocation(CallingConventions::kArg2Reg));
|
| summary->set_in(2, Location::RegisterLocation(CallingConventions::kArg3Reg));
|
| @@ -4670,10 +4670,10 @@
|
| }
|
|
|
|
|
| -LocationSummary* UnarySmiOpInstr::MakeLocationSummary(Isolate* isolate,
|
| +LocationSummary* UnarySmiOpInstr::MakeLocationSummary(Zone* zone,
|
| bool opt) const {
|
| const intptr_t kNumInputs = 1;
|
| - return LocationSummary::Make(isolate,
|
| + return LocationSummary::Make(zone,
|
| kNumInputs,
|
| Location::SameAsFirstInput(),
|
| LocationSummary::kNoCall);
|
| @@ -4704,12 +4704,12 @@
|
| }
|
|
|
|
|
| -LocationSummary* UnaryDoubleOpInstr::MakeLocationSummary(Isolate* isolate,
|
| +LocationSummary* UnaryDoubleOpInstr::MakeLocationSummary(Zone* zone,
|
| bool opt) const {
|
| const intptr_t kNumInputs = 1;
|
| const intptr_t kNumTemps = 0;
|
| - LocationSummary* summary = new(isolate) LocationSummary(
|
| - isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + LocationSummary* summary = new(zone) LocationSummary(
|
| + zone, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| summary->set_in(0, Location::RequiresFpuRegister());
|
| summary->set_out(0, Location::SameAsFirstInput());
|
| return summary;
|
| @@ -4723,13 +4723,13 @@
|
| }
|
|
|
|
|
| -LocationSummary* MathMinMaxInstr::MakeLocationSummary(Isolate* isolate,
|
| +LocationSummary* MathMinMaxInstr::MakeLocationSummary(Zone* zone,
|
| bool opt) const {
|
| if (result_cid() == kDoubleCid) {
|
| const intptr_t kNumInputs = 2;
|
| const intptr_t kNumTemps = 1;
|
| - LocationSummary* summary = new(isolate) LocationSummary(
|
| - isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + LocationSummary* summary = new(zone) LocationSummary(
|
| + zone, 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.
|
| @@ -4740,8 +4740,8 @@
|
| ASSERT(result_cid() == kSmiCid);
|
| const intptr_t kNumInputs = 2;
|
| const intptr_t kNumTemps = 0;
|
| - LocationSummary* summary = new(isolate) LocationSummary(
|
| - isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + LocationSummary* summary = new(zone) LocationSummary(
|
| + zone, 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.
|
| @@ -4813,12 +4813,12 @@
|
| }
|
|
|
|
|
| -LocationSummary* Int32ToDoubleInstr::MakeLocationSummary(Isolate* isolate,
|
| +LocationSummary* Int32ToDoubleInstr::MakeLocationSummary(Zone* zone,
|
| bool opt) const {
|
| const intptr_t kNumInputs = 1;
|
| const intptr_t kNumTemps = 0;
|
| - LocationSummary* result = new(isolate) LocationSummary(
|
| - isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + LocationSummary* result = new(zone) LocationSummary(
|
| + zone, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| result->set_in(0, Location::RequiresRegister());
|
| result->set_out(0, Location::RequiresFpuRegister());
|
| return result;
|
| @@ -4832,12 +4832,12 @@
|
| }
|
|
|
|
|
| -LocationSummary* SmiToDoubleInstr::MakeLocationSummary(Isolate* isolate,
|
| +LocationSummary* SmiToDoubleInstr::MakeLocationSummary(Zone* zone,
|
| bool opt) const {
|
| const intptr_t kNumInputs = 1;
|
| const intptr_t kNumTemps = 0;
|
| - LocationSummary* result = new(isolate) LocationSummary(
|
| - isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + LocationSummary* result = new(zone) LocationSummary(
|
| + zone, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| result->set_in(0, Location::WritableRegister());
|
| result->set_out(0, Location::RequiresFpuRegister());
|
| return result;
|
| @@ -4852,7 +4852,7 @@
|
| }
|
|
|
|
|
| -LocationSummary* MintToDoubleInstr::MakeLocationSummary(Isolate* isolate,
|
| +LocationSummary* MintToDoubleInstr::MakeLocationSummary(Zone* zone,
|
| bool opt) const {
|
| UNIMPLEMENTED();
|
| return NULL;
|
| @@ -4864,12 +4864,12 @@
|
| }
|
|
|
|
|
| -LocationSummary* DoubleToIntegerInstr::MakeLocationSummary(Isolate* isolate,
|
| +LocationSummary* DoubleToIntegerInstr::MakeLocationSummary(Zone* zone,
|
| bool opt) const {
|
| const intptr_t kNumInputs = 1;
|
| const intptr_t kNumTemps = 1;
|
| - LocationSummary* result = new(isolate) LocationSummary(
|
| - isolate, kNumInputs, kNumTemps, LocationSummary::kCall);
|
| + LocationSummary* result = new(zone) LocationSummary(
|
| + zone, kNumInputs, kNumTemps, LocationSummary::kCall);
|
| result->set_in(0, Location::RegisterLocation(RCX));
|
| result->set_out(0, Location::RegisterLocation(RAX));
|
| result->set_temp(0, Location::RegisterLocation(RBX));
|
| @@ -4917,12 +4917,12 @@
|
| }
|
|
|
|
|
| -LocationSummary* DoubleToSmiInstr::MakeLocationSummary(Isolate* isolate,
|
| +LocationSummary* DoubleToSmiInstr::MakeLocationSummary(Zone* zone,
|
| bool opt) const {
|
| const intptr_t kNumInputs = 1;
|
| const intptr_t kNumTemps = 1;
|
| - LocationSummary* result = new(isolate) LocationSummary(
|
| - isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + LocationSummary* result = new(zone) LocationSummary(
|
| + zone, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| result->set_in(0, Location::RequiresFpuRegister());
|
| result->set_out(0, Location::RequiresRegister());
|
| result->set_temp(0, Location::RequiresRegister());
|
| @@ -4950,12 +4950,12 @@
|
| }
|
|
|
|
|
| -LocationSummary* DoubleToDoubleInstr::MakeLocationSummary(Isolate* isolate,
|
| +LocationSummary* DoubleToDoubleInstr::MakeLocationSummary(Zone* zone,
|
| bool opt) const {
|
| const intptr_t kNumInputs = 1;
|
| const intptr_t kNumTemps = 0;
|
| - LocationSummary* result = new(isolate) LocationSummary(
|
| - isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + LocationSummary* result = new(zone) LocationSummary(
|
| + zone, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| result->set_in(0, Location::RequiresFpuRegister());
|
| result->set_out(0, Location::RequiresFpuRegister());
|
| return result;
|
| @@ -4981,12 +4981,12 @@
|
| }
|
|
|
|
|
| -LocationSummary* DoubleToFloatInstr::MakeLocationSummary(Isolate* isolate,
|
| +LocationSummary* DoubleToFloatInstr::MakeLocationSummary(Zone* zone,
|
| bool opt) const {
|
| const intptr_t kNumInputs = 1;
|
| const intptr_t kNumTemps = 0;
|
| - LocationSummary* result = new(isolate) LocationSummary(
|
| - isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + LocationSummary* result = new(zone) LocationSummary(
|
| + zone, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| result->set_in(0, Location::RequiresFpuRegister());
|
| result->set_out(0, Location::SameAsFirstInput());
|
| return result;
|
| @@ -4998,12 +4998,12 @@
|
| }
|
|
|
|
|
| -LocationSummary* FloatToDoubleInstr::MakeLocationSummary(Isolate* isolate,
|
| +LocationSummary* FloatToDoubleInstr::MakeLocationSummary(Zone* zone,
|
| bool opt) const {
|
| const intptr_t kNumInputs = 1;
|
| const intptr_t kNumTemps = 0;
|
| - LocationSummary* result = new(isolate) LocationSummary(
|
| - isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + LocationSummary* result = new(zone) LocationSummary(
|
| + zone, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| result->set_in(0, Location::RequiresFpuRegister());
|
| result->set_out(0, Location::SameAsFirstInput());
|
| return result;
|
| @@ -5015,7 +5015,7 @@
|
| }
|
|
|
|
|
| -LocationSummary* InvokeMathCFunctionInstr::MakeLocationSummary(Isolate* isolate,
|
| +LocationSummary* InvokeMathCFunctionInstr::MakeLocationSummary(Zone* zone,
|
| bool opt) const {
|
| // Calling convention on x64 uses XMM0 and XMM1 to pass the first two
|
| // double arguments and XMM0 to return the result. Unfortunately
|
| @@ -5025,8 +5025,8 @@
|
| ASSERT((InputCount() == 1) || (InputCount() == 2));
|
| const intptr_t kNumTemps =
|
| (recognized_kind() == MethodRecognizer::kMathDoublePow) ? 3 : 1;
|
| - LocationSummary* result = new(isolate) LocationSummary(
|
| - isolate, InputCount(), kNumTemps, LocationSummary::kCall);
|
| + LocationSummary* result = new(zone) LocationSummary(
|
| + zone, InputCount(), kNumTemps, LocationSummary::kCall);
|
| result->set_temp(0, Location::RegisterLocation(R13));
|
| result->set_in(0, Location::FpuRegisterLocation(XMM2));
|
| if (InputCount() == 2) {
|
| @@ -5198,13 +5198,13 @@
|
| }
|
|
|
|
|
| -LocationSummary* ExtractNthOutputInstr::MakeLocationSummary(Isolate* isolate,
|
| +LocationSummary* ExtractNthOutputInstr::MakeLocationSummary(Zone* zone,
|
| bool opt) const {
|
| // Only use this instruction in optimized code.
|
| ASSERT(opt);
|
| const intptr_t kNumInputs = 1;
|
| - LocationSummary* summary = new(isolate) LocationSummary(
|
| - isolate, kNumInputs, 0, LocationSummary::kNoCall);
|
| + LocationSummary* summary = new(zone) LocationSummary(
|
| + zone, kNumInputs, 0, LocationSummary::kNoCall);
|
| if (representation() == kUnboxedDouble) {
|
| if (index() == 0) {
|
| summary->set_in(0, Location::Pair(Location::RequiresFpuRegister(),
|
| @@ -5248,13 +5248,13 @@
|
| }
|
|
|
|
|
| -LocationSummary* MergedMathInstr::MakeLocationSummary(Isolate* isolate,
|
| +LocationSummary* MergedMathInstr::MakeLocationSummary(Zone* zone,
|
| bool opt) const {
|
| if (kind() == MergedMathInstr::kTruncDivMod) {
|
| const intptr_t kNumInputs = 2;
|
| const intptr_t kNumTemps = 0;
|
| - LocationSummary* summary = new(isolate) LocationSummary(
|
| - isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + LocationSummary* summary = new(zone) LocationSummary(
|
| + zone, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| // Both inputs must be writable because they will be untagged.
|
| summary->set_in(0, Location::RegisterLocation(RAX));
|
| summary->set_in(1, Location::WritableRegister());
|
| @@ -5265,8 +5265,8 @@
|
| if (kind() == MergedMathInstr::kSinCos) {
|
| const intptr_t kNumInputs = 1;
|
| const intptr_t kNumTemps = 1;
|
| - LocationSummary* summary = new(isolate) LocationSummary(
|
| - isolate, kNumInputs, kNumTemps, LocationSummary::kCall);
|
| + LocationSummary* summary = new(zone) LocationSummary(
|
| + zone, kNumInputs, kNumTemps, LocationSummary::kCall);
|
| // Because we always call into the runtime (LocationSummary::kCall) we
|
| // must specify each input, temp, and output register explicitly.
|
| summary->set_in(0, Location::FpuRegisterLocation(XMM1));
|
| @@ -5424,8 +5424,8 @@
|
|
|
|
|
| LocationSummary* PolymorphicInstanceCallInstr::MakeLocationSummary(
|
| - Isolate* isolate, bool opt) const {
|
| - return MakeCallSummary(isolate);
|
| + Zone* zone, bool opt) const {
|
| + return MakeCallSummary(zone);
|
| }
|
|
|
|
|
| @@ -5464,9 +5464,9 @@
|
| }
|
|
|
|
|
| -LocationSummary* BranchInstr::MakeLocationSummary(Isolate* isolate,
|
| +LocationSummary* BranchInstr::MakeLocationSummary(Zone* zone,
|
| bool opt) const {
|
| - comparison()->InitializeLocationSummary(isolate, opt);
|
| + comparison()->InitializeLocationSummary(zone, opt);
|
| // Branches don't produce a result.
|
| comparison()->locs()->set_out(0, Location::NoLocation());
|
| return comparison()->locs();
|
| @@ -5478,13 +5478,13 @@
|
| }
|
|
|
|
|
| -LocationSummary* CheckClassInstr::MakeLocationSummary(Isolate* isolate,
|
| +LocationSummary* CheckClassInstr::MakeLocationSummary(Zone* zone,
|
| bool opt) const {
|
| const intptr_t kNumInputs = 1;
|
| const bool need_mask_temp = IsDenseSwitch() && !IsDenseMask(ComputeCidMask());
|
| const intptr_t kNumTemps = !IsNullCheck() ? (need_mask_temp ? 2 : 1) : 0;
|
| - LocationSummary* summary = new(isolate) LocationSummary(
|
| - isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + LocationSummary* summary = new(zone) LocationSummary(
|
| + zone, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| summary->set_in(0, Location::RequiresRegister());
|
| if (!IsNullCheck()) {
|
| summary->set_temp(0, Location::RequiresRegister());
|
| @@ -5559,12 +5559,12 @@
|
| }
|
|
|
|
|
| -LocationSummary* CheckSmiInstr::MakeLocationSummary(Isolate* isolate,
|
| +LocationSummary* CheckSmiInstr::MakeLocationSummary(Zone* zone,
|
| bool opt) const {
|
| const intptr_t kNumInputs = 1;
|
| const intptr_t kNumTemps = 0;
|
| - LocationSummary* summary = new(isolate) LocationSummary(
|
| - isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + LocationSummary* summary = new(zone) LocationSummary(
|
| + zone, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| summary->set_in(0, Location::RequiresRegister());
|
| return summary;
|
| }
|
| @@ -5580,12 +5580,12 @@
|
| }
|
|
|
|
|
| -LocationSummary* CheckClassIdInstr::MakeLocationSummary(Isolate* isolate,
|
| +LocationSummary* CheckClassIdInstr::MakeLocationSummary(Zone* zone,
|
| bool opt) const {
|
| const intptr_t kNumInputs = 1;
|
| const intptr_t kNumTemps = 0;
|
| - LocationSummary* summary = new(isolate) LocationSummary(
|
| - isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + LocationSummary* summary = new(zone) LocationSummary(
|
| + zone, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| summary->set_in(0, Location::RequiresRegister());
|
| return summary;
|
| }
|
| @@ -5599,12 +5599,12 @@
|
| }
|
|
|
|
|
| -LocationSummary* CheckArrayBoundInstr::MakeLocationSummary(Isolate* isolate,
|
| +LocationSummary* CheckArrayBoundInstr::MakeLocationSummary(Zone* zone,
|
| bool opt) const {
|
| const intptr_t kNumInputs = 2;
|
| const intptr_t kNumTemps = 0;
|
| - LocationSummary* locs = new(isolate) LocationSummary(
|
| - isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + LocationSummary* locs = new(zone) LocationSummary(
|
| + zone, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| locs->set_in(kLengthPos, Location::RegisterOrSmiConstant(length()));
|
| locs->set_in(kIndexPos, Location::RegisterOrSmiConstant(index()));
|
| return locs;
|
| @@ -5690,12 +5690,12 @@
|
| }
|
|
|
|
|
| -LocationSummary* BinaryMintOpInstr::MakeLocationSummary(Isolate* isolate,
|
| +LocationSummary* BinaryMintOpInstr::MakeLocationSummary(Zone* zone,
|
| bool opt) const {
|
| const intptr_t kNumInputs = 2;
|
| const intptr_t kNumTemps = 0;
|
| - LocationSummary* summary = new(isolate) LocationSummary(
|
| - isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + LocationSummary* summary = new(zone) LocationSummary(
|
| + zone, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| summary->set_in(0, Location::RequiresRegister());
|
| summary->set_in(1, Location::RequiresRegister());
|
| summary->set_out(0, Location::SameAsFirstInput());
|
| @@ -5723,12 +5723,12 @@
|
| }
|
|
|
|
|
| -LocationSummary* UnaryMintOpInstr::MakeLocationSummary(Isolate* isolate,
|
| +LocationSummary* UnaryMintOpInstr::MakeLocationSummary(Zone* zone,
|
| bool opt) const {
|
| const intptr_t kNumInputs = 1;
|
| const intptr_t kNumTemps = 0;
|
| - LocationSummary* summary = new(isolate) LocationSummary(
|
| - isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + LocationSummary* summary = new(zone) LocationSummary(
|
| + zone, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| summary->set_in(0, Location::RequiresRegister());
|
| summary->set_out(0, Location::SameAsFirstInput());
|
| return summary;
|
| @@ -5762,12 +5762,12 @@
|
| }
|
|
|
|
|
| -LocationSummary* ShiftMintOpInstr::MakeLocationSummary(Isolate* isolate,
|
| +LocationSummary* ShiftMintOpInstr::MakeLocationSummary(Zone* zone,
|
| bool opt) const {
|
| const intptr_t kNumInputs = 2;
|
| const intptr_t kNumTemps = can_overflow() ? 1 : 0;
|
| - LocationSummary* summary = new(isolate) LocationSummary(
|
| - isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + LocationSummary* summary = new(zone) LocationSummary(
|
| + zone, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| summary->set_in(0, Location::RequiresRegister());
|
| summary->set_in(1, Location::FixedRegisterOrSmiConstant(right(), RCX));
|
| if (kNumTemps > 0) {
|
| @@ -5868,12 +5868,12 @@
|
| }
|
|
|
|
|
| -LocationSummary* BinaryUint32OpInstr::MakeLocationSummary(Isolate* isolate,
|
| +LocationSummary* BinaryUint32OpInstr::MakeLocationSummary(Zone* zone,
|
| bool opt) const {
|
| const intptr_t kNumInputs = 2;
|
| const intptr_t kNumTemps = (op_kind() == Token::kMUL) ? 1 : 0;
|
| - LocationSummary* summary = new(isolate) LocationSummary(
|
| - isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + LocationSummary* summary = new(zone) LocationSummary(
|
| + zone, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| summary->set_in(0, Location::RequiresRegister());
|
| summary->set_in(1, Location::RequiresRegister());
|
| summary->set_out(0, Location::SameAsFirstInput());
|
| @@ -5933,12 +5933,12 @@
|
| }
|
|
|
|
|
| -LocationSummary* ShiftUint32OpInstr::MakeLocationSummary(Isolate* isolate,
|
| +LocationSummary* ShiftUint32OpInstr::MakeLocationSummary(Zone* zone,
|
| bool opt) const {
|
| const intptr_t kNumInputs = 2;
|
| const intptr_t kNumTemps = 0;
|
| - LocationSummary* summary = new(isolate) LocationSummary(
|
| - isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + LocationSummary* summary = new(zone) LocationSummary(
|
| + zone, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| summary->set_in(0, Location::RequiresRegister());
|
| summary->set_in(1, Location::FixedRegisterOrSmiConstant(right(), RCX));
|
| summary->set_out(0, Location::SameAsFirstInput());
|
| @@ -6017,12 +6017,12 @@
|
| }
|
|
|
|
|
| -LocationSummary* UnaryUint32OpInstr::MakeLocationSummary(Isolate* isolate,
|
| +LocationSummary* UnaryUint32OpInstr::MakeLocationSummary(Zone* zone,
|
| bool opt) const {
|
| const intptr_t kNumInputs = 1;
|
| const intptr_t kNumTemps = 0;
|
| - LocationSummary* summary = new(isolate) LocationSummary(
|
| - isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + LocationSummary* summary = new(zone) LocationSummary(
|
| + zone, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| summary->set_in(0, Location::RequiresRegister());
|
| summary->set_out(0, Location::SameAsFirstInput());
|
| return summary;
|
| @@ -6042,12 +6042,12 @@
|
| DEFINE_UNIMPLEMENTED_INSTRUCTION(BinaryInt32OpInstr)
|
|
|
|
|
| -LocationSummary* UnboxedIntConverterInstr::MakeLocationSummary(Isolate* isolate,
|
| +LocationSummary* UnboxedIntConverterInstr::MakeLocationSummary(Zone* zone,
|
| bool opt) const {
|
| const intptr_t kNumInputs = 1;
|
| const intptr_t kNumTemps = 0;
|
| - LocationSummary* summary = new(isolate) LocationSummary(
|
| - isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + LocationSummary* summary = new(zone) LocationSummary(
|
| + zone, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| if (from() == kUnboxedMint) {
|
| ASSERT((to() == kUnboxedUint32) || (to() == kUnboxedInt32));
|
| summary->set_in(0, Location::RequiresRegister());
|
| @@ -6121,9 +6121,9 @@
|
| }
|
|
|
|
|
| -LocationSummary* ThrowInstr::MakeLocationSummary(Isolate* isolate,
|
| +LocationSummary* ThrowInstr::MakeLocationSummary(Zone* zone,
|
| bool opt) const {
|
| - return new(isolate) LocationSummary(isolate, 0, 0, LocationSummary::kCall);
|
| + return new(zone) LocationSummary(zone, 0, 0, LocationSummary::kCall);
|
| }
|
|
|
|
|
| @@ -6137,9 +6137,9 @@
|
| }
|
|
|
|
|
| -LocationSummary* ReThrowInstr::MakeLocationSummary(Isolate* isolate,
|
| +LocationSummary* ReThrowInstr::MakeLocationSummary(Zone* zone,
|
| bool opt) const {
|
| - return new(isolate) LocationSummary(isolate, 0, 0, LocationSummary::kCall);
|
| + return new(zone) LocationSummary(zone, 0, 0, LocationSummary::kCall);
|
| }
|
|
|
|
|
| @@ -6161,9 +6161,9 @@
|
| }
|
|
|
|
|
| -LocationSummary* GotoInstr::MakeLocationSummary(Isolate* isolate,
|
| +LocationSummary* GotoInstr::MakeLocationSummary(Zone* zone,
|
| bool opt) const {
|
| - return new(isolate) LocationSummary(isolate, 0, 0, LocationSummary::kNoCall);
|
| + return new(zone) LocationSummary(zone, 0, 0, LocationSummary::kNoCall);
|
| }
|
|
|
|
|
| @@ -6193,13 +6193,13 @@
|
| }
|
|
|
|
|
| -LocationSummary* IndirectGotoInstr::MakeLocationSummary(Isolate* isolate,
|
| +LocationSummary* IndirectGotoInstr::MakeLocationSummary(Zone* zone,
|
| bool opt) const {
|
| const intptr_t kNumInputs = 1;
|
| const intptr_t kNumTemps = 1;
|
|
|
| - LocationSummary* summary = new(isolate) LocationSummary(
|
| - isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + LocationSummary* summary = new(zone) LocationSummary(
|
| + zone, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
|
|
| summary->set_in(0, Location::RequiresRegister());
|
| summary->set_temp(0, Location::RequiresRegister());
|
| @@ -6225,20 +6225,20 @@
|
| __ jmp(target_address_reg);
|
| }
|
|
|
| -LocationSummary* StrictCompareInstr::MakeLocationSummary(Isolate* isolate,
|
| +LocationSummary* StrictCompareInstr::MakeLocationSummary(Zone* zone,
|
| bool opt) const {
|
| const intptr_t kNumInputs = 2;
|
| const intptr_t kNumTemps = 0;
|
| if (needs_number_check()) {
|
| - LocationSummary* locs = new(isolate) LocationSummary(
|
| - isolate, kNumInputs, kNumTemps, LocationSummary::kCall);
|
| + LocationSummary* locs = new(zone) LocationSummary(
|
| + zone, kNumInputs, kNumTemps, LocationSummary::kCall);
|
| locs->set_in(0, Location::RegisterLocation(RAX));
|
| locs->set_in(1, Location::RegisterLocation(RCX));
|
| locs->set_out(0, Location::RegisterLocation(RAX));
|
| return locs;
|
| }
|
| - LocationSummary* locs = new(isolate) LocationSummary(
|
| - isolate, kNumInputs, kNumTemps, LocationSummary::kNoCall);
|
| + LocationSummary* locs = new(zone) LocationSummary(
|
| + zone, 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.
|
| @@ -6310,12 +6310,12 @@
|
| }
|
|
|
|
|
| -LocationSummary* ClosureCallInstr::MakeLocationSummary(Isolate* isolate,
|
| +LocationSummary* ClosureCallInstr::MakeLocationSummary(Zone* zone,
|
| bool opt) const {
|
| const intptr_t kNumInputs = 1;
|
| const intptr_t kNumTemps = 0;
|
| - LocationSummary* summary = new(isolate) LocationSummary(
|
| - isolate, kNumInputs, kNumTemps, LocationSummary::kCall);
|
| + LocationSummary* summary = new(zone) LocationSummary(
|
| + zone, kNumInputs, kNumTemps, LocationSummary::kCall);
|
| summary->set_in(0, Location::RegisterLocation(RAX)); // Function.
|
| summary->set_out(0, Location::RegisterLocation(RAX));
|
| return summary;
|
| @@ -6360,9 +6360,9 @@
|
| }
|
|
|
|
|
| -LocationSummary* BooleanNegateInstr::MakeLocationSummary(Isolate* isolate,
|
| +LocationSummary* BooleanNegateInstr::MakeLocationSummary(Zone* zone,
|
| bool opt) const {
|
| - return LocationSummary::Make(isolate,
|
| + return LocationSummary::Make(zone,
|
| 1,
|
| Location::RequiresRegister(),
|
| LocationSummary::kNoCall);
|
| @@ -6382,9 +6382,9 @@
|
| }
|
|
|
|
|
| -LocationSummary* AllocateObjectInstr::MakeLocationSummary(Isolate* isolate,
|
| +LocationSummary* AllocateObjectInstr::MakeLocationSummary(Zone* zone,
|
| bool opt) const {
|
| - return MakeCallSummary(isolate);
|
| + return MakeCallSummary(zone);
|
| }
|
|
|
|
|
|
|