blob: 14dbbecde34405d6b1dfee61798176582e374193 [file] [log] [blame]
Duncan P. N. Exon Smithfee1f502014-07-29 01:10:57 +00001; RUN: llvm-dis < %s.bc| FileCheck %s
Duncan P. N. Exon Smithc8eccd12014-08-19 21:08:27 +00002; RUN: verify-uselistorder < %s.bc
Duncan P. N. Exon Smithfee1f502014-07-29 01:10:57 +00003
4; conversionOperations.3.2.ll.bc was generated by passing this file to llvm-as-3.2.
5; The test checks that LLVM does not misread conversion instructions from
6; older bitcode files.
7
8define void @trunc(i32 %src){
9entry:
10; CHECK: %res1 = trunc i32 %src to i8
11 %res1 = trunc i32 %src to i8
12
13 ret void
14}
15
16define void @zext(i32 %src){
17entry:
18; CHECK: %res1 = zext i32 %src to i64
19 %res1 = zext i32 %src to i64
20
21 ret void
22}
23
24define void @sext(i32 %src){
25entry:
26; CHECK: %res1 = sext i32 %src to i64
27 %res1 = sext i32 %src to i64
28
29 ret void
30}
31
32define void @fptrunc(double %src){
33entry:
34; CHECK: %res1 = fptrunc double %src to float
35 %res1 = fptrunc double %src to float
36
37 ret void
38}
39
40define void @fpext(float %src){
41entry:
42; CHECK: %res1 = fpext float %src to double
43 %res1 = fpext float %src to double
44
45 ret void
46}
47
48define void @fptoui(float %src){
49entry:
50; CHECK: %res1 = fptoui float %src to i32
51 %res1 = fptoui float %src to i32
52
53 ret void
54}
55
56define void @fptosi(float %src){
57entry:
58; CHECK: %res1 = fptosi float %src to i32
59 %res1 = fptosi float %src to i32
60
61 ret void
62}
63
64define void @uitofp(i32 %src){
65entry:
66; CHECK: %res1 = uitofp i32 %src to float
67 %res1 = uitofp i32 %src to float
68
69 ret void
70}
71
72define void @sitofp(i32 %src){
73entry:
74; CHECK: %res1 = sitofp i32 %src to float
75 %res1 = sitofp i32 %src to float
76
77 ret void
78}
79
80define void @ptrtoint(i32* %src){
81entry:
82; CHECK: %res1 = ptrtoint i32* %src to i8
83 %res1 = ptrtoint i32* %src to i8
84
85 ret void
86}
87
88define void @inttoptr(i32 %src){
89entry:
90; CHECK: %res1 = inttoptr i32 %src to i32*
91 %res1 = inttoptr i32 %src to i32*
92
93 ret void
94}
95
96define void @bitcast(i32 %src1, i32* %src2){
97entry:
98; CHECK: %res1 = bitcast i32 %src1 to i32
99 %res1 = bitcast i32 %src1 to i32
100
101; CHECK: %res2 = bitcast i32* %src2 to i64*
102 %res2 = bitcast i32* %src2 to i64*
103
104 ret void
105}