325 lines
4.2 KiB
Text
Executable file
325 lines
4.2 KiB
Text
Executable file
.sdata
|
|
.globl x
|
|
.align 2
|
|
x:
|
|
.long 0x1
|
|
.byte 0x2
|
|
.space 3
|
|
.byte 0x3
|
|
.byte 0x40
|
|
.space 2
|
|
.byte 0x50
|
|
.byte 0x6
|
|
.space 2
|
|
.globl i
|
|
.align 2
|
|
i:
|
|
.long 0x10
|
|
.globl y
|
|
.align 2
|
|
y:
|
|
.byte 0x23
|
|
.space 3
|
|
.byte 0x9
|
|
.byte 0x0
|
|
.byte 0x0
|
|
.byte 0x0
|
|
.globl main
|
|
.text
|
|
.text
|
|
.ent main
|
|
main:
|
|
ldgp $gp,0($27)
|
|
lda $sp,-80($sp)
|
|
.mask 0x4000000,-72
|
|
.frame $sp,80,$26,48
|
|
stq $26,8($sp)
|
|
.prologue 1
|
|
lda $16,L.4
|
|
ldl $17,x
|
|
lda $27,x+4
|
|
ldb $18,($27)
|
|
ldl $27,x+8
|
|
sll $27,20,$27
|
|
addl $27,0,$27
|
|
sra $27,20,$19
|
|
addl $19,0,$19
|
|
ldl $27,x+8
|
|
sll $27,16,$27
|
|
addl $27,0,$27
|
|
sra $27,28,$20
|
|
addl $20,0,$20
|
|
ldl $27,x+12
|
|
sll $27,25,$27
|
|
addl $27,0,$27
|
|
sra $27,29,$21
|
|
addl $21,0,$21
|
|
lda $27,x+13
|
|
ldb $27,($27)
|
|
stq $27,0($sp)
|
|
jsr $26,printf
|
|
ldgp $gp,0($26)
|
|
lda $16,L.10
|
|
ldl $27,y
|
|
zap $27,240,$27
|
|
and $27,3,$17
|
|
srl $27,2,$27
|
|
and $27,15,$18
|
|
ldl $19,y+4
|
|
zap $19,240,$19
|
|
jsr $26,printf
|
|
ldgp $gp,0($26)
|
|
ldl $27,x+8
|
|
and $27,0xffff0fff,$27
|
|
ldl $25,i
|
|
sll $25,28,$25
|
|
addl $25,0,$25
|
|
sra $25,28,$25
|
|
addl $25,0,$25
|
|
sll $25,12,$25
|
|
zap $25,240,$25
|
|
and $25,0xf000,$25
|
|
or $27,$25,$27
|
|
stl $27,x+8
|
|
ldl $27,x+12
|
|
and $27,0xffffff8f,$27
|
|
stl $27,x+12
|
|
lda $16,L.4
|
|
ldl $17,x
|
|
lda $27,x+4
|
|
ldb $18,($27)
|
|
ldl $27,x+8
|
|
sll $27,20,$27
|
|
addl $27,0,$27
|
|
sra $27,20,$19
|
|
addl $19,0,$19
|
|
ldl $27,x+8
|
|
sll $27,16,$27
|
|
addl $27,0,$27
|
|
sra $27,28,$20
|
|
addl $20,0,$20
|
|
ldl $27,x+12
|
|
sll $27,25,$27
|
|
addl $27,0,$27
|
|
sra $27,29,$21
|
|
addl $21,0,$21
|
|
lda $27,x+13
|
|
ldb $27,($27)
|
|
stq $27,0($sp)
|
|
jsr $26,printf
|
|
ldgp $gp,0($26)
|
|
ldl $27,y
|
|
zap $27,240,$27
|
|
and $27,0xfffffffc,$27
|
|
or $27,2,$27
|
|
stl $27,y
|
|
ldl $27,i
|
|
stl $27,y+4
|
|
lda $16,L.10
|
|
ldl $27,y
|
|
zap $27,240,$27
|
|
and $27,3,$17
|
|
srl $27,2,$27
|
|
and $27,15,$18
|
|
ldl $19,y+4
|
|
zap $19,240,$19
|
|
jsr $26,printf
|
|
ldgp $gp,0($26)
|
|
lda $16,x
|
|
jsr $26,f2
|
|
ldgp $gp,0($26)
|
|
mov $31,$0
|
|
L.3:
|
|
ldq $26,8($sp)
|
|
lda $sp,80($sp)
|
|
ret
|
|
.end main
|
|
.globl f1
|
|
.text
|
|
.ent f1
|
|
f1:
|
|
ldgp $gp,0($27)
|
|
lda $sp,-80($sp)
|
|
.mask 0x4004000,-72
|
|
.frame $sp,80,$26,48
|
|
stq $14,0($sp)
|
|
stq $26,8($sp)
|
|
mov $16,$14
|
|
.prologue 1
|
|
ldl $27,($14)
|
|
zap $27,240,$27
|
|
and $27,0xffffffc3,$27
|
|
stl $27,($14)
|
|
ldl $27,($14)
|
|
zap $27,240,$27
|
|
and $27,0xfffffffc,$27
|
|
and $31,3,$25
|
|
and $25,3,$25
|
|
or $27,$25,$27
|
|
stl $27,($14)
|
|
ldl $27,($14)
|
|
zap $27,240,$27
|
|
and $27,60,$27
|
|
cmpeq $27,$31,$23
|
|
bne $23,L.22
|
|
lda $16,L.24
|
|
jsr $26,printf
|
|
ldgp $gp,0($26)
|
|
L.22:
|
|
ldl $27,($14)
|
|
zap $27,240,$27
|
|
or $27,3,$27
|
|
stl $27,($14)
|
|
ldl $27,($14)
|
|
zap $27,240,$27
|
|
or $27,60,$27
|
|
stl $27,($14)
|
|
lda $16,L.25
|
|
ldl $27,($14)
|
|
zap $27,240,$27
|
|
and $27,3,$17
|
|
srl $27,2,$27
|
|
and $27,15,$18
|
|
jsr $26,printf
|
|
ldgp $gp,0($26)
|
|
mov $31,$0
|
|
L.21:
|
|
ldq $14,0($sp)
|
|
ldq $26,8($sp)
|
|
lda $sp,80($sp)
|
|
ret
|
|
.end f1
|
|
.globl f2
|
|
.text
|
|
.ent f2
|
|
f2:
|
|
ldgp $gp,0($27)
|
|
lda $sp,-80($sp)
|
|
.mask 0x4006000,-64
|
|
.frame $sp,80,$26,48
|
|
stq $13,0($sp)
|
|
stq $14,8($sp)
|
|
stq $26,16($sp)
|
|
mov $16,$14
|
|
.prologue 1
|
|
ldl $27,i
|
|
cmpeq $27,$31,$23
|
|
beq $23,L.28
|
|
lda $13,1
|
|
br L.29
|
|
L.28:
|
|
mov $31,$13
|
|
L.29:
|
|
ldl $27,($14)
|
|
zap $27,240,$27
|
|
and $27,0xfffffffc,$27
|
|
mov $13,$25
|
|
and $25,3,$25
|
|
and $25,3,$25
|
|
or $27,$25,$27
|
|
stl $27,($14)
|
|
mov $14,$16
|
|
jsr $26,f1
|
|
ldgp $gp,0($26)
|
|
ldl $27,($14)
|
|
zap $27,240,$27
|
|
and $27,0xffffffc3,$27
|
|
mov $31,$25
|
|
and $25,15,$25
|
|
sll $25,2,$25
|
|
zap $25,240,$25
|
|
and $25,60,$25
|
|
or $27,$25,$27
|
|
stl $27,($14)
|
|
mov $31,$0
|
|
L.26:
|
|
ldq $13,0($sp)
|
|
ldq $14,8($sp)
|
|
ldq $26,16($sp)
|
|
lda $sp,80($sp)
|
|
ret
|
|
.end f2
|
|
.rdata
|
|
.align 0
|
|
L.25:
|
|
.byte 112
|
|
.byte 45
|
|
.byte 62
|
|
.byte 97
|
|
.byte 32
|
|
.byte 61
|
|
.byte 32
|
|
.byte 48
|
|
.byte 120
|
|
.byte 37
|
|
.byte 120
|
|
.byte 44
|
|
.byte 32
|
|
.byte 112
|
|
.byte 45
|
|
.byte 62
|
|
.byte 98
|
|
.byte 32
|
|
.byte 61
|
|
.byte 32
|
|
.byte 48
|
|
.byte 120
|
|
.byte 37
|
|
.byte 120
|
|
.byte 10
|
|
.byte 0
|
|
.align 0
|
|
L.24:
|
|
.byte 112
|
|
.byte 45
|
|
.byte 62
|
|
.byte 98
|
|
.byte 32
|
|
.byte 33
|
|
.byte 61
|
|
.byte 32
|
|
.byte 48
|
|
.byte 33
|
|
.byte 10
|
|
.byte 0
|
|
.align 0
|
|
L.10:
|
|
.byte 121
|
|
.byte 32
|
|
.byte 61
|
|
.byte 32
|
|
.byte 37
|
|
.byte 100
|
|
.byte 32
|
|
.byte 37
|
|
.byte 100
|
|
.byte 32
|
|
.byte 37
|
|
.byte 100
|
|
.byte 10
|
|
.byte 0
|
|
.align 0
|
|
L.4:
|
|
.byte 120
|
|
.byte 32
|
|
.byte 61
|
|
.byte 32
|
|
.byte 37
|
|
.byte 100
|
|
.byte 32
|
|
.byte 37
|
|
.byte 100
|
|
.byte 32
|
|
.byte 37
|
|
.byte 100
|
|
.byte 32
|
|
.byte 37
|
|
.byte 100
|
|
.byte 32
|
|
.byte 37
|
|
.byte 100
|
|
.byte 32
|
|
.byte 37
|
|
.byte 100
|
|
.byte 10
|
|
.byte 0
|