[PATCH] D109658: [X86][FP16] Change the order of the operands in complex FMA intrinsics to allow swap between the mul operands.
Pengfei Wang via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Wed Sep 22 18:03:45 PDT 2021
pengfei added inline comments.
================
Comment at: clang/lib/Headers/avx512fp16intrin.h:2972
#define _mm_mask_fcmadd_round_sch(A, U, B, C, R) \
((__m128h)__builtin_ia32_selectps_128( \
(__mmask8)(U & 1), \
----------------
craig.topper wrote:
> Why is this intrinsic written like this? We can't evaluate macro arguments like A and U twice. It can cause surprising results.
Thanks Craig! You are right, we can't evaluate them twice. But we have to use them twice, because we want to provide user the same functionality as former FMA intrinsics. Maybe we need to define and use temp variables.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D109658/new/
https://reviews.llvm.org/D109658
More information about the cfe-commits
mailing list