1TEXT setjmp(SB), 1, $-4 2 MOVW LR, R4 3 MOVW R1, (R3) 4 MOVW R4, 4(R3) 5 MOVW $0, R3 6 RETURN 7 8TEXT longjmp(SB), 1, $-4 9 MOVW R3, R4 10 MOVW r+4(FP), R3 11 CMP R3, $0 12 BNE ok /* ansi: "longjmp(0) => longjmp(1)" */ 13 MOVW $1, R3 /* bless their pointed heads */ 14ok: MOVW (R4), R1 15 MOVW 4(R4), R4 16 MOVW R4, LR 17 BR (LR) 18 19/* 20 * trampoline functions because the kernel smashes r1 21 * in the uregs given to notejmp 22 */ 23TEXT __noterestore(SB), 1, $-4 24 MOVW R4, R3 25 MOVW R5, LR 26 BR (LR) 27