[X86] Promote i16 CTTZ/CTTZ_ZERO_UNDEF always.
authorCraig Topper <craig.topper@sifive.com>
Wed, 3 Aug 2022 16:37:33 +0000 (09:37 -0700)
committerCraig Topper <craig.topper@sifive.com>
Wed, 3 Aug 2022 20:12:20 +0000 (13:12 -0700)
commitff91b2d9df8098fca31684c8595087ec9f921eda
tree2fdaf8b4be4e2a922b0a18ea37fed4ff5e6dd575
parent19eb908e6116d3f23af24cdaa55d0607d4bf77d8
[X86] Promote i16 CTTZ/CTTZ_ZERO_UNDEF always.

If we're going to emit a rep prefix before bsf as proposed in
D130956, it makes sense to promote i16 operations to i32 to avoid
the false depedency of tzcntw.

Reviewed By: skan, pengfei

Differential Revision: https://reviews.llvm.org/D130995
llvm/lib/Target/X86/X86ISelLowering.cpp
llvm/test/CodeGen/X86/bmi-intrinsics-fast-isel.ll
llvm/test/CodeGen/X86/clz.ll
llvm/test/CodeGen/X86/lzcnt-tzcnt.ll