1.1 --- a/src/share/vm/opto/loopTransform.cpp Thu Feb 25 15:55:47 2010 -0800 1.2 +++ b/src/share/vm/opto/loopTransform.cpp Thu Feb 25 22:58:43 2010 -0800 1.3 @@ -1785,6 +1785,8 @@ 1.4 bool PhaseIdealLoop::is_uncommon_trap_if_pattern(ProjNode *proj, bool must_reason_predicate) { 1.5 Node *in0 = proj->in(0); 1.6 if (!in0->is_If()) return false; 1.7 + // Variation of a dead If node. 1.8 + if (in0->outcnt() < 2) return false; 1.9 IfNode* iff = in0->as_If(); 1.10 1.11 // we need "If(Conv2B(Opaque1(...)))" pattern for must_reason_predicate