[llvm] [X86] Select ANDN for i8 operands (PR #205050)

Phoebe Wang via llvm-commits llvm-commits at lists.llvm.org
Wed Jul 1 23:24:06 PDT 2026


================
@@ -1394,6 +1394,14 @@ defm ANDN64 : AndN<Xi64, null_frag, "_NF">, EVEX, EVEX_NF, Requires<[In64BitMode
 }
 
 multiclass Andn_Pats<string suffix> {
+  // ANDN has only GR32/GR64 forms; widen i8 inputs to i32 and extract the low
+  // byte. Upper bits are ignored by the result extraction.
+  def : Pat<(and (not GR8:$src1), GR8:$src2),
----------------
phoebewang wrote:

Maybe limit it to 64-bit? I'm afraid the high 8-bit registers A/B/C/DH might be changed unintentionally.

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


More information about the llvm-commits mailing list