| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414 |
- .file 1 "acron.c"
- # GNU C 2.7.2.3 [AL 1.1, MM 40, tma 0.1] SimpleScalar running sstrix compiled by GNU C
- # Cc1 defaults:
- # -mgas -mgpOPT
- # Cc1 arguments (-G value = 8, Cpu = default, ISA = 1):
- # -quiet -dumpbase -O0 -o
- gcc2_compiled.:
- __gnu_compiled_c:
- .globl w
- .data
- .align 2
- w:
- .word $LC0
- .word $LC1
- .word $LC2
- .word $LC3
- .word $LC4
- .word $LC5
- .sdata
- .align 2
- $LC5:
- .ascii "Eephole\000"
- .rdata
- .align 2
- $LC4:
- .ascii "Peephole\000"
- .align 2
- $LC3:
- .ascii "Optimization\000"
- .align 2
- $LC2:
- .ascii "Practicum\000"
- .align 2
- $LC1:
- .ascii "Ertalerbouw\000"
- .align 2
- $LC0:
- .ascii "Vertalerbouw\000"
- .text
- .align 2
- .globl is_vowel
- .sdata
- .align 2
- $LC6:
- .ascii "%s\000"
- .align 2
- $LC7:
- .ascii " %s\000"
- .align 2
- $LC8:
- .ascii "\n\000"
- .text
- .align 2
- .globl do_perm
- .align 2
- .globl main
- .comm acron,12
- .comm command,100
- .comm done,24
- .comm pindex,28
- .text
- .loc 1 10
- .ent is_vowel
- is_vowel:
- .frame $fp,16,$31 # vars= 8, regs= 1/0, args= 0, extra= 0
- .mask 0x40000000,-8
- .fmask 0x00000000,0
- subu $sp,$sp,16
- sw $fp,8($sp)
- move $fp,$sp
- move $3,$4
- sb $3,0($fp)
- move $2,$0
- lb $4,0($fp)
- li $5,0x00000041 # $5 = 65
- beq $4,$5,$L3
- lb $4,0($fp)
- li $5,0x00000045 # $5 = 69
- beq $4,$5,$L3
- lb $4,0($fp)
- li $5,0x00000049 # $5 = 73
- beq $4,$5,$L3
- lb $4,0($fp)
- li $5,0x0000004f # $5 = 79
- beq $4,$5,$L3
- lb $4,0($fp)
- li $5,0x00000055 # $5 = 85
- beq $4,$5,$L3
- lb $4,0($fp)
- li $5,0x00000059 # $5 = 89
- bne $4,$5,$L2
- $L3:
- li $2,0x00000001 # $2 = 1
- $L2:
- j $L1
- $L1:
- move $sp,$fp # sp not trusted here
- lw $fp,8($sp)
- addu $sp,$sp,16
- j $31
- .end is_vowel
- .loc 1 15
- .ent do_perm
- do_perm:
- .frame $fp,56,$31 # vars= 24, regs= 4/0, args= 16, extra= 0
- .mask 0xc0030000,-4
- .fmask 0x00000000,0
- subu $sp,$sp,56
- sw $31,52($sp)
- sw $fp,48($sp)
- sw $17,44($sp)
- sw $16,40($sp)
- move $fp,$sp
- sw $4,56($fp)
- sw $5,60($fp)
- sw $6,64($fp)
- sw $7,68($fp)
- sw $0,24($fp)
- lw $2,64($fp)
- li $3,0x00000001 # $3 = 1
- bne $2,$3,$L5
- lw $2,pindex
- move $3,$2
- sll $2,$3,2
- la $3,w
- addu $2,$2,$3
- lw $3,0($2)
- lb $4,0($3)
- jal is_vowel
- bne $2,$0,$L5
- lw $2,56($fp)
- move $3,$2
- sll $2,$3,2
- la $3,w
- addu $2,$2,$3
- lw $3,0($2)
- lb $4,0($3)
- jal is_vowel
- beq $2,$0,$L4
- $L5:
- lw $2,64($fp)
- slt $3,$2,2
- bne $3,$0,$L6
- lw $2,64($fp)
- move $3,$2
- sll $2,$3,2
- la $3,pindex-8
- addu $2,$2,$3
- lw $3,0($2)
- move $2,$3
- sll $3,$2,2
- la $4,w
- addu $2,$3,$4
- lw $3,0($2)
- lb $4,0($3)
- jal is_vowel
- move $16,$2
- lw $2,64($fp)
- move $3,$2
- sll $2,$3,2
- la $3,pindex-4
- addu $2,$2,$3
- lw $3,0($2)
- move $2,$3
- sll $3,$2,2
- la $4,w
- addu $2,$3,$4
- lw $3,0($2)
- lb $4,0($3)
- jal is_vowel
- move $17,$2
- lw $2,56($fp)
- move $3,$2
- sll $2,$3,2
- la $3,w
- addu $2,$2,$3
- lw $3,0($2)
- lb $4,0($3)
- jal is_vowel
- addu $3,$16,$17
- addu $2,$3,$2
- sw $2,24($fp)
- beq $2,$0,$L8
- lw $2,24($fp)
- li $3,0x00000003 # $3 = 3
- bne $2,$3,$L7
- $L8:
- j $L4
- $L7:
- $L6:
- lw $2,64($fp)
- addu $3,$2,1
- sw $3,64($fp)
- sll $3,$2,2
- la $4,pindex
- addu $2,$3,$4
- lw $3,56($fp)
- sw $3,0($2)
- lw $2,64($fp)
- slt $3,$2,6
- beq $3,$0,$L9
- lw $3,68($fp)
- subu $2,$3,1
- move $3,$2
- sw $3,68($fp)
- beq $3,$0,$L9
- sw $0,16($fp)
- $L10:
- lw $2,16($fp)
- slt $3,$2,6
- beq $3,$0,$L11
- $L13:
- lw $2,16($fp)
- move $3,$2
- sll $2,$3,2
- lw $3,60($fp)
- addu $2,$2,$3
- lw $3,0($2)
- bne $3,$0,$L14
- lw $2,16($fp)
- move $3,$2
- sll $2,$3,2
- lw $3,60($fp)
- addu $2,$2,$3
- li $3,0x00000001 # $3 = 1
- sw $3,0($2) # 0($2) = 1
- lw $4,16($fp)
- lw $5,60($fp)
- lw $6,64($fp)
- lw $7,68($fp)
- jal do_perm
- lw $2,16($fp)
- move $3,$2
- sll $2,$3,2
- lw $3,60($fp)
- addu $2,$2,$3
- sw $0,0($2)
- $L14:
- $L12:
- lw $3,16($fp)
- addu $2,$3,1
- move $3,$2
- sw $3,16($fp)
- j $L10
- $L11:
- j $L15
- $L9:
- sw $0,28($fp)
- sw $0,20($fp)
- $L16:
- lw $2,20($fp)
- lw $3,64($fp)
- slt $2,$2,$3
- beq $2,$0,$L17
- $L19:
- sw $0,32($fp)
- $L20:
- lw $2,20($fp)
- move $3,$2
- sll $2,$3,2
- la $3,pindex
- addu $2,$2,$3
- lw $3,0($2)
- move $2,$3
- sll $3,$2,2
- la $4,w
- addu $2,$3,$4
- lw $3,0($2)
- lw $4,32($fp)
- addu $2,$3,$4
- lb $4,0($2)
- jal isupper
- beq $2,$0,$L21
- $L22:
- lw $2,28($fp)
- addu $3,$2,1
- sw $3,28($fp)
- lw $3,20($fp)
- move $4,$3
- sll $3,$4,2
- la $4,pindex
- addu $3,$3,$4
- lw $4,0($3)
- move $3,$4
- sll $4,$3,2
- la $5,w
- addu $3,$4,$5
- lw $4,32($fp)
- addu $5,$4,1
- sw $5,32($fp)
- lw $5,0($3)
- addu $3,$4,$5
- lbu $4,0($3)
- sb $4,acron($2)
- j $L20
- $L21:
- $L18:
- lw $3,20($fp)
- addu $2,$3,1
- move $3,$2
- sw $3,20($fp)
- j $L16
- $L17:
- lw $2,28($fp)
- la $3,acron
- addu $2,$2,$3
- sb $0,0($2)
- la $4,$LC6
- la $5,acron
- jal printf
- sw $0,20($fp)
- $L23:
- lw $2,20($fp)
- lw $3,64($fp)
- slt $2,$2,$3
- beq $2,$0,$L24
- $L26:
- lw $2,20($fp)
- move $3,$2
- sll $2,$3,2
- la $3,pindex
- addu $2,$2,$3
- lw $3,0($2)
- move $2,$3
- sll $3,$2,2
- la $4,w
- addu $2,$3,$4
- la $4,$LC7
- lw $5,0($2)
- jal printf
- $L25:
- lw $3,20($fp)
- addu $2,$3,1
- move $3,$2
- sw $3,20($fp)
- j $L23
- $L24:
- la $4,$LC8
- jal printf
- $L15:
- $L4:
- move $sp,$fp # sp not trusted here
- lw $31,52($sp)
- lw $fp,48($sp)
- lw $17,44($sp)
- lw $16,40($sp)
- addu $sp,$sp,56
- j $31
- .end do_perm
- .loc 1 53
- .ent main
- main:
- .frame $fp,32,$31 # vars= 8, regs= 2/0, args= 16, extra= 0
- .mask 0xc0000000,-4
- .fmask 0x00000000,0
- subu $sp,$sp,32
- sw $31,28($sp)
- sw $fp,24($sp)
- move $fp,$sp
- jal __main
- li $2,0x00000004 # $2 = 4
- sw $2,20($fp) # 20($fp) = 4
- $L28:
- lw $2,20($fp)
- slt $3,$2,7
- beq $3,$0,$L29
- $L31:
- sw $0,16($fp)
- $L32:
- lw $2,16($fp)
- slt $3,$2,6
- beq $3,$0,$L33
- $L35:
- lw $2,16($fp)
- move $3,$2
- sll $2,$3,2
- la $3,done
- addu $2,$2,$3
- li $3,0x00000001 # $3 = 1
- sw $3,0($2) # 0($2) = 1
- lw $4,16($fp)
- la $5,done
- move $6,$0
- lw $7,20($fp)
- jal do_perm
- lw $2,16($fp)
- move $3,$2
- sll $2,$3,2
- la $3,done
- addu $2,$2,$3
- sw $0,0($2)
- $L34:
- lw $3,16($fp)
- addu $2,$3,1
- move $3,$2
- sw $3,16($fp)
- j $L32
- $L33:
- $L30:
- lw $3,20($fp)
- addu $2,$3,1
- move $3,$2
- sw $3,20($fp)
- j $L28
- $L29:
- $L27:
- move $sp,$fp # sp not trusted here
- lw $31,28($sp)
- lw $fp,24($sp)
- addu $sp,$sp,32
- j $31
- .end main
|