/* Native-dependent code for Solaris x86.
- Copyright (C) 1988-2020 Free Software Foundation, Inc.
+ Copyright (C) 1988-2021 Free Software Foundation, Inc.
This file is part of GDB.
and the floating-point set by:
typedef struct fpregset {
- union {
- struct fpchip_state // fp extension state //
- {
- int state[27]; // 287/387 saved state //
- int status; // status word saved at //
- // exception //
- } fpchip_state;
- struct fp_emul_space // for emulators //
- {
- char fp_emul[246];
- char fp_epad[2];
- } fp_emul_space;
- int f_fpregs[62]; // union of the above //
- } fp_reg_set;
- long f_wregs[33]; // saved weitek state //
+ union {
+ struct fpchip_state // fp extension state //
+ {
+ int state[27]; // 287/387 saved state //
+ int status; // status word saved at //
+ // exception //
+ } fpchip_state;
+ struct fp_emul_space // for emulators //
+ {
+ char fp_emul[246];
+ char fp_epad[2];
+ } fp_emul_space;
+ int f_fpregs[62]; // union of the above //
+ } fp_reg_set;
+ long f_wregs[33]; // saved weitek state //
} fpregset_t;
Incidentally fpchip_state contains the FPU state in the same format
format and GDB's register array layout. */
static int regmap[] =
{
- EAX, ECX, EDX, EBX,
- UESP, EBP, ESI, EDI,
- EIP, EFL, CS, SS,
- DS, ES, FS, GS
+ 11 /* EAX */,
+ 10 /* ECX */,
+ 9 /* EDX */,
+ 8 /* EBX */,
+ 17 /* UESP */,
+ 6 /* EBP */,
+ 5 /* ESI */,
+ 4 /* EDI */,
+ 14 /* EIP */,
+ 16 /* EFL */,
+ 15 /* CS */,
+ 18 /* SS */,
+ 3 /* DS */,
+ 2 /* ES */,
+ 1 /* FS */,
+ 0 /* GS */
};
/* Fill GDB's register array with the general-purpose register values
#endif
+void _initialize_amd64_sol2_nat ();
void
-_initialize_amd64_sol2_nat (void)
+_initialize_amd64_sol2_nat ()
{
#if PR_MODEL_NATIVE == PR_MODEL_LP64
amd64_native_gregset32_reg_offset = amd64_sol2_gregset32_reg_offset;