# # simple example of a few instructions. # evaluates for ( r13=r10 r13<8, r13++) { r10 <- r10 - r9 - r8*2 } # r13 = $t5, r10 = $t2, r9 = $t1, r8 = $t0 # We assume r11 has 0x1 in it, r12 has 8 in it. # r11 = $t3, r12=$t4 .text main: or $t5, $0, $t2 test: slt $t6, $t5, $t4 beq $t6, $0, skip sub $t2, $t2, $t1 sllv $t4, $t1, $t3 sub $t2, $t2, $t4 add $t5, $t5, $t3 j test skip: # produces # 00000000 0x000a6825: or $t5, $0, $t2 # 00000004 0x01ac702a: slt $t6, $t5, $t4 # 00000008 0x100e0005: beq $t6, $0, 5 # 0000000c 0x01495022: sub $t2, $t2, $t1 # 00000010 0x012b6004: sllv $t4, $t1, $t3 # 00000014 0x014c5022: sub $t2, $t2, $t4 # 00000018 0x01ab6820: add $t5, $t5, $t3 # 0000001c 0x08000001: j 0x1