}
-void LocationAllocator::apply(Module &module, const Features &features)
+void LocationAllocator::apply(Module &module, const Features &features, bool a)
{
+ alloc_new = a;
for(Stage &s: module.stages)
apply(s);
}
}
+ if(!alloc_new)
+ continue;
+
set<unsigned> &used = used_locations[(*i)->interface];
unsigned size = LocationCounter().apply(**i);
auto i = uniforms.find(name);
if(i!=uniforms.end() && i->second.bind_point>=0)
add_layout_qualifier(layout, Layout::Qualifier("binding", i->second.bind_point));
- else
+ else if(alloc_new)
{
set<unsigned> &used = used_bindings[0];