[llvm] [AMDGPU] Adjust amdgpu fmax/fmin legalization (PR #202917)

Matt Arsenault via llvm-commits llvm-commits at lists.llvm.org
Wed Jun 10 05:06:41 PDT 2026


================
@@ -1560,6 +1562,33 @@ RegBankLegalizeRules::RegBankLegalizeRules(const GCNSubtarget &_ST,
       .Uni(S32, {{Sgpr32}, {Sgpr32, Sgpr32}}, hasSALUFloat)
       .Uni(S32, {{UniInVgprS32}, {Vgpr32, Vgpr32}}, !hasSALUFloat);
 
+  auto ScalarNumIsSafe = [=](const MachineInstr &MI) {
+    const SIMachineFunctionInfo *MFI =
+        MI.getMF()->getInfo<SIMachineFunctionInfo>();
+    return hasSALUFloat && (!MFI->getMode().IEEE || hasSALUMinimumMaximumInsts);
----------------
arsenm wrote:

The regbank legalizer rules really shouldn't be able to depend on the specific function. These should be constructed once per subtarget, which is evidently not what happens now 

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


More information about the llvm-commits mailing list