GDB (xrefs)

Macros | Functions
/tmp/gdb-8.1/gdb/i387-tdep.h File Reference

Go to the source code of this file.

## Macros
#define | I387_NUM_REGS 16
#define | I387_ST0_REGNUM(tdep) ((tdep)->st0_regnum)
#define | I387_NUM_XMM_REGS(tdep) ((tdep)->num_xmm_regs)
#define | I387_NUM_XMM_AVX512_REGS(tdep) ((tdep)->num_xmm_avx512_regs)
#define | I387_MM0_REGNUM(tdep) ((tdep)->mm0_regnum)
#define | I387_NUM_YMM_REGS(tdep) ((tdep)->num_ymm_regs)
#define | I387_YMM0H_REGNUM(tdep) ((tdep)->ymm0h_regnum)
#define | I387_BND0R_REGNUM(tdep) ((tdep)->bnd0r_regnum)
#define | I387_BNDCFGU_REGNUM(tdep) ((tdep)->bndcfgu_regnum)
#define | I387_NUM_MPX_REGS 6
#define | I387_NUM_BND_REGS 4
#define | I387_NUM_MPX_CTRL_REGS 2
#define | I387_NUM_K_REGS 8
#define | I387_NUM_PKEYS_REGS 1
#define | I387_PKRU_REGNUM(tdep) ((tdep)->pkru_regnum)
#define | I387_K0_REGNUM(tdep) ((tdep)->k0_regnum)
#define | I387_NUM_ZMMH_REGS(tdep) ((tdep)->num_zmm_regs)
#define | I387_ZMM0H_REGNUM(tdep) ((tdep)->zmm0h_regnum)
#define | I387_NUM_YMM_AVX512_REGS(tdep) ((tdep)->num_ymm_avx512_regs)
#define | I387_YMM16H_REGNUM(tdep) ((tdep)->ymm16h_regnum)
#define | I387_FCTRL_REGNUM(tdep) (I387_ST0_REGNUM (tdep) + 8)
#define | I387_FSTAT_REGNUM(tdep) (I387_FCTRL_REGNUM (tdep) + 1)
#define | I387_FTAG_REGNUM(tdep) (I387_FCTRL_REGNUM (tdep) + 2)
#define | I387_FISEG_REGNUM(tdep) (I387_FCTRL_REGNUM (tdep) + 3)
#define | I387_FIOFF_REGNUM(tdep) (I387_FCTRL_REGNUM (tdep) + 4)
#define | I387_FOSEG_REGNUM(tdep) (I387_FCTRL_REGNUM (tdep) + 5)
#define | I387_FOOFF_REGNUM(tdep) (I387_FCTRL_REGNUM (tdep) + 6)
#define | I387_FOP_REGNUM(tdep) (I387_FCTRL_REGNUM (tdep) + 7)
#define | I387_XMM0_REGNUM(tdep) (I387_ST0_REGNUM (tdep) + 16)
#define | I387_XMM16_REGNUM(tdep) ((tdep)->xmm16_regnum)
#define | I387_MXCSR_REGNUM(tdep) (I387_XMM0_REGNUM (tdep) + I387_NUM_XMM_REGS (tdep))
#define | I387_YMM0_REGNUM(tdep) (I387_MXCSR_REGNUM(tdep) + 1)
#define | I387_YMMENDH_REGNUM(tdep) (I387_YMM0H_REGNUM (tdep) + I387_NUM_YMM_REGS (tdep))
#define | I387_MPXEND_REGNUM(tdep) (I387_BND0R_REGNUM (tdep) + I387_NUM_MPX_REGS)
#define | I387_KEND_REGNUM(tdep) (I387_K0_REGNUM (tdep) + I387_NUM_K_REGS)
#define | I387_ZMMENDH_REGNUM(tdep) (I387_ZMM0H_REGNUM (tdep) + I387_NUM_ZMMH_REGS (tdep))
#define | I387_YMMH_AVX512_END_REGNUM(tdep) (I387_YMM16H_REGNUM (tdep) + I387_NUM_YMM_AVX512_REGS (tdep))
#define | I387_XMM_AVX512_END_REGNUM(tdep) (I387_XMM16_REGNUM (tdep) + I387_NUM_XMM_AVX512_REGS (tdep))
#define | I387_PKEYSEND_REGNUM(tdep) (I387_PKRU_REGNUM (tdep) + I387_NUM_PKEYS_REGS)
#define | I387_SIZEOF_FSAVE 108
#define | I387_SIZEOF_FXSAVE 512

