.verstamp 3 11 .set noreorder .set volatile .set noat .file 1 "magicsquares-orderthree.c" gcc2_compiled.: __gnu_compiled_c: .rdata .quad 0 .align 3 $C32: .ascii "Discovered %lu primes less than %lu\12\0" .align 3 $C33: .ascii "Found %lu primes less than %lu in all\12\0" .text .align 3 .globl sieve_classical_alg .ent sieve_classical_alg sieve_classical_alg: ldgp $29,0($27) sieve_classical_alg..ng: lda $30,-48($30) .frame $30,48,$26,0 stq $26,0($30) stq $9,8($30) stq $10,16($30) stq $11,24($30) stq $12,32($30) .mask 0x4001e00,-48 .prologue 1 bis $16,$16,$11 bis $17,$17,$10 bis $18,$18,$12 bis $31,$31,$9 bis $31,$31,$5 beq $10,$57 bis $31,1,$4 .align 5 $58: addq $11,$5,$3 ldq_u $1,0($3) insbl $4,$3,$2 mskbl $1,$3,$1 addq $5,1,$5 bis $2,$1,$2 cmpult $5,$10,$1 stq_u $2,0($3) bne $1,$58 $57: bis $31,$31,$5 beq $12,$62 .align 5 $64: addq $11,$5,$2 ldq_u $1,0($2) extbl $1,$2,$1 beq $1,$63 addq $5,$5,$1 addq $1,3,$6 mulq $6,$5,$1 addq $1,$6,$1 addq $1,$5,$4 cmpult $4,$10,$1 beq $1,$67 .align 5 $68: addq $11,$4,$1 ldq_u $2,0($1) addq $4,$6,$4 cmpult $4,$10,$3 mskbl $2,$1,$2 stq_u $2,0($1) bne $3,$68 $67: addq $9,1,$9 $63: addq $5,1,$5 cmpult $5,$12,$1 bne $1,$64 $62: lda $16,$C32 addq $12,$12,$18 bis $9,$9,$17 addq $18,3,$18 jsr $26,printf ldgp $29,0($26) bis $12,$12,$5 cmpult $5,$10,$1 beq $1,$72 .align 5 $74: addq $11,$5,$2 ldq_u $1,0($2) addq $5,1,$5 cmpult $5,$10,$3 extbl $1,$2,$1 addq $9,1,$2 cmovne $1,$2,$9 bne $3,$74 $72: lda $16,$C33 addq $10,$10,$18 bis $9,$9,$17 addq $18,3,$18 jsr $26,printf ldgp $29,0($26) ldq $26,0($30) ldq $9,8($30) ldq $10,16($30) ldq $11,24($30) ldq $12,32($30) addq $30,48,$30 ret $31,($26),1 .end sieve_classical_alg .rdata .align 3 $C34: .ascii "primesquares.timing\0" .align 3 $C35: .ascii "w\0" .align 3 $C36: .ascii "primesquares.results\0" .align 3 $C37: .ascii "Program started at %s\0" .align 3 $C39: .ascii "%ld %ld %ld\12\0" .align 3 $C40: .ascii "Generated %ld squares at %s\0" .align 3 $C41: .ascii "Found %ld prime magic squares in all\12\0" .align 3 $C38: .quad 0xaaaaaaaaaaaaaaab .text .align 3 .globl generate_magic_squares .ent generate_magic_squares generate_magic_squares: ldgp $29,0($27) generate_magic_squares..ng: lda $30,-176($30) .frame $30,176,$26,0 stq $26,0($30) stq $9,8($30) stq $10,16($30) stq $11,24($30) stq $12,32($30) stq $13,40($30) stq $14,48($30) stq $15,56($30) .mask 0x400fe00,-176 .prologue 1 bis $16,$16,$13 stq $31,144($30) bis $31,$31,$16 lda $9,$C35 bis $17,$17,$11 jsr $26,time ldgp $29,0($26) lda $16,$C34 stq $31,152($30) bis $9,$9,$17 stl $0,136($30) jsr $26,fopen ldgp $29,0($26) lda $16,$C36 bis $31,$31,$14 bis $9,$9,$17 stq $0,160($30) bis $31,$31,$10 jsr $26,fopen ldgp $29,0($26) bis $31,$31,$9 bis $0,$0,$15 addq $30,64,$3 br $31,$114 .align 4 .align 5 $83: addq $9,1,$9 $114: addq $13,$9,$2 ldq_u $1,0($2) extbl $1,$2,$1 beq $1,$83 addq $10,1,$10 stq $9,0($3) addq $9,1,$9 cmple $10,8,$1 addq $3,8,$3 bne $1,$114 addq $30,136,$16 jsr $26,ctime ldgp $29,0($26) lda $17,$C37 ldq $16,160($30) bis $0,$0,$18 jsr $26,fprintf ldgp $29,0($26) lda $1,$C38 ldq $1,0($1) umulh $11,$1,$1 ldq $11,96($30) srl $1,1,$2 cmpult $11,$2,$1 beq $1,$87 stq $2,168($30) .align 5 $89: addq $13,$11,$2 ldq_u $1,0($2) extbl $1,$2,$1 beq $1,$88 subq $11,3,$10 ble $10,$92 .align 5 $94: addq $13,$10,$2 ldq_u $1,0($2) extbl $1,$2,$1 beq $1,$93 addq $10,$10,$1 subq $11,1,$2 subq $1,$2,$12 cmovle $12,0,$12 subq $10,1,$9 cmplt $9,$12,$1 bne $1,$93 .align 5 $100: addq $13,$9,$2 ldq_u $1,0($2) extbl $1,$2,$1 beq $1,$99 subq $10,$9,$4 subq $11,$10,$1 addq $4,$4,$2 subq $2,$1,$2 beq $2,$99 addq $11,$4,$2 addq $13,$2,$2 ldq_u $1,0($2) extbl $1,$2,$1 beq $1,$99 subq $11,$4,$2 addq $13,$2,$2 ldq_u $1,0($2) extbl $1,$2,$1 beq $1,$99 addq $10,$4,$2 addq $13,$2,$2 ldq_u $1,0($2) extbl $1,$2,$1 beq $1,$99 addq $11,$11,$1 subq $1,$9,$1 subq $1,$4,$3 addq $13,$3,$2 ldq_u $1,0($2) extbl $1,$2,$1 beq $1,$99 addq $3,$4,$2 addq $13,$2,$2 ldq_u $1,0($2) extbl $1,$2,$1 beq $1,$99 subq $3,$4,$2 addq $13,$2,$2 ldq_u $1,0($2) extbl $1,$2,$1 beq $1,$99 bis $15,$15,$16 bis $9,$9,$18 lda $17,$C39 bis $10,$10,$19 bis $11,$11,$20 addq $14,1,$14 jsr $26,fprintf ldgp $29,0($26) $99: subq $9,1,$9 cmplt $9,$12,$1 beq $1,$100 $93: subq $10,1,$10 cmple $10,0,$1 beq $1,$94 $92: ldq $5,144($30) subq $14,$5,$1 cmple $1,100,$1 bne $1,$88 bis $15,$15,$16 jsr $26,fflush ldgp $29,0($26) ldq $5,152($30) lda $1,1000 subq $14,$5,$2 cmple $2,$1,$2 stq $14,144($30) bne $2,$88 bis $31,$31,$16 jsr $26,time ldgp $29,0($26) addq $30,136,$16 stl $0,136($30) jsr $26,ctime ldgp $29,0($26) lda $17,$C40 ldq $16,160($30) bis $14,$14,$18 bis $0,$0,$19 jsr $26,fprintf ldgp $29,0($26) ldq $16,160($30) stq $14,152($30) jsr $26,fflush ldgp $29,0($26) $88: ldq $5,168($30) addq $11,1,$11 cmpult $11,$5,$1 bne $1,$89 $87: lda $16,$C41 bis $14,$14,$17 jsr $26,printf ldgp $29,0($26) ldq $26,0($30) ldq $9,8($30) ldq $10,16($30) ldq $11,24($30) ldq $12,32($30) ldq $13,40($30) ldq $14,48($30) ldq $15,56($30) addq $30,176,$30 ret $31,($26),1 .end generate_magic_squares .rdata .align 3 $C42: .ascii "-s\0" .align 3 $C43: .ascii "%lu\0" .align 3 $C44: .ascii "Usage: %s [-s size]\12\0" .text .align 3 .globl analyse_args .ent analyse_args analyse_args: ldgp $29,0($27) analyse_args..ng: lda $30,-64($30) .frame $30,64,$26,0 stq $26,0($30) stq $9,8($30) stq $10,16($30) stq $11,24($30) stq $12,32($30) stq $13,40($30) stq $14,48($30) .mask 0x4007e00,-64 .prologue 1 bis $16,$16,$11 bis $31,1,$10 bis $17,$17,$12 cmplt $10,$11,$1 bis $18,$18,$13 beq $1,$124 lda $14,_iob addq $12,8,$9 .align 5 $125: ldq $16,0($9) lda $17,$C42 jsr $26,strcmp ldgp $29,0($26) bne $0,$126 addl $10,1,$1 cmple $11,$1,$1 bne $1,$126 ldq $16,8($9) lda $17,$C43 bis $13,$13,$18 jsr $26,sscanf ldgp $29,0($26) addq $9,16,$9 addl $10,2,$10 br $31,$123 .align 4 $126: lda $17,$C44 ldq $18,0($12) addq $14,112,$16 jsr $26,fprintf ldgp $29,0($26) bis $31,1,$16 jsr $26,exit ldgp $29,0($26) .align 4 $123: cmplt $10,$11,$1 bne $1,$125 $124: ldq $26,0($30) ldq $9,8($30) ldq $10,16($30) ldq $11,24($30) ldq $12,32($30) ldq $13,40($30) ldq $14,48($30) addq $30,64,$30 ret $31,($26),1 .end analyse_args .rdata .align 3 $C45: .ascii "\12\12The Prime Exploratorium\12\0" .align 3 $C46: .ascii "(c) 2000 Peter Dickman & University of Glasgow\12\12\0" .align 3 $C47: .ascii "Working with a sieve of length %lu\12\0" .align 3 $C48: .ascii "So maximum potential prime is %lu\12\0" .align 3 $C49: .ascii "Generating primes... (up to %lu)\12\0" .align 3 $C50: .ascii " ...primes generated.\12\12\0" .align 3 $C51: .ascii "\12\12The Prime Magic Square Explorer\12\0" .align 3 $C52: .ascii "(c) 2001 Peter Dickman & University of Glasgow\12\12\0" .align 3 $C53: .ascii "Finds magic squares containing distinct primes\0" .align 3 $C54: .ascii "\12\0" .align 3 $C55: .ascii "Generating magic squares (using primes up to %lu)\12\12\12\0" .align 3 $C56: .ascii "Squares are being written to %s\0" .align 3 $C57: .ascii "Timings are being written to %s\0" .align 3 $C58: .ascii "\12\12 ...magic squares generated.\12\12\0" .text .align 3 .globl main .ent main main: ldgp $29,0($27) main..ng: lda $30,-64($30) .frame $30,64,$26,0 stq $26,0($30) stq $9,8($30) stq $10,16($30) stq $11,24($30) stq $12,32($30) stq $13,40($30) .mask 0x4003e00,-64 .prologue 1 bis $16,$16,$11 lda $1,1000 cmple $11,1,$2 stq $1,48($30) bis $17,$17,$12 bne $2,$130 bis $31,1,$10 cmplt $10,$11,$1 addq $30,48,$13 beq $1,$130 addq $12,8,$9 .align 5 $134: ldq $16,0($9) lda $17,$C42 jsr $26,strcmp ldgp $29,0($26) bne $0,$135 addl $10,1,$1 cmple $11,$1,$1 bne $1,$135 ldq $16,8($9) lda $17,$C43 bis $13,$13,$18 jsr $26,sscanf ldgp $29,0($26) addq $9,16,$9 addl $10,2,$10 br $31,$132 .align 4 $135: lda $16,_iob+112 lda $17,$C44 ldq $18,0($12) jsr $26,fprintf ldgp $29,0($26) bis $31,1,$16 jsr $26,exit ldgp $29,0($26) .align 4 $132: cmplt $10,$11,$1 bne $1,$134 $130: ldq $1,48($30) addq $1,1,$2 addq $2,$2,$2 mulq $1,$2,$10 bis $10,$10,$16 jsr $26,malloc ldgp $29,0($26) lda $16,$C45 bis $0,$0,$11 jsr $26,printf ldgp $29,0($26) lda $16,$C46 jsr $26,printf ldgp $29,0($26) lda $16,$C47 bis $10,$10,$17 jsr $26,printf ldgp $29,0($26) lda $16,$C48 addq $10,$10,$9 bis $9,1,$9 bis $9,$9,$17 jsr $26,printf ldgp $29,0($26) lda $16,$C49 bis $9,$9,$17 jsr $26,printf ldgp $29,0($26) bis $31,$31,$9 bis $31,$31,$5 ldq $12,48($30) beq $10,$140 bis $31,1,$4 .align 5 $141: addq $11,$5,$3 ldq_u $1,0($3) insbl $4,$3,$2 mskbl $1,$3,$1 addq $5,1,$5 bis $2,$1,$2 cmpult $5,$10,$1 stq_u $2,0($3) bne $1,$141 $140: bis $31,$31,$5 beq $12,$145 .align 5 $147: addq $11,$5,$2 ldq_u $1,0($2) extbl $1,$2,$1 beq $1,$146 addq $5,$5,$1 addq $1,3,$6 mulq $6,$5,$1 addq $1,$6,$1 addq $1,$5,$4 cmpult $4,$10,$1 beq $1,$150 .align 5 $151: addq $11,$4,$1 ldq_u $2,0($1) addq $4,$6,$4 cmpult $4,$10,$3 mskbl $2,$1,$2 stq_u $2,0($1) bne $3,$151 $150: addq $9,1,$9 $146: addq $5,1,$5 cmpult $5,$12,$1 bne $1,$147 $145: lda $16,$C32 addq $12,$12,$18 bis $9,$9,$17 addq $18,3,$18 jsr $26,printf ldgp $29,0($26) bis $12,$12,$5 cmpult $5,$10,$1 beq $1,$155 .align 5 $157: addq $11,$5,$2 ldq_u $1,0($2) addq $5,1,$5 cmpult $5,$10,$3 extbl $1,$2,$1 addq $9,1,$2 cmovne $1,$2,$9 bne $3,$157 $155: addq $10,$10,$18 lda $16,$C33 bis $9,$9,$17 bis $18,3,$18 jsr $26,printf ldgp $29,0($26) lda $16,$C50 jsr $26,printf ldgp $29,0($26) lda $16,$C51 jsr $26,printf ldgp $29,0($26) lda $16,$C52 jsr $26,printf ldgp $29,0($26) lda $16,$C53 jsr $26,printf ldgp $29,0($26) lda $16,$C54 jsr $26,printf ldgp $29,0($26) lda $16,$C55 addq $10,$10,$17 bis $17,1,$17 jsr $26,printf ldgp $29,0($26) lda $16,$C56 lda $17,$C36 jsr $26,printf ldgp $29,0($26) lda $16,$C57 lda $17,$C34 jsr $26,printf ldgp $29,0($26) bis $11,$11,$16 bis $10,$10,$17 bsr $26,generate_magic_squares..ng lda $16,$C58 jsr $26,printf ldgp $29,0($26) bis $31,$31,$16 jsr $26,exit ldgp $29,0($26) .align 4 .end main