[PATCH] D32273: [X86][AVX512] Make i1 illegal in the CodeGen
Guy Blank via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Wed May 17 06:20:26 PDT 2017
guyblank added inline comments.
================
Comment at: test/CodeGen/X86/avx512-intrinsics.ll:125
+; CHECK-NEXT: kxnorw %k0, %k0, %k1
+; CHECK-NEXT: kxnorw %k1, %k0, %k0
; CHECK-NEXT: kmovw %k0, %eax
----------------
RKSimon wrote:
> Any ideas what is going on here?
SelectionDAG.cpp::FoldConstantArithmetic should eliminate this.
but there is a comment there...
// Avoid BUILD_VECTOR nodes that perform implicit truncation.
// FIXME: This is valid and could be handled by truncation.
without this patch the build vector was v16i1 = build vector i1, i1, ...
and with the patch it is v16i1 = build vector i8, i8, ...
so now it is unable to eliminate the xnor.
i've tried implementing proper handling for implicit truncation but i'm getting some failure in mips that i still need to investigate.
is it ok if I fix it in a separate commit?
https://reviews.llvm.org/D32273
More information about the llvm-commits
mailing list