## Functions
void | i387_print_float_info (struct gdbarch *gdbarch, struct ui_file *file, struct frame_info *frame, const char *args)
int | i387_convert_register_p (struct gdbarch *gdbarch, int regnum, struct type *type)
int | i387_register_to_value (struct frame_info *frame, int regnum, struct type *type, gdb_byte *to, int *optimizedp, int *unavailablep)
void | i387_value_to_register (struct frame_info *frame, int regnum, struct type *type, const gdb_byte *from)
void | i387_supply_fsave (struct regcache *regcache, int regnum, const void *fsave)
void | i387_collect_fsave (const struct regcache *regcache, int regnum, void *fsave)
void | i387_supply_fxsave (struct regcache *regcache, int regnum, const void *fxsave)
void | i387_supply_xsave (struct regcache *regcache, int regnum, const void *xsave)
void | i387_collect_fxsave (const struct regcache *regcache, int regnum, void *fxsave)
void | i387_collect_xsave (const struct regcache *regcache, int regnum, void *xsave, int gcore)
void | i387_return_value (struct gdbarch *gdbarch, struct regcache *regcache)
void | i387_reset_bnd_regs (struct gdbarch *gdbarch, struct regcache *regcache)

## Macro Definition Documentation

## ◆ I387_BND0R_REGNUM

#define I387_BND0R_REGNUM | ( |  | tdep | ) | ((tdep)->bnd0r_regnum)

Definition at line 39 of file i387-tdep.h.

Referenced by i386_ax_pseudo_register_collect(), i386_bndr_regnum_p(), i386_pseudo_register_read_into_value(), i386_pseudo_register_write(), i386_validate_tdesc_p(), i387_collect_xsave(), i387_reset_bnd_regs(), and i387_supply_xsave().

## ◆ I387_BNDCFGU_REGNUM

#define I387_BNDCFGU_REGNUM | ( |  | tdep | ) | ((tdep)->bndcfgu_regnum)

Definition at line 40 of file i387-tdep.h.

Referenced by i386_mpx_ctrl_regnum_p(), i387_collect_xsave(), and i387_supply_xsave().

## ◆ I387_FCTRL_REGNUM

#define I387_FCTRL_REGNUM | ( |  | tdep | ) | (I387_ST0_REGNUM (tdep) + 8)

Definition at line 56 of file i387-tdep.h.

Referenced by i386_fp_regnum_p(), i386_fpc_regnum_p(), i386_process_record(), i386_record_floats(), i386_svr4_dwarf_reg_to_regnum(), i386nto_register_area(), i387_collect_fsave(), i387_collect_fxsave(), i387_collect_xsave(), i387_print_float_info(), i387_supply_fsave(), i387_supply_fxsave(), and i387_supply_xsave().

## ◆ I387_FIOFF_REGNUM

#define I387_FIOFF_REGNUM | ( |  | tdep | ) | (I387_FCTRL_REGNUM (tdep) + 4)

Definition at line 60 of file i387-tdep.h.

Referenced by i387_collect_fsave(), i387_collect_fxsave(), i387_collect_xsave(), i387_print_float_info(), i387_supply_fsave(), i387_supply_fxsave(), and i387_supply_xsave().

## ◆ I387_FISEG_REGNUM

#define I387_FISEG_REGNUM | ( |  | tdep | ) | (I387_FCTRL_REGNUM (tdep) + 3)

Definition at line 59 of file i387-tdep.h.

Referenced by amd64_collect_fxsave(), amd64_collect_xsave(), amd64_supply_fxsave(), amd64_supply_xsave(), do_windows_fetch_inferior_registers(), i386nto_register_area(), and i387_print_float_info().

## ◆ I387_FOOFF_REGNUM

#define I387_FOOFF_REGNUM | ( |  | tdep | ) | (I387_FCTRL_REGNUM (tdep) + 6)

Definition at line 62 of file i387-tdep.h.

