#include "config.h"#include "system.h"#include "coretypes.h"#include "tm.h"#include "intl.h"#include "obstack.h"#include "hashtab.h"#include "demangle.h"#include "collect2.h"

Go to the source code of this file.
| typedef struct demangled_hash_entry demangled |
| typedef struct file_hash_entry file |
| typedef struct symbol_hash_entry symbol |
Definition at line 585 of file tlink.c.
References cplus_demangle(), demangled_hash_lookup(), DMGL_ANSI, DMGL_PARAMS, demangled_hash_entry::mangled, NULL, p, sym, and symbol_pop().
| static struct demangled_hash_entry * demangled_hash_lookup | ( | const char * | string, | |
| int | create | |||
| ) | [static, read] |
Definition at line 159 of file tlink.c.
References demangled_table, htab_find_slot_with_hash(), htab_hash_string(), INSERT, demangled_hash_entry::key, NO_INSERT, NULL, XCNEW, and xstrdup().
| void do_tlink | ( | char ** | ld_argv, | |
| char **object_lst | ATTRIBUTE_UNUSED | |||
| ) |
Definition at line 761 of file tlink.c.
References _, collect_exit(), demangle_new_symbols(), dump_file, error(), exit(), fprintf(), i, lderrout, ldout, MAX_ITERATIONS, read_repo_files(), recompile_files(), scan_linker_output(), tlink_execute(), tlink_init(), tlink_verbose, and unlink.
| static struct file_hash_entry * file_hash_lookup | ( | const char * | string | ) | [static, read] |
Definition at line 139 of file tlink.c.
References file_table, htab_find_slot_with_hash(), htab_hash_string(), INSERT, file_hash_entry::key, NULL, XCNEW, and xstrdup().
Definition at line 234 of file tlink.c.
References file_stack_obstack, file_stack_entry::next, NULL, obstack_free, p, file_hash_entry::tweaking, and file_stack_entry::value.
Definition at line 218 of file tlink.c.
References file_stack_obstack, file_stack_entry::next, obstack_alloc, file_hash_entry::tweaking, and file_stack_entry::value.
Definition at line 338 of file tlink.c.
References file_push(), NULL, sym, symbol_hash_lookup(), symbol_push(), and tfgets().
| static char * frob_extension | ( | const char * | s, | |
| const char * | ext | |||
| ) | [static] |
Definition at line 292 of file tlink.c.
References obstack_copy0, obstack_grow, p, strlen(), strrchr(), and temporary_obstack.
Definition at line 306 of file tlink.c.
References c, EOF, getc(), NULL, obstack_1grow, obstack_object_size, and XOBFINISH.
| static char * pfgets | ( | FILE * | stream | ) | [static] |
Definition at line 378 of file tlink.c.
References _, file_hash_entry::args, c, file_hash_entry::dir, fclose(), fopen, fprintf(), freadsym(), fscanf(), getenv(), file_hash_entry::key, file_hash_entry::main, NULL, obstack_free, pfgets(), stream, temporary_firstobj, temporary_obstack, and tlink_verbose.
| static int read_repo_files | ( | char ** | object_lst | ) | [static] |
Definition at line 553 of file tlink.c.
References f, file_exists(), file_hash_lookup(), frob_extension(), NULL, p, read_repo_file(), and recompile_files().
| static int recompile_files | ( | void | ) | [static] |
Definition at line 445 of file tlink.c.
References _, file_hash_entry::args, c_file_name, chdir(), file_hash_entry::dir, error(), f, fatal_perror(), fclose(), file_pop(), fopen, fprintf(), frob_extension(), initial_cwd, file_hash_entry::key, file_hash_entry::main, maybe_tweak(), NULL, obstack_1grow, obstack_finish, obstack_free, obstack_grow, obstack_init, obstack_ptr_grow, p, putenv, q, r, read_repo_file(), rename(), strchr, stream, temporary_firstobj, temporary_obstack, tfgets(), tlink_execute(), tlink_verbose, XOBFINISH, and xstrdup().
| static int scan_linker_output | ( | const char * | fname | ) | [static] |
Definition at line 606 of file tlink.c.
References _, demangled_hash_lookup(), end, error(), fclose(), file_push(), fopen, fprintf(), ISSPACE, demangled_hash_entry::mangled, NULL, obstack_free, ok(), p, q, strchr, strcmp(), stream, strlen(), strncmp(), strrchr(), strstr(), sym, symbol_hash_lookup(), temporary_firstobj, temporary_obstack, tfgets(), tlink_verbose, and USER_LABEL_PREFIX.
| static struct symbol_hash_entry * symbol_hash_lookup | ( | const char * | string, | |
| int | create | |||
| ) | [static, read] |
Definition at line 117 of file tlink.c.
References htab_find_slot_with_hash(), htab_hash_string(), INSERT, symbol_hash_entry::key, NO_INSERT, NULL, symbol_table, XCNEW, and xstrdup().
Definition at line 205 of file tlink.c.
References symbol_stack_entry::next, NULL, obstack_free, p, symbol_stack_obstack, and symbol_stack_entry::value.
Definition at line 195 of file tlink.c.
References symbol_stack_entry::next, obstack_alloc, symbol_stack_obstack, and symbol_stack_entry::value.
| static char * tfgets | ( | FILE * | stream | ) | [static] |
| static int tlink_execute | ( | const char * | prog, | |
| char ** | argv, | |||
| const char * | outname, | |||
| const char * | errname | |||
| ) | [static] |
Definition at line 252 of file tlink.c.
References atoi(), debug, demangled_table, file_stack_obstack, file_table, getcwd, getenv(), hash_string_eq(), hash_string_hash(), htab_create(), initial_cwd, NULL, obstack_begin, p, symbol_stack_obstack, symbol_table, tlink_verbose, and vflag.
htab_t demangled_table [static] |
htab_t file_table [static] |
char initial_cwd[MAXPATHLEN+1] [static] |
htab_t symbol_table [static] |
int tlink_verbose [static] |
1.5.6