equal
deleted
inserted
replaced
681 // earliest legal block for 'load'. In the latter case, |
681 // earliest legal block for 'load'. In the latter case, |
682 // immediately insert an anti-dependence edge. |
682 // immediately insert an anti-dependence edge. |
683 Block* store_block = get_block_for_node(store); |
683 Block* store_block = get_block_for_node(store); |
684 assert(store_block != NULL, "unused killing projections skipped above"); |
684 assert(store_block != NULL, "unused killing projections skipped above"); |
685 |
685 |
686 if (store->is_Phi() && store->in(0)->is_Loop()) { |
686 if (store->is_Phi()) { |
687 // Loop-phis need to raise load before input. (Other phis are treated |
687 // Loop-phis need to raise load before input. (Other phis are treated |
688 // as store below.) |
688 // as store below.) |
689 // |
689 // |
690 // 'load' uses memory which is one (or more) of the Phi's inputs. |
690 // 'load' uses memory which is one (or more) of the Phi's inputs. |
691 // It must be scheduled not before the Phi, but rather before |
691 // It must be scheduled not before the Phi, but rather before |