Referenced by i387_collect_fsave(), i387_collect_fxsave(), i387_collect_xsave(), i387_print_float_info(), i387_supply_fsave(), i387_supply_fxsave(), and i387_supply_xsave().

## ◆ I387_FOP_REGNUM

#define I387_FOP_REGNUM | ( |  | tdep | ) | (I387_FCTRL_REGNUM (tdep) + 7)

Definition at line 63 of file i387-tdep.h.

Referenced by do_windows_fetch_inferior_registers(), i386_record_floats(), i386nto_register_area(), i387_collect_fsave(), i387_collect_fxsave(), i387_collect_xsave(), i387_print_float_info(), i387_supply_fsave(), i387_supply_fxsave(), and i387_supply_xsave().

## ◆ I387_FOSEG_REGNUM

#define I387_FOSEG_REGNUM | ( |  | tdep | ) | (I387_FCTRL_REGNUM (tdep) + 5)

Definition at line 61 of file i387-tdep.h.

Referenced by amd64_collect_fxsave(), amd64_collect_xsave(), amd64_supply_fxsave(), amd64_supply_xsave(), and i387_print_float_info().

## ◆ I387_FSTAT_REGNUM

#define I387_FSTAT_REGNUM | ( |  | tdep | ) | (I387_FCTRL_REGNUM (tdep) + 1)

Definition at line 57 of file i387-tdep.h.

Referenced by i386_ax_pseudo_register_collect(), i386_mmx_regnum_to_fp_regnum(), i386_store_return_value(), i386_svr4_dwarf_reg_to_regnum(), i387_print_float_info(), i387_return_value(), i387_supply_fxsave(), and i387_supply_xsave().

## ◆ I387_FTAG_REGNUM

#define I387_FTAG_REGNUM | ( |  | tdep | ) | (I387_FCTRL_REGNUM (tdep) + 2)

Definition at line 58 of file i387-tdep.h.

Referenced by i386_process_record(), i386_store_return_value(), i387_collect_fxsave(), i387_collect_xsave(), i387_print_float_info(), i387_return_value(), i387_supply_fxsave(), and i387_supply_xsave().

## ◆ I387_K0_REGNUM

#define I387_K0_REGNUM | ( |  | tdep | ) | ((tdep)->k0_regnum)

Definition at line 50 of file i387-tdep.h.

Referenced by i387_collect_xsave(), and i387_supply_xsave().

## ◆ I387_KEND_REGNUM

#define I387_KEND_REGNUM | ( |  | tdep | ) | (I387_K0_REGNUM (tdep) + I387_NUM_K_REGS)

Definition at line 75 of file i387-tdep.h.

Referenced by i387_collect_xsave(), and i387_supply_xsave().

## ◆ I387_MM0_REGNUM

#define I387_MM0_REGNUM | ( |  | tdep | ) | ((tdep)->mm0_regnum)

Definition at line 35 of file i387-tdep.h.

Referenced by i386_darwin_push_dummy_call(), i386_dbx_reg_to_regnum(), i386_process_record(), and i386_pseudo_register_name().

## ◆ I387_MPXEND_REGNUM

#define I387_MPXEND_REGNUM | ( |  | tdep | ) | (I387_BND0R_REGNUM (tdep) + I387_NUM_MPX_REGS)

Definition at line 72 of file i387-tdep.h.

Referenced by i387_collect_xsave(), and i387_supply_xsave().

## ◆ I387_MXCSR_REGNUM

#define I387_MXCSR_REGNUM | ( |  | tdep | ) | (I387_XMM0_REGNUM (tdep) + I387_NUM_XMM_REGS (tdep))

Definition at line 66 of file i387-tdep.h.

Referenced by i386_mxcsr_regnum_p(), i386_process_record(), i386_svr4_dwarf_reg_to_regnum(), i386nto_register_area(), i387_collect_fxsave(), i387_collect_xsave(), i387_supply_fsave(), i387_supply_fxsave(), and i387_supply_xsave().

## ◆ I387_NUM_BND_REGS

#define I387_NUM_BND_REGS 4

Definition at line 44 of file i387-tdep.h.

Referenced by i386_bnd_regnum_p(), i386_bndr_regnum_p(), i386_gdbarch_init(), and i387_reset_bnd_regs().

