GDB (xrefs)
Loading...
Searching...
No Matches
Classes | Macros | Enumerations | Functions | Variables
amd64-tdep.c File Reference
#include "defs.h"
#include "language.h"
#include "opcode/i386.h"
#include "dis-asm.h"
#include "arch-utils.h"
#include "dummy-frame.h"
#include "frame.h"
#include "frame-base.h"
#include "frame-unwind.h"
#include "inferior.h"
#include "infrun.h"
#include "gdbcmd.h"
#include "gdbcore.h"
#include "objfiles.h"
#include "regcache.h"
#include "regset.h"
#include "symfile.h"
#include "disasm.h"
#include "amd64-tdep.h"
#include "i387-tdep.h"
#include "gdbsupport/x86-xstate.h"
#include <algorithm>
#include "target-descriptions.h"
#include "arch/amd64.h"
#include "producer.h"
#include "ax.h"
#include "ax-gdb.h"
#include "gdbsupport/byte-vector.h"
#include "osabi.h"
#include "x86-tdep.h"
#include "amd64-ravenscar-thread.h"

Go to the source code of this file.

Classes

struct  amd64_insn
 
struct  amd64_displaced_step_copy_insn_closure
 
struct  amd64_frame_cache
 

Macros

#define AMD64_NUM_LOWER_BYTE_REGS   16
 
#define AMD64_NUM_SAVED_REGS   AMD64_NUM_GREGS
 

Enumerations

enum  amd64_reg_class {
  AMD64_INTEGER , AMD64_SSE , AMD64_SSEUP , AMD64_X87 ,
  AMD64_X87UP , AMD64_COMPLEX_X87 , AMD64_NO_CLASS , AMD64_MEMORY
}
 

Functions

static int amd64_dwarf_reg_to_regnum (struct gdbarch *gdbarch, int reg)
 
static int amd64_arch_reg_to_regnum (int reg)
 
static const char * amd64_pseudo_register_name (struct gdbarch *gdbarch, int regnum)
 
static struct valueamd64_pseudo_register_read_value (struct gdbarch *gdbarch, readable_regcache *regcache, int regnum)
 
static void amd64_pseudo_register_write (struct gdbarch *gdbarch, struct regcache *regcache, int regnum, const gdb_byte *buf)
 
static int amd64_ax_pseudo_register_collect (struct gdbarch *gdbarch, struct agent_expr *ax, int regnum)
 
static enum amd64_reg_class amd64_merge_classes (enum amd64_reg_class class1, enum amd64_reg_class class2)
 
static void amd64_classify (struct type *type, enum amd64_reg_class theclass[2])
 
static bool amd64_has_unaligned_fields (struct type *type)
 
static void amd64_classify_aggregate_field (struct type *type, int i, enum amd64_reg_class theclass[2], unsigned int bitoffset)
 
static void amd64_classify_aggregate (struct type *type, enum amd64_reg_class theclass[2])
 
static enum return_value_convention amd64_return_value (struct gdbarch *gdbarch, struct value *function, struct type *type, struct regcache *regcache, struct value **read_value, const gdb_byte *writebuf)
 
static CORE_ADDR amd64_push_arguments (struct regcache *regcache, int nargs, struct value **args, CORE_ADDR sp, function_call_return_method return_method)
 
static CORE_ADDR amd64_push_dummy_call (struct gdbarch *gdbarch, struct value *function, struct regcache *regcache, CORE_ADDR bp_addr, int nargs, struct value **args, CORE_ADDR sp, function_call_return_method return_method, CORE_ADDR struct_addr)
 
static int amd64_syscall_p (const struct amd64_insn *insn, int *lengthp)
 
static int rex_prefix_p (gdb_byte pfx)
 
static bool vex2_prefix_p (gdb_byte pfx)
 
static bool vex3_prefix_p (gdb_byte pfx)
 
static gdb_byte * amd64_skip_prefixes (gdb_byte *insn)
 
static int amd64_get_unused_input_int_reg (const struct amd64_insn *details)
 
static void amd64_get_insn_details (gdb_byte *insn, struct amd64_insn *details)
 
static void fixup_riprel (struct gdbarch *gdbarch, amd64_displaced_step_copy_insn_closure *dsc, CORE_ADDR from, CORE_ADDR to, struct regcache *regs)
 
static void fixup_displaced_copy (struct gdbarch *gdbarch, amd64_displaced_step_copy_insn_closure *dsc, CORE_ADDR from, CORE_ADDR to, struct regcache *regs)
 
displaced_step_copy_insn_closure_up amd64_displaced_step_copy_insn (struct gdbarch *gdbarch, CORE_ADDR from, CORE_ADDR to, struct regcache *regs)
 
static int amd64_absolute_jmp_p (const struct amd64_insn *details)
 
static int amd64_jmp_p (const struct amd64_insn *details)
 
static int amd64_absolute_call_p (const struct amd64_insn *details)
 
static int amd64_ret_p (const struct amd64_insn *details)
 
static int amd64_call_p (const struct amd64_insn *details)
 
static int amd64_classify_insn_at (struct gdbarch *gdbarch, CORE_ADDR addr, int(*pred)(const struct amd64_insn *))
 
static int amd64_insn_is_call (struct gdbarch *gdbarch, CORE_ADDR addr)
 
static int amd64_insn_is_ret (struct gdbarch *gdbarch, CORE_ADDR addr)
 
static int amd64_insn_is_jump (struct gdbarch *gdbarch, CORE_ADDR addr)
 
void amd64_displaced_step_fixup (struct gdbarch *gdbarch, struct displaced_step_copy_insn_closure *dsc_, CORE_ADDR from, CORE_ADDR to, struct regcache *regs, bool completed_p)
 
static int rip_relative_offset (struct amd64_insn *insn)
 
static void append_insns (CORE_ADDR *to, ULONGEST len, const gdb_byte *buf)
 
static void amd64_relocate_instruction (struct gdbarch *gdbarch, CORE_ADDR *to, CORE_ADDR oldloc)
 
static void amd64_init_frame_cache (struct amd64_frame_cache *cache)
 
static struct amd64_frame_cacheamd64_alloc_frame_cache (void)
 
static CORE_ADDR amd64_analyze_stack_align (CORE_ADDR pc, CORE_ADDR current_pc, struct amd64_frame_cache *cache)
 
