equal
deleted
inserted
replaced
3170 |
3170 |
3171 bool PhaseIdealLoop::verify_dominance(Node* n, Node* use, Node* LCA, Node* early) { |
3171 bool PhaseIdealLoop::verify_dominance(Node* n, Node* use, Node* LCA, Node* early) { |
3172 bool had_error = false; |
3172 bool had_error = false; |
3173 #ifdef ASSERT |
3173 #ifdef ASSERT |
3174 if (early != C->root()) { |
3174 if (early != C->root()) { |
3175 // Make sure that there's a dominance path from use to LCA |
3175 // Make sure that there's a dominance path from LCA to early |
3176 Node* d = use; |
3176 Node* d = LCA; |
3177 while (d != LCA) { |
3177 while (d != early) { |
3178 d = idom(d); |
|
3179 if (d == C->root()) { |
3178 if (d == C->root()) { |
3180 tty->print_cr("*** Use %d isn't dominated by def %s", use->_idx, n->_idx); |
3179 dump_bad_graph("Bad graph detected in compute_lca_of_uses", n, early, LCA); |
3181 n->dump(); |
3180 tty->print_cr("*** Use %d isn't dominated by def %d ***", use->_idx, n->_idx); |
3182 use->dump(); |
|
3183 had_error = true; |
3181 had_error = true; |
3184 break; |
3182 break; |
3185 } |
3183 } |
|
3184 d = idom(d); |
3186 } |
3185 } |
3187 } |
3186 } |
3188 #endif |
3187 #endif |
3189 return had_error; |
3188 return had_error; |
3190 } |
3189 } |
3433 |
3432 |
3434 if (n->req() == 2 && n->Opcode() == Op_ConvI2L && !C->major_progress() && !_verify_only) { |
3433 if (n->req() == 2 && n->Opcode() == Op_ConvI2L && !C->major_progress() && !_verify_only) { |
3435 _igvn._worklist.push(n); // Maybe we'll normalize it, if no more loops. |
3434 _igvn._worklist.push(n); // Maybe we'll normalize it, if no more loops. |
3436 } |
3435 } |
3437 |
3436 |
|
3437 #ifdef ASSERT |
|
3438 if (_verify_only && !n->is_CFG()) { |
|
3439 // Check def-use domination. |
|
3440 compute_lca_of_uses(n, get_ctrl(n), true /* verify */); |
|
3441 } |
|
3442 #endif |
|
3443 |
3438 // CFG and pinned nodes already handled |
3444 // CFG and pinned nodes already handled |
3439 if( n->in(0) ) { |
3445 if( n->in(0) ) { |
3440 if( n->in(0)->is_top() ) return; // Dead? |
3446 if( n->in(0)->is_top() ) return; // Dead? |
3441 |
3447 |
3442 // We'd like +VerifyLoopOptimizations to not believe that Mod's/Loads |
3448 // We'd like +VerifyLoopOptimizations to not believe that Mod's/Loads |