[PATCH] D37668: [X86][intrinsics] lower _mm[256|512]_mask[z]_set1_epi[8|16|32|64] intrinsic to IR

Craig Topper via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Fri Sep 15 12:36:26 PDT 2017


craig.topper added a comment.

I'm going to go ahead and remove __builtin_ia32_pbroadcastq512_mem_mask from clang and change _mm512_maskz_set1_epi64 to be disabled in 32-bit mode. I want to nominate this for 5.0.1 because using it in 32-bit mode causes the compile to throw a cannot select error. So disabling it in the header at least gives a better user experience.

After that goes in you should rebase this patch and enable all of the set1_epi64 intrinsics to work in 32-bit mode like they should.



================
Comment at: lib/Headers/avx512fintrin.h:9742
 
 #ifdef __x86_64__
 static __inline__ __m512i __DEFAULT_FN_ATTRS
----------------
Please remove the #ifdef __x86_64__ from this. It should work in 32-bits as well.


================
Comment at: lib/Headers/avx512vlintrin.h:5759
 
 #ifdef __x86_64__
 static __inline__ __m128i __DEFAULT_FN_ATTRS
----------------
Please remove the __x86_64__ from these. They should work in 32-bit mode.


https://reviews.llvm.org/D37668





More information about the cfe-commits mailing list