.set noreorder # don't insert nops after branches .set gp=64 .include "macros.inc" .section .text, "ax" # This file is handwritten #void osMapTLB(s32 index, OSPageMask pm, void *vaddr, u32 evenpaddr, u32 oddpaddr, s32 asid); glabel osMapTLB mfc0 $t0, $10 mtc0 $a0, $0 mtc0 $a1, $5 lw $t1, 0x14($sp) #asid beq $t1, -1, .L803214D8 li $t4, 1 li $t2, 30 b .L803214DC or $a2, $a2, $t1 #vaddr .L803214D8: li $t2, 31 .L803214DC: mtc0 $a2, $10 #vaddr beq $a3, -1, .L80321500 #even paddr nop srl $t3, $a3, 6 #evenpaddr or $t3, $t3, $t2 mtc0 $t3, $2 b .L80321504 nop .L80321500: mtc0 $t4, $2 .L80321504: lw $t3, 0x10($sp) #oddpaddr beq $t3, -1, .L80321528 nop srl $t3, $t3, 6 or $t3, $t3, $t2 mtc0 $t3, $3 b .L80321540 nop .L80321528: mtc0 $t4, $3 bne $a3, -1, .L80321540 #evenpaddr nop lui $t3, 0x8000 mtc0 $t3, $10 .L80321540: nop tlbwi nop nop nop nop mtc0 $t0, $10 jr $ra nop #file gets padded but nop nop nop