[llvm] 17f5f5b - [X86] Avoid Register implicit int conversion

Aiden Grossman via llvm-commits llvm-commits at lists.llvm.org
Mon Aug 18 08:37:31 PDT 2025


Author: Aiden Grossman
Date: 2025-08-18T15:37:25Z
New Revision: 17f5f5ba55972d1078ca24861d12ea8ffbeef9e2

URL: https://github.com/llvm/llvm-project/commit/17f5f5ba55972d1078ca24861d12ea8ffbeef9e2
DIFF: https://github.com/llvm/llvm-project/commit/17f5f5ba55972d1078ca24861d12ea8ffbeef9e2.diff

LOG: [X86] Avoid Register implicit int conversion

PushedRegisters in this patch needs to be of type int64_t because iot is
grabbing registers from immediate operands of pseudo instructions.
However, we then compare to an actual register type later, which relies
on the implicit conversion within Register to int, which can result in
build failures in some configurations.

Added: 
    

Modified: 
    llvm/lib/Target/X86/X86WinEHUnwindV2.cpp

Removed: 
    


################################################################################
diff  --git a/llvm/lib/Target/X86/X86WinEHUnwindV2.cpp b/llvm/lib/Target/X86/X86WinEHUnwindV2.cpp
index 7640d7090949c..7fa77ee8204a9 100644
--- a/llvm/lib/Target/X86/X86WinEHUnwindV2.cpp
+++ b/llvm/lib/Target/X86/X86WinEHUnwindV2.cpp
@@ -235,7 +235,7 @@ bool X86WinEHUnwindV2::runOnMachineFunction(MachineFunction &MF) {
                   MF, Mode,
                   "The epilog is popping more registers than the prolog "
                   "pushed");
-            if (PushedRegs[PushedRegs.size() - PoppedRegCount] != Reg)
+            if (PushedRegs[PushedRegs.size() - PoppedRegCount] != Reg.id())
               return rejectCurrentFunctionInternalError(
                   MF, Mode,
                   "The epilog is popping a registers in "


        


More information about the llvm-commits mailing list