On 8/15/07, ranjith kumar <ranjit_kumar_b4u@xxxxxxxxxxx> wrote: > Hi, > I know that linear loop transformations on tree > representation can be enabled by -ftree-loop-linear > flag. > > It is said that these transformations include > loop-interchange, reversal,skewing,scaling. > These transformations are done by apllying different > transformation matrices. For example for > loop-interchange transfomation matrix is (0 1) > (1 0) > > 1)Where can I find example programs for which > gcc-4.1.2 can do these transformations. ltrans-* in the testsuite > > 2) I have had a look at internal files. It seems that > gcc-4.1.2 can do only loop-interchange only. > Am I right? > No. It can do the others, but nothing *asks it to*. This is very different than not being able to do it. > 3)If gcc-4.1.2 can do other transformations, what are > they? and how gcc-4.1.2 selects which particular > transformation matrix to apply??( Gcc can apply any > integer non-singular matrix theoretically.) tree-loop-linear has code to try to figure out a good matrix, but as you said, it only currenly decides to do interchanges. (4.2 or 4.3 has better code here, but it still only chooses interchange matrices)