[llvm] [AMDGPU] Allocate i1 argument to SGPRs (PR #72461)

Matt Arsenault via llvm-commits llvm-commits at lists.llvm.org
Thu Jan 25 08:46:46 PST 2024


================
@@ -29,6 +29,39 @@
 
 using namespace llvm;
 
+static bool CC_AMDGPU_Custom_I1(unsigned ValNo, MVT ValVT, MVT LocVT,
+                                CCValAssign::LocInfo LocInfo,
+                                ISD::ArgFlagsTy ArgFlags, CCState &State) {
+  static bool IsWave64 = static_cast<const GCNSubtarget &>(
+                             State.getMachineFunction().getSubtarget())
+                             .isWave64();
+
+  static const MCPhysReg I1RegList1[] = {
+      AMDGPU::SGPR0_SGPR1,   AMDGPU::SGPR2_SGPR3,   AMDGPU::SGPR4_SGPR5,
----------------
arsenm wrote:

Yes, the i64 is physically what is being passed, but doesn't have the alignment requirement in the argument list. 

https://github.com/llvm/llvm-project/pull/72461


More information about the llvm-commits mailing list