static CORE_ADDR amd64_x32_analyze_stack_align (CORE_ADDR pc, CORE_ADDR current_pc, struct amd64_frame_cache *cache)
 
static CORE_ADDR amd64_analyze_prologue (struct gdbarch *gdbarch, CORE_ADDR pc, CORE_ADDR current_pc, struct amd64_frame_cache *cache)
 
static CORE_ADDR amd64_skip_xmm_prologue (CORE_ADDR pc, CORE_ADDR start_pc)
 
static CORE_ADDR amd64_skip_prologue (struct gdbarch *gdbarch, CORE_ADDR start_pc)
 
static void amd64_frame_cache_1 (frame_info_ptr this_frame, struct amd64_frame_cache *cache)
 
static struct amd64_frame_cache * amd64_frame_cache (frame_info_ptr this_frame, void **this_cache)
 
static enum unwind_stop_reason amd64_frame_unwind_stop_reason (frame_info_ptr this_frame, void **this_cache)
 
static void amd64_frame_this_id (frame_info_ptr this_frame, void **this_cache, struct frame_id *this_id)
 
static struct valueamd64_frame_prev_register (frame_info_ptr this_frame, void **this_cache, int regnum)
 
static void amd64_gen_return_address (struct gdbarch *gdbarch, struct agent_expr *ax, struct axs_value *value, CORE_ADDR scope)
 
static struct amd64_frame_cacheamd64_sigtramp_frame_cache (frame_info_ptr this_frame, void **this_cache)
 
static enum unwind_stop_reason amd64_sigtramp_frame_unwind_stop_reason (frame_info_ptr this_frame, void **this_cache)
 
static void amd64_sigtramp_frame_this_id (frame_info_ptr this_frame, void **this_cache, struct frame_id *this_id)
 
static struct valueamd64_sigtramp_frame_prev_register (frame_info_ptr this_frame, void **this_cache, int regnum)
 
static int amd64_sigtramp_frame_sniffer (const struct frame_unwind *self, frame_info_ptr this_frame, void **this_cache)
 
static CORE_ADDR amd64_frame_base_address (frame_info_ptr this_frame, void **this_cache)
 
static int amd64_stack_frame_destroyed_p (struct gdbarch *gdbarch, CORE_ADDR pc)
 
static int amd64_epilogue_frame_sniffer_1 (const struct frame_unwind *self, frame_info_ptr this_frame, void **this_prologue_cache, bool override_p)
 
static int amd64_epilogue_override_frame_sniffer (const struct frame_unwind *self, frame_info_ptr this_frame, void **this_prologue_cache)
 
static int amd64_epilogue_frame_sniffer (const struct frame_unwind *self, frame_info_ptr this_frame, void **this_prologue_cache)
 
static struct amd64_frame_cacheamd64_epilogue_frame_cache (frame_info_ptr this_frame, void **this_cache)
 
static enum unwind_stop_reason amd64_epilogue_frame_unwind_stop_reason (frame_info_ptr this_frame, void **this_cache)
 
static void amd64_epilogue_frame_this_id (frame_info_ptr this_frame, void **this_cache, struct frame_id *this_id)
 
static struct frame_id amd64_dummy_id (struct gdbarch *gdbarch, frame_info_ptr this_frame)
 
static CORE_ADDR amd64_frame_align (struct gdbarch *gdbarch, CORE_ADDR sp)
 
static void amd64_supply_fpregset (const struct regset *regset, struct regcache *regcache, int regnum, const void *fpregs, size_t len)
 
static void amd64_collect_fpregset (const struct regset *regset, const struct regcache *regcache, int regnum, void *fpregs, size_t len)
 
static int amd64_get_longjmp_target (frame_info_ptr frame, CORE_ADDR *pc)
 
static bool amd64_in_indirect_branch_thunk (struct gdbarch *gdbarch, CORE_ADDR pc)
 
void amd64_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch, const target_desc *default_tdesc)
 
static void amd64_none_init_abi (gdbarch_info info, gdbarch *arch)
 
static struct typeamd64_x32_pseudo_register_type (struct gdbarch *gdbarch, int regnum)
 
void amd64_x32_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch, const target_desc *default_tdesc)
 
static void amd64_x32_none_init_abi (gdbarch_info info, gdbarch *arch)
 
const struct target_descamd64_target_description (uint64_t xcr0, bool segments)
 
void _initialize_amd64_tdep ()
 
void amd64_supply_fxsave (struct regcache *regcache, int regnum, const void *fxsave)
 
void amd64_supply_xsave (struct regcache *regcache, int regnum, const void *xsave)
 
void amd64_collect_fxsave (const struct regcache *regcache, int regnum, void *fxsave)
 
void amd64_collect_xsave (const struct regcache *regcache, int regnum, void *xsave, int gcore)
 

Variables

static const char *const amd64_register_names []
 
static const char *const amd64_ymm_names []
 
static const char *const amd64_ymm_avx512_names []
 
static const char *const amd64_ymmh_names []
 
static const char *const amd64_ymmh_avx512_names []
 
static const char *const amd64_mpx_names []
 
static const char *const amd64_k_names []
 
static const char *const amd64_zmmh_names []
 
static const char *const amd64_zmm_names []
 
static const char *const amd64_xmm_avx512_names []
 
static const char *const amd64_pkeys_names []
 
static int amd64_dwarf_regmap []
 
static const int amd64_dwarf_regmap_len
 
static const int amd64_arch_regmap [16]
 
static const int amd64_arch_regmap_len
 
static const char *const amd64_byte_names []
 
static const char *const amd64_word_names []
 
static const char *const amd64_dword_names []
 
static const unsigned char onebyte_has_modrm [256]
 
static const unsigned char twobyte_has_modrm [256]
 
static const struct frame_unwind amd64_frame_unwind
 
static const struct frame_unwind amd64_sigtramp_frame_unwind
 
static const struct frame_base amd64_frame_base
 
static const struct frame_unwind amd64_epilogue_override_frame_unwind
 
static const struct frame_unwind amd64_epilogue_frame_unwind
 
const struct regset amd64_fpregset
 
static const int amd64_record_regmap []
 

Macro Definition Documentation

