19#if !defined (BUILDSYM_H)
22#include "gdbsupport/gdb_obstack.h"
75#define PENDINGSIZE 100
152 const char *comp_dir_,
const char *name_for_id,
153 enum language language_, CORE_ADDR last_addr);
158 const char *comp_dir_,
enum language language_,
168 const char *comp_dir_,
enum language language_,
185 char *new_name =
name == NULL ? NULL : xstrdup (
name);
214 CORE_ADDR start, CORE_ADDR end);
217 CORE_ADDR start, CORE_ADDR end_inclusive);
243 linetable_entry_flags
flags);
327 (CORE_ADDR end_addr,
int expandable,
int required);
330 (
struct block *static_block,
int expandable);
346 CORE_ADDR start, CORE_ADDR end,
347 int is_global,
int expandable);
354 (
struct block *static_block,
int expandable);
454 char *
name,
int length);
static struct buildsym_compunit * buildsym_compunit
DEF_ENUM_FLAGS_TYPE(enum linetable_entry_flag, linetable_entry_flags)
struct symbol * find_symbol_in_list(struct pending *list, char *name, int length)
std::unique_ptr< subfile > subfile_up
void add_symbol_to_list(struct symbol *symbol, struct pending **listhead)
mach_port_t kern_return_t mach_port_t mach_msg_type_name_t msgportsPoly mach_port_t kern_return_t pid_t pid mach_port_t kern_return_t mach_port_t task mach_port_t kern_return_t int flags
struct objfile * m_objfile
DISABLE_COPY_AND_ASSIGN(buildsym_compunit)
struct compunit_symtab * get_compunit_symtab()
struct macro_table * get_macro_table()
gdb::unique_xmalloc_ptr< char > m_last_source_file
CORE_ADDR get_last_source_start_addr()
struct macro_table * release_macros()
struct pending ** get_local_symbols()
void set_local_using_directives(struct using_direct *new_local)
std::vector< struct context_stack > m_context_stack
struct using_direct ** get_local_using_directives()
CORE_ADDR m_last_source_start_addr
void start_subfile(const char *name, const char *name_for_id)
struct pending * m_local_symbols
struct context_stack * get_current_context_stack()
const char * m_debugformat
struct compunit_symtab * end_compunit_symtab_from_static_block(struct block *static_block, int expandable)
void record_pending_block(struct block *block, struct pending_block *opblock)
struct pending * m_file_symbols
const char * get_last_source_file()
struct using_direct * m_local_using_directives
void watch_main_source_file_lossage()
struct block * finish_block(struct symbol *symbol, struct pending_block *old_blocks, const struct dynamic_prop *static_link, CORE_ADDR start, CORE_ADDR end)
struct pending * m_global_symbols
struct subfile * m_subfiles
struct blockvector * make_blockvector()
buildsym_compunit(struct objfile *objfile_, const char *name, const char *comp_dir_, enum language language_, CORE_ADDR last_addr, struct compunit_symtab *cust)
auto_obstack m_pending_block_obstack
void record_line(struct subfile *subfile, int line, unrelocated_addr pc, linetable_entry_flags flags)
struct using_direct * m_global_using_directives
struct block * finish_block_internal(struct symbol *symbol, struct pending **listhead, struct pending_block *old_blocks, const struct dynamic_prop *static_link, CORE_ADDR start, CORE_ADDR end, int is_global, int expandable)
buildsym_compunit(struct objfile *objfile_, const char *name, const char *comp_dir_, enum language language_, CORE_ADDR last_addr)
void record_producer(const char *producer)
struct compunit_symtab * end_expandable_symtab(CORE_ADDR end_addr)
void set_last_source_file(const char *name)
bool outermost_context_p() const
struct compunit_symtab * m_compunit_symtab
struct block * end_compunit_symtab_get_static_block(CORE_ADDR end_addr, int expandable, int required)
struct compunit_symtab * end_compunit_symtab_with_blockvector(struct block *static_block, int expandable)
void set_last_source_start_addr(CORE_ADDR addr)
struct addrmap_mutable m_pending_addrmap
void augment_type_symtab()
struct pending ** get_file_symbols()
bool m_pending_addrmap_interesting
void start_subfile(const char *name)
std::vector< const char * > m_subfile_stack
struct subfile * m_current_subfile
void free_pending_blocks()
void record_debugformat(const char *format)
struct pending_block * m_pending_blocks
int get_context_stack_depth() const
struct subfile * m_main_subfile
struct context_stack pop_context()
struct pending ** get_global_symbols()
struct subfile * get_current_subfile()
void patch_subfile_names(struct subfile *subfile, const char *name)
const char * pop_subfile()
void record_block_range(struct block *block, CORE_ADDR start, CORE_ADDR end_inclusive)
struct compunit_symtab * end_compunit_symtab(CORE_ADDR end_addr)
struct macro_table * m_pending_macros
struct context_stack * push_context(int desc, CORE_ADDR valu)
struct using_direct ** get_global_using_directives()
struct dynamic_prop * static_link
struct using_direct * local_using_directives
struct pending_block * old_blocks
DISABLE_COPY_AND_ASSIGN(subfile)
std::vector< linetable_entry > line_vector_entries