ir_structure_splitting: New pass to chop structures into their components.
This doesn't do anything if your structure goes through an uninlined function call or if whole-structure assignment occurs. As such, the impact is limited, at least until we do some global copy propagation to reduce whole-structure assignment.
This commit is contained in:
@@ -1287,6 +1287,7 @@ link_shaders(struct gl_shader_program *prog)
|
||||
|
||||
progress = do_function_inlining(ir) || progress;
|
||||
progress = do_dead_functions(ir) || progress;
|
||||
progress = do_structure_splitting(ir) || progress;
|
||||
progress = do_if_simplification(ir) || progress;
|
||||
progress = do_copy_propagation(ir) || progress;
|
||||
progress = do_dead_code_local(ir) || progress;
|
||||
|
Reference in New Issue
Block a user