]> git.proxmox.com Git - rustc.git/blob - src/binaryen/test/llvm_autogenerated/varargs.s
New upstream version 1.23.0+dfsg1
[rustc.git] / src / binaryen / test / llvm_autogenerated / varargs.s
1 .text
2 .file "/s/llvm-upstream/llvm/test/CodeGen/WebAssembly/varargs.ll"
3 .globl start
4 .type start,@function
5 start:
6 .param i32, i32
7 i32.store 0($0), $1
8 return
9 .endfunc
10 .Lfunc_end0:
11 .size start, .Lfunc_end0-start
12
13 .globl end
14 .type end,@function
15 end:
16 .param i32
17 return
18 .endfunc
19 .Lfunc_end1:
20 .size end, .Lfunc_end1-end
21
22 .globl copy
23 .type copy,@function
24 copy:
25 .param i32, i32
26 i32.load $push0=, 0($1)
27 i32.store 0($0), $pop0
28 return
29 .endfunc
30 .Lfunc_end2:
31 .size copy, .Lfunc_end2-copy
32
33 .globl arg_i8
34 .type arg_i8,@function
35 arg_i8:
36 .param i32
37 .result i32
38 .local i32
39 i32.load $push4=, 0($0)
40 tee_local $push3=, $1=, $pop4
41 i32.const $push0=, 4
42 i32.add $push1=, $pop3, $pop0
43 i32.store 0($0), $pop1
44 i32.load $push2=, 0($1)
45 return $pop2
46 .endfunc
47 .Lfunc_end3:
48 .size arg_i8, .Lfunc_end3-arg_i8
49
50 .globl arg_i32
51 .type arg_i32,@function
52 arg_i32:
53 .param i32
54 .result i32
55 .local i32
56 i32.load $push0=, 0($0)
57 i32.const $push1=, 3
58 i32.add $push2=, $pop0, $pop1
59 i32.const $push3=, -4
60 i32.and $push8=, $pop2, $pop3
61 tee_local $push7=, $1=, $pop8
62 i32.const $push4=, 4
63 i32.add $push5=, $pop7, $pop4
64 i32.store 0($0), $pop5
65 i32.load $push6=, 0($1)
66 return $pop6
67 .endfunc
68 .Lfunc_end4:
69 .size arg_i32, .Lfunc_end4-arg_i32
70
71 .globl arg_i128
72 .type arg_i128,@function
73 arg_i128:
74 .param i32, i32
75 .local i32, i32, i64
76 i32.load $push0=, 0($1)
77 i32.const $push1=, 7
78 i32.add $push2=, $pop0, $pop1
79 i32.const $push3=, -8
80 i32.and $push13=, $pop2, $pop3
81 tee_local $push12=, $2=, $pop13
82 i32.const $push4=, 8
83 i32.add $push11=, $pop12, $pop4
84 tee_local $push10=, $3=, $pop11
85 i32.store 0($1), $pop10
86 i64.load $4=, 0($2)
87 i32.const $push5=, 16
88 i32.add $push6=, $2, $pop5
89 i32.store 0($1), $pop6
90 i32.const $push9=, 8
91 i32.add $push7=, $0, $pop9
92 i64.load $push8=, 0($3)
93 i64.store 0($pop7), $pop8
94 i64.store 0($0), $4
95 return
96 .endfunc
97 .Lfunc_end5:
98 .size arg_i128, .Lfunc_end5-arg_i128
99
100 .globl caller_none
101 .type caller_none,@function
102 caller_none:
103 i32.const $push0=, 0
104 call callee@FUNCTION, $pop0
105 return
106 .endfunc
107 .Lfunc_end6:
108 .size caller_none, .Lfunc_end6-caller_none
109
110 .globl caller_some
111 .type caller_some,@function
112 caller_some:
113 .local i32
114 i32.const $push5=, 0
115 i32.const $push2=, 0
116 i32.load $push3=, __stack_pointer($pop2)
117 i32.const $push4=, 16
118 i32.sub $push10=, $pop3, $pop4
119 tee_local $push9=, $0=, $pop10
120 i32.store __stack_pointer($pop5), $pop9
121 i64.const $push0=, 4611686018427387904
122 i64.store 8($0), $pop0
123 i32.const $push1=, 0
124 i32.store 0($0), $pop1
125 call callee@FUNCTION, $0
126 i32.const $push8=, 0
127 i32.const $push6=, 16
128 i32.add $push7=, $0, $pop6
129 i32.store __stack_pointer($pop8), $pop7
130 return
131 .endfunc
132 .Lfunc_end7:
133 .size caller_some, .Lfunc_end7-caller_some
134
135 .globl startbb
136 .type startbb,@function
137 startbb:
138 .param i32, i32, i32
139 block
140 i32.const $push0=, 1
141 i32.and $push1=, $0, $pop0
142 i32.eqz $push2=, $pop1
143 br_if 0, $pop2
144 return
145 .LBB8_2:
146 end_block
147 i32.store 0($1), $2
148 return
149 .endfunc
150 .Lfunc_end8:
151 .size startbb, .Lfunc_end8-startbb
152
153
154 .functype callee, void