There are many uses of:
node = intcon(x);
set_ctrl(node, C->root())
We should introduce a new method PhaseIdealLoop::intcon which is a wrapper that calls PhaseValue::intcon() and sets control to root. Then we do not need to worry about setting control which can easily be forgotten as for example inJDK-8343137.
            
node = intcon(x);
set_ctrl(node, C->root())
We should introduce a new method PhaseIdealLoop::intcon which is a wrapper that calls PhaseValue::intcon() and sets control to root. Then we do not need to worry about setting control which can easily be forgotten as for example in
- duplicates
- 
                    JDK-8343907 C2: Constants without root as control in PhaseIdealLoop::split_thru_phi -           
- Closed
 
-         
- relates to
- 
                    JDK-8346184 C2: assert(has_node(i)) failed during split thru phi -           
- Resolved
 
-         
- 
                    JDK-8343137 C2: VerifyLoopOptimizations fails with "Was reachable in only one" -           
- Resolved
 
-         
- 
                    JDK-8343907 C2: Constants without root as control in PhaseIdealLoop::split_thru_phi -           
- Closed
 
-         
- links to
- 
                     Commit(master)
        openjdk/jdk/e88e793c Commit(master)
        openjdk/jdk/e88e793c
- 
                     Review(master)
        openjdk/jdk/21836 Review(master)
        openjdk/jdk/21836
             (1 links to)