From a85a781dad23080c880d5514be2e8442f6de2463 Mon Sep 17 00:00:00 2001 From: Jason Ekstrand Date: Wed, 19 Aug 2015 14:29:53 -0700 Subject: i965/fs: Split VGRFs after lowering pull constants The split_virtual_grfs code doesn't properly rewrite reladdr so we need to make sure that any uniform indirects are lowered away first. This fixes the glsl-fs-uniform-indexed-by-swizzled-vec4.shader_test in piglit Cc: "10.6" Reviewed-by: Kenneth Graunke (cherry picked from commit fee0c5af11dd0995de96e7053377d425a66d03a0) --- src/mesa/drivers/dri/i965/brw_fs.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'src') diff --git a/src/mesa/drivers/dri/i965/brw_fs.cpp b/src/mesa/drivers/dri/i965/brw_fs.cpp index d99c79bfdf4..6790a5e298c 100644 --- a/src/mesa/drivers/dri/i965/brw_fs.cpp +++ b/src/mesa/drivers/dri/i965/brw_fs.cpp @@ -4098,12 +4098,12 @@ fs_visitor::calculate_register_pressure() void fs_visitor::optimize() { - split_virtual_grfs(); - move_uniform_array_access_to_pull_constants(); assign_constant_locations(); demote_pull_constants(); + split_virtual_grfs(); + #define OPT(pass, args...) ({ \ pass_num++; \ bool this_progress = pass(args); \ -- cgit v1.2.3