Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1085)

Unified Diff: runtime/vm/intermediate_language_arm64.cc

Issue 1288863006: Use zone allocated growable array to populate interim static and stub calls table, thus allocating … (Closed) Base URL: https://github.com/dart-lang/sdk.git@master
Patch Set: add comment Created 5 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: runtime/vm/intermediate_language_arm64.cc
diff --git a/runtime/vm/intermediate_language_arm64.cc b/runtime/vm/intermediate_language_arm64.cc
index ea543f496b06edd867fc4745d25972795f81e3dd..850790528936ffea4dfa0265247a70c5bbaef54b 100644
--- a/runtime/vm/intermediate_language_arm64.cc
+++ b/runtime/vm/intermediate_language_arm64.cc
@@ -1668,16 +1668,14 @@ class BoxAllocationSlowPath : public SlowPathCode {
result_(result) { }
virtual void EmitNativeCode(FlowGraphCompiler* compiler) {
- Isolate* isolate = compiler->isolate();
-
if (Assembler::EmittingComments()) {
__ Comment("%s slow path allocation of %s",
instruction_->DebugName(),
String::Handle(cls_.PrettyName()).ToCString());
}
__ Bind(entry_label());
- const Code& stub =
- Code::Handle(isolate, StubCode::GetAllocationStubForClass(cls_));
+ const Code& stub = Code::ZoneHandle(compiler->zone(),
+ StubCode::GetAllocationStubForClass(cls_));
const StubEntry stub_entry(stub);
LocationSummary* locs = instruction_->locs();
@@ -2120,8 +2118,8 @@ void CreateArrayInstr::EmitNativeCode(FlowGraphCompiler* compiler) {
return;
}
}
- const Code& stub = Code::Handle(compiler->isolate(),
- StubCode::AllocateArray_entry()->code());
+ const Code& stub = Code::ZoneHandle(compiler->zone(),
+ StubCode::AllocateArray_entry()->code());
compiler->AddStubCallTarget(stub);
compiler->GenerateCall(token_pos(),
*StubCode::AllocateArray_entry(),
@@ -2398,8 +2396,8 @@ class AllocateContextSlowPath : public SlowPathCode {
compiler->SaveLiveRegisters(locs);
__ LoadImmediate(R1, instruction_->num_context_variables());
- const Code& stub = Code::Handle(compiler->isolate(),
- StubCode::AllocateContext_entry()->code());
+ const Code& stub = Code::ZoneHandle(
+ compiler->zone(), StubCode::AllocateContext_entry()->code());
compiler->AddStubCallTarget(stub);
compiler->GenerateCall(instruction_->token_pos(),
*StubCode::AllocateContext_entry(),
@@ -5573,9 +5571,8 @@ LocationSummary* AllocateObjectInstr::MakeLocationSummary(Zone* zone,
void AllocateObjectInstr::EmitNativeCode(FlowGraphCompiler* compiler) {
- Isolate* isolate = compiler->isolate();
- const Code& stub = Code::Handle(isolate,
- StubCode::GetAllocationStubForClass(cls()));
+ const Code& stub = Code::ZoneHandle(
+ compiler->zone(), StubCode::GetAllocationStubForClass(cls()));
const StubEntry stub_entry(stub);
compiler->GenerateCall(token_pos(),
stub_entry,

Powered by Google App Engine
This is Rietveld 408576698