URL
https://opencores.org/ocsvn/eco32/eco32/trunk
Subversion Repositories eco32
[/] [eco32/] [trunk/] [lcc/] [alpha/] [osf/] [tst/] [sort.sbk] - Rev 4
Compare with Previous | Blame | View Log
.sdata.globl in.align 2in:.long 0xa.long 0x20.long 0xffffffff.long 0x237.long 0x3.long 0x12.long 0x1.long 0xffffffcd.long 0x315.long 0x0.globl main.text.text.ent mainmain:ldgp $gp,0($27)lda $sp,-80($sp).mask 0x4004000,-72.frame $sp,80,$26,48stq $14,0($sp)stq $26,8($sp).prologue 1lda $16,inlda $17,10jsr $26,sortldgp $gp,0($26)mov $31,$14br L.5L.2:sll $14,8*(8-4),$27sra $27,8*(8-4),$27sll $27,2,$27ldl $16,in($27)jsr $26,putdldgp $gp,0($26)lda $16,10jsr $26,putcharldgp $gp,0($26)L.3:lda $14,1($14)L.5:mov $14,$27lda $25,10cmpult $27,$25,$23bne $23,L.2mov $31,$0L.1:ldq $14,0($sp)ldq $26,8($sp)lda $sp,80($sp)ret.end main.globl putd.text.ent putdputd:ldgp $gp,0($27)lda $sp,-80($sp).mask 0x5004000,-64.frame $sp,80,$26,48stq $14,0($sp)stq $24,8($sp)stq $26,16($sp)mov $16,$14.prologue 1cmplt $14,$31,$23beq $23,L.7lda $16,45jsr $26,putcharldgp $gp,0($26)negl $14,$14L.7:divl $14,10,$27cmpeq $27,$31,$23bne $23,L.9divl $14,10,$16jsr $26,putdldgp $gp,0($26)L.9:reml $14,10,$27lda $16,48($27)jsr $26,putcharldgp $gp,0($26)mov $31,$0L.6:ldq $14,0($sp)ldq $24,8($sp)ldq $26,16($sp)lda $sp,80($sp)ret.end putd.globl sort.text.ent sortsort:ldgp $gp,0($27)lda $sp,-64($sp).mask 0x4000000,-64.frame $sp,64,$26,48stq $26,0($sp)stq $16,16($sp)stq $17,24($sp).prologue 1ldq $27,-48+64($sp)stq $27,xxmov $27,$16mov $31,$17ldl $27,-40+64($sp)subl $27,1,$27stl $27,-40+64($sp)mov $27,$18jsr $26,quickldgp $gp,0($26)mov $31,$0L.11:ldq $26,0($sp)lda $sp,64($sp)ret.end sort.globl quick.text.ent quickquick:ldgp $gp,0($27)lda $sp,-96($sp).mask 0x4007800,-64.frame $sp,96,$26,48stq $11,0($sp)stq $12,8($sp)stq $13,16($sp)stq $14,24($sp)stq $26,32($sp)mov $16,$14mov $17,$13mov $18,$12.prologue 1cmplt $13,$12,$23bne $23,L.13mov $31,$0br L.12L.13:mov $14,$16mov $13,$17mov $12,$18jsr $26,partitionldgp $gp,0($26)mov $0,$11mov $14,$16mov $13,$17subl $11,1,$18jsr $26,quickldgp $gp,0($26)mov $14,$16lda $17,1($11)mov $12,$18jsr $26,quickldgp $gp,0($26)mov $31,$0L.12:ldq $11,0($sp)ldq $12,8($sp)ldq $13,16($sp)ldq $14,24($sp)ldq $26,32($sp)lda $sp,96($sp)ret.end quick.globl partition.text.ent partitionpartition:ldgp $gp,0($27)lda $sp,-112($sp).mask 0x4007c00,-72.frame $sp,112,$26,48stq $10,0($sp)stq $11,8($sp)stq $12,16($sp)stq $13,24($sp)stq $14,32($sp)stq $26,40($sp)mov $16,$14mov $17,$13mov $18,$12.prologue 1lda $12,1($12)mov $13,$10sll $10,8*(8-4),$27sra $27,8*(8-4),$27sll $27,2,$27addq $27,$14,$27ldl $11,($27)br L.17L.16:lda $13,1($13)br L.20L.19:lda $13,1($13)L.20:sll $13,8*(8-4),$27sra $27,8*(8-4),$27sll $27,2,$27addq $27,$14,$27ldl $27,($27)cmplt $27,$11,$23bne $23,L.19subl $12,1,$12br L.23L.22:subl $12,1,$12L.23:sll $12,8*(8-4),$27sra $27,8*(8-4),$27sll $27,2,$27addq $27,$14,$27ldl $27,($27)cmple $27,$11,$23beq $23,L.22cmplt $13,$12,$23beq $23,L.25sll $13,8*(8-4),$27sra $27,8*(8-4),$27sll $27,2,$27addq $27,$14,$16sll $12,8*(8-4),$27sra $27,8*(8-4),$27sll $27,2,$27addq $27,$14,$17jsr $26,exchangeldgp $gp,0($26)L.25:L.17:cmplt $13,$12,$23bne $23,L.16sll $10,8*(8-4),$27sra $27,8*(8-4),$27sll $27,2,$27addq $27,$14,$16sll $12,8*(8-4),$27sra $27,8*(8-4),$27sll $27,2,$27addq $27,$14,$17jsr $26,exchangeldgp $gp,0($26)mov $12,$0L.15:ldq $10,0($sp)ldq $11,8($sp)ldq $12,16($sp)ldq $13,24($sp)ldq $14,32($sp)ldq $26,40($sp)lda $sp,112($sp)ret.end partition.globl exchange.text.ent exchangeexchange:ldgp $gp,0($27)lda $sp,-112($sp).mask 0x5006000,-88.frame $sp,112,$26,48stq $13,0($sp)stq $14,8($sp)stq $24,16($sp)stq $26,24($sp)mov $16,$14mov $17,$13.prologue 1lda $16,L.28ldq $27,xxstq $27,-80+112($sp)mov $14,$25subq $25,$27,$25stq $25,-72+112($sp)divq $25,4,$17mov $13,$27ldq $25,-80+112($sp)subq $27,$25,$27divq $27,4,$18jsr $26,printfldgp $gp,0($26)ldl $27,($14)stl $27,-60+112($sp)ldl $27,($13)stl $27,($14)ldl $27,-60+112($sp)stl $27,($13)mov $31,$0L.27:ldq $13,0($sp)ldq $14,8($sp)ldq $24,16($sp)ldq $26,24($sp)lda $sp,112($sp)ret.end exchange.globl xx.comm xx,8.rdata.align 0L.28:.byte 101.byte 120.byte 99.byte 104.byte 97.byte 110.byte 103.byte 101.byte 40.byte 37.byte 100.byte 44.byte 37.byte 100.byte 41.byte 10.byte 0