## ◆ I387_NUM_K_REGS

#define I387_NUM_K_REGS 8

Definition at line 46 of file i387-tdep.h.

Referenced by i386_k_regnum_p(), and i386_validate_tdesc_p().

## ◆ I387_NUM_MPX_CTRL_REGS

#define I387_NUM_MPX_CTRL_REGS 2

Definition at line 45 of file i387-tdep.h.

Referenced by i386_mpx_ctrl_regnum_p().

## ◆ I387_NUM_MPX_REGS

#define I387_NUM_MPX_REGS 6

Definition at line 43 of file i387-tdep.h.

Referenced by i386_validate_tdesc_p().

## ◆ I387_NUM_PKEYS_REGS

#define I387_NUM_PKEYS_REGS 1

Definition at line 47 of file i387-tdep.h.

Referenced by i386_pkru_regnum_p(), and i386_validate_tdesc_p().

## ◆ I387_NUM_REGS

#define I387_NUM_REGS 16

Definition at line 30 of file i387-tdep.h.

Referenced by amd64_init_abi(), i386_gdbarch_init(), and i386nto_regset_id().

## ◆ I387_NUM_XMM_AVX512_REGS

#define I387_NUM_XMM_AVX512_REGS | ( |  | tdep | ) | ((tdep)->num_xmm_avx512_regs)

Definition at line 34 of file i387-tdep.h.

Referenced by i386_xmm_avx512_regnum_p().

## ◆ I387_NUM_XMM_REGS

#define I387_NUM_XMM_REGS | ( |  | tdep | ) | ((tdep)->num_xmm_regs)

Definition at line 33 of file i387-tdep.h.

Referenced by i386_mxcsr_regnum_p(), and i386_xmm_regnum_p().

## ◆ I387_NUM_YMM_AVX512_REGS

#define I387_NUM_YMM_AVX512_REGS | ( |  | tdep | ) | ((tdep)->num_ymm_avx512_regs)

Definition at line 53 of file i387-tdep.h.

## ◆ I387_NUM_YMM_REGS

#define I387_NUM_YMM_REGS | ( |  | tdep | ) | ((tdep)->num_ymm_regs)

Definition at line 36 of file i387-tdep.h.

## ◆ I387_NUM_ZMMH_REGS

#define I387_NUM_ZMMH_REGS | ( |  | tdep | ) | ((tdep)->num_zmm_regs)

Definition at line 51 of file i387-tdep.h.

## ◆ I387_PKEYSEND_REGNUM

#define I387_PKEYSEND_REGNUM | ( |  | tdep | ) | (I387_PKRU_REGNUM (tdep) + I387_NUM_PKEYS_REGS)

Definition at line 84 of file i387-tdep.h.

Referenced by i387_collect_xsave(), and i387_supply_xsave().

## ◆ I387_PKRU_REGNUM

#define I387_PKRU_REGNUM | ( |  | tdep | ) | ((tdep)->pkru_regnum)

Definition at line 49 of file i387-tdep.h.

Referenced by i386_validate_tdesc_p(), i387_collect_xsave(), and i387_supply_xsave().

## ◆ I387_SIZEOF_FSAVE

#define I387_SIZEOF_FSAVE 108

Definition at line 116 of file i387-tdep.h.

Referenced by i386_gdbarch_init().

## ◆ I387_SIZEOF_FXSAVE

#define I387_SIZEOF_FXSAVE 512

Definition at line 117 of file i387-tdep.h.

Referenced by amd64_init_abi(), i386_collect_fpregset(), and i386_supply_fpregset().

## ◆ I387_ST0_REGNUM

#define I387_ST0_REGNUM | ( |  | tdep | ) | ((tdep)->st0_regnum)

Definition at line 32 of file i387-tdep.h.

Referenced by i386_ax_pseudo_register_collect(), i386_dbx_reg_to_regnum(), i386_fp_regnum_p(), i386_fpc_regnum_p(), i386_mmx_regnum_to_fp_regnum(), i386_process_record(), i386_record_floats(), i386_svr4_dwarf_reg_to_regnum(), i386nto_register_area(), i387_collect_fsave(), i387_collect_fxsave(), i387_collect_xsave(), i387_print_float_info(), i387_supply_fsave(), i387_supply_fxsave(), and i387_supply_xsave().

