aco: fix off-by-one error when initializing sgpr_live_in
authorRhys Perry <pendingchaos02@gmail.com>
Wed, 22 Jan 2020 11:51:31 +0000 (11:51 +0000)
committerMarge Bot <eric+marge@anholt.net>
Wed, 22 Jan 2020 17:23:30 +0000 (17:23 +0000)
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Closes: https://gitlab.freedesktop.org/mesa/mesa/issues/2394
Fixes: 93c8ebfa780 ('aco: Initial commit of independent AMD compiler')
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev>
Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3511>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3511>

src/amd/compiler/aco_register_allocation.cpp

index ec8838d97edd8d0b28e3591a94f7919cce92d6f2..8370effdbc3c48e7699ef47b217463d7318686f3 100644 (file)
@@ -1365,7 +1365,7 @@ void register_allocation(Program *program, std::vector<std::set<Temp>> live_out_
       }
 
       /* fill in sgpr_live_in */
-      for (unsigned i = 0; i < ctx.max_used_sgpr; i++)
+      for (unsigned i = 0; i <= ctx.max_used_sgpr; i++)
          sgpr_live_in[block.index][i] = register_file[i];
       sgpr_live_in[block.index][127] = register_file[scc.reg];