Go to the first, previous, next, last section, table of contents.


FOR Loops

A simple FOR loop corresponding to the for structure in C and the do structure in FORTRAN can be constructed using the builder. The builder's FOR() function gets translated to a SUIF FOR tree node.

        for(int i=0; i<=10; i++)
            ....

can be generated using builder by:

        block i(block::new_sym(cst_int, i));
        block code(block::FOR(i, block(0), block(10), block(...)));

The fields of the builder FOR() function are

The index variable.
The lower bound.
Optional: The loop test. Any builder enum of a test operator can be used. The default is bop_leq (<=).
The upper bound.
Optional: The step size. The default is 1.
The body of the loop.


Go to the first, previous, next, last section, table of contents.