ldr r1, [sp,#4*10]
tst r1, r1
mcrne p15, 0, r1, c2, c0, 0 @ Set TTBR0 to r0
- mov r1, #0
- mcrne p15, 0, r1, c8, c7, 0 @ TLBIALL - Invalidate all
+# mov r1, #1
+ mcrne p15, 0, r1, c8, c7, 0 @ TLBIALL - Invalid user space
- @ Restore SP
+ @ Restore state
mov sp, r0
-
bx r2
.return:
cps #16
mov sp, r1
mov pc, r0
+.globl User_Signal_Kill
+@ R0: Signal
+User_Signal_Kill:
+ mov r1, r0
+ and r1, #0x00FF
+ orr r1, #0x0200
+ mov r0, #0
+ swi 0
+ b .
.section .rodata
csProc_CloneInt_NewTaskMessage:
.asciz "New task PC=%p, R4=%p, sp=%p"
csProc_CloneInt_OldTaskMessage:
.asciz "Parent task PC=%p, R4=%p, SP=%p"
+
+@ vim: ft=armv7