}
}
-static bool
-add_var_use_block(nir_block *block, void *state)
-{
- struct set *live = state;
-
- nir_foreach_instr(block, instr) {
- switch(instr->type) {
- case nir_instr_type_intrinsic:
- add_var_use_intrinsic(nir_instr_as_intrinsic(instr), live);
- break;
-
- case nir_instr_type_call:
- add_var_use_call(nir_instr_as_call(instr), live);
- break;
-
- case nir_instr_type_tex:
- add_var_use_tex(nir_instr_as_tex(instr), live);
- break;
-
- default:
- break;
- }
- }
-
- return true;
-}
-
static void
add_var_use_shader(nir_shader *shader, struct set *live)
{
nir_foreach_function(shader, function) {
if (function->impl) {
- nir_foreach_block_call(function->impl, add_var_use_block, live);
+ nir_foreach_block(block, function->impl) {
+ nir_foreach_instr(block, instr) {
+ switch(instr->type) {
+ case nir_instr_type_intrinsic:
+ add_var_use_intrinsic(nir_instr_as_intrinsic(instr), live);
+ break;
+
+ case nir_instr_type_call:
+ add_var_use_call(nir_instr_as_call(instr), live);
+ break;
+
+ case nir_instr_type_tex:
+ add_var_use_tex(nir_instr_as_tex(instr), live);
+ break;
+
+ default:
+ break;
+ }
+ }
+ }
}
}
}