From 952c5c128f9efaea89d41d882c4ea3ade7df4591 Mon Sep 17 00:00:00 2001 From: zakk Date: Fri, 26 Aug 2005 04:48:05 +0000 Subject: Itsa me, quake3io! git-svn-id: svn://svn.icculus.org/quake3/trunk@2 edf5b092-35ff-0310-97b2-ce42778d08ea --- lcc/x86/linux/tst/8q.sbk | 180 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 180 insertions(+) create mode 100755 lcc/x86/linux/tst/8q.sbk (limited to 'lcc/x86/linux/tst/8q.sbk') diff --git a/lcc/x86/linux/tst/8q.sbk b/lcc/x86/linux/tst/8q.sbk new file mode 100755 index 0000000..34af0f1 --- /dev/null +++ b/lcc/x86/linux/tst/8q.sbk @@ -0,0 +1,180 @@ +.globl main +.text +.align 16 +.type main,@function +main: +pushl %ebp +pushl %ebx +pushl %esi +pushl %edi +movl %esp,%ebp +subl $4,%esp +movl $0,-4(%ebp) +.LC2: +movl -4(%ebp),%edi +leal (,%edi,4),%edi +movl $1,down(%edi) +movl $1,up(%edi) +.LC3: +incl -4(%ebp) +cmpl $15,-4(%ebp) +jl .LC2 +movl $0,-4(%ebp) +.LC6: +movl -4(%ebp),%edi +movl $1,rows(,%edi,4) +.LC7: +incl -4(%ebp) +cmpl $8,-4(%ebp) +jl .LC6 +pushl $0 +call queens +addl $4,%esp +movl $0,%eax +.LC1: +movl %ebp,%esp +popl %edi +popl %esi +popl %ebx +popl %ebp +ret +.Lf10: +.size main,.Lf10-main +.globl queens +.align 16 +.type queens,@function +queens: +pushl %ebp +pushl %ebx +pushl %esi +pushl %edi +movl %esp,%ebp +subl $4,%esp +movl $0,-4(%ebp) +.LC12: +movl -4(%ebp),%edi +cmpl $0,rows(,%edi,4) +je .LC16 +movl 20(%ebp),%esi +movl %edi,%ebx +subl %esi,%ebx +cmpl $0,up+28(,%ebx,4) +je .LC16 +leal (%esi,%edi),%edi +cmpl $0,down(,%edi,4) +je .LC16 +movl -4(%ebp),%edi +movl 20(%ebp),%esi +leal (%esi,%edi),%ebx +movl $0,down(,%ebx,4) +movl %edi,%ebx +subl %esi,%ebx +movl $0,up+28(,%ebx,4) +movl $0,rows(,%edi,4) +movl 20(%ebp),%edi +movl -4(%ebp),%esi +movl %esi,x(,%edi,4) +cmpl $7,20(%ebp) +jne .LC20 +call print +jmp .LC21 +.LC20: +movl 20(%ebp),%edi +leal 1(%edi),%edi +pushl %edi +call queens +addl $4,%esp +.LC21: +movl -4(%ebp),%edi +movl 20(%ebp),%esi +leal (%esi,%edi),%ebx +movl $1,down(,%ebx,4) +movl %edi,%ebx +subl %esi,%ebx +movl $1,up+28(,%ebx,4) +movl $1,rows(,%edi,4) +.LC16: +.LC13: +incl -4(%ebp) +cmpl $8,-4(%ebp) +jl .LC12 +movl $0,%eax +.LC11: +movl %ebp,%esp +popl %edi +popl %esi +popl %ebx +popl %ebp +ret +.Lf23: +.size queens,.Lf23-queens +.globl print +.align 16 +.type print,@function +print: +pushl %ebp +pushl %ebx +pushl %esi +pushl %edi +movl %esp,%ebp +subl $4,%esp +movl $0,-4(%ebp) +.LC25: +movl -4(%ebp),%edi +movl x(,%edi,4),%edi +leal 49(%edi),%edi +pushl %edi +pushl $.LC29 +call printf +addl $8,%esp +.LC26: +incl -4(%ebp) +cmpl $8,-4(%ebp) +jl .LC25 +pushl $.LC30 +call printf +addl $4,%esp +movl $0,%eax +.LC24: +movl %ebp,%esp +popl %edi +popl %esi +popl %ebx +popl %ebp +ret +.Lf31: +.size print,.Lf31-print +.bss +.globl x +.align 4 +.type x,@object +.size x,32 +.comm x,32 +.globl rows +.align 4 +.type rows,@object +.size rows,32 +.comm rows,32 +.globl down +.align 4 +.type down,@object +.size down,60 +.comm down,60 +.globl up +.align 4 +.type up,@object +.size up,60 +.comm up,60 +.data +.align 1 +.LC30: +.byte 10 +.byte 0 +.align 1 +.LC29: +.byte 37 +.byte 99 +.byte 32 +.byte 0 +.text +.ident "LCC: 4.1" -- cgit v1.2.3