◆ AMD64_NUM_LOWER_BYTE_REGS

#define AMD64_NUM_LOWER_BYTE_REGS   16

◆ AMD64_NUM_SAVED_REGS

#define AMD64_NUM_SAVED_REGS   AMD64_NUM_GREGS

Enumeration Type Documentation

◆ amd64_reg_class

Enumerator
AMD64_INTEGER 
AMD64_SSE 
AMD64_SSEUP 
AMD64_X87 
AMD64_X87UP 
AMD64_COMPLEX_X87 
AMD64_NO_CLASS 
AMD64_MEMORY 

Definition at line 495 of file amd64-tdep.c.

Function Documentation

◆ _initialize_amd64_tdep()

void _initialize_amd64_tdep ( )

Definition at line 3408 of file amd64-tdep.c.

Referenced by initialize_all_files().

◆ amd64_absolute_call_p()

static int amd64_absolute_call_p ( const struct amd64_insn * details)
static

Definition at line 1573 of file amd64-tdep.c.

References amd64_insn::opcode_offset, and amd64_insn::raw_insn.

Referenced by amd64_call_p(), and amd64_displaced_step_fixup().

◆ amd64_absolute_jmp_p()

static int amd64_absolute_jmp_p ( const struct amd64_insn * details)
static

Definition at line 1536 of file amd64-tdep.c.

References amd64_insn::opcode_offset, and amd64_insn::raw_insn.

Referenced by amd64_displaced_step_fixup(), and amd64_jmp_p().

◆ amd64_alloc_frame_cache()

static struct amd64_frame_cache * amd64_alloc_frame_cache ( void )
static

◆ amd64_analyze_prologue()

static CORE_ADDR amd64_analyze_prologue ( struct gdbarch * gdbarch,
CORE_ADDR pc,
CORE_ADDR current_pc,
struct amd64_frame_cache * cache )
static

◆ amd64_analyze_stack_align()

static CORE_ADDR amd64_analyze_stack_align ( CORE_ADDR pc,
CORE_ADDR current_pc,
struct amd64_frame_cache * cache )
static

◆ amd64_arch_reg_to_regnum()

static int amd64_arch_reg_to_regnum ( int reg)
static

◆ amd64_ax_pseudo_register_collect()

static int amd64_ax_pseudo_register_collect ( struct gdbarch * gdbarch,
struct agent_expr * ax,
int regnum )
static

◆ amd64_call_p()

static int amd64_call_p ( const struct amd64_insn * details)
static

◆ amd64_classify()

static void amd64_classify ( struct type * type,
enum amd64_reg_class theclass[2] )
static

◆ amd64_classify_aggregate()

static void amd64_classify_aggregate ( struct type * type,
enum amd64_reg_class theclass[2] )
static

◆ amd64_classify_aggregate_field()

static void amd64_classify_aggregate_field ( struct type * type,
int i,
enum amd64_reg_class theclass[2],
unsigned int bitoffset )
static

◆ amd64_classify_insn_at()

static int amd64_classify_insn_at ( struct gdbarch * gdbarch,
CORE_ADDR addr,
int(*)(const struct amd64_insn *) pred )
static

◆ amd64_collect_fpregset()

static void amd64_collect_fpregset ( const struct regset * regset,
const struct regcache * regcache,
int regnum,
void * fpregs,
size_t len )
static

◆ amd64_collect_fxsave()

void amd64_collect_fxsave ( const struct regcache * regcache,
int regnum,
void * fxsave )

◆ amd64_collect_xsave()

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

◆ amd64_displaced_step_copy_insn()

displaced_step_copy_insn_closure_up amd64_displaced_step_copy_insn ( struct gdbarch * gdbarch,
CORE_ADDR from,
CORE_ADDR to,
struct regcache * regs )

◆ amd64_displaced_step_fixup()

void amd64_displaced_step_fixup ( struct gdbarch * gdbarch,
struct displaced_step_copy_insn_closure * dsc_,
CORE_ADDR from,
CORE_ADDR to,
struct regcache * regs,
bool completed_p )

◆ amd64_dummy_id()

static struct frame_id amd64_dummy_id ( struct gdbarch * gdbarch,
frame_info_ptr this_frame )
static

◆ amd64_dwarf_reg_to_regnum()

static int amd64_dwarf_reg_to_regnum ( struct gdbarch * gdbarch,
int reg )
static

◆ amd64_epilogue_frame_cache()

static struct amd64_frame_cache * amd64_epilogue_frame_cache ( frame_info_ptr this_frame,
void ** this_cache )
static

◆ amd64_epilogue_frame_sniffer()

static int amd64_epilogue_frame_sniffer ( const struct frame_unwind * self,
frame_info_ptr this_frame,
void ** this_prologue_cache )
static

Definition at line 2954 of file amd64-tdep.c.

References amd64_epilogue_frame_sniffer_1().

◆ amd64_epilogue_frame_sniffer_1()

static int amd64_epilogue_frame_sniffer_1 ( const struct frame_unwind * self,
frame_info_ptr this_frame,
void ** this_prologue_cache,
bool override_p )
static

◆ amd64_epilogue_frame_this_id()

static void amd64_epilogue_frame_this_id ( frame_info_ptr this_frame,
void ** this_cache,
struct frame_id * this_id )
static

◆ amd64_epilogue_frame_unwind_stop_reason()

static enum unwind_stop_reason amd64_epilogue_frame_unwind_stop_reason ( frame_info_ptr this_frame,
void ** this_cache )
static

Definition at line 3004 of file amd64-tdep.c.

References amd64_epilogue_frame_cache(), and amd64_frame_cache::base_p.

◆ amd64_epilogue_override_frame_sniffer()

static int amd64_epilogue_override_frame_sniffer ( const struct frame_unwind * self,
frame_info_ptr this_frame,
void ** this_prologue_cache )
static

Definition at line 2945 of file amd64-tdep.c.

References amd64_epilogue_frame_sniffer_1().

◆ amd64_frame_align()

static CORE_ADDR amd64_frame_align ( struct gdbarch * gdbarch,
CORE_ADDR sp )
static

Definition at line 3065 of file amd64-tdep.c.

Referenced by amd64_init_abi().

◆ amd64_frame_base_address()

static CORE_ADDR amd64_frame_base_address ( frame_info_ptr this_frame,
void ** this_cache )
static

