diff options
author | Samuel Thibault <samuel.thibault@ens-lyon.org> | 2012-03-18 20:31:22 +0100 |
---|---|---|
committer | Samuel Thibault <samuel.thibault@ens-lyon.org> | 2020-03-28 16:27:16 +0100 |
commit | e3a25bd6b41397b88688b77d86953990251391b5 (patch) | |
tree | b25668afb2e8f3191c18638fee56065a1924e810 /i386 | |
parent | 7f3cc4ea1d996aa18602b6df019af446165cb183 (diff) | |
download | gnumach-e3a25bd6b41397b88688b77d86953990251391b5.tar.gz gnumach-e3a25bd6b41397b88688b77d86953990251391b5.tar.bz2 gnumach-e3a25bd6b41397b88688b77d86953990251391b5.zip |
thread.h: Add 64bit variant
* i386/i386/thread.h (i386_saved_state, i386_kernel_state,
i386_interrupt_state): Add 64bit registers.
Diffstat (limited to 'i386')
-rw-r--r-- | i386/i386/thread.h | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/i386/i386/thread.h b/i386/i386/thread.h index bae61e31..3d4808c7 100644 --- a/i386/i386/thread.h +++ b/i386/i386/thread.h @@ -55,6 +55,16 @@ struct i386_saved_state { unsigned long fs; unsigned long es; unsigned long ds; +#ifdef __x86_64__ + unsigned long r15; + unsigned long r14; + unsigned long r13; + unsigned long r12; + unsigned long r11; + unsigned long r10; + unsigned long r9; + unsigned long r8; +#endif unsigned long edi; unsigned long esi; unsigned long ebp; @@ -100,9 +110,17 @@ struct i386_kernel_state { long k_ebx; /* kernel context */ long k_esp; long k_ebp; +#ifdef __i386__ long k_edi; long k_esi; +#endif long k_eip; +#ifdef __x86_64__ + long k_r12; + long k_r13; + long k_r14; + long k_r15; +#endif }; /* @@ -148,6 +166,14 @@ struct i386_interrupt_state { long fs; long es; long ds; +#ifdef __x86_64__ + long r11; + long r10; + long r9; + long r8; + long rdi; + long rsi; +#endif long edx; long ecx; long eax; |