diff options
author | Eric Christopher <echristo@apple.com> | 2009-08-08 18:07:59 +0000 |
---|---|---|
committer | Eric Christopher <echristo@apple.com> | 2009-08-08 18:07:59 +0000 |
commit | 31cceaeb680cc53e76e1261bc53d60b0844d607e (patch) | |
tree | 44734ce6e135cb496311e70b11ba9619f38c793a | |
parent | 453878bed417b8174bda86814cc09226ff8c75f0 (diff) | |
download | bcm5719-llvm-31cceaeb680cc53e76e1261bc53d60b0844d607e.tar.gz bcm5719-llvm-31cceaeb680cc53e76e1261bc53d60b0844d607e.zip |
Define intrinsics for crc instruction.
llvm-svn: 78482
-rw-r--r-- | llvm/include/llvm/IntrinsicsX86.td | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/llvm/include/llvm/IntrinsicsX86.td b/llvm/include/llvm/IntrinsicsX86.td index 11cfe977ebc..cf36dd1820c 100644 --- a/llvm/include/llvm/IntrinsicsX86.td +++ b/llvm/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. |