summaryrefslogtreecommitdiff
path: root/test/CodeGen/X86/avx-intrinsics-x86.ll
diff options
context:
space:
mode:
authorCraig Topper <craig.topper@gmail.com>2012-01-01 19:51:58 +0000
committerCraig Topper <craig.topper@gmail.com>2012-01-01 19:51:58 +0000
commita86bcfb565bdea5bd45634fd2139ac17172a3500 (patch)
tree925e3e54711c0431cdee7b0c7ce19690ba1b8911 /test/CodeGen/X86/avx-intrinsics-x86.ll
parentde9e4c728e9016d8d701c2e78a96647fbb98779a (diff)
downloadllvm-a86bcfb565bdea5bd45634fd2139ac17172a3500.tar.gz
llvm-a86bcfb565bdea5bd45634fd2139ac17172a3500.tar.bz2
llvm-a86bcfb565bdea5bd45634fd2139ac17172a3500.tar.xz
Allow CRC32 instructions to be selected when AVX is enabled.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@147411 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/CodeGen/X86/avx-intrinsics-x86.ll')
-rw-r--r--test/CodeGen/X86/avx-intrinsics-x86.ll21
1 files changed, 21 insertions, 0 deletions
diff --git a/test/CodeGen/X86/avx-intrinsics-x86.ll b/test/CodeGen/X86/avx-intrinsics-x86.ll
index b4f04ceb8f..f980a6ac39 100644
--- a/test/CodeGen/X86/avx-intrinsics-x86.ll
+++ b/test/CodeGen/X86/avx-intrinsics-x86.ll
@@ -2530,3 +2530,24 @@ entry:
ret void
}
declare void @llvm.x86.sse2.clflush(i8*) nounwind
+
+; CHECK: crc32b
+define i32 @crc32_32_8(i32 %a, i8 %b) nounwind {
+ %tmp = call i32 @llvm.x86.sse42.crc32.32.8(i32 %a, i8 %b)
+ ret i32 %tmp
+}
+declare i32 @llvm.x86.sse42.crc32.32.8(i32, i8) nounwind
+
+; CHECK: crc32w
+define i32 @crc32_32_16(i32 %a, i16 %b) nounwind {
+ %tmp = call i32 @llvm.x86.sse42.crc32.32.16(i32 %a, i16 %b)
+ ret i32 %tmp
+}
+declare i32 @llvm.x86.sse42.crc32.32.16(i32, i16) nounwind
+
+; CHECK: crc32l
+define i32 @crc32_32_32(i32 %a, i32 %b) nounwind {
+ %tmp = call i32 @llvm.x86.sse42.crc32.32.32(i32 %a, i32 %b)
+ ret i32 %tmp
+}
+declare i32 @llvm.x86.sse42.crc32.32.32(i32, i32) nounwind