From 75763061e7d50865f561f1d76ad1768c511f01ca Mon Sep 17 00:00:00 2001 From: "svenpanne@chromium.org" Date: Wed, 4 Sep 2013 07:27:10 +0000 Subject: [PATCH] Cleaned up deopt reason messages a bit. They are now a bit more consistent, and they don't mention the name of a flag, which will go out of sync some day. ;-) R=machenbach@chromium.org Review URL: https://codereview.chromium.org/23845003 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16514 ce2b1a6d-e550-0410-aec6-3dcde31c8c00 --- src/code-stubs-hydrogen.cc | 3 +-- src/hydrogen.cc | 15 ++++++++------- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/src/code-stubs-hydrogen.cc b/src/code-stubs-hydrogen.cc index 131fe31..23d4269 100644 --- a/src/code-stubs-hydrogen.cc +++ b/src/code-stubs-hydrogen.cc @@ -888,8 +888,7 @@ HValue* CodeStubGraphBuilder::BuildCodeStub() { if (FLAG_trace_elements_transitions) { // Tracing elements transitions is the job of the runtime. - Add("Deopt due to --trace-elements-transitions", - Deoptimizer::EAGER); + Add("Tracing elements transitions", Deoptimizer::EAGER); } else { info()->MarkAsSavesCallerDoubles(); diff --git a/src/hydrogen.cc b/src/hydrogen.cc index 6c08eca..5abbda6 100644 --- a/src/hydrogen.cc +++ b/src/hydrogen.cc @@ -5376,7 +5376,7 @@ HInstruction* HOptimizedGraphBuilder::BuildLoadNamedGeneric( Handle name, Property* expr) { if (expr->IsUninitialized()) { - Add("Insufficient feedback for generic named load", + Add("Insufficient type feedback for generic named load", Deoptimizer::SOFT); } HValue* context = environment()->context(); @@ -5690,7 +5690,7 @@ HValue* HOptimizedGraphBuilder::HandlePolymorphicElementAccess( // Deopt if none of the cases matched. NoObservableSideEffectsScope scope(this); - FinishExitWithHardDeoptimization("Unknown type in polymorphic element access", + FinishExitWithHardDeoptimization("Unknown map in polymorphic element access", join); set_current_block(join); return is_store ? NULL : Pop(); @@ -5727,13 +5727,13 @@ HValue* HOptimizedGraphBuilder::HandleKeyedElementAccess( } else { if (is_store) { if (expr->IsAssignment() && expr->AsAssignment()->IsUninitialized()) { - Add("Insufficient feedback for keyed store", + Add("Insufficient type feedback for keyed store", Deoptimizer::SOFT); } instr = BuildStoreKeyedGeneric(obj, key, val); } else { if (expr->AsProperty()->IsUninitialized()) { - Add("Insufficient feedback for keyed load", + Add("Insufficient type feedback for keyed load", Deoptimizer::SOFT); } instr = BuildLoadKeyedGeneric(obj, key); @@ -7745,13 +7745,13 @@ HInstruction* HOptimizedGraphBuilder::BuildBinaryOperation( } if (left_type->Is(Type::None())) { - Add("Insufficient type feedback for left side", + Add("Insufficient type feedback for LHS of binary operation", Deoptimizer::SOFT); // TODO(rossberg): we should be able to get rid of non-continuous defaults. left_type = handle(Type::Any(), isolate()); } if (right_type->Is(Type::None())) { - Add("Insufficient type feedback for right side", + Add("Insufficient type feedback for RHS of binary operation", Deoptimizer::SOFT); right_type = handle(Type::Any(), isolate()); } @@ -8102,7 +8102,8 @@ void HOptimizedGraphBuilder::VisitCompareOperation(CompareOperation* expr) { // Cases handled below depend on collected type feedback. They should // soft deoptimize when there is no type feedback. if (combined_type->Is(Type::None())) { - Add("insufficient type feedback for combined type", + Add("Insufficient type feedback for combined type " + "of binary operation", Deoptimizer::SOFT); combined_type = left_type = right_type = handle(Type::Any(), isolate()); } -- 2.7.4