hotspot/src/share/vm/opto/gcm.cpp
changeset 11191 d54ab5dcba83
parent 10255 bab46e6f7661
child 11567 512b2c76e3b7
equal deleted inserted replaced
11190:d561d41f241a 11191:d54ab5dcba83
    93 void PhaseCFG::replace_block_proj_ctrl( Node *n ) {
    93 void PhaseCFG::replace_block_proj_ctrl( Node *n ) {
    94   const Node *in0 = n->in(0);
    94   const Node *in0 = n->in(0);
    95   assert(in0 != NULL, "Only control-dependent");
    95   assert(in0 != NULL, "Only control-dependent");
    96   const Node *p = in0->is_block_proj();
    96   const Node *p = in0->is_block_proj();
    97   if (p != NULL && p != n) {    // Control from a block projection?
    97   if (p != NULL && p != n) {    // Control from a block projection?
    98     assert(!n->pinned() || n->is_MachConstantBase() || n->is_SafePointScalarObject(), "only pinned MachConstantBase or SafePointScalarObject node is expected here");
    98     assert(!n->pinned() || n->is_MachConstantBase(), "only pinned MachConstantBase node is expected here");
    99     // Find trailing Region
    99     // Find trailing Region
   100     Block *pb = _bbs[in0->_idx]; // Block-projection already has basic block
   100     Block *pb = _bbs[in0->_idx]; // Block-projection already has basic block
   101     uint j = 0;
   101     uint j = 0;
   102     if (pb->_num_succs != 1) {  // More then 1 successor?
   102     if (pb->_num_succs != 1) {  // More then 1 successor?
   103       // Search for successor
   103       // Search for successor