summaryrefslogtreecommitdiff
path: root/libc/sysdeps/linux/i386/setjmp.S
AgeCommit message (Collapse)Author
2012-06-15make use of jmpbuf-offsets.h and jmpbuf-unwind.hPeter S. Mazinger
Signed-off-by: Peter S. Mazinger <ps.m@gmx.net> Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
2007-07-29Remove stray code alignment (.align 16 and .align 4 directives)Denis Vlasenko
from i386 and x86_64.
2005-07-06syntax touchups as suggested by Peter S. MazingerMike Frysinger
2003-05-30In a number of places we erroneously used tests such as '#ifdef PIC' when weEric Andersen
should instead have been testing for '#ifdef __PIC__'. This resulted in NON-PIC code getting mixed into the shared library. Oops!!! -Erik
2002-01-30Fixup setjmp implementation so it actaully works as expectedEric Andersen
-Erik
2001-10-05Wohoo! David McCullough found the bug! His comments follow:Eric Andersen
I had a look at it and you won't believe it was always broken. I'll try and explain it, let me know if it doesn't make sense. * ash calls setjmp, which messes with the stack to look like it has two args instead of one and then jmps (actually falls) into sigsetjmp. BUG * sigsetjmp then saves the registers and "jumps" to __sigset_save, a C function. BUG1 - because the caller pops its args off the stack, a program that changes it's number of args is broken because the caller will not pop the correct number of args. I think that jumping from the sigsetjmp asm to the 'C' code is unsafe but I can't think of an example. Anyway, I have attached what I think is a working fix. The reason this worked without -fomit-frame-pointer is that the _sigset_save 'C' code would restore the stack pointer from %ebp (the frame pointer) and because none of the asm had moded it, when we returned from __sigset_save the stack was back to it's correct position for 1 argument despite our best attempts to stuff it up ;-)
2001-09-27Update to accomodate the header file changesEric Andersen
2001-03-05Patch from Michael Shmulevich (michaels@jungo.com) -- functions were notManuel Novoa III
declared type function.
2000-10-30Fix symbol problem. Add in arm support -- might even work...Eric Andersen
2000-10-30Remove need for the bloated sysdep.h -- we don't need it, so axe it.Eric Andersen
2000-07-06Some more major updates to further superate ucLibc from the kernelEric Andersen
headers (the way it has been done in GNU libc). -Erik
2000-07-06Hacked things so longjmp now works.Eric Andersen
-Erik
2000-07-05Completely rearchitected the sysdeps directory.Eric Andersen
-Erik