diff options
Diffstat (limited to 'gdb/dwarf2loc.h')
-rw-r--r-- | gdb/dwarf2loc.h | 22 |
1 files changed, 14 insertions, 8 deletions
diff --git a/gdb/dwarf2loc.h b/gdb/dwarf2loc.h index 22c66bd..632568e 100644 --- a/gdb/dwarf2loc.h +++ b/gdb/dwarf2loc.h @@ -21,10 +21,18 @@ #define DWARF2LOC_H struct symbol_ops; +struct objfile; +struct dwarf2_per_cu_data; /* This header is private to the DWARF-2 reader. It is shared between dwarf2read.c and dwarf2loc.c. */ +/* Return the OBJFILE associated with the compilation unit CU. */ +struct objfile *dwarf2_per_cu_objfile (struct dwarf2_per_cu_data *cu); + +/* Return the address size given in the compilation unit header for CU. */ +CORE_ADDR dwarf2_per_cu_addr_size (struct dwarf2_per_cu_data *cu); + /* The symbol location baton types used by the DWARF-2 reader (i.e. SYMBOL_LOCATION_BATON for a LOC_COMPUTED symbol). "struct dwarf2_locexpr_baton" is for a symbol with a single location @@ -39,8 +47,9 @@ struct dwarf2_locexpr_baton /* Length of the location expression. */ unsigned long size; - /* The objfile containing the symbol whose location we're computing. */ - struct objfile *objfile; + /* The compilation unit containing the symbol whose location + we're computing. */ + struct dwarf2_per_cu_data *per_cu; }; struct dwarf2_loclist_baton @@ -55,12 +64,9 @@ struct dwarf2_loclist_baton /* Length of the location list. */ unsigned long size; - /* The objfile containing the symbol whose location we're computing. */ - /* Used (only???) by thread local variables. The objfile in which - this symbol is defined. To find a thread-local variable (e.g., a - variable declared with the `__thread' storage class), we may need - to know which object file it's in. */ - struct objfile *objfile; + /* The compilation unit containing the symbol whose location + we're computing. */ + struct dwarf2_per_cu_data *per_cu; }; extern const struct symbol_ops dwarf2_locexpr_funcs; |