comparison test/CodeGen/X86/fsgsbase.ll @ 0:95c75e76d11b

LLVM 3.4
author Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
date Thu, 12 Dec 2013 13:56:28 +0900
parents
children 803732b1fca8
comparison
equal deleted inserted replaced
-1:000000000000 0:95c75e76d11b
1 ; RUN: llc < %s -mtriple=x86_64-apple-darwin -march=x86-64 -mcpu=core-avx-i -mattr=fsgsbase | FileCheck %s
2
3 define i32 @test_x86_rdfsbase_32() {
4 ; CHECK: rdfsbasel
5 %res = call i32 @llvm.x86.rdfsbase.32()
6 ret i32 %res
7 }
8 declare i32 @llvm.x86.rdfsbase.32() nounwind readnone
9
10 define i32 @test_x86_rdgsbase_32() {
11 ; CHECK: rdgsbasel
12 %res = call i32 @llvm.x86.rdgsbase.32()
13 ret i32 %res
14 }
15 declare i32 @llvm.x86.rdgsbase.32() nounwind readnone
16
17 define i64 @test_x86_rdfsbase_64() {
18 ; CHECK: rdfsbaseq
19 %res = call i64 @llvm.x86.rdfsbase.64()
20 ret i64 %res
21 }
22 declare i64 @llvm.x86.rdfsbase.64() nounwind readnone
23
24 define i64 @test_x86_rdgsbase_64() {
25 ; CHECK: rdgsbaseq
26 %res = call i64 @llvm.x86.rdgsbase.64()
27 ret i64 %res
28 }
29 declare i64 @llvm.x86.rdgsbase.64() nounwind readnone
30
31 define void @test_x86_wrfsbase_32(i32 %x) {
32 ; CHECK: wrfsbasel
33 call void @llvm.x86.wrfsbase.32(i32 %x)
34 ret void
35 }
36 declare void @llvm.x86.wrfsbase.32(i32) nounwind readnone
37
38 define void @test_x86_wrgsbase_32(i32 %x) {
39 ; CHECK: wrgsbasel
40 call void @llvm.x86.wrgsbase.32(i32 %x)
41 ret void
42 }
43 declare void @llvm.x86.wrgsbase.32(i32) nounwind readnone
44
45 define void @test_x86_wrfsbase_64(i64 %x) {
46 ; CHECK: wrfsbaseq
47 call void @llvm.x86.wrfsbase.64(i64 %x)
48 ret void
49 }
50 declare void @llvm.x86.wrfsbase.64(i64) nounwind readnone
51
52 define void @test_x86_wrgsbase_64(i64 %x) {
53 ; CHECK: wrgsbaseq
54 call void @llvm.x86.wrgsbase.64(i64 %x)
55 ret void
56 }
57 declare void @llvm.x86.wrgsbase.64(i64) nounwind readnone