Index: runtime/vm/assembler_mips.h |
diff --git a/runtime/vm/assembler_mips.h b/runtime/vm/assembler_mips.h |
index ec9daf89cab8a40573bb0eceb36cc0f581aa87f8..0f0897ff140b097e7c7f6e5f07e7d383317a3ee5 100644 |
--- a/runtime/vm/assembler_mips.h |
+++ b/runtime/vm/assembler_mips.h |
@@ -26,6 +26,7 @@ namespace dart { |
// Forward declarations. |
class RuntimeEntry; |
+class StubEntry; |
class Immediate : public ValueObject { |
public: |
@@ -917,6 +918,8 @@ class Assembler : public ValueObject { |
jr(TMP); |
} |
+ void Branch(const StubEntry& stub_entry); |
+ |
void BranchPatchable(const ExternalLabel* label) { |
ASSERT(!in_delay_slot_); |
const uint16_t low = Utils::Low16Bits(label->address()); |
@@ -927,12 +930,16 @@ class Assembler : public ValueObject { |
delay_slot_available_ = false; // CodePatcher expects a nop. |
} |
+ void BranchPatchable(const StubEntry& stub_entry); |
+ |
void BranchLink(const ExternalLabel* label) { |
ASSERT(!in_delay_slot_); |
LoadImmediate(T9, label->address()); |
jalr(T9); |
} |
+ void BranchLink(const StubEntry& stub_entry); |
+ |
void BranchLink(const ExternalLabel* label, Patchability patchable) { |
ASSERT(!in_delay_slot_); |
const int32_t offset = ObjectPool::element_offset( |
@@ -944,10 +951,14 @@ class Assembler : public ValueObject { |
} |
} |
+ void BranchLink(const StubEntry& stub_entry, Patchability patchable); |
+ |
void BranchLinkPatchable(const ExternalLabel* label) { |
BranchLink(label, kPatchable); |
} |
+ void BranchLinkPatchable(const StubEntry& stub_entry); |
+ |
void Drop(intptr_t stack_elements) { |
ASSERT(stack_elements >= 0); |
if (stack_elements > 0) { |