9 .global flush_inval_caches
13 @ translation cache buffer
16 .size tcache, TCACHE_SIZE
26 mov r2, #0x0 @ must be 0
31 @ SSP_GR0, SSP_X, SSP_Y, SSP_A,
32 @ SSP_ST, SSP_STACK, SSP_PC, SSP_P,
33 @ SSP_PM0, SSP_PM1, SSP_PM2, SSP_XST,
34 @ SSP_PM4, SSP_gr13, SSP_PMC, SSP_AL
39 @ r6: STACK and emu flags
53 ldmia r2, {r3,r4,r5,r6,r8}
56 orr r4, r3, r4, lsr #16 @ XXYY
58 orr r6, r6, r8, lsr #16 @ flags + STACK
59 ldr r8, [r7, #0x440] @ r0-r2
60 ldr r9, [r7, #0x444] @ r4-r6
61 ldr r10,[r7, #(0x400+7*4)] @ P
66 str r10,[r7, #(0x400+7*4)] @ P
67 str r8, [r7, #0x440] @ r0-r2
68 str r9, [r7, #0x444] @ r4-r6
70 and r9, r9, #(7<<16) @ STACK
71 bic r6, r6, #0xff @ ST
72 mov r3, r4, lsl #16 @ Y
74 mov r2, r2, lsl #16 @ X
77 stmia r8, {r2,r3,r5,r6,r9}