## ◆ I387_XMM0_REGNUM

#define I387_XMM0_REGNUM | ( |  | tdep | ) | (I387_ST0_REGNUM (tdep) + 16)

Definition at line 64 of file i387-tdep.h.

Referenced by amd64_dwarf_reg_to_regnum(), i386_ax_pseudo_register_collect(), i386_dbx_reg_to_regnum(), i386_fpc_regnum_p(), i386_process_record(), i386_pseudo_register_read_into_value(), i386_pseudo_register_write(), i386_xmm_regnum_p(), i386nto_register_area(), i387_collect_fsave(), i387_collect_fxsave(), i387_collect_xsave(), i387_supply_fsave(), i387_supply_fxsave(), and i387_supply_xsave().

## ◆ I387_XMM16_REGNUM

#define I387_XMM16_REGNUM | ( |  | tdep | ) | ((tdep)->xmm16_regnum)

Definition at line 65 of file i387-tdep.h.

Referenced by i386_ax_pseudo_register_collect(), i386_pseudo_register_read_into_value(), i386_pseudo_register_write(), i386_xmm_avx512_regnum_p(), i387_collect_xsave(), and i387_supply_xsave().

## ◆ I387_XMM_AVX512_END_REGNUM

#define I387_XMM_AVX512_END_REGNUM | ( |  | tdep | ) | (I387_XMM16_REGNUM (tdep) + I387_NUM_XMM_AVX512_REGS (tdep))

Definition at line 81 of file i387-tdep.h.

Referenced by i387_collect_xsave(), and i387_supply_xsave().

## ◆ I387_YMM0_REGNUM

#define I387_YMM0_REGNUM | ( |  | tdep | ) | (I387_MXCSR_REGNUM(tdep) + 1)

Definition at line 68 of file i387-tdep.h.

Referenced by i386_pseudo_register_write().

## ◆ I387_YMM0H_REGNUM

#define I387_YMM0H_REGNUM | ( |  | tdep | ) | ((tdep)->ymm0h_regnum)

Definition at line 37 of file i387-tdep.h.

Referenced by i387_collect_xsave(), and i387_supply_xsave().

## ◆ I387_YMM16H_REGNUM

#define I387_YMM16H_REGNUM | ( |  | tdep | ) | ((tdep)->ymm16h_regnum)

Definition at line 54 of file i387-tdep.h.

Referenced by i386_ax_pseudo_register_collect(), i386_pseudo_register_read_into_value(), i386_pseudo_register_write(), i387_collect_xsave(), and i387_supply_xsave().

## ◆ I387_YMMENDH_REGNUM

#define I387_YMMENDH_REGNUM | ( |  | tdep | ) | (I387_YMM0H_REGNUM (tdep) + I387_NUM_YMM_REGS (tdep))

Definition at line 69 of file i387-tdep.h.

Referenced by i387_collect_xsave(), and i387_supply_xsave().

## ◆ I387_YMMH_AVX512_END_REGNUM

#define I387_YMMH_AVX512_END_REGNUM | ( |  | tdep | ) | (I387_YMM16H_REGNUM (tdep) + I387_NUM_YMM_AVX512_REGS (tdep))

Definition at line 79 of file i387-tdep.h.

Referenced by i387_collect_xsave(), and i387_supply_xsave().

## ◆ I387_ZMM0H_REGNUM

#define I387_ZMM0H_REGNUM | ( |  | tdep | ) | ((tdep)->zmm0h_regnum)

Definition at line 52 of file i387-tdep.h.

Referenced by i387_collect_xsave(), and i387_supply_xsave().

## ◆ I387_ZMMENDH_REGNUM

#define I387_ZMMENDH_REGNUM | ( |  | tdep | ) | (I387_ZMM0H_REGNUM (tdep) + I387_NUM_ZMMH_REGS (tdep))

Definition at line 77 of file i387-tdep.h.

Referenced by i387_collect_xsave(), and i387_supply_xsave().

## Function Documentation

## ◆ i387_collect_fsave()

void i387_collect_fsave | ( | const struct regcache * | regcache,
|  | int | regnum,
|  | void * | fsave
| ) |  |

Definition at line 493 of file i387-tdep.c.

