12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182 |
- /* Copyright (C) 2004 Hewlett-Packard Co.
- Contributed by David Mosberger-Tang <davidm@hpl.hp.com>.
- This file is part of libunwind.
- Permission is hereby granted, free of charge, to any person obtaining
- a copy of this software and associated documentation files (the
- "Software"), to deal in the Software without restriction, including
- without limitation the rights to use, copy, modify, merge, publish,
- distribute, sublicense, and/or sell copies of the Software, and to
- permit persons to whom the Software is furnished to do so, subject to
- the following conditions:
- The above copyright notice and this permission notice shall be
- included in all copies or substantial portions of the Software.
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
- EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
- NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
- LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
- OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
- WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
- #if defined __linux__
- #define UC_MCONTEXT_GREGS_R8 0x28
- #define UC_MCONTEXT_GREGS_R9 0x30
- #define UC_MCONTEXT_GREGS_R10 0x38
- #define UC_MCONTEXT_GREGS_R11 0x40
- #define UC_MCONTEXT_GREGS_R12 0x48
- #define UC_MCONTEXT_GREGS_R13 0x50
- #define UC_MCONTEXT_GREGS_R14 0x58
- #define UC_MCONTEXT_GREGS_R15 0x60
- #define UC_MCONTEXT_GREGS_RDI 0x68
- #define UC_MCONTEXT_GREGS_RSI 0x70
- #define UC_MCONTEXT_GREGS_RBP 0x78
- #define UC_MCONTEXT_GREGS_RBX 0x80
- #define UC_MCONTEXT_GREGS_RDX 0x88
- #define UC_MCONTEXT_GREGS_RAX 0x90
- #define UC_MCONTEXT_GREGS_RCX 0x98
- #define UC_MCONTEXT_GREGS_RSP 0xa0
- #define UC_MCONTEXT_GREGS_RIP 0xa8
- #define UC_MCONTEXT_FPREGS_PTR 0x1a8
- #define UC_MCONTEXT_FPREGS_MEM 0xe0
- #define UC_SIGMASK 0x128
- #define FPREGS_OFFSET_MXCSR 0x18
- #elif defined __FreeBSD__
- #define UC_SIGMASK 0x0
- #define UC_MCONTEXT_GREGS_RDI 0x18
- #define UC_MCONTEXT_GREGS_RSI 0x20
- #define UC_MCONTEXT_GREGS_RDX 0x28
- #define UC_MCONTEXT_GREGS_RCX 0x30
- #define UC_MCONTEXT_GREGS_R8 0x38
- #define UC_MCONTEXT_GREGS_R9 0x40
- #define UC_MCONTEXT_GREGS_RAX 0x48
- #define UC_MCONTEXT_GREGS_RBX 0x50
- #define UC_MCONTEXT_GREGS_RBP 0x58
- #define UC_MCONTEXT_GREGS_R10 0x60
- #define UC_MCONTEXT_GREGS_R11 0x68
- #define UC_MCONTEXT_GREGS_R12 0x70
- #define UC_MCONTEXT_GREGS_R13 0x78
- #define UC_MCONTEXT_GREGS_R14 0x80
- #define UC_MCONTEXT_GREGS_R15 0x88
- #define UC_MCONTEXT_FS 0x94
- #define UC_MCONTEXT_GS 0x96
- #define UC_MCONTEXT_FLAGS 0xa0
- #define UC_MCONTEXT_ES 0xa4
- #define UC_MCONTEXT_DS 0xa6
- #define UC_MCONTEXT_GREGS_RIP 0xb0
- #define UC_MCONTEXT_CS 0xb8
- #define UC_MCONTEXT_RFLAGS 0xc0
- #define UC_MCONTEXT_GREGS_RSP 0xc8
- #define UC_MCONTEXT_SS 0xd0
- #define UC_MCONTEXT_MC_LEN 0xd8
- #define UC_MCONTEXT_FPFORMAT 0xe0
- #define UC_MCONTEXT_OWNEDFP 0xe8
- #define UC_MCONTEXT_FPSTATE 0xf0
- #define UC_MCONTEXT_FPOWNED_FPU 0x20001
- #define UC_MCONTEXT_FPFMT_XMM 0x10002
- #define UC_MCONTEXT_MC_LEN_VAL 0x320
- #endif
|