17dd7cddfSDavid du ColombierTEXT main(SB), $0 27dd7cddfSDavid du Colombier 37dd7cddfSDavid du Colombier ADD R1,R4 47dd7cddfSDavid du Colombier ADD R1,R3,R4 57dd7cddfSDavid du Colombier ADD R1<<1,R3,R4 /* logical left */ 67dd7cddfSDavid du Colombier ADD R1>>1,R3,R4 /* logical right */ 77dd7cddfSDavid du Colombier ADD R1->1,R3,R4 /* arithmetic right */ 87dd7cddfSDavid du Colombier ADD R1@>1,R3,R4 /* rotate right */ 97dd7cddfSDavid du Colombier 107dd7cddfSDavid du Colombier ADD R1<<R2,R3,R4 117dd7cddfSDavid du Colombier ADD $10,R1,R4 127dd7cddfSDavid du Colombier 137dd7cddfSDavid du Colombierloop: 147dd7cddfSDavid du Colombier ADD.S.NE R1,R4 157dd7cddfSDavid du Colombier BNE loop 167dd7cddfSDavid du Colombier 17*59cc4ca5SDavid du Colombier MOVW R3, CPSR 18*59cc4ca5SDavid du Colombier MOVW R3, SPSR 19*59cc4ca5SDavid du Colombier MOVW R3, F10 20*59cc4ca5SDavid du Colombier MOVW R3, (R2) 21*59cc4ca5SDavid du Colombier MOVW R3, 10(R2) 22*59cc4ca5SDavid du Colombier MOVW R3, name(SB) 23*59cc4ca5SDavid du Colombier MOVW R3, name(SB)(R2) 24*59cc4ca5SDavid du Colombier MOVW R3, name(SB)(R2) 25*59cc4ca5SDavid du Colombier MOVW R3, (R2) 26*59cc4ca5SDavid du Colombier MOVW R3, R1<<2(R2) 27*59cc4ca5SDavid du Colombier 287dd7cddfSDavid du Colombier MRC.EQ 3,9,R3,C5,C6,2 297dd7cddfSDavid du Colombier MRC 3,9,R3,C5,C6,2 307dd7cddfSDavid du Colombier 317dd7cddfSDavid du Colombier MOVM.IA [R0,SP,R4], (R2) 327dd7cddfSDavid du Colombier MOVM.DB.W (R0), [R6-R11] 337dd7cddfSDavid du Colombier MOVM.DB.W (R0), [R0-R11] 34*59cc4ca5SDavid du Colombier MOVM.S (R0), [R0-R11] // .S is supervisor space 35*59cc4ca5SDavid du Colombier 36*59cc4ca5SDavid du Colombier CMN $4096,R0, 377dd7cddfSDavid du Colombier 387dd7cddfSDavid du Colombier RET 39