1# Test the mips16e instruction set. 2 3 .set mips16 4 .text 5stuff: 6 # explicit compact jumps 7 jalrc $2 8 jalrc $31,$2 9 jrc $31 10 jrc $2 11 12 # these jumps should all be converted to compact versions 13 jalr $2 14 jalr $31,$2 15 jal $2 16 jal $31,$2 17 jr $31 18 jr $2 19 j $31 20 j $2 21 22 # make sure unconditional jumps don't swap with compact jumps 23 # and vice versa. 24 jalr $2 25 .set noreorder 26 jal foo # mustn't swap with previous jalr 27 addu $4,$2,1 28 .set reorder 29 jalr $2 30 jal foo 31 32 move $4,$2 331: jal $2 # can't swap with move 34 35 move $4,$2 361: jr $2 # can't swap with move 37 38 move $4,$2 391: jr $31 # can't swap with move 40 41 seb $4 42 seh $4 43 zeb $4 44 zeh $4 45 46 save $31,8 47 save $31,128 48 save $31,$16,16 49 save $31,$16-$17,16 50 save $31,$17,120 51 save $31,$16,136 52 save $4,$31,$16-$17,16 53 save $4-$5,$31,$16,$18,$19,$20,16 54 save $4-$6,$31,$16-$20,16 55 save $4-$7,$31,$17,$18-$30,16 56 save $4-$5,$31,$16,$18,$19,$20,16,$6-$7 57 58 .p2align 4 59