.set mips16
.set noreorder
foo:
extend 0x123 # ADDIUSP
addiu $16, $29, 0
extend 0x123
addiu $16, $29, 128
extend 0x123
addiu $16, $29, 256
extend 0x123
addiu $16, $29, 384
extend 0x123
addiu $16, $29, 512
extend 0x123
addiu $16, $29, 640
extend 0x123
addiu $16, $29, 768
extend 0x123
addiu $16, $29, 896
extend 0x123 # ADDIUPC
addiu $16, $pc, 0
extend 0x123
addiu $16, $pc, 128
extend 0x123
addiu $16, $pc, 256
extend 0x123
addiu $16, $pc, 384
extend 0x123
addiu $16, $pc, 512
extend 0x123
addiu $16, $pc, 640
extend 0x123
addiu $16, $pc, 768
extend 0x123
addiu $16, $pc, 896
extend 0x123 # B
b . + 2
extend 0x123
b . + 66
extend 0x123
b . + 130
extend 0x123
b . + 194
extend 0x123
b . + 258
extend 0x123
b . + 322
extend 0x123
b . + 386
extend 0x123
b . + 450
extend 0x123 # BEQZ
beqz $16, . + 2
extend 0x123
beqz $16, . + 66
extend 0x123
beqz $16, . + 130
extend 0x123
beqz $16, . + 194
extend 0x123
beqz $16, . - 254
extend 0x123
beqz $16, . - 190
extend 0x123
beqz $16, . - 126
extend 0x123
beqz $16, . - 62
extend 0x123 # BNEZ
bnez $16, . + 2
extend 0x123
bnez $16, . + 66
extend 0x123
bnez $16, . + 130
extend 0x123
bnez $16, . + 194
extend 0x123
bnez $16, . - 254
extend 0x123
bnez $16, . - 190
extend 0x123
bnez $16, . - 126
extend 0x123
bnez $16, . - 62
extend 0x123 # SHIFT # SLL
sll $16, $16, 8
extend 0x123
sll $16, $16, 1
extend 0x123
sll $16, $16, 2
extend 0x123
sll $16, $16, 3
extend 0x123
sll $16, $16, 4
extend 0x123
sll $16, $16, 5
extend 0x123
sll $16, $16, 6
extend 0x123
sll $16, $16, 7
extend 0x123 # DSLL
dsll $16, $16, 8
extend 0x123
dsll $16, $16, 1
extend 0x123
dsll $16, $16, 2
extend 0x123
dsll $16, $16, 3
extend 0x123
dsll $16, $16, 4
extend 0x123
dsll $16, $16, 5
extend 0x123
dsll $16, $16, 6
extend 0x123
dsll $16, $16, 7
extend 0x123 # SRL
srl $16, $16, 8
extend 0x123
srl $16, $16, 1
extend 0x123
srl $16, $16, 2
extend 0x123
srl $16, $16, 3
extend 0x123
srl $16, $16, 4
extend 0x123
srl $16, $16, 5
extend 0x123
srl $16, $16, 6
extend 0x123
srl $16, $16, 7
extend 0x123 # SRA
sra $16, $16, 8
extend 0x123
sra $16, $16, 1
extend 0x123
sra $16, $16, 2
extend 0x123
sra $16, $16, 3
extend 0x123
sra $16, $16, 4
extend 0x123
sra $16, $16, 5
extend 0x123
sra $16, $16, 6
extend 0x123
sra $16, $16, 7
extend 0x123 # LD
ld $16, 0($16)
extend 0x123 # RRI-A # ADDIU
addiu $16, $16, 0
extend 0x123 # DADDIU
daddiu $16, $16, 0
extend 0x123 # ADDIU8
addiu $16, 0
extend 0x123
addiu $16, 32
extend 0x123
addiu $16, 64
extend 0x123
addiu $16, 96
extend 0x123
addiu $16, -128
extend 0x123
addiu $16, -96
extend 0x123
addiu $16, -64
extend 0x123
addiu $16, -32
extend 0x123 # SLTI
slti $16, 0
extend 0x123
slti $16, 32
extend 0x123
slti $16, 64
extend 0x123
slti $16, 96
extend 0x123
slti $16, 128
extend 0x123
slti $16, 160
extend 0x123
slti $16, 192
extend 0x123
slti $16, 224
extend 0x123 # SLTIU
sltiu $16, 0
extend 0x123
sltiu $16, 32
extend 0x123
sltiu $16, 64
extend 0x123
sltiu $16, 96
extend 0x123
sltiu $16, 128
extend 0x123
sltiu $16, 160
extend 0x123
sltiu $16, 192
extend 0x123
sltiu $16, 224
extend 0x123 # I8 # BTEQZ
bteqz . + 2
extend 0x123
bteqz . + 66
extend 0x123
bteqz . + 130
extend 0x123
bteqz . + 194
extend 0x123
bteqz . - 254
extend 0x123
bteqz . - 190
extend 0x123
bteqz . - 126
extend 0x123
bteqz . - 62
extend 0x123 # BTNEZ
btnez . + 2
extend 0x123
btnez . + 66
extend 0x123
btnez . + 130
extend 0x123
btnez . + 194
extend 0x123
btnez . - 254
extend 0x123
btnez . - 190
extend 0x123
btnez . - 126
extend 0x123
btnez . - 62
extend 0x123 # SWRASP
sw $31, 0($29)
extend 0x123
sw $31, 128($29)
extend 0x123
sw $31, 256($29)
extend 0x123
sw $31, 512($29)
extend 0x123
sw $31, 640($29)
extend 0x123
sw $31, 768($29)
extend 0x123
sw $31, 896($29)
extend 0x123
sw $31, 0($29)
extend 0x123 # ADJSP
addiu $29, 0
extend 0x123
addiu $29, 256
extend 0x123
addiu $29, 512
extend 0x123
addiu $29, 768
extend 0x123
addiu $29, -1024
extend 0x123
addiu $29, -768
extend 0x123
addiu $29, -512
extend 0x123
addiu $29, -256
extend 0x123 # SVRS # RESTORE
restore 128
extend 0x123 # SAVE
save 128
extend 0x123 # MOV32R
move $0, $16
extend 0x123
move $0, $17
extend 0x123 # MOVR32
move $16, $0
extend 0x123 # LI
li $16, 0
extend 0x123
li $16, 32
extend 0x123
li $16, 64
extend 0x123
li $16, 96
extend 0x123
li $16, 128
extend 0x123
li $16, 160
extend 0x123
li $16, 192
extend 0x123
li $16, 224
extend 0x123 # CMPI
cmpi $16, 0
extend 0x123
cmpi $16, 32
extend 0x123
cmpi $16, 64
extend 0x123
cmpi $16, 96
extend 0x123
cmpi $16, 128
extend 0x123
cmpi $16, 160
extend 0x123
cmpi $16, 192
extend 0x123
cmpi $16, 224
extend 0x123 # SD
sd $16, 0($16)
extend 0x123 # LB
lb $16, 0($16)
extend 0x123 # LH
lh $16, 0($16)
extend 0x123 # LWSP
lw $16, 0($29)
extend 0x123
lw $16, 128($29)
extend 0x123
lw $16, 256($29)
extend 0x123
lw $16, 384($29)
extend 0x123
lw $16, 512($29)
extend 0x123
lw $16, 640($29)
extend 0x123
lw $16, 768($29)
extend 0x123
lw $16, 896($29)
extend 0x123 # LW
lw $16, 0($16)
extend 0x123 # LBU
lbu $16, 0($16)
extend 0x123 # LHU
lhu $16, 0($16)
extend 0x123 # LWPC
lw $16, 0($pc)
extend 0x123
lw $16, 128($pc)
extend 0x123
lw $16, 256($pc)
extend 0x123
lw $16, 384($pc)
extend 0x123
lw $16, 512($pc)
extend 0x123
lw $16, 640($pc)
extend 0x123
lw $16, 768($pc)
extend 0x123
lw $16, 896($pc)
extend 0x123 # LWU
lwu $16, 0($16)
extend 0x123 # SB
sb $16, 0($16)
extend 0x123 # SH
sh $16, 0($16)
extend 0x123 # SWSP
sw $16, 0($29)
extend 0x123
sw $16, 128($29)
extend 0x123
sw $16, 256($29)
extend 0x123
sw $16, 384($29)
extend 0x123
sw $16, 512($29)
extend 0x123
sw $16, 640($29)
extend 0x123
sw $16, 768($29)
extend 0x123
sw $16, 896($29)
extend 0x123 # SW
sw $16, 0($16)
extend 0x123 # RRR # DADDU
daddu $16, $16, $16
extend 0x123 # ADDU
addu $16, $16, $16
extend 0x123 # DSUBU
dsubu $16, $16, $16
extend 0x123 # SUBU
subu $16, $16, $16
extend 0x123 # RR # J(AL)R(C) # JR rx
jr $16
extend 0x123 # JR ra
jr $31
extend 0x123 # JALR
jalr $16
extend 0x123 # JRC rx
jrc $16
extend 0x123 # JRC ra
jrc $31
extend 0x123 # JALRC
jalrc $16
extend 0x123 # SDBBP
sdbbp 0
extend 0x123 # SLT
slt $16, $16
extend 0x123 # SLTU
sltu $16, $16
extend 0x123 # SLLV
sllv $16, $16
extend 0x123 # BREAK
break 0
extend 0x123 # SRLV
srlv $16, $16
extend 0x123 # SRAV
srav $16, $16
extend 0x123 # DSRL
dsrl $16, 8
extend 0x123
dsrl $16, 1
extend 0x123
dsrl $16, 2
extend 0x123
dsrl $16, 3
extend 0x123
dsrl $16, 4
extend 0x123
dsrl $16, 5
extend 0x123
dsrl $16, 6
extend 0x123
dsrl $16, 7
extend 0x123 # ENTRY/EXIT
entry
extend 0x123
entry $31
extend 0x123
exit $f0
extend 0x123
exit $f0-$f1
extend 0x123
exit
extend 0x123 # CMP
cmp $16, $16
extend 0x123 # NEG
neg $16, $16
extend 0x123 # AND
and $16, $16
extend 0x123 # OR
or $16, $16
extend 0x123 # XOR
xor $16, $16
extend 0x123 # NOT
not $16, $16
extend 0x123 # MFHI
mfhi $16
extend 0x123 # CNVT # ZEB
zeb $16
extend 0x123 # ZEH
zeh $16
extend 0x123 # ZEW
zew $16
extend 0x123 # SEB
seb $16
extend 0x123 # SEH
seh $16
extend 0x123 # SEW
sew $16
extend 0x123 # MFLO
mflo $16
extend 0x123 # DSRA
dsra $16, 8
extend 0x123
dsra $16, 1
extend 0x123
dsra $16, 2
extend 0x123
dsra $16, 3
extend 0x123
dsra $16, 4
extend 0x123
dsra $16, 5
extend 0x123
dsra $16, 6
extend 0x123
dsra $16, 7
extend 0x123 # DSLLV
dsllv $16, $16
extend 0x123 # DSRLV
dsrlv $16, $16
extend 0x123 # DSRAV
dsrav $16, $16
extend 0x123 # MULT
mult $16, $16
extend 0x123 # MULTU
multu $16, $16
extend 0x123 # DIV
div $0, $16, $16
extend 0x123 # DIVU
divu $0, $16, $16
extend 0x123 # DMULT
dmult $16, $16
extend 0x123 # DMULTU
dmultu $16, $16
extend 0x123 # DDIV
ddiv $0, $16, $16
extend 0x123 # DDIVU
ddivu $0, $16, $16
extend 0x123 # EXTEND
extend 0
extend 0x123 # I64 # LDSP
ld $16, 0($29)
extend 0x123 # SDSP
sd $16, 0($29)
extend 0x123 # SDRASP
sd $31, 0($29)
extend 0x123
sd $31, 256($29)
extend 0x123
sd $31, 512($29)
extend 0x123
sd $31, 768($29)
extend 0x123
sd $31, 1024($29)
extend 0x123
sd $31, 1280($29)
extend 0x123
sd $31, 1536($29)
extend 0x123
sd $31, 1792($29)
extend 0x123 # DADJSP
daddiu $29, 0
extend 0x123
daddiu $29, 256
extend 0x123
daddiu $29, 512
extend 0x123
daddiu $29, 768
extend 0x123
daddiu $29, -1024
extend 0x123
daddiu $29, -768
extend 0x123
daddiu $29, -512
extend 0x123
daddiu $29, -256
extend 0x123 # LDPC
ld $16, 0($pc)
extend 0x123 # DADDIU5
daddiu $16, 0
extend 0x123 # DADDIUPC
daddiu $16, $pc, 0
extend 0x123 # DADDIUSP
daddiu $16, $sp, 0
# Force some (non-delay-slot) zero bytes, to make 'objdump' print ...
.align 4, 0
.space 16