1 # Instructions including a register list (opcode is represented as a mask). 2 .data 3 foodata: .word 42 4 .text 5 footext: 6 7 .global push 8 push: 9 push ra, {r3, r4} 10 push r2 11 12 .global pushx 13 pushx: 14 pushx sp, {r0, r1, r2, r3, r4, r5, r6, r7} 15 pushx r6, {hi, lo} 16 17 .global pop 18 pop: 19 pop r0, {r10} 20 pop r2 21 22 .global popx 23 popx: 24 popx sp, {r0, r1, r3, r4, r5, r6, r7} 25 popx r7, {lo, hi} 26 27 .global popret 28 popret: 29 popret r13, {ra, r1} 30 popret ra 31 32 .global loadm 33 loadm: 34 loadm r0, {r1, r6} 35 36 .global loadma 37 loadma: 38 loadma r13, {u12, u4, u2} 39 40 .global storm 41 storm: 42 storm r15, {ra} 43 44 .global storma 45 storma: 46 storma r3, {u0, u2} 47 48