| Index: runtime/vm/stub_code_arm.cc
|
| ===================================================================
|
| --- runtime/vm/stub_code_arm.cc (revision 40325)
|
| +++ runtime/vm/stub_code_arm.cc (working copy)
|
| @@ -1048,8 +1048,10 @@
|
| // SP + 0 : type arguments object (only if class is parameterized).
|
| // Returns patch_code_pc offset where patching code for disabling the stub
|
| // has been generated (similar to regularly generated Dart code).
|
| -uword StubCode::GenerateAllocationStubForClass(Assembler* assembler,
|
| - const Class& cls) {
|
| +void StubCode::GenerateAllocationStubForClass(
|
| + Assembler* assembler, const Class& cls,
|
| + uword* entry_patch_offset, uword* patch_code_pc_offset) {
|
| + *entry_patch_offset = assembler->CodeSize();
|
| // The generated code is different if the class is parameterized.
|
| const bool is_cls_parameterized = cls.NumTypeArguments() > 0;
|
| ASSERT(!is_cls_parameterized ||
|
| @@ -1167,10 +1169,9 @@
|
| // Restore the frame pointer.
|
| __ LeaveStubFrame();
|
| __ Ret();
|
| - uword patch_code_pc_offset = assembler->CodeSize();
|
| + *patch_code_pc_offset = assembler->CodeSize();
|
| StubCode* stub_code = Isolate::Current()->stub_code();
|
| __ BranchPatchable(&stub_code->FixAllocationStubTargetLabel());
|
| - return patch_code_pc_offset;
|
| }
|
|
|
|
|
|
|