Definition at line 2873 of file amd64-tdep.c.

References amd64_frame_cache(), and amd64_frame_cache::base.

◆ amd64_frame_cache()

static struct amd64_frame_cache * amd64_frame_cache ( frame_info_ptr this_frame,
void ** this_cache )
static

◆ amd64_frame_cache_1()

static void amd64_frame_cache_1 ( frame_info_ptr this_frame,
struct amd64_frame_cache * cache )
static

◆ amd64_frame_prev_register()

static struct value * amd64_frame_prev_register ( frame_info_ptr this_frame,
void ** this_cache,
int regnum )
static

◆ amd64_frame_this_id()

static void amd64_frame_this_id ( frame_info_ptr this_frame,
void ** this_cache,
struct frame_id * this_id )
static

◆ amd64_frame_unwind_stop_reason()

static enum unwind_stop_reason amd64_frame_unwind_stop_reason ( frame_info_ptr this_frame,
void ** this_cache )
static

◆ amd64_gen_return_address()

static void amd64_gen_return_address ( struct gdbarch * gdbarch,
struct agent_expr * ax,
struct axs_value * value,
CORE_ADDR scope )
static

◆ amd64_get_insn_details()

static void amd64_get_insn_details ( gdb_byte * insn,
struct amd64_insn * details )
static

◆ amd64_get_longjmp_target()

static int amd64_get_longjmp_target ( frame_info_ptr frame,
CORE_ADDR * pc )
static

◆ amd64_get_unused_input_int_reg()

static int amd64_get_unused_input_int_reg ( const struct amd64_insn * details)
static

◆ amd64_has_unaligned_fields()

static bool amd64_has_unaligned_fields ( struct type * type)
static

◆ amd64_in_indirect_branch_thunk()

static bool amd64_in_indirect_branch_thunk ( struct gdbarch * gdbarch,
CORE_ADDR pc )
static

◆ amd64_init_abi()

void amd64_init_abi ( struct gdbarch_info info,
struct gdbarch * gdbarch,
const target_desc * default_tdesc )

Definition at line 3162 of file amd64-tdep.c.

References amd64_ax_pseudo_register_collect(), AMD64_BND0R_REGNUM, AMD64_BNDCFGU_REGNUM, amd64_dummy_id(), amd64_dwarf_reg_to_regnum(), AMD64_EFLAGS_REGNUM, amd64_epilogue_frame_unwind, amd64_epilogue_override_frame_unwind, amd64_fpregset, amd64_frame_align(), amd64_frame_base, amd64_frame_unwind, AMD64_FSBASE_REGNUM, amd64_gen_return_address(), amd64_get_longjmp_target(), amd64_in_indirect_branch_thunk(), amd64_insn_is_call(), amd64_insn_is_jump(), amd64_insn_is_ret(), AMD64_K0_REGNUM, amd64_k_names, amd64_mpx_names, AMD64_NUM_GREGS, AMD64_NUM_REGS, amd64_pkeys_names, AMD64_PKRU_REGNUM, amd64_pseudo_register_name(), amd64_pseudo_register_read_value(), amd64_pseudo_register_write(), amd64_push_dummy_call(), amd64_record_regmap, amd64_register_names, amd64_relocate_instruction(), amd64_return_value(), AMD64_RIP_REGNUM, AMD64_RSP_REGNUM, amd64_sigtramp_frame_unwind, amd64_skip_prologue(), AMD64_ST0_REGNUM, AMD64_XMM16_REGNUM, amd64_xmm_avx512_names, AMD64_YMM0H_REGNUM, AMD64_YMM16H_REGNUM, amd64_ymmh_avx512_names, amd64_ymmh_names, AMD64_ZMM0H_REGNUM, amd64_zmmh_names, i386_gdbarch_tdep::bnd0r_regnum, i386_gdbarch_tdep::bndcfgu_regnum, i386_gdbarch_tdep::fpregset, frame_base_set_default(), frame_unwind_append_unwinder(), frame_unwind_prepend_unwinder(), i386_gdbarch_tdep::fsbase_regnum, i386_stap_is_single_operand(), i386_stap_parse_special_token(), i387_convert_register_p(), I387_NUM_REGS, i387_register_to_value(), I387_SIZEOF_FXSAVE, i387_value_to_register(), i386_gdbarch_tdep::k0_regnum, i386_gdbarch_tdep::k_register_names, i386_gdbarch_tdep::mpx_register_names, i386_gdbarch_tdep::num_byte_regs, i386_gdbarch_tdep::num_core_regs, i386_gdbarch_tdep::num_dword_regs, i386_gdbarch_tdep::num_mmx_regs, i386_gdbarch_tdep::num_pkeys_regs, i386_gdbarch_tdep::num_word_regs, i386_gdbarch_tdep::num_xmm_avx512_regs, i386_gdbarch_tdep::num_xmm_regs, i386_gdbarch_tdep::num_ymm_avx512_regs, i386_gdbarch_tdep::num_ymm_regs, i386_gdbarch_tdep::num_zmm_regs, i386_gdbarch_tdep::pkeys_register_names, i386_gdbarch_tdep::pkru_regnum, i386_gdbarch_tdep::record_regmap, register_amd64_ravenscar_ops(), i386_gdbarch_tdep::register_names, set_gdbarch_ax_pseudo_register_collect(), set_gdbarch_convert_register_p(), set_gdbarch_dummy_id(), set_gdbarch_dwarf2_reg_to_regnum(), set_gdbarch_fp0_regnum(), set_gdbarch_frame_align(), set_gdbarch_frame_red_zone_size(), set_gdbarch_gen_return_address(), set_gdbarch_get_longjmp_target(), set_gdbarch_in_indirect_branch_thunk(), set_gdbarch_insn_is_call(), set_gdbarch_insn_is_jump(), set_gdbarch_insn_is_ret(), set_gdbarch_long_bit(), set_gdbarch_long_double_bit(), set_gdbarch_long_long_bit(), set_gdbarch_num_regs(), set_gdbarch_pc_regnum(), set_gdbarch_ps_regnum(), set_gdbarch_pseudo_register_read_value(), set_gdbarch_pseudo_register_write(), set_gdbarch_ptr_bit(), set_gdbarch_push_dummy_call(), set_gdbarch_register_to_value(), set_gdbarch_relocate_instruction(), set_gdbarch_return_value_as_value(), set_gdbarch_skip_prologue(), set_gdbarch_sp_regnum(), set_gdbarch_stab_reg_to_regnum(), set_gdbarch_stap_integer_prefixes(), set_gdbarch_stap_is_single_operand(), set_gdbarch_stap_parse_special_token(), set_gdbarch_stap_register_indirection_prefixes(), set_gdbarch_stap_register_indirection_suffixes(), set_gdbarch_stap_register_prefixes(), set_gdbarch_value_to_register(), set_tdesc_pseudo_register_name(), i386_gdbarch_tdep::sizeof_fpregset, i386_gdbarch_tdep::st0_regnum, stap_register_indirection_prefixes, stap_register_indirection_suffixes, i386_gdbarch_tdep::tdesc, tdesc_find_feature(), tdesc_has_registers(), i386_gdbarch_tdep::xmm16_regnum, i386_gdbarch_tdep::xmm_avx512_register_names, i386_gdbarch_tdep::ymm0h_regnum, i386_gdbarch_tdep::ymm16h_register_names, i386_gdbarch_tdep::ymm16h_regnum, i386_gdbarch_tdep::ymmh_register_names, i386_gdbarch_tdep::zmm0h_regnum, and i386_gdbarch_tdep::zmmh_register_names.

