UnrollWalker

Unroll loop if possible.

version(COMPILE)
nothrow extern (C++)
struct UnrollWalker {
nothrow
uint defnum;
nothrow
int state;
nothrow
Symbol* v;
nothrow
targ_llong increment;
}

Members

Functions

walker
void walker(elem* e)

Walk e in execution order, fixing it according to state. state == 0: when rdinc is found, remove it, advance to state 1 state == 1: continue, replacing instances of v with v+increment, when second rdinc is found, advance to state 2 state == 2: continue

Return Value

true if loop was unrolled

Meta