Index: runtime/vm/instructions_arm64.h |
diff --git a/runtime/vm/instructions_arm64.h b/runtime/vm/instructions_arm64.h |
index e3c1d4d0f3bda027b4ff481e9ab8450eea626580..80de324e656b74bb65fa546c312203beddf11166 100644 |
--- a/runtime/vm/instructions_arm64.h |
+++ b/runtime/vm/instructions_arm64.h |
@@ -64,6 +64,14 @@ class CallPattern : public ValueObject { |
RawCode* TargetCode() const; |
void SetTargetCode(const Code& target) const; |
+ // This constant length is only valid for inserted call patterns used for |
+ // lazy deoptimization. Regular call pattern may vary in length. |
+ static const int kDeoptCallLengthInInstructions = 5; |
+ static const int kDeoptCallLengthInBytes = |
+ kDeoptCallLengthInInstructions * Instr::kInstrSize; |
+ |
+ static void InsertDeoptCallAt(uword pc, uword target_address); |
+ |
private: |
const ObjectPool& object_pool_; |