GDB (xrefs)

Macros | Functions | Variables
/tmp/gdb-8.1/gdb/tic6x-linux-tdep.c File Reference
`#include "defs.h"`
`#include "solib.h"`
`#include "osabi.h"`
`#include "linux-tdep.h"`
`#include "tic6x-tdep.h"`
`#include "trad-frame.h"`
`#include "tramp-frame.h"`
`#include "elf-bfd.h"`
`#include "elf/tic6x.h"`

Go to the source code of this file.

## Macros
#define | TIC6X_SP_RT_SIGFRAME 8
#define | TIC6X_SIGINFO_SIZE 128
#define | TIC6X_STACK_T_SIZE (3 * 4)

## Functions
static unsigned int | tic6x_register_sigcontext_offset (unsigned int regnum, struct gdbarch *gdbarch)
static void | tic6x_linux_rt_sigreturn_init (const struct tramp_frame *self, struct frame_info *this_frame, struct trad_frame_cache *this_cache, CORE_ADDR func)
static CORE_ADDR | tic6x_linux_syscall_next_pc (struct frame_info *frame)
static void | tic6x_uclinux_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
void | _initialize_tic6x_linux_tdep (void)

## Variables
static const gdb_byte | tic6x_bkpt_bnop_be [] = { 0x00, 0x00, 0xa1, 0x22 }
static const gdb_byte | tic6x_bkpt_bnop_le [] = { 0x22, 0xa1, 0x00, 0x00 }
static struct tramp_frame | tic6x_linux_rt_sigreturn_tramp_frame
struct target_so_ops | dsbt_so_ops

## Macro Definition Documentation

## ◆ TIC6X_SIGINFO_SIZE

#define TIC6X_SIGINFO_SIZE 128

Definition at line 33 of file tic6x-linux-tdep.c.

Referenced by tic6x_linux_rt_sigreturn_init().

## ◆ TIC6X_SP_RT_SIGFRAME

#define TIC6X_SP_RT_SIGFRAME 8

Definition at line 31 of file tic6x-linux-tdep.c.

Referenced by tic6x_linux_rt_sigreturn_init().

## ◆ TIC6X_STACK_T_SIZE

#define TIC6X_STACK_T_SIZE (3 * 4)

Definition at line 36 of file tic6x-linux-tdep.c.

Referenced by tic6x_linux_rt_sigreturn_init().

## Function Documentation

## ◆ _initialize_tic6x_linux_tdep()

void _initialize_tic6x_linux_tdep | ( | void |  | ) |

Definition at line 207 of file tic6x-linux-tdep.c.

References GDB_OSABI_LINUX, gdbarch_register_osabi(), and tic6x_uclinux_init_abi().

## ◆ tic6x_linux_rt_sigreturn_init()

static void tic6x_linux_rt_sigreturn_init | ( | const struct tramp_frame * | self,
|  | struct frame_info * | this_frame,
|  | struct trad_frame_cache * | this_cache,
|  | CORE_ADDR | func
| ) |  |
| static

Definition at line 79 of file tic6x-linux-tdep.c.

References frame_id_build(), func, gdb_assert, gdbarch_tdep(), get_frame_arch(), get_frame_register_unsigned(), gdbarch_tdep::has_gp, reg_offset, gdbarch_tdep::sp, TIC6X_B0_REGNUM, TIC6X_PC_REGNUM, tic6x_register_sigcontext_offset(), TIC6X_SIGINFO_SIZE, TIC6X_SP_REGNUM, TIC6X_SP_RT_SIGFRAME, TIC6X_STACK_T_SIZE, trad_frame_set_id(), and trad_frame_set_reg_addr().

## ◆ tic6x_linux_syscall_next_pc()

static CORE_ADDR tic6x_linux_syscall_next_pc | ( | struct frame_info * | frame | ) |
| static

Definition at line 150 of file tic6x-linux-tdep.c.

References frame_unwind_caller_pc(), get_frame_pc(), get_frame_register_unsigned(), and TIC6X_B0_REGNUM.

Referenced by tic6x_uclinux_init_abi().

## ◆ tic6x_register_sigcontext_offset()

static unsigned int tic6x_register_sigcontext_offset | ( | unsigned int | regnum,
|  | struct gdbarch * | gdbarch
| ) |  |
| static

Definition at line 45 of file tic6x-linux-tdep.c.

References gdbarch_tdep(), gdbarch_tdep::has_gp, regnum, TIC6X_A4_REGNUM, TIC6X_A5_REGNUM, TIC6X_B0_REGNUM, TIC6X_B4_REGNUM, TIC6X_B5_REGNUM, TIC6X_PC_REGNUM, and TIC6X_SP_REGNUM.

Referenced by tic6x_linux_rt_sigreturn_init().

## ◆ tic6x_uclinux_init_abi()

static void tic6x_uclinux_init_abi | ( | struct gdbarch_info | info,
|  | struct gdbarch * | gdbarch
| ) |  |
| static

Definition at line 165 of file tic6x-linux-tdep.c.

References gdbarch_info::abfd, gdbarch_tdep::breakpoint, gdbarch_info::byte_order, dsbt_so_ops, gdbarch_tdep(), linux_init_abi(), set_solib_ops(), gdbarch_tdep::syscall_next_pc, tic6x_bkpt_bnop_be, tic6x_bkpt_bnop_le, tic6x_bkpt_illegal_opcode_be, tic6x_bkpt_illegal_opcode_le, tic6x_linux_rt_sigreturn_tramp_frame, tic6x_linux_syscall_next_pc(), and tramp_frame_prepend_unwinder().

Referenced by _initialize_tic6x_linux_tdep().

## Variable Documentation

## ◆ dsbt_so_ops

struct target_so_ops dsbt_so_ops

Definition at line 1049 of file solib-dsbt.c.

Referenced by _initialize_dsbt_solib(), and tic6x_uclinux_init_abi().

## ◆ tic6x_bkpt_bnop_be

const gdb_byte tic6x_bkpt_bnop_be[] = { 0x00, 0x00, 0xa1, 0x22 }
| static

Definition at line 38 of file tic6x-linux-tdep.c.

Referenced by tic6x_uclinux_init_abi().

## ◆ tic6x_bkpt_bnop_le

const gdb_byte tic6x_bkpt_bnop_le[] = { 0x22, 0xa1, 0x00, 0x00 }
| static

Definition at line 39 of file tic6x-linux-tdep.c.

Referenced by tic6x_uclinux_init_abi().

## ◆ tic6x_linux_rt_sigreturn_tramp_frame

struct tramp_frame tic6x_linux_rt_sigreturn_tramp_frame
| static

Initial value:
=
{
SIGTRAMP_FRAME,
4,
{
{0x000045aa, 0x0fffffff},
{0x10000000, -1},
{TRAMP_SENTINEL_INSN}
},
tic6x_linux_rt_sigreturn_init
}
TRAMP_SENTINEL_INSN
#define TRAMP_SENTINEL_INSN
Definition: tramp-frame.h:44
SIGTRAMP_FRAME
Definition: frame.h:255
tic6x_linux_rt_sigreturn_init
static void tic6x_linux_rt_sigreturn_init(const struct tramp_frame *self, struct frame_info *this_frame, struct trad_frame_cache *this_cache, CORE_ADDR func)
Definition: tic6x-linux-tdep.c:79

Definition at line 134 of file tic6x-linux-tdep.c.

Referenced by tic6x_uclinux_init_abi().