[llvm] [AMDGPU] Skip debug uses in SIInstrInfo::foldImmediate (PR #160102)
Jay Foad via llvm-commits
llvm-commits at lists.llvm.org
Mon Sep 22 06:25:55 PDT 2025
https://github.com/jayfoad created https://github.com/llvm/llvm-project/pull/160102
None
>From 44c21d009dad1cb6f179798cf98c45149f7e9283 Mon Sep 17 00:00:00 2001
From: Jay Foad <jay.foad at amd.com>
Date: Mon, 22 Sep 2025 14:20:33 +0100
Subject: [PATCH] [AMDGPU] Skip debug uses in SIInstrInfo::foldImmediate
---
llvm/lib/Target/AMDGPU/SIInstrInfo.cpp | 4 ++--
llvm/test/CodeGen/AMDGPU/madak-inline-constant.mir | 2 +-
2 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/llvm/lib/Target/AMDGPU/SIInstrInfo.cpp b/llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
index 13d05ee54d7b3..9b364fdab5fd4 100644
--- a/llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
+++ b/llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
@@ -3773,7 +3773,7 @@ bool SIInstrInfo::foldImmediate(MachineInstr &UseMI, MachineInstr &DefMI,
MachineInstr *Def = MRI->getUniqueVRegDef(Src0->getReg());
if (Def && Def->isMoveImmediate() &&
isInlineConstant(Def->getOperand(1)) &&
- MRI->hasOneUse(Src0->getReg())) {
+ MRI->hasOneNonDBGUse(Src0->getReg())) {
Src0->ChangeToImmediate(Def->getOperand(1).getImm());
Src0Inlined = true;
} else if (ST.getConstantBusLimit(Opc) <= 1 &&
@@ -3788,7 +3788,7 @@ bool SIInstrInfo::foldImmediate(MachineInstr &UseMI, MachineInstr &DefMI,
MachineInstr *Def = MRI->getUniqueVRegDef(Src1->getReg());
if (Def && Def->isMoveImmediate() &&
isInlineConstant(Def->getOperand(1)) &&
- MRI->hasOneUse(Src1->getReg()) && commuteInstruction(UseMI))
+ MRI->hasOneNonDBGUse(Src1->getReg()) && commuteInstruction(UseMI))
Src0->ChangeToImmediate(Def->getOperand(1).getImm());
else if (RI.isSGPRReg(*MRI, Src1->getReg()))
return false;
diff --git a/llvm/test/CodeGen/AMDGPU/madak-inline-constant.mir b/llvm/test/CodeGen/AMDGPU/madak-inline-constant.mir
index 1ab3cf60a1c97..6e7f5b5492148 100644
--- a/llvm/test/CodeGen/AMDGPU/madak-inline-constant.mir
+++ b/llvm/test/CodeGen/AMDGPU/madak-inline-constant.mir
@@ -1,5 +1,5 @@
# RUN: llc -mtriple=amdgcn -run-pass peephole-opt -verify-machineinstrs -o - %s | FileCheck -check-prefix=GCN %s
-
+# RUN: llc -mtriple=amdgcn -run-pass peephole-opt -verify-machineinstrs -o - %s -debugify-and-strip-all-safe | FileCheck -check-prefix=GCN %s
# GCN-LABEL: bb.0:
# GCN: S_MOV_B32 1082130432
More information about the llvm-commits
mailing list