References regcache::arch(), FSAVE_ADDR, gdb_assert, gdbarch_tdep(), I386_ST0_REGNUM, I387_FCTRL_REGNUM, I387_FIOFF_REGNUM, I387_FOOFF_REGNUM, I387_FOP_REGNUM, I387_ST0_REGNUM, I387_XMM0_REGNUM, regcache_raw_collect(), regnum, gdbarch_tdep::regs, and gdbarch_tdep::st0_regnum.

Referenced by fill_fpregset(), go32_store_registers(), i386_collect_fpregset(), i386bsd_store_inferior_registers(), i386nto_regset_fill(), store_fpregs(), and store_register().

## ◆ i387_collect_fxsave()

void i387_collect_fxsave | ( | const struct regcache * | regcache,
|  | int | regnum,
|  | void * | fxsave
| ) |  |

Definition at line 669 of file i387-tdep.c.

References regcache::arch(), FXSAVE_ADDR, FXSAVE_MXCSR_ADDR, gdb_assert, gdbarch_tdep(), I386_ST0_REGNUM, I387_FCTRL_REGNUM, I387_FIOFF_REGNUM, I387_FOOFF_REGNUM, I387_FOP_REGNUM, I387_FTAG_REGNUM, I387_MXCSR_REGNUM, I387_ST0_REGNUM, I387_XMM0_REGNUM, gdbarch_tdep::num_xmm_regs, regcache_raw_collect(), regnum, gdbarch_tdep::regs, and gdbarch_tdep::st0_regnum.

Referenced by amd64_collect_fxsave(), i386_collect_fpregset(), i386_darwin_store_inferior_registers(), i386bsd_store_inferior_registers(), i386nto_regset_fill(), and store_fpxregs().

## ◆ i387_collect_xsave()

void i387_collect_xsave | ( | const struct regcache * | regcache,
|  | int | regnum,
|  | void * | xsave,
|  | int | gcore
| ) |  |

Definition at line 1306 of file i387-tdep.c.

References _, all, regcache::arch(), check(), extract_unsigned_integer(), FXSAVE_ADDR, FXSAVE_MXCSR_ADDR, gdb_assert, gdbarch_byte_order(), gdbarch_tdep(), I386_MAX_REGISTER_SIZE, I386_ST0_REGNUM, I387_BND0R_REGNUM, I387_BNDCFGU_REGNUM, I387_FCTRL_REGNUM, I387_FIOFF_REGNUM, I387_FOOFF_REGNUM, I387_FOP_REGNUM, I387_FTAG_REGNUM, I387_K0_REGNUM, I387_KEND_REGNUM, I387_MPXEND_REGNUM, I387_MXCSR_REGNUM, I387_PKEYSEND_REGNUM, I387_PKRU_REGNUM, I387_ST0_REGNUM, I387_XMM0_REGNUM, I387_XMM16_REGNUM, I387_XMM_AVX512_END_REGNUM, I387_YMM0H_REGNUM, I387_YMM16H_REGNUM, I387_YMMENDH_REGNUM, I387_YMMH_AVX512_END_REGNUM, I387_ZMM0H_REGNUM, I387_ZMMENDH_REGNUM, internal_error(), memset(), gdbarch_tdep::num_xmm_regs, regcache_raw_collect(), regnum, gdbarch_tdep::regs, gdbarch_tdep::st0_regnum, store_unsigned_integer(), X86_XSTATE_AVX, X86_XSTATE_BNDCFG, X86_XSTATE_BNDREGS, X86_XSTATE_K, X86_XSTATE_PKRU, X86_XSTATE_SIZE, X86_XSTATE_SSE, X86_XSTATE_X87, X86_XSTATE_ZMM, X86_XSTATE_ZMM_H, gdbarch_tdep::xcr0, XSAVE_AVX512_K_ADDR, XSAVE_AVX512_ZMM_H_ADDR, XSAVE_AVXH_ADDR, XSAVE_MPX_ADDR, XSAVE_PKEYS_ADDR, gdbarch_tdep::xsave_xcr0_offset, XSAVE_XMM_AVX512_ADDR, XSAVE_XSTATE_BV_ADDR, and XSAVE_YMM_AVX512_ADDR.

