GDB (xrefs)

Classes | Functions
/tmp/gdb-8.1/gdb/tramp-frame.c File Reference
`#include "defs.h"`
`#include "tramp-frame.h"`
`#include "frame-unwind.h"`
`#include "gdbcore.h"`
`#include "symtab.h"`
`#include "objfiles.h"`
`#include "target.h"`
`#include "trad-frame.h"`
`#include "frame-base.h"`

Go to the source code of this file.

## Classes
struct | frame_data
struct | tramp_frame_cache

## Functions
static struct trad_frame_cache * | tramp_frame_cache (struct frame_info *this_frame, void **this_cache)
static void | tramp_frame_this_id (struct frame_info *this_frame, void **this_cache, struct frame_id *this_id)
static struct value * | tramp_frame_prev_register (struct frame_info *this_frame, void **this_cache, int prev_regnum)
static CORE_ADDR | tramp_frame_start (const struct tramp_frame *tramp, struct frame_info *this_frame, CORE_ADDR pc)
static int | tramp_frame_sniffer (const struct frame_unwind *self, struct frame_info *this_frame, void **this_cache)
void | tramp_frame_prepend_unwinder (struct gdbarch *gdbarch, const struct tramp_frame *tramp_frame)

## Function Documentation

## ◆ tramp_frame_cache()

static struct trad_frame_cache* tramp_frame_cache | ( | struct frame_info * | this_frame,
|  | void ** | this_cache
| ) |  |
| static

Definition at line 43 of file tramp-frame.c.

References tramp_frame_cache::func, tramp_frame::init, tramp_frame_cache::trad_cache, trad_frame_cache_zalloc(), and tramp_frame_cache::tramp_frame.

Referenced by tramp_frame_prev_register(), and tramp_frame_this_id().

## ◆ tramp_frame_prepend_unwinder()

void tramp_frame_prepend_unwinder | ( | struct gdbarch * | gdbarch,
|  | const struct tramp_frame * | tramp_frame
| ) |  |

Definition at line 146 of file tramp-frame.c.

References tramp_frame::bytes, default_frame_unwind_stop_reason(), tramp_frame::frame_type, frame_unwind_prepend_unwinder(), gdb_assert, GDBARCH_OBSTACK_ZALLOC, tramp_frame::insn, tramp_frame::insn_size, frame_unwind::prev_register, frame_unwind::sniffer, frame_unwind::stop_reason, frame_unwind::this_id, frame_data::tramp_frame, tramp_frame_prev_register(), tramp_frame_sniffer(), tramp_frame_this_id(), TRAMP_SENTINEL_INSN, frame_unwind::type, and frame_unwind::unwind_data.

Referenced by aarch64_fbsd_init_abi(), aarch64_linux_init_abi(), am33_linux_init_osabi(), arm_fbsd_init_abi(), arm_linux_init_abi(), armobsd_init_abi(), bfin_linux_init_abi(), hppanbsd_init_abi(), i386nbsd_init_abi(), microblaze_linux_init_abi(), mips64obsd_init_abi(), mips_fbsd_init_abi(), mips_linux_init_abi(), nios2_linux_init_abi(), ppc_linux_init_abi(), ppcnbsd_init_abi(), sh_linux_init_abi(), sparc32_linux_init_abi(), sparc64_linux_init_abi(), tic6x_uclinux_init_abi(), and tilegx_linux_init_abi().

## ◆ tramp_frame_prev_register()

static struct value* tramp_frame_prev_register | ( | struct frame_info * | this_frame,
|  | void ** | this_cache,
|  | int | prev_regnum
| ) |  |
| static

Definition at line 72 of file tramp-frame.c.

References trad_frame_cache::this_frame, trad_frame_get_register(), and tramp_frame_cache().

Referenced by tramp_frame_prepend_unwinder().

## ◆ tramp_frame_sniffer()

static int tramp_frame_sniffer | ( | const struct frame_unwind * | self,
|  | struct frame_info * | this_frame,
|  | void ** | this_cache
| ) |  |
| static

Definition at line 122 of file tramp-frame.c.

References FRAME_OBSTACK_ZALLOC, tramp_frame_cache::func, func, get_frame_pc(), tramp_frame_cache::tramp_frame, and tramp_frame_start().

Referenced by tramp_frame_prepend_unwinder().

## ◆ tramp_frame_start()

static CORE_ADDR tramp_frame_start | ( | const struct tramp_frame * | tramp,
|  | struct frame_info * | this_frame,
|  | CORE_ADDR | pc
| ) |  |
| static

Definition at line 83 of file tramp-frame.c.

References gdbarch::byte_order, tramp_frame::bytes, extract_unsigned_integer(), func, gdbarch_byte_order(), get_frame_arch(), tramp_frame::insn, tramp_frame::insn_size, tramp_frame::mask, safe_frame_unwind_memory(), TRAMP_SENTINEL_INSN, and tramp_frame::validate.

Referenced by tramp_frame_sniffer().

## ◆ tramp_frame_this_id()

static void tramp_frame_this_id | ( | struct frame_info * | this_frame,
|  | void ** | this_cache,
|  | struct frame_id * | this_id
| ) |  |
| static

Definition at line 61 of file tramp-frame.c.

References trad_frame_cache::this_frame, trad_frame_cache::this_id, trad_frame_get_id(), and tramp_frame_cache().

Referenced by tramp_frame_prepend_unwinder().