xref: /aosp_15_r20/external/llvm/test/ExecutionEngine/MCJIT/test-cast.ll (revision 9880d6810fe72a1726cb53787c6711e909410d58)
1*9880d681SAndroid Build Coastguard Worker; RUN: %lli %s > /dev/null
2*9880d681SAndroid Build Coastguard Worker
3*9880d681SAndroid Build Coastguard Workerdefine i32 @foo() {
4*9880d681SAndroid Build Coastguard Worker	ret i32 0
5*9880d681SAndroid Build Coastguard Worker}
6*9880d681SAndroid Build Coastguard Worker
7*9880d681SAndroid Build Coastguard Workerdefine i32 @main() {
8*9880d681SAndroid Build Coastguard Worker	icmp ne i1 true, false		; <i1>:1 [#uses=0]
9*9880d681SAndroid Build Coastguard Worker	zext i1 true to i8		; <i8>:2 [#uses=0]
10*9880d681SAndroid Build Coastguard Worker	zext i1 true to i8		; <i8>:3 [#uses=0]
11*9880d681SAndroid Build Coastguard Worker	zext i1 true to i16		; <i16>:4 [#uses=0]
12*9880d681SAndroid Build Coastguard Worker	zext i1 true to i16		; <i16>:5 [#uses=0]
13*9880d681SAndroid Build Coastguard Worker	zext i1 true to i32		; <i32>:6 [#uses=0]
14*9880d681SAndroid Build Coastguard Worker	zext i1 true to i32		; <i32>:7 [#uses=0]
15*9880d681SAndroid Build Coastguard Worker	zext i1 true to i64		; <i64>:8 [#uses=0]
16*9880d681SAndroid Build Coastguard Worker	zext i1 true to i64		; <i64>:9 [#uses=0]
17*9880d681SAndroid Build Coastguard Worker	uitofp i1 true to float		; <float>:10 [#uses=0]
18*9880d681SAndroid Build Coastguard Worker	uitofp i1 true to double		; <double>:11 [#uses=0]
19*9880d681SAndroid Build Coastguard Worker	icmp ne i8 0, 0		; <i1>:12 [#uses=0]
20*9880d681SAndroid Build Coastguard Worker	icmp ne i8 1, 0		; <i1>:13 [#uses=0]
21*9880d681SAndroid Build Coastguard Worker	bitcast i8 0 to i8		; <i8>:14 [#uses=0]
22*9880d681SAndroid Build Coastguard Worker	bitcast i8 -1 to i8		; <i8>:15 [#uses=0]
23*9880d681SAndroid Build Coastguard Worker	sext i8 4 to i16		; <i16>:16 [#uses=0]
24*9880d681SAndroid Build Coastguard Worker	sext i8 4 to i16		; <i16>:17 [#uses=0]
25*9880d681SAndroid Build Coastguard Worker	sext i8 4 to i64		; <i64>:18 [#uses=0]
26*9880d681SAndroid Build Coastguard Worker	sext i8 4 to i64		; <i64>:19 [#uses=0]
27*9880d681SAndroid Build Coastguard Worker	sitofp i8 4 to float		; <float>:20 [#uses=0]
28*9880d681SAndroid Build Coastguard Worker	sitofp i8 4 to double		; <double>:21 [#uses=0]
29*9880d681SAndroid Build Coastguard Worker	icmp ne i8 0, 0		; <i1>:22 [#uses=0]
30*9880d681SAndroid Build Coastguard Worker	icmp ne i8 1, 0		; <i1>:23 [#uses=0]
31*9880d681SAndroid Build Coastguard Worker	bitcast i8 0 to i8		; <i8>:24 [#uses=0]
32*9880d681SAndroid Build Coastguard Worker	bitcast i8 1 to i8		; <i8>:25 [#uses=0]
33*9880d681SAndroid Build Coastguard Worker	zext i8 4 to i16		; <i16>:26 [#uses=0]
34*9880d681SAndroid Build Coastguard Worker	zext i8 4 to i16		; <i16>:27 [#uses=0]
35*9880d681SAndroid Build Coastguard Worker	zext i8 4 to i64		; <i64>:28 [#uses=0]
36*9880d681SAndroid Build Coastguard Worker	zext i8 4 to i64		; <i64>:29 [#uses=0]
37*9880d681SAndroid Build Coastguard Worker	uitofp i8 0 to float		; <float>:30 [#uses=0]
38*9880d681SAndroid Build Coastguard Worker	uitofp i8 0 to double		; <double>:31 [#uses=0]
39*9880d681SAndroid Build Coastguard Worker	icmp ne i16 1, 0		; <i1>:32 [#uses=0]
40*9880d681SAndroid Build Coastguard Worker	trunc i16 -1 to i8		; <i8>:33 [#uses=0]
41*9880d681SAndroid Build Coastguard Worker	trunc i16 255 to i8		; <i8>:34 [#uses=0]
42*9880d681SAndroid Build Coastguard Worker	bitcast i16 0 to i16		; <i16>:35 [#uses=0]
43*9880d681SAndroid Build Coastguard Worker	bitcast i16 0 to i16		; <i16>:36 [#uses=0]
44*9880d681SAndroid Build Coastguard Worker	sext i16 0 to i64		; <i64>:37 [#uses=0]
45*9880d681SAndroid Build Coastguard Worker	sext i16 0 to i64		; <i64>:38 [#uses=0]
46*9880d681SAndroid Build Coastguard Worker	sitofp i16 0 to float		; <float>:39 [#uses=0]
47*9880d681SAndroid Build Coastguard Worker	sitofp i16 0 to double		; <double>:40 [#uses=0]
48*9880d681SAndroid Build Coastguard Worker	icmp ne i16 1, 0		; <i1>:41 [#uses=0]
49*9880d681SAndroid Build Coastguard Worker	trunc i16 1 to i8		; <i8>:42 [#uses=0]
50*9880d681SAndroid Build Coastguard Worker	trunc i16 255 to i8		; <i8>:43 [#uses=0]
51*9880d681SAndroid Build Coastguard Worker	bitcast i16 0 to i16		; <i16>:44 [#uses=0]
52*9880d681SAndroid Build Coastguard Worker	bitcast i16 0 to i16		; <i16>:45 [#uses=0]
53*9880d681SAndroid Build Coastguard Worker	zext i16 0 to i64		; <i64>:46 [#uses=0]
54*9880d681SAndroid Build Coastguard Worker	zext i16 0 to i64		; <i64>:47 [#uses=0]
55*9880d681SAndroid Build Coastguard Worker	uitofp i16 0 to float		; <float>:48 [#uses=0]
56*9880d681SAndroid Build Coastguard Worker	uitofp i16 0 to double		; <double>:49 [#uses=0]
57*9880d681SAndroid Build Coastguard Worker	icmp ne i32 6, 0		; <i1>:50 [#uses=0]
58*9880d681SAndroid Build Coastguard Worker	trunc i32 -6 to i8		; <i8>:51 [#uses=0]
59*9880d681SAndroid Build Coastguard Worker	trunc i32 6 to i8		; <i8>:52 [#uses=0]
60*9880d681SAndroid Build Coastguard Worker	trunc i32 6 to i16		; <i16>:53 [#uses=0]
61*9880d681SAndroid Build Coastguard Worker	bitcast i32 0 to i32		; <i32>:54 [#uses=0]
62*9880d681SAndroid Build Coastguard Worker	sext i32 0 to i64		; <i64>:55 [#uses=0]
63*9880d681SAndroid Build Coastguard Worker	sext i32 0 to i64		; <i64>:56 [#uses=0]
64*9880d681SAndroid Build Coastguard Worker	sitofp i32 0 to float		; <float>:57 [#uses=0]
65*9880d681SAndroid Build Coastguard Worker	sitofp i32 0 to double		; <double>:58 [#uses=0]
66*9880d681SAndroid Build Coastguard Worker	icmp ne i32 6, 0		; <i1>:59 [#uses=0]
67*9880d681SAndroid Build Coastguard Worker	trunc i32 7 to i8		; <i8>:60 [#uses=0]
68*9880d681SAndroid Build Coastguard Worker	trunc i32 8 to i8		; <i8>:61 [#uses=0]
69*9880d681SAndroid Build Coastguard Worker	trunc i32 9 to i16		; <i16>:62 [#uses=0]
70*9880d681SAndroid Build Coastguard Worker	bitcast i32 10 to i32		; <i32>:63 [#uses=0]
71*9880d681SAndroid Build Coastguard Worker	zext i32 0 to i64		; <i64>:64 [#uses=0]
72*9880d681SAndroid Build Coastguard Worker	zext i32 0 to i64		; <i64>:65 [#uses=0]
73*9880d681SAndroid Build Coastguard Worker	uitofp i32 0 to float		; <float>:66 [#uses=0]
74*9880d681SAndroid Build Coastguard Worker	uitofp i32 0 to double		; <double>:67 [#uses=0]
75*9880d681SAndroid Build Coastguard Worker	icmp ne i64 0, 0		; <i1>:68 [#uses=0]
76*9880d681SAndroid Build Coastguard Worker	trunc i64 0 to i8		; <i8>:69 [#uses=0]
77*9880d681SAndroid Build Coastguard Worker	trunc i64 0 to i8		; <i8>:70 [#uses=0]
78*9880d681SAndroid Build Coastguard Worker	trunc i64 0 to i16		; <i16>:71 [#uses=0]
79*9880d681SAndroid Build Coastguard Worker	trunc i64 0 to i16		; <i16>:72 [#uses=0]
80*9880d681SAndroid Build Coastguard Worker	trunc i64 0 to i32		; <i32>:73 [#uses=0]
81*9880d681SAndroid Build Coastguard Worker	trunc i64 0 to i32		; <i32>:74 [#uses=0]
82*9880d681SAndroid Build Coastguard Worker	bitcast i64 0 to i64		; <i64>:75 [#uses=0]
83*9880d681SAndroid Build Coastguard Worker	bitcast i64 0 to i64		; <i64>:76 [#uses=0]
84*9880d681SAndroid Build Coastguard Worker	sitofp i64 0 to float		; <float>:77 [#uses=0]
85*9880d681SAndroid Build Coastguard Worker	sitofp i64 0 to double		; <double>:78 [#uses=0]
86*9880d681SAndroid Build Coastguard Worker	icmp ne i64 1, 0		; <i1>:79 [#uses=0]
87*9880d681SAndroid Build Coastguard Worker	trunc i64 1 to i8		; <i8>:80 [#uses=0]
88*9880d681SAndroid Build Coastguard Worker	trunc i64 1 to i8		; <i8>:81 [#uses=0]
89*9880d681SAndroid Build Coastguard Worker	trunc i64 1 to i16		; <i16>:82 [#uses=0]
90*9880d681SAndroid Build Coastguard Worker	trunc i64 1 to i16		; <i16>:83 [#uses=0]
91*9880d681SAndroid Build Coastguard Worker	trunc i64 1 to i32		; <i32>:84 [#uses=0]
92*9880d681SAndroid Build Coastguard Worker	trunc i64 1 to i32		; <i32>:85 [#uses=0]
93*9880d681SAndroid Build Coastguard Worker	bitcast i64 1 to i64		; <i64>:86 [#uses=0]
94*9880d681SAndroid Build Coastguard Worker	bitcast i64 1 to i64		; <i64>:87 [#uses=0]
95*9880d681SAndroid Build Coastguard Worker	uitofp i64 1 to float		; <float>:88 [#uses=0]
96*9880d681SAndroid Build Coastguard Worker	uitofp i64 0 to double		; <double>:89 [#uses=0]
97*9880d681SAndroid Build Coastguard Worker	bitcast float 0.000000e+00 to float		; <float>:90 [#uses=0]
98*9880d681SAndroid Build Coastguard Worker	fpext float 0.000000e+00 to double		; <double>:91 [#uses=0]
99*9880d681SAndroid Build Coastguard Worker	fptosi double 0.000000e+00 to i8		; <i8>:92 [#uses=0]
100*9880d681SAndroid Build Coastguard Worker	fptoui double 0.000000e+00 to i8		; <i8>:93 [#uses=0]
101*9880d681SAndroid Build Coastguard Worker	fptosi double 0.000000e+00 to i16		; <i16>:94 [#uses=0]
102*9880d681SAndroid Build Coastguard Worker	fptoui double 0.000000e+00 to i16		; <i16>:95 [#uses=0]
103*9880d681SAndroid Build Coastguard Worker	fptosi double 0.000000e+00 to i32		; <i32>:96 [#uses=0]
104*9880d681SAndroid Build Coastguard Worker	fptoui double 0.000000e+00 to i32		; <i32>:97 [#uses=0]
105*9880d681SAndroid Build Coastguard Worker	fptosi double 0.000000e+00 to i64		; <i64>:98 [#uses=0]
106*9880d681SAndroid Build Coastguard Worker	fptrunc double 0.000000e+00 to float		; <float>:99 [#uses=0]
107*9880d681SAndroid Build Coastguard Worker	bitcast double 0.000000e+00 to double		; <double>:100 [#uses=0]
108*9880d681SAndroid Build Coastguard Worker	ret i32 0
109*9880d681SAndroid Build Coastguard Worker}
110