Files
QEMU-S5L8950X/linux-user/sh4/vdso-asmoffset.h
T
Yaya48 cf256aa081 Import QEMU upstream snapshot d2e570c
Upstream: https://gitlab.com/qemu-project/qemu.git

Upstream-Commit: d2e570cc0f97b936902a5b1b86b73c0f5998b475
2026-08-31 02:15:30 +02:00

46 lines
1.5 KiB
C

/*
* Offsets into target signal frames for sh4 vdso.
*
* From linux-user/sh4/signal.c:
*
* struct target_sigcontext {
* target_ulong oldmask; // 0
* target_ulong sc_gregs[16]; // 4
* target_ulong sc_pc; // 68
* target_ulong sc_pr; // 72
* target_ulong sc_sr; // 76
* target_ulong sc_gbr; // 80
* target_ulong sc_mach; // 84
* target_ulong sc_macl; // 88
* target_ulong sc_fpregs[16]; // 92
* target_ulong sc_xfpregs[16]; // 156
* unsigned int sc_fpscr; // 220
* unsigned int sc_fpul; // 224
* unsigned int sc_ownedfp; // 228
* }; // sizeof = 232
*
* struct sigframe { sigcontext sc; ... }
* struct rt_sigframe { siginfo info[128]; ucontext uc; }
* ucontext = { flags[4], link[4], stack[12], sigcontext mcontext; ... }
* => mcontext at rt_sigframe + 128 + 20 = rt_sigframe + 148
*/
/* Offset of sigcontext within sigframe (CFA base for sigreturn). */
#define SIGFRAME_SC_OFFSET 0
/* Offset of tuc_mcontext within rt_sigframe (CFA base for rt_sigreturn). */
#define RT_SIGFRAME_SC_OFFSET 148
/* Offsets within struct sigcontext. */
#define SC_GREGS 4
#define SC_PC 68
#define SC_PR 72
#define SC_SR 76
#define SC_GBR 80
#define SC_MACH 84
#define SC_MACL 88
#define SC_FPREGS 92
#define SC_XFPREGS 156
#define SC_FPSCR 220
#define SC_FPUL 224