[PATCH] D25902: [AVX-512] Fix the operand order for all calls to __builtin_ia32_vfmaddss3_mask.
Elena Demikhovsky via cfe-commits
cfe-commits at lists.llvm.org
Mon Oct 24 11:29:06 PDT 2016
delena added inline comments.
================
Comment at: lib/Headers/avx512fintrin.h:8394
_MM_FROUND_CUR_DIRECTION);
}
----------------
Using vfmaddss3_mask is wrong in this case.
It will propagate -B to lower bits if mask==0.
================
Comment at: lib/Headers/avx512fintrin.h:8453
{
return (__m128) __builtin_ia32_vfmaddss3_maskz (-(__v4sf) __A,
(__v4sf) __B,
----------------
This one is, probably, also wrong, because we should copy the upper bits of __A as is.
IF k[0]
dst[31:0] := -(a[31:0] * b[31:0]) + c[31:0]
ELSE
dst[31:0] := c[31:0]
FI
dst[127:32] := a[127:32]
dst[MAX:128] := 0
https://reviews.llvm.org/D25902
More information about the cfe-commits
mailing list