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

Unified Diff: runtime/vm/intermediate_language_arm.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_arm.cc
diff --git a/runtime/vm/intermediate_language_arm.cc b/runtime/vm/intermediate_language_arm.cc
index 5d0992f054111965c98254d3ed8d56d2d9b73df3..e5aa97864139983a0cdd8265af6541297049997a 100644
--- a/runtime/vm/intermediate_language_arm.cc
+++ b/runtime/vm/intermediate_language_arm.cc
@@ -1812,16 +1812,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();
@@ -2394,8 +2392,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(),
@@ -2684,8 +2682,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(),
@@ -6812,9 +6810,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