Index: runtime/vm/deopt_instructions.h |
diff --git a/runtime/vm/deopt_instructions.h b/runtime/vm/deopt_instructions.h |
index 7250902383f932c5946755bfc96225f9756cd094..40fc623d3d3d9e6a83f222877e13ad4da39dd925 100644 |
--- a/runtime/vm/deopt_instructions.h |
+++ b/runtime/vm/deopt_instructions.h |
@@ -47,6 +47,10 @@ class DeoptimizationContext : public ValueObject { |
return registers_copy_[reg]; |
} |
+ double XmmRegisterValue(XmmRegister reg) const { |
+ return xmm_registers_copy_[reg]; |
+ } |
+ |
Isolate* isolate() const { return isolate_; } |
intptr_t from_frame_size() const { return from_frame_size_; } |
@@ -58,6 +62,7 @@ class DeoptimizationContext : public ValueObject { |
intptr_t* from_frame_; |
intptr_t from_frame_size_; |
intptr_t* registers_copy_; |
+ double* xmm_registers_copy_; |
const intptr_t num_args_; |
Isolate* isolate_; |
@@ -86,7 +91,9 @@ class DeoptInstr : public ZoneAllocated { |
kSetRetAddress, |
kCopyConstant, |
kCopyRegister, |
+ kCopyXmmRegister, |
kCopyStackSlot, |
+ kCopyDoubleStackSlot, |
kSetPcMarker, |
kSetCallerFp, |
kSetCallerPc, |