Referenced by amd64_dicos_init_abi(), amd64_linux_init_abi(), amd64_none_init_abi(), amd64_sol2_init_abi(), amd64_windows_init_abi_common(), amd64_x32_init_abi(), amd64fbsd_init_abi(), amd64nbsd_init_abi(), amd64obsd_init_abi(), and x86_darwin_init_abi_64().

◆ amd64_init_frame_cache()

static void amd64_init_frame_cache ( struct amd64_frame_cache * cache)
static

◆ amd64_insn_is_call()

static int amd64_insn_is_call ( struct gdbarch * gdbarch,
CORE_ADDR addr )
static

Definition at line 1665 of file amd64-tdep.c.

References amd64_call_p(), and amd64_classify_insn_at().

Referenced by amd64_init_abi().

◆ amd64_insn_is_jump()

static int amd64_insn_is_jump ( struct gdbarch * gdbarch,
CORE_ADDR addr )
static

Definition at line 1681 of file amd64-tdep.c.

References amd64_classify_insn_at(), and amd64_jmp_p().

Referenced by amd64_init_abi().

◆ amd64_insn_is_ret()

static int amd64_insn_is_ret ( struct gdbarch * gdbarch,
CORE_ADDR addr )
static

Definition at line 1673 of file amd64-tdep.c.

References amd64_classify_insn_at(), and amd64_ret_p().

Referenced by amd64_init_abi().

◆ amd64_jmp_p()

static int amd64_jmp_p ( const struct amd64_insn * details)
static

◆ amd64_merge_classes()

static enum amd64_reg_class amd64_merge_classes ( enum amd64_reg_class class1,
enum amd64_reg_class class2 )
static

◆ amd64_none_init_abi()

static void amd64_none_init_abi ( gdbarch_info info,
gdbarch * arch )
static

Definition at line 3337 of file amd64-tdep.c.

References amd64_init_abi(), amd64_target_description(), and target_desc::arch.

◆ amd64_pseudo_register_name()

static const char * amd64_pseudo_register_name ( struct gdbarch * gdbarch,
int regnum )
static

◆ amd64_pseudo_register_read_value()

static struct value * amd64_pseudo_register_read_value ( struct gdbarch * gdbarch,
readable_regcache * regcache,
int regnum )
static

◆ amd64_pseudo_register_write()

static void amd64_pseudo_register_write ( struct gdbarch * gdbarch,
struct regcache * regcache,
int regnum,
const gdb_byte * buf )
static

◆ amd64_push_arguments()

static CORE_ADDR amd64_push_arguments ( struct regcache * regcache,
int nargs,
struct value ** args,
CORE_ADDR sp,
function_call_return_method return_method )
static

◆ amd64_push_dummy_call()

static CORE_ADDR amd64_push_dummy_call ( struct gdbarch * gdbarch,
struct value * function,
struct regcache * regcache,
CORE_ADDR bp_addr,
int nargs,
struct value ** args,
CORE_ADDR sp,
function_call_return_method return_method,
CORE_ADDR struct_addr )
static

◆ amd64_relocate_instruction()

static void amd64_relocate_instruction ( struct gdbarch * gdbarch,
CORE_ADDR * to,
CORE_ADDR oldloc )
static

◆ amd64_ret_p()

static int amd64_ret_p ( const struct amd64_insn * details)
static

Definition at line 1592 of file amd64-tdep.c.

References amd64_insn::opcode_offset, and amd64_insn::raw_insn.

Referenced by amd64_displaced_step_fixup(), and amd64_insn_is_ret().

◆ amd64_return_value()

static enum return_value_convention amd64_return_value ( struct gdbarch * gdbarch,
struct value * function,
struct type * type,
struct regcache * regcache,
struct value ** read_value,
const gdb_byte * writebuf )
static

◆ amd64_sigtramp_frame_cache()

static struct amd64_frame_cache * amd64_sigtramp_frame_cache ( frame_info_ptr this_frame,
void ** this_cache )
static

◆ amd64_sigtramp_frame_prev_register()

static struct value * amd64_sigtramp_frame_prev_register ( frame_info_ptr this_frame,
void ** this_cache,
int regnum )
static

Definition at line 2820 of file amd64-tdep.c.

References amd64_frame_prev_register(), amd64_sigtramp_frame_cache(), and regnum.

◆ amd64_sigtramp_frame_sniffer()

static int amd64_sigtramp_frame_sniffer ( const struct frame_unwind * self,
frame_info_ptr this_frame,
void ** this_cache )
static

◆ amd64_sigtramp_frame_this_id()

static void amd64_sigtramp_frame_this_id ( frame_info_ptr this_frame,
void ** this_cache,
struct frame_id * this_id )
static

◆ amd64_sigtramp_frame_unwind_stop_reason()

static enum unwind_stop_reason amd64_sigtramp_frame_unwind_stop_reason ( frame_info_ptr this_frame,
void ** this_cache )
static

