Index: runtime/vm/object.cc |
=================================================================== |
--- runtime/vm/object.cc (revision 36988) |
+++ runtime/vm/object.cc (working copy) |
@@ -10129,9 +10129,6 @@ |
const char* PcDescriptors::KindAsStr(intptr_t index) const { |
switch (DescriptorKind(index)) { |
case PcDescriptors::kDeopt: return "deopt "; |
- case PcDescriptors::kEntryPatch: return "entry-patch "; |
- case PcDescriptors::kPatchCode: return "patch "; |
- case PcDescriptors::kLazyDeoptJump: return "lazy-deopt "; |
case PcDescriptors::kIcCall: return "ic-call "; |
case PcDescriptors::kOptStaticCall: return "opt-call "; |
case PcDescriptors::kUnoptStaticCall: return "unopt-call "; |
@@ -11618,6 +11615,9 @@ |
result.set_is_alive(false); |
result.set_comments(Comments::New(0)); |
result.set_compile_timestamp(0); |
+ result.set_entry_patch_pc_offset(kInvalidPc); |
+ result.set_patch_code_pc_offset(kInvalidPc); |
+ result.set_lazy_deopt_pc_offset(kInvalidPc); |
result.set_pc_descriptors(Object::empty_descriptors()); |
} |
return result.raw(); |
@@ -11897,15 +11897,21 @@ |
} |
+uword Code::GetEntryPatchPc() const { |
+ return (entry_patch_pc_offset() != kInvalidPc) |
+ ? EntryPoint() + entry_patch_pc_offset() : 0; |
+} |
+ |
+ |
uword Code::GetPatchCodePc() const { |
- const PcDescriptors& descriptors = PcDescriptors::Handle(pc_descriptors()); |
- return descriptors.GetPcForKind(PcDescriptors::kPatchCode); |
+ return (patch_code_pc_offset() != kInvalidPc) |
+ ? EntryPoint() + patch_code_pc_offset() : 0; |
} |
uword Code::GetLazyDeoptPc() const { |
- const PcDescriptors& descriptors = PcDescriptors::Handle(pc_descriptors()); |
- return descriptors.GetPcForKind(PcDescriptors::kLazyDeoptJump); |
+ return (lazy_deopt_pc_offset() != kInvalidPc) |
+ ? EntryPoint() + lazy_deopt_pc_offset() : 0; |
} |