[PATCH] D32805: [X86][AVX512] Properly handle scalar masking for constant masks

Guy Blank via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed May 3 08:51:50 PDT 2017


guyblank added inline comments.


================
Comment at: test/CodeGen/X86/avx512-intrinsics.ll:5204
 ; CHECK:       ## BB#0:
-; CHECK-NEXT:    kxorw %k0, %k0, %k1
-; CHECK-NEXT:    vfmadd213ss (%rdi), %xmm1, %xmm0 {%k1} {z}
+; CHECK-NEXT:    vxorps %xmm0, %xmm0, %xmm0
 ; CHECK-NEXT:    retq
----------------
igorb wrote:
> This is incorrect behavior.  The upper bit of the source should be preserved.
> IF k[0]
> 	dst[31:0] := (a[31:0] * b[31:0]) + c[31:0]
> ELSE
> 	dst[31:0] := 0
> FI
> dst[127:32] := a[127:32]
> 
> The same for the tests below.  
ah, i've misread the description.
got confused from the zeroing of DEST[MAX_VL-1:128]

thanks!


https://reviews.llvm.org/D32805





More information about the llvm-commits mailing list