|
GDB (xrefs)
|
#include "defs.h"#include "dwarf2.h"#include "dwarf2expr.h"#include "dwarf2loc.h"#include "ui-file.h"#include "utils.h"#include "compile-internal.h"#include "compile.h"#include "block.h"#include "dwarf2-frame.h"#include "gdb_vecs.h"#include "value.h"Go to the source code of this file.
Classes | |
| struct | insn_info |
Macros | |
| #define | SET_CHECK_DEPTH(WHERE) |
| #define | GCC_UINTPTR "__gdb_uintptr" |
| #define | GCC_INTPTR "__gdb_intptr" |
| #define | BINARY(OP) |
| #define | COMPARE(OP) |
Functions | |
| static void | compute_stack_depth_worker (int start, int *need_tempvar, std::vector< struct insn_info > *info, std::vector< int > *to_do, enum bfd_endian byte_order, unsigned int addr_size, const gdb_byte *op_ptr, const gdb_byte *op_end) |
| static int | compute_stack_depth (enum bfd_endian byte_order, unsigned int addr_size, int *need_tempvar, int *is_tls, const gdb_byte *op_ptr, const gdb_byte *op_end, int initial_depth, std::vector< struct insn_info > *info) |
| static void | push (int indent, string_file &stream, ULONGEST l) |
| static void | pushf (int indent, string_file &stream, const char *format,...) ATTRIBUTE_PRINTF(3 |
| static void | unary (int indent, string_file &stream, const char *format,...) ATTRIBUTE_PRINTF(3 |
| static void | binary (int indent, string_file &stream, const char *format,...) ATTRIBUTE_PRINTF(3 |
| static void | print_label (string_file &stream, unsigned int scope, int target) |
| static void | pushf_register_address (int indent, string_file &stream, unsigned char *registers_used, struct gdbarch *gdbarch, int regnum) |
| static void | pushf_register (int indent, string_file &stream, unsigned char *registers_used, struct gdbarch *gdbarch, int regnum, uint64_t offset) |
| static void | do_compile_dwarf_expr_to_c (int indent, string_file &stream, const char *type_name, const char *result_name, struct symbol *sym, CORE_ADDR pc, struct gdbarch *arch, unsigned char *registers_used, unsigned int addr_size, const gdb_byte *op_ptr, const gdb_byte *op_end, CORE_ADDR *initial, struct dwarf2_per_cu_data *per_cu) |
| void | compile_dwarf_expr_to_c (string_file &stream, const char *result_name, struct symbol *sym, CORE_ADDR pc, struct gdbarch *arch, unsigned char *registers_used, unsigned int addr_size, const gdb_byte *op_ptr, const gdb_byte *op_end, struct dwarf2_per_cu_data *per_cu) |
| void | compile_dwarf_bounds_to_c (string_file &stream, const char *result_name, const struct dynamic_prop *prop, struct symbol *sym, CORE_ADDR pc, struct gdbarch *arch, unsigned char *registers_used, unsigned int addr_size, const gdb_byte *op_ptr, const gdb_byte *op_end, struct dwarf2_per_cu_data *per_cu) |
| #define BINARY | ( | OP | ) |
Referenced by do_compile_dwarf_expr_to_c().
| #define COMPARE | ( | OP | ) |
Referenced by do_compile_dwarf_expr_to_c().
| #define GCC_INTPTR "__gdb_intptr" |
Definition at line 427 of file compile-loc2c.c.
Referenced by do_compile_dwarf_expr_to_c().
| #define GCC_UINTPTR "__gdb_uintptr" |
Definition at line 426 of file compile-loc2c.c.
Referenced by compile_dwarf_expr_to_c(), do_compile_dwarf_expr_to_c(), push(), pushf_register(), and pushf_register_address().
| #define SET_CHECK_DEPTH | ( | WHERE | ) |
Referenced by compute_stack_depth_worker().
|
static |
Definition at line 483 of file compile-loc2c.c.
References fprintfi_filtered().
Referenced by do_compile_dwarf_expr_to_c().
| void compile_dwarf_bounds_to_c | ( | string_file & | stream, |
| const char * | result_name, | ||
| const struct dynamic_prop * | prop, | ||
| struct symbol * | sym, | ||
| CORE_ADDR | pc, | ||
| struct gdbarch * | arch, | ||
| unsigned char * | registers_used, | ||
| unsigned int | addr_size, | ||
| const gdb_byte * | op_ptr, | ||
| const gdb_byte * | op_end, | ||
| struct dwarf2_per_cu_data * | per_cu | ||
| ) |
Definition at line 1133 of file compile-loc2c.c.
References symbol::arch, and do_compile_dwarf_expr_to_c().
Referenced by dwarf2_compile_property_to_c().
| void compile_dwarf_expr_to_c | ( | string_file & | stream, |
| const char * | result_name, | ||
| struct symbol * | sym, | ||
| CORE_ADDR | pc, | ||
| struct gdbarch * | arch, | ||
| unsigned char * | registers_used, | ||
| unsigned int | addr_size, | ||
| const gdb_byte * | op_ptr, | ||
| const gdb_byte * | op_end, | ||
| struct dwarf2_per_cu_data * | per_cu | ||
| ) |
Definition at line 1118 of file compile-loc2c.c.
References symbol::arch, do_compile_dwarf_expr_to_c(), and GCC_UINTPTR.
Referenced by locexpr_generate_c_location(), and loclist_generate_c_location().
|
static |
Definition at line 386 of file compile-loc2c.c.
References compute_stack_depth_worker().
Referenced by do_compile_dwarf_expr_to_c().
|
static |
Definition at line 73 of file compile-loc2c.c.
References _, error(), extract_signed_integer(), gdb_assert, offset, safe_read_sleb128(), safe_read_uleb128(), and SET_CHECK_DEPTH.
Referenced by compute_stack_depth().
|
static |
Definition at line 574 of file compile-loc2c.c.
References _, symbol::arch, binary(), BINARY, block_for_pc(), block_linkage_function(), c_get_mode_for_size(), COMPARE, compute_stack_depth(), core_addr_to_string(), dwarf2_fetch_cfa_info(), dwarf2_per_cu_text_offset(), dwarf_expr_require_composition(), dwarf_reg_to_regnum_or_error(), error(), extract_signed_integer(), extract_unsigned_integer(), fprintfi_filtered(), func_get_frame_base_dwarf_block(), GCC_INTPTR, GCC_UINTPTR, gdbarch_byte_order(), get_selected_frame(), hex_string(), lval_memory, offset, plongest(), print_label(), print_spaces(), ui_file::printf(), push(), pushf(), pushf_register(), pushf_register_address(), ui_file::puts(), read_var_value(), value::reg, regnum, safe_read_sleb128(), safe_read_uleb128(), size, SYMBOL_PRINT_NAME, unary(), value_address(), VALUE_LVAL, warning(), and xsnprintf().
Referenced by compile_dwarf_bounds_to_c(), and compile_dwarf_expr_to_c().
|
static |
Definition at line 500 of file compile-loc2c.c.
References ui_file::printf(), and pulongest().
Referenced by do_compile_dwarf_expr_to_c().
|
static |
Definition at line 432 of file compile-loc2c.c.
References fprintfi_filtered(), GCC_UINTPTR, and hex_string().
Referenced by do_compile_dwarf_expr_to_c().
|
static |
Definition at line 446 of file compile-loc2c.c.
References fprintfi_filtered().
Referenced by do_compile_dwarf_expr_to_c(), pushf_register(), and pushf_register_address().
|
static |
Definition at line 528 of file compile-loc2c.c.
References COMPILE_I_SIMPLE_REGISTER_ARG_NAME, compile_register_name_mangled(), GCC_UINTPTR, hex_string(), offset, pushf(), regnum, and string.
Referenced by do_compile_dwarf_expr_to_c().
|
static |
Definition at line 510 of file compile-loc2c.c.
References COMPILE_I_SIMPLE_REGISTER_ARG_NAME, compile_register_name_mangled(), GCC_UINTPTR, pushf(), regnum, and string.
Referenced by do_compile_dwarf_expr_to_c().
|
static |
Definition at line 466 of file compile-loc2c.c.
References fprintfi_filtered().
Referenced by do_compile_dwarf_expr_to_c().
1.8.14