Initialize the (i386) frame pointer when setting up a thread

context.

Submitted by:	Marc Olzheim <marcolz@stack.nl>
Tested by:	Marc Olzheim <marcolz@stack.nl>
This commit is contained in:
Daniel Eischen 2004-01-22 19:15:08 +00:00
parent cc7282659a
commit 39edba076e

View File

@ -86,7 +86,10 @@
fdata = (char *) (ucp)->uc_mcontext.mc_fpstate; \
__asm__("frstor %0": :"m"(*fdata)); \
} while (0)
#define SET_RETURN_ADDR_JB(jb, ra) (jb)[0]._jb[0] = (int)(ra)
#define SET_RETURN_ADDR_JB(jb, ra) do { \
(jb)[0]._jb[0] = (int)(ra); \
(jb)[0]._jb[3] = 0; \
} while (0)
#elif defined(__amd64__)
#define GET_STACK_JB(jb) ((unsigned long)((jb)[0]._jb[2]))
#define GET_STACK_SJB(sjb) ((unsigned long)((sjb)[0]._sjb[2]))