Definition at line 2789 of file amd64-tdep.c.

References amd64_sigtramp_frame_cache(), and amd64_frame_cache::base_p.

◆ amd64_skip_prefixes()

static gdb_byte * amd64_skip_prefixes ( gdb_byte * insn)
static

Definition at line 1226 of file amd64-tdep.c.

Referenced by amd64_get_insn_details(), and amd64_relocate_instruction().

◆ amd64_skip_prologue()

static CORE_ADDR amd64_skip_prologue ( struct gdbarch * gdbarch,
CORE_ADDR start_pc )
static

◆ amd64_skip_xmm_prologue()

static CORE_ADDR amd64_skip_xmm_prologue ( CORE_ADDR pc,
CORE_ADDR start_pc )
static

◆ amd64_stack_frame_destroyed_p()

static int amd64_stack_frame_destroyed_p ( struct gdbarch * gdbarch,
CORE_ADDR pc )
static

Definition at line 2898 of file amd64-tdep.c.

References target_read_memory().

Referenced by amd64_epilogue_frame_sniffer_1().

◆ amd64_supply_fpregset()

static void amd64_supply_fpregset ( const struct regset * regset,
struct regcache * regcache,
int regnum,
const void * fpregs,
size_t len )
static

◆ amd64_supply_fxsave()

void amd64_supply_fxsave ( struct regcache * regcache,
int regnum,
const void * fxsave )

◆ amd64_supply_xsave()

void amd64_supply_xsave ( struct regcache * regcache,
int regnum,
const void * xsave )

◆ amd64_syscall_p()

static int amd64_syscall_p ( const struct amd64_insn * insn,
int * lengthp )
static

◆ amd64_target_description()

const struct target_desc * amd64_target_description ( uint64_t xcr0,
bool segments )

◆ amd64_x32_analyze_stack_align()

static CORE_ADDR amd64_x32_analyze_stack_align ( CORE_ADDR pc,
CORE_ADDR current_pc,
struct amd64_frame_cache * cache )
static

◆ amd64_x32_init_abi()

void amd64_x32_init_abi ( struct gdbarch_info info,
struct gdbarch * gdbarch,
const target_desc * default_tdesc )

◆ amd64_x32_none_init_abi()

static void amd64_x32_none_init_abi ( gdbarch_info info,
gdbarch * arch )
static

Definition at line 3378 of file amd64-tdep.c.

References amd64_target_description(), amd64_x32_init_abi(), and type::arch().

◆ amd64_x32_pseudo_register_type()

static struct type * amd64_x32_pseudo_register_type ( struct gdbarch * gdbarch,
int regnum )
static

◆ append_insns()

static void append_insns ( CORE_ADDR * to,
ULONGEST len,
const gdb_byte * buf )
static

Definition at line 1821 of file amd64-tdep.c.

References target_write_memory().

Referenced by amd64_relocate_instruction().

◆ fixup_displaced_copy()

static void fixup_displaced_copy ( struct gdbarch * gdbarch,
amd64_displaced_step_copy_insn_closure * dsc,
CORE_ADDR from,
CORE_ADDR to,
struct regcache * regs )
static

◆ fixup_riprel()

static void fixup_riprel ( struct gdbarch * gdbarch,
amd64_displaced_step_copy_insn_closure * dsc,
CORE_ADDR from,
CORE_ADDR to,
struct regcache * regs )
static

◆ rex_prefix_p()

static int rex_prefix_p ( gdb_byte pfx)
static

Definition at line 1200 of file amd64-tdep.c.

Referenced by amd64_get_insn_details(), and fixup_riprel().

◆ rip_relative_offset()

static int rip_relative_offset ( struct amd64_insn * insn)
static

Definition at line 1804 of file amd64-tdep.c.

References amd64_insn::modrm_offset, and amd64_insn::raw_insn.

Referenced by amd64_relocate_instruction().

◆ vex2_prefix_p()

static bool vex2_prefix_p ( gdb_byte pfx)
static

Definition at line 1208 of file amd64-tdep.c.

Referenced by amd64_get_insn_details().

◆ vex3_prefix_p()

static bool vex3_prefix_p ( gdb_byte pfx)
static

Definition at line 1216 of file amd64-tdep.c.

Referenced by amd64_get_insn_details(), and fixup_riprel().

Variable Documentation

◆ amd64_arch_regmap

const int amd64_arch_regmap[16]
static
Initial value:
=
{
}
@ AMD64_RAX_REGNUM
Definition amd64-tdep.h:35
@ AMD64_R11_REGNUM
Definition amd64-tdep.h:46
@ AMD64_R12_REGNUM
Definition amd64-tdep.h:47
@ AMD64_R8_REGNUM
Definition amd64-tdep.h:43
@ AMD64_R9_REGNUM
Definition amd64-tdep.h:44
@ AMD64_RCX_REGNUM
Definition amd64-tdep.h:37
@ AMD64_RBX_REGNUM
Definition amd64-tdep.h:36
@ AMD64_RBP_REGNUM
Definition amd64-tdep.h:41
@ AMD64_RSI_REGNUM
Definition amd64-tdep.h:39
@ AMD64_R14_REGNUM
Definition amd64-tdep.h:49
@ AMD64_RDI_REGNUM
Definition amd64-tdep.h:40
@ AMD64_RDX_REGNUM
Definition amd64-tdep.h:38
@ AMD64_R13_REGNUM
Definition amd64-tdep.h:48
@ AMD64_R10_REGNUM
Definition amd64-tdep.h:45
@ AMD64_R15_REGNUM
Definition amd64-tdep.h:50
@ AMD64_RSP_REGNUM
Definition amd64-tdep.h:42

Definition at line 266 of file amd64-tdep.c.

Referenced by amd64_arch_reg_to_regnum().

◆ amd64_arch_regmap_len

const int amd64_arch_regmap_len
static
Initial value:
=
(sizeof (amd64_arch_regmap) / sizeof (amd64_arch_regmap[0]))
static const int amd64_arch_regmap[16]
Definition amd64-tdep.c:266

Definition at line 286 of file amd64-tdep.c.

Referenced by amd64_arch_reg_to_regnum().

◆ amd64_byte_names

