[LLVMdev] Strange loop unrolling problem (partially solved)
baldrick at free.fr
Mon Apr 27 06:44:22 PDT 2009
> Any ideas which pass does the lifting of the `then' branch?
if optimizing with "opt -std-compile-opts" shows this problem
then you can find the problematic pass using the following
(1) run "opt -std-compile-opts -debug-pass=Arguments" to find
out which passes opt is running.
(2) run opt with that list of passes rather than -std-compile-opts.
(3) drop passes from the end of the list as long as the problematic
transform is still happening. At some point the problem will
disappear when you drop a pass. Then that pass is presumably
doing the transform. A more sophisticated version of this is
to do bisection on the list of passes.
More information about the llvm-dev