predep - preprocessing for the dependence analyzer
predep -normalize | -presc [ -verbose ] infile outfile ...
This pass performs two preprocessing steps that are useful to the parallelizer.
This preprocessing pass is needed by the dependence analyzer to handle array accesses with symbolic coefficients. Since the sign of the symbolic coefficient affects the dependence, the code is modified such that multiple loop nests are created for symbolic coefficients. Three loop nests are created for a symbolic coefficient such that the symbolic coefficient is greater than zero, less than zero, or equal to zero in each of the nests.
Normalize all the TREE_FORs by modifying all array references and loop definitions so that the step is always one and the loop test is always less-than-or-equal.
Maximum number of symbolic coefficients each loop nest is expanded. The default is 2 symbolic coefficient. After expanding for <number> symbolic coefficient 2^<number> loop nests are created.
Print a detailed description on what is going on.
The pass predep was written by Saman Amarasinghe. The normalization code in the dependence library was originally written by Dror Maydan and Michael Wolf and was ported to new SUIF by Jennifer Anderson. The dependence analysis of array accesses with symbolic coefficients in the dependence library was written by Saman Amarasinghe.