1TEXT setjmp(SB), 1, $0 2 3 MOVW R1, (R7) 4 MOVW R15, 4(R7) 5 MOVW $0, R7 6 RETURN 7 8TEXT sigsetjmp(SB), 1, $0 9 10 MOVW savemask+4(FP), R8 11 MOVW R8, 0(R7) 12 MOVW $_psigblocked(SB), R8 13 MOVW R8, 4(R7) 14 MOVW R1, 8(R7) 15 MOVW R15, 12(R7) 16 MOVW $0, R7 17 RETURN 18 19TEXT longjmp(SB), 1, $0 20 21 MOVW R7, R8 22 MOVW r+4(FP), R7 23 CMP R7, R0 24 BNE ok /* ansi: "longjmp(0) => longjmp(1)" */ 25 MOVW $1, R7 /* bless their pointed heads */ 26ok: MOVW (R8), R1 27 MOVW 4(R8), R15 28 RETURN 29 30/* 31 * trampoline functions because the kernel smashes r7 32 * in the uregs given to notejmp 33 */ 34TEXT __noterestore(SB), 1, $-4 35 MOVW R8, R7 36 JMP (R9) 37