Referenced by amd64_collect_xsave(), i386_linux_collect_xstateregset(), i386bsd_store_inferior_registers(), i386fbsd_collect_xstateregset(), and store_xstateregs().

## ◆ i387_convert_register_p()

int i387_convert_register_p | ( | struct gdbarch * | gdbarch,
|  | int | regnum,
|  | struct type * | type
| ) |  |

Definition at line 327 of file i387-tdep.c.

References i386_fp_regnum_p(), i387_ext_type(), regnum, TYPE_CODE, and TYPE_CODE_FLT.

Referenced by amd64_init_abi(), and i386_convert_register_p().

## ◆ i387_print_float_info()

void i387_print_float_info | ( | struct gdbarch * | gdbarch,
|  | struct ui_file * | file,
|  | struct frame_info * | frame,
|  | const char * | args
| ) |  |

Definition at line 204 of file i387-tdep.c.

References _, fprintf_filtered(), fputs_filtered(), gdb_assert, gdbarch_tdep(), get_frame_arch(), get_frame_register_value(), hex_string_custom(), I387_FCTRL_REGNUM, I387_FIOFF_REGNUM, I387_FISEG_REGNUM, I387_FOOFF_REGNUM, I387_FOP_REGNUM, I387_FOSEG_REGNUM, I387_FSTAT_REGNUM, I387_FTAG_REGNUM, I387_ST0_REGNUM, print_i387_control_word(), print_i387_ext(), print_i387_status_word(), read_frame_register_unsigned(), regnum, value_contents(), and value_entirely_available().

Referenced by i386_gdbarch_init().

## ◆ i387_register_to_value()

int i387_register_to_value | ( | struct frame_info * | frame,
|  | int | regnum,
|  | struct type * | type,
|  | gdb_byte * | to,
|  | int * | optimizedp,
|  | int * | unavailablep
| ) |  |

Definition at line 348 of file i387-tdep.c.

References _, gdb_assert, get_frame_arch(), get_frame_register_bytes(), i386_fp_regnum_p(), I386_MAX_REGISTER_SIZE, i387_ext_type(), register_size(), regnum, target_float_convert(), TYPE_CODE, TYPE_CODE_FLT, and warning().

Referenced by amd64_init_abi(), and i386_register_to_value().

## ◆ i387_reset_bnd_regs()

void i387_reset_bnd_regs | ( | struct gdbarch * | gdbarch,
|  | struct regcache * | regcache
| ) |  |

Definition at line 1858 of file i387-tdep.c.

References gdbarch_tdep(), I387_BND0R_REGNUM, I387_NUM_BND_REGS, memset(), and regcache_raw_write().

Referenced by amd64_push_dummy_call(), and i386_push_dummy_call().

## ◆ i387_return_value()

void i387_return_value | ( | struct gdbarch * | gdbarch,
|  | struct regcache * | regcache
| ) |  |

Definition at line 1835 of file i387-tdep.c.

References gdbarch_tdep(), I387_FSTAT_REGNUM, I387_FTAG_REGNUM, regcache_raw_read_unsigned(), and regcache_raw_write_unsigned().

Referenced by amd64_return_value().

## ◆ i387_supply_fsave()

void i387_supply_fsave | ( | struct regcache * | regcache,
|  | int | regnum,
|  | const void * | fsave
| ) |  |

Definition at line 438 of file i387-tdep.c.

References regcache::arch(), FSAVE_ADDR, gdb_assert, gdbarch_byte_order(), gdbarch_tdep(), I386_ST0_REGNUM, I387_FCTRL_REGNUM, I387_FIOFF_REGNUM, I387_FOOFF_REGNUM, I387_FOP_REGNUM, I387_MXCSR_REGNUM, I387_ST0_REGNUM, I387_XMM0_REGNUM, regcache_raw_supply(), regnum, gdbarch_tdep::regs, gdbarch_tdep::st0_regnum, and store_unsigned_integer().

Referenced by fetch_fpregs(), fetch_register(), go32_fetch_registers(), i386_supply_fpregset(), i386bsd_fetch_inferior_registers(), i386nto_supply_fpregset(), and supply_fpregset().

## ◆ i387_supply_fxsave()

