Mercurial > ecos
diff packages/hal/i386/pc/current/src/plf_misc.c @ 143:6b5f480c6929 ecos-sw-2000-12-08
Merge from eCos master repository on 2000-12-08-02:09:36-GMT
| author | jlarmour |
|---|---|
| date | Fri, 08 Dec 2000 03:30:06 +0000 |
| parents | 435cced73e2f |
| children | ac086aa3217e |
line wrap: on
line diff
--- a/packages/hal/i386/pc/current/src/plf_misc.c +++ b/packages/hal/i386/pc/current/src/plf_misc.c @@ -107,6 +107,10 @@ void hal_pc_fpe_dsr(CYG_ADDRWORD vector, if (hal_pc_fpe_owner) { /* Then save his state at the bottom of his stack. */ stack = cyg_thread_get_stack_base(hal_pc_fpe_owner) ; +#ifdef CYGNUM_KERNEL_THREADS_STACK_CHECK_DATA_SIZE + // It might well be zero anyway + stack += CYGNUM_KERNEL_THREADS_STACK_CHECK_DATA_SIZE; +#endif p = (cyg_uint32*) stack ; stack = (cyg_addrword_t) &(p[1]); asm("movl %0, %%eax @@ -118,6 +122,9 @@ fsave (%%eax)" } hal_pc_fpe_owner = me ; stack = cyg_thread_get_stack_base(hal_pc_fpe_owner) ; +#ifdef CYGNUM_KERNEL_THREADS_STACK_CHECK_DATA_SIZE + stack += CYGNUM_KERNEL_THREADS_STACK_CHECK_DATA_SIZE; +#endif p = (cyg_uint32*) stack ; if (p[0] == 0xCAFEBABE) {