const char* const amd64_byte_names[]
static
Initial value:
=
{
"al", "bl", "cl", "dl", "sil", "dil", "bpl", "spl",
"r8l", "r9l", "r10l", "r11l", "r12l", "r13l", "r14l", "r15l",
"ah", "bh", "ch", "dh"
}

Definition at line 302 of file amd64-tdep.c.

Referenced by amd64_pseudo_register_name().

◆ amd64_dwarf_regmap

int amd64_dwarf_regmap[]
static

Definition at line 162 of file amd64-tdep.c.

Referenced by amd64_dwarf_reg_to_regnum().

◆ amd64_dwarf_regmap_len

const int amd64_dwarf_regmap_len
static
Initial value:
=
(sizeof (amd64_dwarf_regmap) / sizeof (amd64_dwarf_regmap[0]))
static int amd64_dwarf_regmap[]
Definition amd64-tdep.c:162

Definition at line 241 of file amd64-tdep.c.

Referenced by amd64_dwarf_reg_to_regnum().

◆ amd64_dword_names

const char* const amd64_dword_names[]
static
Initial value:
=
{
"eax", "ebx", "ecx", "edx", "esi", "edi", "ebp", "esp",
"r8d", "r9d", "r10d", "r11d", "r12d", "r13d", "r14d", "r15d",
"eip"
}

Definition at line 322 of file amd64-tdep.c.

Referenced by amd64_pseudo_register_name().

◆ amd64_epilogue_frame_unwind

const struct frame_unwind amd64_epilogue_frame_unwind
static
Initial value:
=
{
"amd64 epilogue",
NULL,
}
static enum unwind_stop_reason amd64_epilogue_frame_unwind_stop_reason(frame_info_ptr this_frame, void **this_cache)
static struct value * amd64_frame_prev_register(frame_info_ptr this_frame, void **this_cache, int regnum)
static void amd64_epilogue_frame_this_id(frame_info_ptr this_frame, void **this_cache, struct frame_id *this_id)
static int amd64_epilogue_frame_sniffer(const struct frame_unwind *self, frame_info_ptr this_frame, void **this_prologue_cache)
@ NORMAL_FRAME
Definition frame.h:187

Definition at line 3041 of file amd64-tdep.c.

Referenced by amd64_init_abi().

◆ amd64_epilogue_override_frame_unwind

const struct frame_unwind amd64_epilogue_override_frame_unwind
static
Initial value:
=
{
"amd64 epilogue override",
NULL,
}
static int amd64_epilogue_override_frame_sniffer(const struct frame_unwind *self, frame_info_ptr this_frame, void **this_prologue_cache)

Definition at line 3030 of file amd64-tdep.c.

Referenced by amd64_init_abi().

◆ amd64_fpregset

const struct regset amd64_fpregset
Initial value:
=
{
}
static void amd64_supply_fpregset(const struct regset *regset, struct regcache *regcache, int regnum, const void *fpregs, size_t len)
static void amd64_collect_fpregset(const struct regset *regset, const struct regcache *regcache, int regnum, void *fpregs, size_t len)

Definition at line 3103 of file amd64-tdep.c.

Referenced by amd64_init_abi(), amd64_linux_iterate_over_regset_sections(), and amd64fbsd_iterate_over_regset_sections().

◆ amd64_frame_base

const struct frame_base amd64_frame_base
static
Initial value:
=
{
}
static const struct frame_unwind amd64_frame_unwind
static CORE_ADDR amd64_frame_base_address(frame_info_ptr this_frame, void **this_cache)

Definition at line 2881 of file amd64-tdep.c.

Referenced by amd64_init_abi().

◆ amd64_frame_unwind

const struct frame_unwind amd64_frame_unwind
static
Initial value:
=
{
"amd64 prologue",
NULL,
}
static enum unwind_stop_reason amd64_frame_unwind_stop_reason(frame_info_ptr this_frame, void **this_cache)
static void amd64_frame_this_id(frame_info_ptr this_frame, void **this_cache, struct frame_id *this_id)
int default_frame_sniffer(const struct frame_unwind *self, frame_info_ptr this_frame, void **this_prologue_cache)

Definition at line 2714 of file amd64-tdep.c.

Referenced by amd64_init_abi().

◆ amd64_k_names

const char* const amd64_k_names[]
static
Initial value:
=
{
"k0", "k1", "k2", "k3",
"k4", "k5", "k6", "k7"
}

Definition at line 118 of file amd64-tdep.c.

Referenced by amd64_init_abi().

◆ amd64_mpx_names

const char* const amd64_mpx_names[]
static
Initial value:
=
{
"bnd0raw", "bnd1raw", "bnd2raw", "bnd3raw", "bndcfgu", "bndstatus"
}

Definition at line 113 of file amd64-tdep.c.

Referenced by amd64_init_abi().

◆ amd64_pkeys_names

const char* const amd64_pkeys_names[]
static
Initial value:
= {
"pkru"
}

Definition at line 155 of file amd64-tdep.c.

Referenced by amd64_init_abi().

◆ amd64_record_regmap

const int amd64_record_regmap[]
static

◆ amd64_register_names

const char* const amd64_register_names[]
static
Initial value:
=
{
"rax", "rbx", "rcx", "rdx", "rsi", "rdi", "rbp", "rsp",
"r8", "r9", "r10", "r11", "r12", "r13", "r14", "r15",
"rip", "eflags", "cs", "ss", "ds", "es", "fs", "gs",
"st0", "st1", "st2", "st3", "st4", "st5", "st6", "st7",
"fctrl", "fstat", "ftag", "fiseg", "fioff", "foseg", "fooff", "fop",
"xmm0", "xmm1", "xmm2", "xmm3", "xmm4", "xmm5", "xmm6", "xmm7",
"xmm8", "xmm9", "xmm10", "xmm11", "xmm12", "xmm13", "xmm14", "xmm15",
"mxcsr",
}

Definition at line 63 of file amd64-tdep.c.

Referenced by amd64_in_indirect_branch_thunk(), and amd64_init_abi().

◆ amd64_sigtramp_frame_unwind

