[PATCH] D21505: [Clang][AVX512][Intrinsics]Adding intrinsics for mov{ss|sd} instruction set
Elena Demikhovsky via cfe-commits
cfe-commits at lists.llvm.org
Mon Sep 5 06:44:34 PDT 2016
delena added inline comments.
================
Comment at: lib/Headers/avx512fintrin.h:9337
@@ +9336,3 @@
+{
+ return (__m128) _mm_move_ss( __A, __builtin_ia32_selectps_128 ((__mmask8) __U,
+ (__v4sf) __B,
----------------
selectps should not be used here. It complicates IR.
You can write the following:
res = __A;
res[0] = (__U&1)? __B[0]:__W[0];
================
Comment at: test/CodeGen/avx512f-builtins.c:393
@@ +392,3 @@
+ // CHECK: select <4 x i1> {{.*}}, <4 x float> {{.*}}, <4 x float> {{.*}}
+ // CHECK: load <4 x float>, <4 x float>* {{.*}}
+ return _mm_mask_load_ss ( __W, __U, __A);
----------------
you should not see any "load" here.
https://reviews.llvm.org/D21505
More information about the cfe-commits
mailing list