https://gcc.gnu.org/bugzilla/show_bug.cgi?id=122319
Andrew Pinski <pinskia at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|UNCONFIRMED |NEW
Last reconfirmed| |2025-10-19
Severity|normal |enhancement
Ever confirmed|0 |1
--- Comment #1 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
```
Trying 26 -> 29:
26: {r127:DI=unspec[r123:DI] 98;clobber flags:CC;}
REG_DEAD r123:DI
REG_UNUSED flags:CC
29: r130:SI=zero_extend(r127:DI#0)
REG_DEAD r127:DI
Failed to match this instruction:
(set (reg:SI 130 [ _9 ])
(zero_extend:SI (subreg:QI (unspec:DI [
(reg:DI 123)
] UNSPEC_TZCNT) 0)))
```
Most likely should recognize that as an insn that just outs a lzcnt
instruction. and then it would just work.