for(Stage &s: module->stages)
generate(s);
ConstantIdAssigner().apply(*module, features);
+ LocationAllocator().apply(*module, features, false);
for(Stage &s: module->stages)
validate(s);
{
if(ConstantFolder().apply(stage))
resolve(stage, RESOLVE_EXPRESSIONS);
- ConstantConditionEliminator().apply(stage);
+ if(ConstantConditionEliminator().apply(stage))
+ resolve(stage, RESOLVE_VARIABLES);
bool any_inlined = false;
if(FunctionInliner().apply(stage))