repo.or.cz
/
qbe.git
/
blob
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
log
|
graphiclog1
|
graphiclog2
|
commit
|
commitdiff
|
tree
|
refs
|
edit
|
fork
blame
|
history
|
raw
|
HEAD
revert 4bc4c958
[qbe.git]
/
test
/
load3.ssa
blob
73d60aa1ca7dc7507209a58792889bd9d829c425
1
# regression test for load()
2
# see comment below
3
4
function w $rand() {
5
@start
6
ret 0
7
}
8
9
function w $chk(w %a, w %b) {
10
@start
11
%ok =w ceqw %a, 1
12
%ok1 =w ceqw %b, 0
13
%ok2 =w and %ok, %ok1
14
%ret =w xor %ok2, 1
15
ret %ret
16
}
17
18
export
19
function w $main() {
20
@start
21
%s0 =l alloc4 8
22
%s1 =l alloc4 8
23
24
storew 1, %s0
25
%s04 =l add 4, %s0
26
storew 0, %s04
27
28
%rnd =w call $rand()
29
jnz %rnd, @tt, @ff
30
@tt
31
jmp @blit
32
@ff
33
jmp @blit
34
35
@blit
36
# we make sure def() checks
37
# offsets correctly when
38
# processing inserted phis;
39
# if not, %w1 will bogusly
40
# have the same value as %w0
41
42
blit %s0, %s1, 8
43
44
%w0 =w load %s1
45
%s14 =l add 4, %s1
46
%w1 =w load %s14
47
48
%ret =w call $chk(w %w0, w %w1)
49
ret %ret
50
}