ART: Fix single-preheader transformation.
Original implementation of "Make sure the loop has only one pre-header" had an assumption that the header had no phi functions since loops with multiple preheaders now only may exist during graph building before ssa construction; all of the optimizations preserve the single-preheader invariant. This code is used by DCE; DCE was called multiple times but after graph building preheader transformation was never executed. However if someone introduces a optimization which might not keep the invariant (e.g. loop peeling) the data flow adjustments must be performed. Test: loop_optimization_test.cc Test: test-art-target, test-art-host Change-Id: I88bb0aad2dd5241addef7fe9cda474a6868bf532
Loading
Please sign in to comment