Introduce llvm/test/LTO/X86. LTO tests may be assumed as target-specific.
[oota-llvm.git] / test / LTO / X86 / attrs.ll
1 ; RUN: llvm-as < %s >%t1
2 ; RUN: llvm-lto -exported-symbol=test_x86_aesni_aeskeygenassist -mattr=+aes -o %t2 %t1
3 ; RUN: llvm-objdump -d %t2 | FileCheck -check-prefix=WITH_AES %s
4 ; RUN: not llvm-lto -exported-symbol=test_x86_aesni_aeskeygenassist -mattr=-aes -o %t3 %t1 2>&1 | FileCheck -check-prefix=WITHOUT_AES %s
5
6 target triple = "x86_64-unknown-linux-gnu"
7 declare <2 x i64> @llvm.x86.aesni.aeskeygenassist(<2 x i64>, i8)
8 define <2 x i64> @test_x86_aesni_aeskeygenassist(<2 x i64> %a0) {
9   ; WITH_AES: test_x86_aesni_aeskeygenassist
10   ; WITH_AES: aeskeygenassist
11   %res = call <2 x i64> @llvm.x86.aesni.aeskeygenassist(<2 x i64> %a0, i8 7)
12   ret <2 x i64> %res
13 }
14
15 ; WITHOUT_AES: LLVM ERROR: Cannot select: intrinsic %llvm.x86.aesni.aeskeygenassist