diff options
author | neal <neal> | 2008-06-18 19:59:56 +0000 |
---|---|---|
committer | neal <neal> | 2008-06-18 19:59:56 +0000 |
commit | 5c281f4aa051bc8c96479fcfe41ca23e23ba788c (patch) | |
tree | b11161799217bf3eeac9d52ac86b1e9cb5a1df5d /hurd | |
parent | 3e9b30afc08a12f1f9f834e63578252b57bf9bfa (diff) |
hurd/
2008-06-18 Neal H. Walfield <neal@gnu.org>
* thread.h (struct exception_frame): Make regs elements large.
libhurd-mm/
2008-06-18 Neal H. Walfield <neal@gnu.org>
* exceptions.c (exception_handler_normal): If the fault is
unhandled, print the register state.
(exception_handler_activated): Likewise.
* ia32-exception-entry.S (EF_STACK_START): Don't define.
(EF_SAVED_EAX): Define with an absolute value.
(EF_SAVED_ECX): Likewise.
(EF_SAVED_EDX): Likewise.
(EF_SAVED_FLAGS): Likewise.
(EF_SAVED_IP): Likewise.
(EF_NEXT): Likewise.
(EF_SAVED_EBX): New define.
(EF_SAVED_EDI): New define.
(EF_SAVED_ESI): New define.
(exception_frame_run): Address the saved register values relative
to ESP. Also save EBX, EDI and ESI.
Diffstat (limited to 'hurd')
-rw-r--r-- | hurd/ChangeLog | 4 | ||||
-rw-r--r-- | hurd/thread.h | 3 |
2 files changed, 6 insertions, 1 deletions
diff --git a/hurd/ChangeLog b/hurd/ChangeLog index 1f50e1d..3aab961 100644 --- a/hurd/ChangeLog +++ b/hurd/ChangeLog @@ -1,5 +1,9 @@ 2008-06-18 Neal H. Walfield <neal@gnu.org> + * thread.h (struct exception_frame): Make regs elements large. + +2008-06-18 Neal H. Walfield <neal@gnu.org> + * cap.h (RM_cap_rubout): Define. (cap_rubout): New method. diff --git a/hurd/thread.h b/hurd/thread.h index 2aeafd1..fd504b0 100644 --- a/hurd/thread.h +++ b/hurd/thread.h @@ -43,7 +43,8 @@ typedef addr_t thread_t; struct exception_frame { #if i386 - l4_word_t regs[5]; + /* eax, ecx, edx, eflags, eip, ebx, edi, esi. */ + l4_word_t regs[8]; #else # error Not ported to this architecture! #endif |