// Vector sign and zero extend
let TargetPrefix = "x86" in { // All intrinsics start with "llvm.x86.".
- def int_x86_avx512_pmovzxbq : GCCBuiltin<"__builtin_ia32_pmovzxbq512">,
- Intrinsic<[llvm_v8i64_ty], [llvm_v16i8_ty],
- [IntrNoMem]>;
- def int_x86_avx512_pmovzxwd : GCCBuiltin<"__builtin_ia32_pmovzxwd512">,
- Intrinsic<[llvm_v16i32_ty], [llvm_v16i16_ty],
- [IntrNoMem]>;
- def int_x86_avx512_pmovzxbd : GCCBuiltin<"__builtin_ia32_pmovzxbd512">,
- Intrinsic<[llvm_v16i32_ty], [llvm_v16i8_ty],
- [IntrNoMem]>;
- def int_x86_avx512_pmovzxwq : GCCBuiltin<"__builtin_ia32_pmovzxwq512">,
- Intrinsic<[llvm_v8i64_ty], [llvm_v8i16_ty],
- [IntrNoMem]>;
- def int_x86_avx512_pmovzxdq : GCCBuiltin<"__builtin_ia32_pmovzxdq512">,
- Intrinsic<[llvm_v8i64_ty], [llvm_v8i32_ty],
- [IntrNoMem]>;
-
def int_x86_avx512_mask_pmovzxb_d_128 : GCCBuiltin<"__builtin_ia32_pmovzxbd128_mask">,
Intrinsic<[llvm_v4i32_ty], [llvm_v16i8_ty,
llvm_v4i32_ty, llvm_i8_ty], [IntrNoMem]>;