[llvm] skip 16bit register for wmm reg sorting (PR #135053)

Brox Chen via llvm-commits llvm-commits at lists.llvm.org
Wed Apr 9 10:11:21 PDT 2025


https://github.com/broxigarchen created https://github.com/llvm/llvm-project/pull/135053

None

>From 4b39701b398857043f2a310c978418eba9bc36aa Mon Sep 17 00:00:00 2001
From: guochen2 <guochen2 at amd.com>
Date: Wed, 9 Apr 2025 10:38:34 -0400
Subject: [PATCH] skip 16bit register for wmm reg sorting

---
 llvm/lib/Target/AMDGPU/SIFrameLowering.cpp | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/llvm/lib/Target/AMDGPU/SIFrameLowering.cpp b/llvm/lib/Target/AMDGPU/SIFrameLowering.cpp
index 9c737b4f3e378..c35d700641e50 100644
--- a/llvm/lib/Target/AMDGPU/SIFrameLowering.cpp
+++ b/llvm/lib/Target/AMDGPU/SIFrameLowering.cpp
@@ -1652,6 +1652,10 @@ void SIFrameLowering::determineCalleeSaves(MachineFunction &MF,
     const TargetRegisterClass *RC = TRI->getPhysRegBaseClass(Reg);
     if (TRI->getRegSizeInBits(*RC) > 32)
       continue;
+
+    if (ST.useRealTrue16Insts() && TRI->getRegSizeInBits(*RC) == 16)
+      continue;
+
     SortedWWMVGPRs.push_back(Reg);
   }
 



More information about the llvm-commits mailing list