summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorElena Demikhovsky <elena.demikhovsky@intel.com>2013-12-10 13:53:10 +0000
committerElena Demikhovsky <elena.demikhovsky@intel.com>2013-12-10 13:53:10 +0000
commit8a8581ca4b4c9ca1797ec5f4fa7d5524a59239ea (patch)
treee812ff1686f3212783522397b406e04974cd6345 /include
parent89458ced873df1095f6afa9cd9864c46f8a692fe (diff)
downloadllvm-8a8581ca4b4c9ca1797ec5f4fa7d5524a59239ea.tar.gz
llvm-8a8581ca4b4c9ca1797ec5f4fa7d5524a59239ea.tar.bz2
llvm-8a8581ca4b4c9ca1797ec5f4fa7d5524a59239ea.tar.xz
AVX-512: changed intrinsics for mask operations
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@196918 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include')
-rw-r--r--include/llvm/IR/IntrinsicsX86.td39
1 files changed, 16 insertions, 23 deletions
diff --git a/include/llvm/IR/IntrinsicsX86.td b/include/llvm/IR/IntrinsicsX86.td
index 2b66e3d9f4..b28e0e1f5c 100644
--- a/include/llvm/IR/IntrinsicsX86.td
+++ b/include/llvm/IR/IntrinsicsX86.td
@@ -2643,37 +2643,30 @@ let TargetPrefix = "x86" in { // All intrinsics start with "llvm.x86.".
let TargetPrefix = "x86" in { // All intrinsics start with "llvm.x86.".
// Mask instructions
// 16-bit mask
- def int_x86_kadd_v16i1 : GCCBuiltin<"__builtin_ia32_kaddw">,
- Intrinsic<[llvm_v16i1_ty], [llvm_v16i1_ty, llvm_v16i1_ty],
+ def int_x86_avx512_kand_w : GCCBuiltin<"__builtin_ia32_kandhi">,
+ Intrinsic<[llvm_i16_ty], [llvm_i16_ty, llvm_i16_ty],
[IntrNoMem]>;
- def int_x86_kand_v16i1 : GCCBuiltin<"__builtin_ia32_kandw">,
- Intrinsic<[llvm_v16i1_ty], [llvm_v16i1_ty, llvm_v16i1_ty],
+ def int_x86_avx512_kandn_w : GCCBuiltin<"__builtin_ia32_kandnhi">,
+ Intrinsic<[llvm_i16_ty], [llvm_i16_ty, llvm_i16_ty],
[IntrNoMem]>;
- def int_x86_kandn_v16i1 : GCCBuiltin<"__builtin_ia32_kandnw">,
- Intrinsic<[llvm_v16i1_ty], [llvm_v16i1_ty, llvm_v16i1_ty],
+ def int_x86_avx512_knot_w : GCCBuiltin<"__builtin_ia32_knothi">,
+ Intrinsic<[llvm_i16_ty], [llvm_i16_ty], [IntrNoMem]>;
+ def int_x86_avx512_kor_w : GCCBuiltin<"__builtin_ia32_korhi">,
+ Intrinsic<[llvm_i16_ty], [llvm_i16_ty, llvm_i16_ty],
[IntrNoMem]>;
- def int_x86_knot_v16i1 : GCCBuiltin<"__builtin_ia32_knotw">,
- Intrinsic<[llvm_v16i1_ty], [llvm_v16i1_ty], [IntrNoMem]>;
- def int_x86_kor_v16i1 : GCCBuiltin<"__builtin_ia32_korw">,
- Intrinsic<[llvm_v16i1_ty], [llvm_v16i1_ty, llvm_v16i1_ty],
+ def int_x86_avx512_kxor_w : GCCBuiltin<"__builtin_ia32_kxorhi">,
+ Intrinsic<[llvm_i16_ty], [llvm_i16_ty, llvm_i16_ty],
[IntrNoMem]>;
- def int_x86_kxor_v16i1 : GCCBuiltin<"__builtin_ia32_kxorw">,
- Intrinsic<[llvm_v16i1_ty], [llvm_v16i1_ty, llvm_v16i1_ty],
+ def int_x86_avx512_kxnor_w : GCCBuiltin<"__builtin_ia32_kxnorhi">,
+ Intrinsic<[llvm_i16_ty], [llvm_i16_ty, llvm_i16_ty],
[IntrNoMem]>;
- def int_x86_kxnor_v16i1 : GCCBuiltin<"__builtin_ia32_kxnorw">,
- Intrinsic<[llvm_v16i1_ty], [llvm_v16i1_ty, llvm_v16i1_ty],
+ def int_x86_avx512_kunpck_bw : GCCBuiltin<"__builtin_ia32_kunpckhi">,
+ Intrinsic<[llvm_i16_ty], [llvm_i16_ty, llvm_i16_ty],
[IntrNoMem]>;
- def int_x86_mask2int_v16i1 : GCCBuiltin<"__builtin_ia32_mask2intw">,
- Intrinsic<[llvm_i32_ty], [llvm_v16i1_ty], [IntrNoMem]>;
- def int_x86_int2mask_v16i1 : GCCBuiltin<"__builtin_ia32_int2maskw">,
- Intrinsic<[llvm_v16i1_ty], [llvm_i32_ty], [IntrNoMem]>;
- def int_x86_kunpck_v16i1 : GCCBuiltin<"__builtin_ia32_kunpckbw">,
- Intrinsic<[llvm_v16i1_ty], [llvm_v8i1_ty, llvm_v8i1_ty],
- [IntrNoMem]>;
- def int_x86_avx512_kortestz : GCCBuiltin<"__builtin_ia32_kortestz">,
+ def int_x86_avx512_kortestz_w : GCCBuiltin<"__builtin_ia32_kortestzhi">,
Intrinsic<[llvm_i32_ty], [llvm_i16_ty, llvm_i16_ty],
[IntrNoMem]>;
- def int_x86_avx512_kortestc : GCCBuiltin<"__builtin_ia32_kortestc">,
+ def int_x86_avx512_kortestc_w : GCCBuiltin<"__builtin_ia32_kortestchi">,
Intrinsic<[llvm_i32_ty], [llvm_i16_ty, llvm_i16_ty],
[IntrNoMem]>;
}