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

Igor Breger via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed May 3 08:07:53 PDT 2017


igorb 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
----------------
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.  


https://reviews.llvm.org/D32805





More information about the llvm-commits mailing list