--- - branch: MAIN date: Thu Apr 4 00:46:42 UTC 2024 files: - new: '1.18' old: '1.17' path: src/lib/libc/arch/i386/gen/setjmp.S pathrev: src/lib/libc/arch/i386/gen/setjmp.S@1.18 type: modified - new: '1.19' old: '1.18' path: src/lib/libc/arch/i386/gen/sigsetjmp.S pathrev: src/lib/libc/arch/i386/gen/sigsetjmp.S@1.19 type: modified - new: '1.9' old: '1.8' path: src/tests/lib/libc/setjmp/t_sigstack.c pathrev: src/tests/lib/libc/setjmp/t_sigstack.c@1.9 type: modified id: 20240404T004642Z.c7a9473dc42ed01b1b05958050daca52d17e1337 log: | i386 longjmp: Restore stack first, then signal mask. Otherwise, a pending signal may be delivered on the wrong stack when we restore the signal mask. While here: - Tidy the code a little bit. - Sprinkle comments to explain what's going on. - Use forward branches for statically predicted not-taken. => val==0 is unlikely in longjmp PR lib/57946 module: src subject: 'CVS commit: src' unixtime: '1712191602' user: riastradh