diff src/share/vm/runtime/deoptimization.hpp @ 20439:f6f9aec27858

8030976: Untaken paths should be more vigorously pruned at highest optimization level Reviewed-by: roland, vlivanov
author rbackman
date Wed, 10 Sep 2014 12:39:11 +0200
parents 606acabe7b5c
children 43ce58b4717b
line wrap: on
line diff
--- a/src/share/vm/runtime/deoptimization.hpp	Tue Sep 02 12:48:45 2014 -0700
+++ b/src/share/vm/runtime/deoptimization.hpp	Wed Sep 10 12:39:11 2014 +0200
@@ -60,6 +60,7 @@
     Reason_predicate,             // compiler generated predicate failed
     Reason_loop_limit_check,      // compiler generated loop limits check failed
     Reason_speculate_class_check, // saw unexpected object class from type speculation
+    Reason_unstable_if,           // a branch predicted always false was taken
     Reason_rtm_state_change,      // rtm state change detected
     Reason_LIMIT,
     // Note:  Keep this enum in sync. with _trap_reason_name.
@@ -315,6 +316,8 @@
       return Reason_null_check;           // recorded per BCI as a null check
     else if (reason == Reason_speculate_class_check)
       return Reason_class_check;
+    else if (reason == Reason_unstable_if)
+      return Reason_intrinsic;
     else
       return Reason_none;
   }