[llvm] r271252 - [AVX512] Remove gcc builtin name from masked load intrinsics so they can be custom handled by clang to create generic masked load intrinsics instead of using the x86 specific ones.

Diana Picus via llvm-commits llvm-commits at lists.llvm.org
Tue May 31 00:36:41 PDT 2016


Sorry, didn't notice that one. Thanks.

On 31 May 2016 at 10:36, Craig Topper <craig.topper at gmail.com> wrote:
> The coordinated commit to the clang side went in really slowly. So the bots
> got the llvm part first without the clang part. r271253 should fix it.
>
> On Tue, May 31, 2016 at 12:31 AM, Diana Picus <diana.picus at linaro.org>
> wrote:
>>
>> Hi,
>>
>> I think this is breaking our bots:
>>
>> http://lab.llvm.org:8011/builders/clang-cmake-armv7-a15/builds/12537
>>
>> Thoughts?
>>
>> Thanks,
>> Diana
>>
>> On 31 May 2016 at 09:43, Craig Topper via llvm-commits
>> <llvm-commits at lists.llvm.org> wrote:
>> > Author: ctopper
>> > Date: Tue May 31 01:42:51 2016
>> > New Revision: 271252
>> >
>> > URL: http://llvm.org/viewvc/llvm-project?rev=271252&view=rev
>> > Log:
>> > [AVX512] Remove gcc builtin name from masked load intrinsics so they can
>> > be custom handled by clang to create generic masked load intrinsics instead
>> > of using the x86 specific ones.
>> >
>> > The intrinsics will be removed in a future commit.
>> >
>> > Modified:
>> >     llvm/trunk/include/llvm/IR/IntrinsicsX86.td
>> >
>> > Modified: llvm/trunk/include/llvm/IR/IntrinsicsX86.td
>> > URL:
>> > http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/IR/IntrinsicsX86.td?rev=271252&r1=271251&r2=271252&view=diff
>> >
>> > ==============================================================================
>> > --- llvm/trunk/include/llvm/IR/IntrinsicsX86.td (original)
>> > +++ llvm/trunk/include/llvm/IR/IntrinsicsX86.td Tue May 31 01:42:51 2016
>> > @@ -1937,54 +1937,42 @@ let TargetPrefix = "x86" in {  // All in
>> >                    [IntrReadMem, IntrArgMemOnly]>;
>> >
>> >    def int_x86_avx512_mask_loadu_ps_128 :
>> > -        GCCBuiltin<"__builtin_ia32_loadups128_mask">,
>> >            Intrinsic<[llvm_v4f32_ty],
>> >                      [llvm_ptr_ty, llvm_v4f32_ty, llvm_i8_ty],
>> > [IntrReadMem, IntrArgMemOnly]>;
>> >    def int_x86_avx512_mask_loadu_ps_256 :
>> > -        GCCBuiltin<"__builtin_ia32_loadups256_mask">,
>> >            Intrinsic<[llvm_v8f32_ty],
>> >                      [llvm_ptr_ty, llvm_v8f32_ty, llvm_i8_ty],
>> > [IntrReadMem, IntrArgMemOnly]>;
>> >    def int_x86_avx512_mask_loadu_ps_512 :
>> > -        GCCBuiltin<"__builtin_ia32_loadups512_mask">,
>> >            Intrinsic<[llvm_v16f32_ty],
>> >                      [llvm_ptr_ty, llvm_v16f32_ty, llvm_i16_ty],
>> > [IntrReadMem, IntrArgMemOnly]>;
>> >
>> >    def int_x86_avx512_mask_loadu_pd_128 :
>> > -        GCCBuiltin<"__builtin_ia32_loadupd128_mask">,
>> >            Intrinsic<[llvm_v2f64_ty],
>> >                      [llvm_ptr_ty, llvm_v2f64_ty, llvm_i8_ty],
>> > [IntrReadMem, IntrArgMemOnly]>;
>> >    def int_x86_avx512_mask_loadu_pd_256 :
>> > -        GCCBuiltin<"__builtin_ia32_loadupd256_mask">,
>> >            Intrinsic<[llvm_v4f64_ty],
>> >                      [llvm_ptr_ty, llvm_v4f64_ty, llvm_i8_ty],
>> > [IntrReadMem, IntrArgMemOnly]>;
>> >    def int_x86_avx512_mask_loadu_pd_512 :
>> > -        GCCBuiltin<"__builtin_ia32_loadupd512_mask">,
>> >            Intrinsic<[llvm_v8f64_ty],
>> >                      [llvm_ptr_ty, llvm_v8f64_ty, llvm_i8_ty],
>> > [IntrReadMem, IntrArgMemOnly]>;
>> >
>> >    def int_x86_avx512_mask_load_ps_128 :
>> > -        GCCBuiltin<"__builtin_ia32_loadaps128_mask">,
>> >            Intrinsic<[llvm_v4f32_ty],
>> >                      [llvm_ptr_ty, llvm_v4f32_ty, llvm_i8_ty],
>> > [IntrReadMem, IntrArgMemOnly]>;
>> >    def int_x86_avx512_mask_load_ps_256 :
>> > -        GCCBuiltin<"__builtin_ia32_loadaps256_mask">,
>> >            Intrinsic<[llvm_v8f32_ty],
>> >                      [llvm_ptr_ty, llvm_v8f32_ty, llvm_i8_ty],
>> > [IntrReadMem, IntrArgMemOnly]>;
>> >    def int_x86_avx512_mask_load_ps_512 :
>> > -        GCCBuiltin<"__builtin_ia32_loadaps512_mask">,
>> >            Intrinsic<[llvm_v16f32_ty],
>> >                      [llvm_ptr_ty, llvm_v16f32_ty, llvm_i16_ty],
>> > [IntrReadMem, IntrArgMemOnly]>;
>> >
>> >    def int_x86_avx512_mask_load_pd_128 :
>> > -        GCCBuiltin<"__builtin_ia32_loadapd128_mask">,
>> >            Intrinsic<[llvm_v2f64_ty],
>> >                      [llvm_ptr_ty, llvm_v2f64_ty, llvm_i8_ty],
>> > [IntrReadMem, IntrArgMemOnly]>;
>> >    def int_x86_avx512_mask_load_pd_256 :
>> > -        GCCBuiltin<"__builtin_ia32_loadapd256_mask">,
>> >            Intrinsic<[llvm_v4f64_ty],
>> >                      [llvm_ptr_ty, llvm_v4f64_ty, llvm_i8_ty],
>> > [IntrReadMem, IntrArgMemOnly]>;
>> >    def int_x86_avx512_mask_load_pd_512 :
>> > -        GCCBuiltin<"__builtin_ia32_loadapd512_mask">,
>> >            Intrinsic<[llvm_v8f64_ty],
>> >                      [llvm_ptr_ty, llvm_v8f64_ty, llvm_i8_ty],
>> > [IntrReadMem, IntrArgMemOnly]>;
>> >  }
>> > @@ -2985,80 +2973,62 @@ let TargetPrefix = "x86" in {  // All in
>> >                    [IntrReadMem, IntrArgMemOnly]>;
>> >
>> >    def int_x86_avx512_mask_loadu_b_128 :
>> > -         GCCBuiltin<"__builtin_ia32_loaddquqi128_mask">,
>> >             Intrinsic<[llvm_v16i8_ty],
>> >                       [llvm_ptr_ty, llvm_v16i8_ty, llvm_i16_ty],
>> > [IntrReadMem, IntrArgMemOnly]>;
>> >    def int_x86_avx512_mask_loadu_b_256 :
>> > -         GCCBuiltin<"__builtin_ia32_loaddquqi256_mask">,
>> >             Intrinsic<[llvm_v32i8_ty],
>> >                       [llvm_ptr_ty, llvm_v32i8_ty, llvm_i32_ty],
>> > [IntrReadMem, IntrArgMemOnly]>;
>> >    def int_x86_avx512_mask_loadu_b_512 :
>> > -         GCCBuiltin<"__builtin_ia32_loaddquqi512_mask">,
>> >             Intrinsic<[llvm_v64i8_ty],
>> >                       [llvm_ptr_ty, llvm_v64i8_ty, llvm_i64_ty],
>> > [IntrReadMem, IntrArgMemOnly]>;
>> >
>> >    def int_x86_avx512_mask_loadu_w_128 :
>> > -         GCCBuiltin<"__builtin_ia32_loaddquhi128_mask">,
>> >             Intrinsic<[llvm_v8i16_ty],
>> >                       [llvm_ptr_ty, llvm_v8i16_ty, llvm_i8_ty],
>> > [IntrReadMem, IntrArgMemOnly]>;
>> >    def int_x86_avx512_mask_loadu_w_256 :
>> > -         GCCBuiltin<"__builtin_ia32_loaddquhi256_mask">,
>> >             Intrinsic<[llvm_v16i16_ty],
>> >                       [llvm_ptr_ty, llvm_v16i16_ty, llvm_i16_ty],
>> > [IntrReadMem, IntrArgMemOnly]>;
>> >    def int_x86_avx512_mask_loadu_w_512 :
>> > -         GCCBuiltin<"__builtin_ia32_loaddquhi512_mask">,
>> >             Intrinsic<[llvm_v32i16_ty],
>> >                       [llvm_ptr_ty, llvm_v32i16_ty, llvm_i32_ty],
>> > [IntrReadMem, IntrArgMemOnly]>;
>> >
>> >    def int_x86_avx512_mask_loadu_d_128 :
>> > -         GCCBuiltin<"__builtin_ia32_loaddqusi128_mask">,
>> >             Intrinsic<[llvm_v4i32_ty],
>> >                       [llvm_ptr_ty, llvm_v4i32_ty, llvm_i8_ty],
>> > [IntrReadMem, IntrArgMemOnly]>;
>> >    def int_x86_avx512_mask_loadu_d_256 :
>> > -         GCCBuiltin<"__builtin_ia32_loaddqusi256_mask">,
>> >             Intrinsic<[llvm_v8i32_ty],
>> >                       [llvm_ptr_ty, llvm_v8i32_ty, llvm_i8_ty],
>> > [IntrReadMem, IntrArgMemOnly]>;
>> >    def int_x86_avx512_mask_loadu_d_512 :
>> > -         GCCBuiltin<"__builtin_ia32_loaddqusi512_mask">,
>> >             Intrinsic<[llvm_v16i32_ty],
>> >                       [llvm_ptr_ty, llvm_v16i32_ty, llvm_i16_ty],
>> > [IntrReadMem, IntrArgMemOnly]>;
>> >
>> >    def int_x86_avx512_mask_loadu_q_128 :
>> > -         GCCBuiltin<"__builtin_ia32_loaddqudi128_mask">,
>> >             Intrinsic<[llvm_v2i64_ty],
>> >                       [llvm_ptr_ty, llvm_v2i64_ty, llvm_i8_ty],
>> > [IntrReadMem, IntrArgMemOnly]>;
>> >    def int_x86_avx512_mask_loadu_q_256 :
>> > -         GCCBuiltin<"__builtin_ia32_loaddqudi256_mask">,
>> >             Intrinsic<[llvm_v4i64_ty],
>> >                       [llvm_ptr_ty, llvm_v4i64_ty, llvm_i8_ty],
>> > [IntrReadMem, IntrArgMemOnly]>;
>> >    def int_x86_avx512_mask_loadu_q_512 :
>> > -         GCCBuiltin<"__builtin_ia32_loaddqudi512_mask">,
>> >             Intrinsic<[llvm_v8i64_ty],
>> >                       [llvm_ptr_ty, llvm_v8i64_ty, llvm_i8_ty],
>> > [IntrReadMem, IntrArgMemOnly]>;
>> >
>> >    def int_x86_avx512_mask_load_d_128 :
>> > -         GCCBuiltin<"__builtin_ia32_movdqa32load128_mask">,
>> >             Intrinsic<[llvm_v4i32_ty],
>> >                       [llvm_ptr_ty, llvm_v4i32_ty, llvm_i8_ty],
>> > [IntrReadMem, IntrArgMemOnly]>;
>> >    def int_x86_avx512_mask_load_d_256 :
>> > -         GCCBuiltin<"__builtin_ia32_movdqa32load256_mask">,
>> >             Intrinsic<[llvm_v8i32_ty],
>> >                       [llvm_ptr_ty, llvm_v8i32_ty, llvm_i8_ty],
>> > [IntrReadMem, IntrArgMemOnly]>;
>> >    def int_x86_avx512_mask_load_d_512 :
>> > -         GCCBuiltin<"__builtin_ia32_movdqa32load512_mask">,
>> >             Intrinsic<[llvm_v16i32_ty],
>> >                       [llvm_ptr_ty, llvm_v16i32_ty, llvm_i16_ty],
>> > [IntrReadMem, IntrArgMemOnly]>;
>> >
>> >    def int_x86_avx512_mask_load_q_128 :
>> > -         GCCBuiltin<"__builtin_ia32_movdqa64load128_mask">,
>> >             Intrinsic<[llvm_v2i64_ty],
>> >                       [llvm_ptr_ty, llvm_v2i64_ty, llvm_i8_ty],
>> > [IntrReadMem, IntrArgMemOnly]>;
>> >    def int_x86_avx512_mask_load_q_256 :
>> > -         GCCBuiltin<"__builtin_ia32_movdqa64load256_mask">,
>> >             Intrinsic<[llvm_v4i64_ty],
>> >                       [llvm_ptr_ty, llvm_v4i64_ty, llvm_i8_ty],
>> > [IntrReadMem, IntrArgMemOnly]>;
>> >    def int_x86_avx512_mask_load_q_512 :
>> > -         GCCBuiltin<"__builtin_ia32_movdqa64load512_mask">,
>> >             Intrinsic<[llvm_v8i64_ty],
>> >                       [llvm_ptr_ty, llvm_v8i64_ty, llvm_i8_ty],
>> > [IntrReadMem, IntrArgMemOnly]>;
>> >  }
>> >
>> >
>> > _______________________________________________
>> > llvm-commits mailing list
>> > llvm-commits at lists.llvm.org
>> > http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits
>
>
>
>
> --
> ~Craig


More information about the llvm-commits mailing list