[PATCH] D115401: AMDGPU: Fix clobbering SCC when expanding large offset spill pseudos

Matt Arsenault via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Feb 3 13:22:06 PST 2022


arsenm marked 3 inline comments as done.
arsenm added inline comments.


================
Comment at: llvm/lib/Target/AMDGPU/SIRegisterInfo.cpp:1400
+
+      assert(TmpOffsetVGPR);
+    } else if (!SOffset && CanClobberSCC) {
----------------
rampitec wrote:
> This probably needs to be a proper diagnostics instead of assert.
Real diagnostics are for things which can be hit by a user or a mir test at least. I don't think this can ever happen. This path is only reached from the prolog/epilog code where there should always be free VGPRs available


================
Comment at: llvm/test/CodeGen/AMDGPU/swdev309419-agpr.mir:3
+# RUN: llc -mtriple=amdgcn-amd-amdhsa -mcpu=gfx908 -verify-machineinstrs -run-pass=prologepilog %s -o - | FileCheck -check-prefix=GFX908 %s
+# RUN: llc -mtriple=amdgcn-amd-amdhsa -mcpu=gfx90a -verify-machineinstrs -run-pass=prologepilog %s -o - | FileCheck -check-prefix=GFX90A %s
+---
----------------
rampitec wrote:
> Probably add run line with flat scratch and another with -mattr=+architected-flat-scratch.
Doesn't architected flat scratch just changed the prolog initialization? Why does it matter here?


CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D115401/new/

https://reviews.llvm.org/D115401



More information about the llvm-commits mailing list