void i387_supply_fxsave | ( | struct regcache * | regcache,
|  | int | regnum,
|  | const void * | fxsave
| ) |  |

Definition at line 586 of file i387-tdep.c.

References regcache::arch(), FXSAVE_ADDR, FXSAVE_MXCSR_ADDR, gdb_assert, gdbarch_tdep(), I386_ST0_REGNUM, I387_FCTRL_REGNUM, I387_FIOFF_REGNUM, I387_FOOFF_REGNUM, I387_FOP_REGNUM, I387_FSTAT_REGNUM, I387_FTAG_REGNUM, I387_MXCSR_REGNUM, I387_ST0_REGNUM, i387_tag(), I387_XMM0_REGNUM, gdbarch_tdep::num_xmm_regs, regcache_raw_supply(), regnum, gdbarch_tdep::regs, and gdbarch_tdep::st0_regnum.

Referenced by amd64_supply_fxsave(), fetch_fpxregs(), i386_darwin_fetch_inferior_registers(), i386_supply_fpregset(), i386bsd_fetch_inferior_registers(), and i386nto_supply_fpregset().

## ◆ i387_supply_xsave()

void i387_supply_xsave | ( | struct regcache * | regcache,
|  | int | regnum,
|  | const void * | xsave
| ) |  |

Definition at line 898 of file i387-tdep.c.

References all, regcache::arch(), extract_unsigned_integer(), FXSAVE_ADDR, FXSAVE_MXCSR_ADDR, gdb_assert, gdbarch_byte_order(), gdbarch_tdep(), I386_MAX_REGISTER_SIZE, I386_ST0_REGNUM, I387_BND0R_REGNUM, I387_BNDCFGU_REGNUM, I387_FCTRL_REGNUM, I387_FIOFF_REGNUM, I387_FOOFF_REGNUM, I387_FOP_REGNUM, I387_FSTAT_REGNUM, I387_FTAG_REGNUM, I387_K0_REGNUM, I387_KEND_REGNUM, I387_MPXEND_REGNUM, I387_MXCSR_REGNUM, I387_PKEYSEND_REGNUM, I387_PKRU_REGNUM, I387_ST0_REGNUM, i387_tag(), I387_XMM0_REGNUM, I387_XMM16_REGNUM, I387_XMM_AVX512_END_REGNUM, I387_YMM0H_REGNUM, I387_YMM16H_REGNUM, I387_YMMENDH_REGNUM, I387_YMMH_AVX512_END_REGNUM, I387_ZMM0H_REGNUM, I387_ZMMENDH_REGNUM, gdbarch_tdep::num_xmm_regs, regcache_raw_supply(), regnum, gdbarch_tdep::regs, gdbarch_tdep::st0_regnum, X86_XSTATE_ALL_MASK, X86_XSTATE_AVX, X86_XSTATE_BNDCFG, X86_XSTATE_BNDREGS, X86_XSTATE_K, X86_XSTATE_PKRU, X86_XSTATE_SSE, X86_XSTATE_X87, X86_XSTATE_ZMM, X86_XSTATE_ZMM_H, gdbarch_tdep::xcr0, XSAVE_AVX512_K_ADDR, XSAVE_AVX512_ZMM_H_ADDR, XSAVE_AVXH_ADDR, XSAVE_MPX_ADDR, XSAVE_PKEYS_ADDR, XSAVE_XMM_AVX512_ADDR, XSAVE_XSTATE_BV_ADDR, and XSAVE_YMM_AVX512_ADDR.

Referenced by amd64_supply_xsave(), fetch_xstateregs(), i386_linux_supply_xstateregset(), i386bsd_fetch_inferior_registers(), and i386fbsd_supply_xstateregset().

## ◆ i387_value_to_register()

void i387_value_to_register | ( | struct frame_info * | frame,
|  | int | regnum,
|  | struct type * | type,
|  | const gdb_byte * | from
| ) |  |

Definition at line 381 of file i387-tdep.c.

References _, gdb_assert, get_frame_arch(), i386_fp_regnum_p(), I386_MAX_REGISTER_SIZE, i387_ext_type(), put_frame_register(), regnum, target_float_convert(), TYPE_CODE, TYPE_CODE_FLT, and warning().

Referenced by amd64_init_abi(), and i386_value_to_register().