On Mon, Mar 24, 2014 at 1:46 PM, Yangfei (Felix) <felix.y...@huawei.com> wrote: > Hello everyone, > > I'm thinking of the right way of adding some loop related pragmas to GCC. > An example: > > #pragma loop unroll = 2 > for (i = 0; i < n; i ++) > { > Whatever... > } > > Here I want the unroll factor of the loop to be 2 when doing RTL loop > unrolling. > But I find that it's kind of difficult to achieve this in GCC. > The reason is that the loop structures are initialized and finalized at > run time. Also the RTL expand phase is kind of complex and it does not care > about loops. > So how to deliver the pragma information to RTL loop unrolling pass? What > the the elegant way of doing this? > Can anyone give some suggestions on this please?
Look at how we implement #pragma ivdep (see replace_loop_annotate () and fortran/trans-stmt.c where it builds ANNOTATE_EXPR). Richard. > Many thanks. >