Index: runtime/vm/deopt_instructions.cc |
=================================================================== |
--- runtime/vm/deopt_instructions.cc (revision 35415) |
+++ runtime/vm/deopt_instructions.cc (working copy) |
@@ -44,12 +44,12 @@ |
deferred_objects_(NULL) { |
object_table_ = code.object_table(); |
- intptr_t deopt_reason = kDeoptUnknown; |
+ DeoptReasonId deopt_reason = kDeoptUnknown; |
const DeoptInfo& deopt_info = |
DeoptInfo::Handle(code.GetDeoptInfoAtPc(frame->pc(), &deopt_reason)); |
ASSERT(!deopt_info.IsNull()); |
deopt_info_ = deopt_info.raw(); |
- deopt_reason_ = static_cast<DeoptReasonId>(deopt_reason); |
+ deopt_reason_ = deopt_reason; |
const Function& function = Function::Handle(code.function()); |
@@ -96,7 +96,7 @@ |
if (FLAG_trace_deoptimization || FLAG_trace_deoptimization_verbose) { |
OS::PrintErr( |
- "Deoptimizing (reason %" Pd " '%s') at pc %#" Px " '%s' (count %d)\n", |
+ "Deoptimizing (reason %d '%s') at pc %#" Px " '%s' (count %d)\n", |
deopt_reason, |
DeoptReasonToText(deopt_reason_), |
frame->pc(), |
@@ -615,7 +615,7 @@ |
ICData& ic_data = ICData::Handle(); |
CodePatcher::GetInstanceCallAt(pc, code, &ic_data); |
if (!ic_data.IsNull()) { |
- ic_data.set_deopt_reason(deopt_context->deopt_reason()); |
+ ic_data.AddDeoptReason(deopt_context->deopt_reason()); |
} |
} else if (deopt_context->deopt_reason() == kDeoptHoistedCheckClass) { |
// Prevent excessive deoptimization. |