[llvm] [AMDGPU] Determine MCFixupKind in a more general way. NFCI. (PR #155864)

Jay Foad via llvm-commits llvm-commits at lists.llvm.org
Thu Aug 28 08:50:37 PDT 2025


https://github.com/jayfoad created https://github.com/llvm/llvm-project/pull/155864

None

>From 38779aa22b3f8cf6744aae773aea89bef44320f8 Mon Sep 17 00:00:00 2001
From: Jay Foad <jay.foad at amd.com>
Date: Thu, 28 Aug 2025 16:48:45 +0100
Subject: [PATCH] [AMDGPU] Determine MCFixupKind in a more general way. NFCI.

---
 .../lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCCodeEmitter.cpp | 7 ++-----
 1 file changed, 2 insertions(+), 5 deletions(-)

diff --git a/llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCCodeEmitter.cpp b/llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCCodeEmitter.cpp
index 61f673221739a..71a1c2dcb2768 100644
--- a/llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCCodeEmitter.cpp
+++ b/llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCCodeEmitter.cpp
@@ -695,11 +695,8 @@ void AMDGPUMCCodeEmitter::getMachineOpValueCommon(
     const MCInstrDesc &Desc = MCII.get(MI.getOpcode());
     uint32_t Offset = Desc.getSize();
     assert(Offset == 4 || Offset == 8);
-    auto OpType = Desc.operands()[OpNo].OperandType;
-    MCFixupKind Kind = (STI.hasFeature(AMDGPU::Feature64BitLiterals) &&
-                        OpType == AMDGPU::OPERAND_REG_IMM_INT64)
-                           ? FK_Data_8
-                           : FK_Data_4;
+    unsigned Size = AMDGPU::getOperandSize(Desc, OpNo);
+    MCFixupKind Kind = MCFixup::getDataKindForSize(Size);
     addFixup(Fixups, Offset, MO.getExpr(), Kind, PCRel);
   }
 



More information about the llvm-commits mailing list