.set reorder .globl x .data .align 2 x: .word 0x1 .byte 0x2 .space 3 .byte 0x0 .byte 0x34 .space 2 .byte 0xa .byte 0x6 .space 2 .globl i .sdata .align 2 i: .word 0x10 .globl y .sdata .align 2 y: .byte 0xe0 .space 3 .byte 0x0 .byte 0x0 .byte 0x0 .byte 0x9 .globl main .text .text .align 2 .ent main main: .frame $sp,48,$31 .set noreorder .cpload $25 .set reorder addu $sp,$sp,-48 .mask 0x82000000,-16 .cprestore 28 sw $31,32($sp) la $4,L.4 lw $5,x lb $6,x+4 lw $24,x+8 sra $7,$24,20 lw $24,x+8 sll $24,$24,12 sra $24,$24,28 sw $24,16($sp) lw $24,x+12 sll $24,$24,4 sra $24,$24,29 sw $24,20($sp) lb $24,x+13 sw $24,24($sp) jal printf la $4,L.10 lw $24,y srl $15,$24,30 and $5,$15,3 srl $24,$24,26 and $6,$24,15 lw $7,y+4 jal printf lw $24,x+8 and $24,$24,0xfff0ffff lw $15,i sll $15,$15,28 sra $15,$15,28 sll $15,$15,16 and $15,$15,0xf0000 or $24,$24,$15 sw $24,x+8 lw $24,x+12 and $24,$24,0xf1ffffff sw $24,x+12 la $4,L.4 lw $5,x lb $6,x+4 lw $24,x+8 sra $7,$24,20 lw $24,x+8 sll $24,$24,12 sra $24,$24,28 sw $24,16($sp) lw $24,x+12 sll $24,$24,4 sra $24,$24,29 sw $24,20($sp) lb $24,x+13 sw $24,24($sp) jal printf lw $24,y and $24,$24,0x3fffffff or $24,$24,0x80000000 sw $24,y lw $24,i sw $24,y+4 la $4,L.10 lw $24,y srl $15,$24,30 and $5,$15,3 srl $24,$24,26 and $6,$24,15 lw $7,y+4 jal printf la $4,x jal f2 move $2,$0 L.3: lw $25,28($sp) lw $31,32($sp) addu $sp,$sp,48 j $31 .end main .globl f1 .text .align 2 .ent f1 f1: .frame $sp,32,$31 .set noreorder .cpload $25 .set reorder addu $sp,$sp,-32 .mask 0xc2000000,-8 .cprestore 16 sw $30,20($sp) sw $31,24($sp) move $30,$4 lw $24,($30) and $24,$24,0xc3ffffff sw $24,($30) lw $24,($30) and $24,$24,0x3fffffff and $15,$0,3 sll $15,$15,30 and $15,$15,0xc0000000 or $24,$24,$15 sw $24,($30) lw $24,($30) and $24,$24,0x3c000000 beq $24,$0,L.22 la $4,L.24 jal printf L.22: lw $24,($30) or $24,$24,0xc0000000 sw $24,($30) lw $24,($30) or $24,$24,0x3c000000 sw $24,($30) la $4,L.25 lw $24,($30) srl $15,$24,30 and $5,$15,3 srl $24,$24,26 and $6,$24,15 jal printf move $2,$0 L.21: lw $25,16($sp) lw $30,20($sp) lw $31,24($sp) addu $sp,$sp,32 j $31 .end f1 .globl f2 .text .align 2 .ent f2 f2: .frame $sp,32,$31 .set noreorder .cpload $25 .set reorder addu $sp,$sp,-32 .mask 0xc2800000,-4 sw $23,16($sp) .cprestore 20 sw $30,24($sp) sw $31,28($sp) move $30,$4 lw $24,i bne $24,$0,L.28 la $23,1 b L.29 L.28: move $23,$0 L.29: lw $24,($30) and $24,$24,0x3fffffff move $15,$23 and $15,$15,3 sll $15,$15,30 and $15,$15,0xc0000000 or $24,$24,$15 sw $24,($30) move $4,$30 jal f1 lw $24,($30) and $24,$24,0xc3ffffff move $15,$0 and $15,$15,15 sll $15,$15,26 and $15,$15,0x3c000000 or $24,$24,$15 sw $24,($30) move $2,$0 L.26: lw $23,16($sp) lw $25,20($sp) lw $30,24($sp) lw $31,28($sp) addu $sp,$sp,32 j $31 .end f2 .rdata .align 0 L.25: .byte 112 .byte 45 .byte 62 .byte 97 .byte 32 .byte 61 .byte 32 .byte 48 .byte 120 .byte 37 .byte 120 .byte 44 .byte 32 .byte 112 .byte 45 .byte 62 .byte 98 .byte 32 .byte 61 .byte 32 .byte 48 .byte 120 .byte 37 .byte 120 .byte 10 .byte 0 .align 0 L.24: .byte 112 .byte 45 .byte 62 .byte 98 .byte 32 .byte 33 .byte 61 .byte 32 .byte 48 .byte 33 .byte 10 .byte 0 .align 0 L.10: .byte 121 .byte 32 .byte 61 .byte 32 .byte 37 .byte 100 .byte 32 .byte 37 .byte 100 .byte 32 .byte 37 .byte 100 .byte 10 .byte 0 .align 0 L.4: .byte 120 .byte 32 .byte 61 .byte 32 .byte 37 .byte 100 .byte 32 .byte 37 .byte 100 .byte 32 .byte 37 .byte 100 .byte 32 .byte 37 .byte 100 .byte 32 .byte 37 .byte 100 .byte 32 .byte 37 .byte 100 .byte 10 .byte 0