[llvm] [X86][APX] Exclusively emit setzucc to avoid false dependency (PR #142092)

Phoebe Wang via llvm-commits llvm-commits at lists.llvm.org
Thu Jun 12 17:56:01 PDT 2025


================
@@ -1503,10 +1503,12 @@ bool X86FastISel::X86SelectCmp(const Instruction *I) {
 
     Register FlagReg1 = createResultReg(&X86::GR8RegClass);
     Register FlagReg2 = createResultReg(&X86::GR8RegClass);
-    BuildMI(*FuncInfo.MBB, FuncInfo.InsertPt, MIMD, TII.get(X86::SETCCr),
-            FlagReg1).addImm(SETFOpc[0]);
-    BuildMI(*FuncInfo.MBB, FuncInfo.InsertPt, MIMD, TII.get(X86::SETCCr),
-            FlagReg2).addImm(SETFOpc[1]);
+    BuildMI(*FuncInfo.MBB, FuncInfo.InsertPt, MIMD,
+            TII.get(Subtarget->hasZU() ? X86::SETZUCCr : X86::SETCCr), FlagReg1)
----------------
phoebewang wrote:

`#define GET_SETCC (Subtarget->hasZU() ? X86::SETZUCCr : X86::SETCCr)`

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


More information about the llvm-commits mailing list