const struct frame_unwind amd64_sigtramp_frame_unwind
static
Initial value:
=
{
"amd64 sigtramp",
NULL,
}
static struct value * amd64_sigtramp_frame_prev_register(frame_info_ptr this_frame, void **this_cache, int regnum)
static enum unwind_stop_reason amd64_sigtramp_frame_unwind_stop_reason(frame_info_ptr this_frame, void **this_cache)
static int amd64_sigtramp_frame_sniffer(const struct frame_unwind *self, frame_info_ptr this_frame, void **this_cache)
static void amd64_sigtramp_frame_this_id(frame_info_ptr this_frame, void **this_cache, struct frame_id *this_id)
@ SIGTRAMP_FRAME
Definition frame.h:198

Definition at line 2860 of file amd64-tdep.c.

Referenced by amd64_init_abi().

◆ amd64_word_names

const char* const amd64_word_names[]
static
Initial value:
=
{
"ax", "bx", "cx", "dx", "si", "di", "bp", "",
"r8w", "r9w", "r10w", "r11w", "r12w", "r13w", "r14w", "r15w"
}

Definition at line 314 of file amd64-tdep.c.

Referenced by amd64_pseudo_register_name().

◆ amd64_xmm_avx512_names

const char* const amd64_xmm_avx512_names[]
static
Initial value:
= {
"xmm16", "xmm17", "xmm18", "xmm19",
"xmm20", "xmm21", "xmm22", "xmm23",
"xmm24", "xmm25", "xmm26", "xmm27",
"xmm28", "xmm29", "xmm30", "xmm31"
}

Definition at line 148 of file amd64-tdep.c.

Referenced by amd64_init_abi().

◆ amd64_ymm_avx512_names

const char* const amd64_ymm_avx512_names[]
static
Initial value:
=
{
"ymm16", "ymm17", "ymm18", "ymm19",
"ymm20", "ymm21", "ymm22", "ymm23",
"ymm24", "ymm25", "ymm26", "ymm27",
"ymm28", "ymm29", "ymm30", "ymm31"
}

Definition at line 89 of file amd64-tdep.c.

Referenced by amd64_pseudo_register_name().

◆ amd64_ymm_names

const char* const amd64_ymm_names[]
static
Initial value:
=
{
"ymm0", "ymm1", "ymm2", "ymm3",
"ymm4", "ymm5", "ymm6", "ymm7",
"ymm8", "ymm9", "ymm10", "ymm11",
"ymm12", "ymm13", "ymm14", "ymm15"
}

Definition at line 81 of file amd64-tdep.c.

Referenced by amd64_pseudo_register_name().

◆ amd64_ymmh_avx512_names

const char* const amd64_ymmh_avx512_names[]
static
Initial value:
=
{
"ymm16h", "ymm17h", "ymm18h", "ymm19h",
"ymm20h", "ymm21h", "ymm22h", "ymm23h",
"ymm24h", "ymm25h", "ymm26h", "ymm27h",
"ymm28h", "ymm29h", "ymm30h", "ymm31h"
}

Definition at line 105 of file amd64-tdep.c.

Referenced by amd64_init_abi().

◆ amd64_ymmh_names

const char* const amd64_ymmh_names[]
static
Initial value:
=
{
"ymm0h", "ymm1h", "ymm2h", "ymm3h",
"ymm4h", "ymm5h", "ymm6h", "ymm7h",
"ymm8h", "ymm9h", "ymm10h", "ymm11h",
"ymm12h", "ymm13h", "ymm14h", "ymm15h"
}

Definition at line 97 of file amd64-tdep.c.

Referenced by amd64_init_abi().

◆ amd64_zmm_names

const char* const amd64_zmm_names[]
static
Initial value:
=
{
"zmm0", "zmm1", "zmm2", "zmm3",
"zmm4", "zmm5", "zmm6", "zmm7",
"zmm8", "zmm9", "zmm10", "zmm11",
"zmm12", "zmm13", "zmm14", "zmm15",
"zmm16", "zmm17", "zmm18", "zmm19",
"zmm20", "zmm21", "zmm22", "zmm23",
"zmm24", "zmm25", "zmm26", "zmm27",
"zmm28", "zmm29", "zmm30", "zmm31"
}

Definition at line 136 of file amd64-tdep.c.

Referenced by amd64_pseudo_register_name().

◆ amd64_zmmh_names

const char* const amd64_zmmh_names[]
static
Initial value:
=
{
"zmm0h", "zmm1h", "zmm2h", "zmm3h",
"zmm4h", "zmm5h", "zmm6h", "zmm7h",
"zmm8h", "zmm9h", "zmm10h", "zmm11h",
"zmm12h", "zmm13h", "zmm14h", "zmm15h",
"zmm16h", "zmm17h", "zmm18h", "zmm19h",
"zmm20h", "zmm21h", "zmm22h", "zmm23h",
"zmm24h", "zmm25h", "zmm26h", "zmm27h",
"zmm28h", "zmm29h", "zmm30h", "zmm31h"
}

Definition at line 124 of file amd64-tdep.c.

Referenced by amd64_init_abi().

◆ onebyte_has_modrm

const unsigned char onebyte_has_modrm[256]
static
Initial value:
= {
1,1,1,1,0,0,0,0,1,1,1,1,0,0,0,0,
1,1,1,1,0,0,0,0,1,1,1,1,0,0,0,0,
1,1,1,1,0,0,0,0,1,1,1,1,0,0,0,0,
1,1,1,1,0,0,0,0,1,1,1,1,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,1,1,0,0,0,0,0,1,0,1,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
1,1,0,0,1,1,1,1,0,0,0,0,0,0,0,0,
1,1,1,1,0,0,0,0,1,1,1,1,1,1,1,1,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,1,1,0,0,0,0,0,0,1,1
}

Definition at line 1151 of file amd64-tdep.c.

Referenced by amd64_get_insn_details().

◆ twobyte_has_modrm

const unsigned char twobyte_has_modrm[256]
static
Initial value:
= {
1,1,1,1,0,0,0,0,0,0,0,0,0,1,0,1,
1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,0,1,1,1,1,1,1,1,1,
0,0,0,0,0,0,0,0,1,0,1,0,0,0,0,0,
1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,0,1,1,1,1,1,1,1,1,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
0,0,0,1,1,1,1,1,0,0,0,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,0,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,
1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0
}

Definition at line 1174 of file amd64-tdep.c.

Referenced by amd64_get_insn_details().