From 4d4920844938ec650a9a1f6d482bd1e4d28ecfad Mon Sep 17 00:00:00 2001 From: Tom-on64 Date: Wed, 23 Oct 2024 08:01:00 +0200 Subject: [PATCH] fixed setjmp --- libc/setjmp/setjmp.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/libc/setjmp/setjmp.c b/libc/setjmp/setjmp.c index 4c58aa0..54fa1e8 100644 --- a/libc/setjmp/setjmp.c +++ b/libc/setjmp/setjmp.c @@ -5,6 +5,7 @@ int setjmp(jmp_buf env) { "mov %%ebp, %0\n" // Save BP "mov %%esp, %1\n" // Save SP "call 1f\n" // Call label to push PC to the stack + "1:\n" // Label "pop %2\n" // Save PC : "=m"(env._bp), "=m"(env._sp), "=m"(env._pc) // Locations ); @@ -12,7 +13,7 @@ int setjmp(jmp_buf env) { } void longjmp(jmp_buf env, int value) { - if (val == 0) return; + if (value == 0) return; __asm__ volatile ( "mov %0, %%ebp\n" // Restore BP