gdb: remove symbol value macros
Remove all macros related to getting and setting some symbol value: #define SYMBOL_VALUE(symbol) (symbol)->value.ivalue #define SYMBOL_VALUE_ADDRESS(symbol) \ #define SET_SYMBOL_VALUE_ADDRESS(symbol, new_value) \ #define SYMBOL_VALUE_BYTES(symbol) (symbol)->value.bytes #define SYMBOL_VALUE_COMMON_BLOCK(symbol) (symbol)->value.common_block #define SYMBOL_BLOCK_VALUE(symbol) (symbol)->value.block #define SYMBOL_VALUE_CHAIN(symbol) (symbol)->value.chain #define MSYMBOL_VALUE(symbol) (symbol)->value.ivalue #define MSYMBOL_VALUE_RAW_ADDRESS(symbol) ((symbol)->value.address + 0) #define MSYMBOL_VALUE_ADDRESS(objfile, symbol) \ #define BMSYMBOL_VALUE_ADDRESS(symbol) \ #define SET_MSYMBOL_VALUE_ADDRESS(symbol, new_value) \ #define MSYMBOL_VALUE_BYTES(symbol) (symbol)->value.bytes #define MSYMBOL_BLOCK_VALUE(symbol) (symbol)->value.block Replace them with equivalent methods on the appropriate objects. Change-Id: Iafdab3b8eefc6dc2fd895aa955bf64fafc59ed50
This commit is contained in:
parent
96d368d104
commit
4aeddc50d7
90 changed files with 503 additions and 461 deletions
|
@ -88,12 +88,12 @@ convert_one_symbol (compile_c_instance *context,
|
|||
|
||||
case LOC_LABEL:
|
||||
kind = GCC_C_SYMBOL_LABEL;
|
||||
addr = SYMBOL_VALUE_ADDRESS (sym.symbol);
|
||||
addr = sym.symbol->value_address ();
|
||||
break;
|
||||
|
||||
case LOC_BLOCK:
|
||||
kind = GCC_C_SYMBOL_FUNCTION;
|
||||
addr = BLOCK_ENTRY_PC (SYMBOL_BLOCK_VALUE (sym.symbol));
|
||||
addr = BLOCK_ENTRY_PC (sym.symbol->value_block ());
|
||||
if (is_global && sym.symbol->type ()->is_gnu_ifunc ())
|
||||
addr = gnu_ifunc_resolve_addr (target_gdbarch (), addr);
|
||||
break;
|
||||
|
@ -106,7 +106,7 @@ convert_one_symbol (compile_c_instance *context,
|
|||
}
|
||||
context->plugin ().build_constant
|
||||
(sym_type, sym.symbol->natural_name (),
|
||||
SYMBOL_VALUE (sym.symbol),
|
||||
sym.symbol->value_longest (),
|
||||
filename, line);
|
||||
return;
|
||||
|
||||
|
@ -179,7 +179,7 @@ convert_one_symbol (compile_c_instance *context,
|
|||
|
||||
case LOC_STATIC:
|
||||
kind = GCC_C_SYMBOL_VARIABLE;
|
||||
addr = SYMBOL_VALUE_ADDRESS (sym.symbol);
|
||||
addr = sym.symbol->value_address ();
|
||||
break;
|
||||
|
||||
case LOC_FINAL_VALUE:
|
||||
|
@ -270,7 +270,7 @@ convert_symbol_bmsym (compile_c_instance *context,
|
|||
gcc_decl decl;
|
||||
CORE_ADDR addr;
|
||||
|
||||
addr = MSYMBOL_VALUE_ADDRESS (objfile, msym);
|
||||
addr = msym->value_address (objfile);
|
||||
|
||||
/* Conversion copied from write_exp_msymbol. */
|
||||
switch (MSYMBOL_TYPE (msym))
|
||||
|
@ -404,7 +404,7 @@ gcc_symbol_address (void *datum, struct gcc_c_context *gcc_context,
|
|||
gdb_printf (gdb_stdlog,
|
||||
"gcc_symbol_address \"%s\": full symbol\n",
|
||||
identifier);
|
||||
result = BLOCK_ENTRY_PC (SYMBOL_BLOCK_VALUE (sym));
|
||||
result = BLOCK_ENTRY_PC (sym->value_block ());
|
||||
if (sym->type ()->is_gnu_ifunc ())
|
||||
result = gnu_ifunc_resolve_addr (target_gdbarch (), result);
|
||||
found = 1;
|
||||
|
@ -421,7 +421,7 @@ gcc_symbol_address (void *datum, struct gcc_c_context *gcc_context,
|
|||
"gcc_symbol_address \"%s\": minimal "
|
||||
"symbol\n",
|
||||
identifier);
|
||||
result = BMSYMBOL_VALUE_ADDRESS (msym);
|
||||
result = msym.value_address ();
|
||||
if (MSYMBOL_TYPE (msym.minsym) == mst_text_gnu_ifunc)
|
||||
result = gnu_ifunc_resolve_addr (target_gdbarch (), result);
|
||||
found = 1;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue