summaryrefslogtreecommitdiff
path: root/include/llvm/IntrinsicsX86.td
diff options
context:
space:
mode:
authorEric Christopher <echristo@apple.com>2009-08-08 18:07:59 +0000
committerEric Christopher <echristo@apple.com>2009-08-08 18:07:59 +0000
commit63cd7e557c642e9b6e67f0ac3b19a9456d7e2306 (patch)
tree027c64962d368fcf2845907648a200028b8b5484 /include/llvm/IntrinsicsX86.td
parent71435a3975789de81a42e4a12d9fb29b28a46b81 (diff)
downloadllvm-63cd7e557c642e9b6e67f0ac3b19a9456d7e2306.tar.gz
llvm-63cd7e557c642e9b6e67f0ac3b19a9456d7e2306.tar.bz2
llvm-63cd7e557c642e9b6e67f0ac3b19a9456d7e2306.tar.xz
Define intrinsics for crc instruction.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78482 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include/llvm/IntrinsicsX86.td')
-rw-r--r--include/llvm/IntrinsicsX86.td20
1 files changed, 20 insertions, 0 deletions
diff --git a/include/llvm/IntrinsicsX86.td b/include/llvm/IntrinsicsX86.td
index 11cfe977eb..cf36dd1820 100644
--- a/include/llvm/IntrinsicsX86.td
+++ b/include/llvm/IntrinsicsX86.td
@@ -878,6 +878,26 @@ let TargetPrefix = "x86" in { // All intrinsics start with "llvm.x86.".
}
//===----------------------------------------------------------------------===//
+// SSE4.2
+
+// Miscellaneous
+// CRC Instruction
+let TargetPrefix = "x86" in { // All intrinsics start with "llvm.x86.".
+ def int_x86_sse42_crc32_8 : GCCBuiltin<"__builtin_ia32_crc32qi">,
+ Intrinsic<[llvm_i32_ty], [llvm_i32_ty, llvm_i8_ty],
+ [IntrNoMem]>;
+ def int_x86_sse42_crc32_16 : GCCBuiltin<"__builtin_ia32_crc32hi">,
+ Intrinsic<[llvm_i32_ty], [llvm_i32_ty, llvm_i8_ty],
+ [IntrNoMem]>;
+ def int_x86_sse42_crc32_32 : GCCBuiltin<"__builtin_ia32_crc32si">,
+ Intrinsic<[llvm_i32_ty], [llvm_i32_ty, llvm_i8_ty],
+ [IntrNoMem]>;
+ def int_x86_sse42_crc32_64 : GCCBuiltin<"__builtin_ia32_crc32di">,
+ Intrinsic<[llvm_i32_ty], [llvm_i32_ty, llvm_i8_ty],
+ [IntrNoMem]>;
+}
+
+//===----------------------------------------------------------------------===//
// MMX
// Empty MMX state op.