Mercurial > hg > truffle
diff src/share/vm/opto/loopopts.cpp @ 12956:3213ba4d3dff
8024069: replace_in_map() should operate on parent maps
Summary: type information gets lost because replace_in_map() doesn't update parent maps
Reviewed-by: kvn, twisti
author | roland |
---|---|
date | Sat, 19 Oct 2013 12:16:43 +0200 |
parents | c9ccd7b85f20 |
children | f675976a61e7 |
line wrap: on
line diff
--- a/src/share/vm/opto/loopopts.cpp Fri Oct 18 12:15:32 2013 -0700 +++ b/src/share/vm/opto/loopopts.cpp Sat Oct 19 12:16:43 2013 +0200 @@ -238,7 +238,7 @@ ProjNode* dp_proj = dp->as_Proj(); ProjNode* unc_proj = iff->as_If()->proj_out(1 - dp_proj->_con)->as_Proj(); if (exclude_loop_predicate && - is_uncommon_trap_proj(unc_proj, Deoptimization::Reason_predicate)) + unc_proj->is_uncommon_trap_proj(Deoptimization::Reason_predicate)) return; // Let IGVN transformation change control dependence. IdealLoopTree *old_loop = get_loop(dp);