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

Feng Zou via llvm-commits llvm-commits at lists.llvm.org
Thu Jun 12 20:46:13 PDT 2025


================
@@ -122,7 +123,8 @@ bool X86FixupSetCCPass::runOnMachineFunction(MachineFunction &MF) {
       // register.
       Register ZeroReg = MRI->createVirtualRegister(RC);
       if (ST->hasZU()) {
-        MI.setDesc(TII->get(X86::SETZUCCr));
+        if (MI.getOpcode() != X86::SETZUCCr)
+          MI.setDesc(TII->get(X86::SETZUCCr));
----------------
fzou1 wrote:

> Don't we always generate `SETZUCCr` now?
Yes. We do always emit `SETZUCCr` when NDD feature is specified. This is to transform SETCCr to SETZUCCr when it came from IR in LIT test, like apx/setzucc.ll.

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


More information about the llvm-commits mailing list