aboutsummaryrefslogtreecommitdiff
path: root/tests/varargs.qbe
blob: 42543a16d0dc5acb6ae49fa36788ce477ec9f77f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
export
function $f(w %.1, ...) {
@start.1
	%.2 =l alloc4 4
	storew 0, %.2
	storew %.1, %.2
	%.3 =l alloc8 24
@body.2
	storel 0, %.3
	%.4 =l add %.3, 8
	storel 0, %.4
	%.5 =l add %.3, 16
	storel 0, %.5
	vastart %.3
@while_cond.3
	%.6 =w loadsw %.2
	jnz %.6, @while_body.4, @while_join.5
@while_body.4
	%.7 =w vaarg %.3
	%.8 =s vaarg %.3
	%.9 =l vaarg %.3
	%.10 =w loadsw %.2
	%.11 =w sub %.10, 1
	storew %.11, %.2
	jmp @while_cond.3
@while_join.5
	ret
}