* Moved lcc and q3asm into code/tools
This commit is contained in:
parent
b1cef6352e
commit
ad118b9baf
452 changed files with 0 additions and 0 deletions
144
code/tools/lcc/sparc/solaris/tst/8q.sbk
Normal file
144
code/tools/lcc/sparc/solaris/tst/8q.sbk
Normal file
|
@ -0,0 +1,144 @@
|
|||
.global main
|
||||
.section ".text"
|
||||
.align 4
|
||||
main:
|
||||
save %sp,-96,%sp
|
||||
mov %g0,%i5
|
||||
.L2:
|
||||
sll %i5,2,%i4
|
||||
set 1,%i3
|
||||
set down,%i2
|
||||
st %i3,[%i4+%i2]
|
||||
set up,%i2
|
||||
st %i3,[%i4+%i2]
|
||||
.L3:
|
||||
add %i5,1,%i5
|
||||
cmp %i5,15; bl .L2; nop
|
||||
mov %g0,%i5
|
||||
.L6:
|
||||
sll %i5,2,%i4
|
||||
set rows,%i3
|
||||
set 1,%i2
|
||||
st %i2,[%i4+%i3]
|
||||
.L7:
|
||||
add %i5,1,%i5
|
||||
cmp %i5,8; bl .L6; nop
|
||||
mov %g0,%o0
|
||||
call queens; nop
|
||||
mov %g0,%i0
|
||||
.L1:
|
||||
ret; restore
|
||||
.type main,#function
|
||||
.size main,.-main
|
||||
.global queens
|
||||
.align 4
|
||||
queens:
|
||||
save %sp,-96,%sp
|
||||
mov %g0,%i5
|
||||
.L11:
|
||||
sll %i5,2,%i3
|
||||
set rows,%i2
|
||||
ld [%i3+%i2],%i3
|
||||
cmp %i3,%g0; be .L15; nop
|
||||
sub %i5,%i0,%i3
|
||||
sll %i3,2,%i3
|
||||
set up+28,%i2
|
||||
ld [%i3+%i2],%i3
|
||||
cmp %i3,%g0; be .L15; nop
|
||||
add %i5,%i0,%i3
|
||||
sll %i3,2,%i3
|
||||
set down,%i2
|
||||
ld [%i3+%i2],%i3
|
||||
cmp %i3,%g0; be .L15; nop
|
||||
add %i5,%i0,%i3
|
||||
sll %i3,2,%i3
|
||||
set down,%i2
|
||||
st %g0,[%i3+%i2]
|
||||
sub %i5,%i0,%i3
|
||||
sll %i3,2,%i3
|
||||
set up+28,%i2
|
||||
st %g0,[%i3+%i2]
|
||||
sll %i5,2,%i3
|
||||
set rows,%i2
|
||||
st %g0,[%i3+%i2]
|
||||
sll %i0,2,%i4
|
||||
set x,%i3
|
||||
st %i5,[%i4+%i3]
|
||||
cmp %i0,7; bne .L19; nop
|
||||
call print; nop
|
||||
ba .L20; nop
|
||||
.L19:
|
||||
add %i0,1,%o0
|
||||
call queens; nop
|
||||
.L20:
|
||||
set 1,%i4
|
||||
add %i5,%i0,%i3
|
||||
sll %i3,2,%i3
|
||||
set down,%i2
|
||||
st %i4,[%i3+%i2]
|
||||
sub %i5,%i0,%i3
|
||||
sll %i3,2,%i3
|
||||
set up+28,%i2
|
||||
st %i4,[%i3+%i2]
|
||||
sll %i5,2,%i3
|
||||
set rows,%i2
|
||||
st %i4,[%i3+%i2]
|
||||
.L15:
|
||||
.L12:
|
||||
add %i5,1,%i5
|
||||
cmp %i5,8; bl .L11; nop
|
||||
mov %g0,%i0
|
||||
.L10:
|
||||
ret; restore
|
||||
.type queens,#function
|
||||
.size queens,.-queens
|
||||
.global print
|
||||
.align 4
|
||||
print:
|
||||
save %sp,-96,%sp
|
||||
mov %g0,%i5
|
||||
.L23:
|
||||
set .L27,%o0
|
||||
sll %i5,2,%i4
|
||||
set x,%i3
|
||||
ld [%i4+%i3],%i4
|
||||
add %i4,49,%o1
|
||||
call printf; nop
|
||||
.L24:
|
||||
add %i5,1,%i5
|
||||
cmp %i5,8; bl .L23; nop
|
||||
set .L28,%o0
|
||||
call printf; nop
|
||||
mov %g0,%i0
|
||||
.L22:
|
||||
ret; restore
|
||||
.type print,#function
|
||||
.size print,.-print
|
||||
.section ".bss"
|
||||
.global x
|
||||
.type x,#object
|
||||
.size x,32
|
||||
.common x,32,4
|
||||
.global rows
|
||||
.type rows,#object
|
||||
.size rows,32
|
||||
.common rows,32,4
|
||||
.global down
|
||||
.type down,#object
|
||||
.size down,60
|
||||
.common down,60,4
|
||||
.global up
|
||||
.type up,#object
|
||||
.size up,60
|
||||
.common up,60,4
|
||||
.section ".rodata"
|
||||
.align 1
|
||||
.L28:
|
||||
.byte 10
|
||||
.byte 0
|
||||
.align 1
|
||||
.L27:
|
||||
.byte 37
|
||||
.byte 99
|
||||
.byte 32
|
||||
.byte 0
|
Loading…
Add table
Add a link
Reference in a new issue