Hi,
I'm considering how to escape the unnecessary re-optimization
in automatic parallelization.
e.g.
in a source code the function fun() one loop
is considered can_be_parallel by Graphite pass, and in pass
tree-parloop.c, will call the code generation part for this loop and generate
newly created fun.loop_f0(), note that fun.loop_f0 is a function that has some
omp directive added on optimized function fun()'s loop (It has been optimized by
the passes before tree-parloop.c), and to my observation, the newly created
function fun.loop_f0 will be passed through the first pass again (Is this
statement corret?).
So my question is,
1. Is this necessary/correct if we want to escape the re-optimization for the
first few passes before tree-parloop.c and continue the optimization passes
after it for the function fun.loop_f0, there must be compile time savings if we
do this in my opinion.
2.
How could I do if we want to do this.
I'm not familiar with the mechanism that how passes works, it'll be
appriciate if someone can tell me more.
Thanks,
Li