From d5becaf83bcc6ba2ddc5c0a19bb5f6b6e585020d Mon Sep 17 00:00:00 2001 From: Ingo Weinhold Date: Sat, 10 May 2008 16:26:05 +0000 Subject: [PATCH] Test for setjmp() that demonstrates why it isn't a good idea to manipulate the stack pointer as we do. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25426 a95241bf-73f2-0310-859d-f6bbb57e9c96 --- src/tests/system/libroot/posix/Jamfile | 4 ++++ src/tests/system/libroot/posix/setjmp_test2.S | 12 ++++++++++++ 2 files changed, 16 insertions(+) create mode 100644 src/tests/system/libroot/posix/setjmp_test2.S diff --git a/src/tests/system/libroot/posix/Jamfile b/src/tests/system/libroot/posix/Jamfile index c495e8a6de..d201b0498d 100644 --- a/src/tests/system/libroot/posix/Jamfile +++ b/src/tests/system/libroot/posix/Jamfile @@ -20,6 +20,10 @@ SimpleTest setjmp_test : setjmp_test.c ; +SimpleTest setjmp_test2 + : setjmp_test2.S +; + SimpleTest signal_test : signal_test.cpp ; diff --git a/src/tests/system/libroot/posix/setjmp_test2.S b/src/tests/system/libroot/posix/setjmp_test2.S new file mode 100644 index 0000000000..2538c7cae6 --- /dev/null +++ b/src/tests/system/libroot/posix/setjmp_test2.S @@ -0,0 +1,12 @@ +#define FUNCTION(x) .global x; .type x,@function; x + +FUNCTION(main): + mov $jmpBuffer, %eax + push %eax + call setjmp + add $4, %esp + + mov $0, %eax + ret + +.comm jmpBuffer, 1024, 32