osprey/cygnus/ld/ldlang.c File Reference

#include "bfd.h"
#include "sysdep.h"
#include "libiberty.h"
#include "safe-ctype.h"
#include "obstack.h"
#include "bfdlink.h"
#include "ld.h"
#include "ldmain.h"
#include "ldexp.h"
#include "ldlang.h"
#include <ldgram.h>
#include "ldlex.h"
#include "ldmisc.h"
#include "ldctor.h"
#include "ldfile.h"
#include "ldemul.h"
#include "fnmatch.h"
#include "demangle.h"
#include "hashtab.h"

Include dependency graph for ldlang.c:

Go to the source code of this file.

Data Types

type  excluded_lib
type  overlay_list

Defines

#define offsetof(TYPE, MEMBER)   ((size_t) & (((TYPE*) 0)->MEMBER))
#define obstack_chunk_alloc   xmalloc
#define obstack_chunk_free   free
#define wildcardp(pattern)   (strpbrk ((pattern), "?*[") != NULL)
#define new_stat(x, y)   (x##_type *) new_statement (x##_enum, sizeof (x##_type), y)
#define outside_section_address(q)   ((q)->output_offset + (q)->output_section->vma)
#define outside_symbol_address(q)   ((q)->value + outside_section_address (q->section))
#define SECTION_NAME_MAP_LENGTH   (16)
#define TO_ADDR(X)   ((X) >> opb_shift)
#define TO_SIZE(X)   ((X) << opb_shift)
#define ldlang_undef_chain_list_head   entry_symbol.next
#define IGNORE_SECTION(s)

Typedefs

typedef void(* callback_t )(lang_wild_statement_type *, struct wildcard_list *, asection *, lang_input_statement_type *, void *)
typedef struct bfd_sym_chain ldlang_undef_chain_list_type

Functions/Subroutines

static void exp_init_os (etree_type *)
static void init_map_userdata (bfd *, asection *, void *)
static lang_input_statement_typelookup_name (const char *)
static bfd_boolean load_symbols (lang_input_statement_type *, lang_statement_list_type *)
static struct bfd_hash_entrylang_definedness_newfunc (struct bfd_hash_entry *, struct bfd_hash_table *, const char *)
static void insert_undefined (const char *)
static void print_all_symbols (asection *)
static bfd_boolean sort_def_symbol (struct bfd_link_hash_entry *, void *)
static void print_statement (lang_statement_union_type *, lang_output_section_statement_type *)
static void print_statement_list (lang_statement_union_type *, lang_output_section_statement_type *)
static void print_statements (void)
static bfd_boolean lang_one_common (struct bfd_link_hash_entry *, void *)
static void lang_record_phdrs (void)
static void lang_do_version_exports_section (void)
voidstat_alloc (size_t size)
bfd_boolean unique_section_p (const asection *sec)
static void walk_wild_section (lang_wild_statement_type *ptr, lang_input_statement_type *file, callback_t callback, void *data)
static void walk_wild_file (lang_wild_statement_type *s, lang_input_statement_type *f, callback_t callback, void *data)
static void walk_wild (lang_wild_statement_type *s, callback_t callback, void *data)
static void lang_for_each_statement_worker (void(*func)(lang_statement_union_type *), lang_statement_union_type *s)
void lang_for_each_statement (void(*func)(lang_statement_union_type *))
void lang_list_init (lang_statement_list_type *list)
static lang_statement_union_typenew_statement (enum statement_enum type, size_t size, lang_statement_list_type *list)
static lang_input_statement_typenew_afile (const char *name, lang_input_file_enum_type file_type, const char *target, bfd_boolean add_to_list)
lang_input_statement_typelang_add_input_file (const char *name, lang_input_file_enum_type file_type, const char *target)
void lang_init (void)
lang_memory_region_typelang_memory_region_lookup (const char *const name, bfd_boolean create)
static lang_memory_region_typelang_memory_default (asection *section)
static
lang_output_section_statement_type
lang_output_section_find_1 (const char *const name, int constraint)
lang_output_section_statement_typelang_output_section_find (const char *const name)
static
lang_output_section_statement_type
lang_output_section_statement_lookup_1 (const char *const name, int constraint)
lang_output_section_statement_typelang_output_section_statement_lookup (const char *const name)
lang_output_section_statement_typelang_output_section_find_by_flags (const asection *sec, lang_output_section_statement_type **exact)
static asectionoutput_prev_sec_find (lang_output_section_statement_type *os)
lang_output_section_statement_typelang_insert_orphan (lang_input_statement_type *file, asection *s, const char *secname, lang_output_section_statement_type *after, struct orphan_save *place, etree_type *address, lang_statement_list_type *add_child)
static void lang_map_flags (flagword flag)
void lang_map (void)
static void init_map_userdata (abfd, asection *sec, data)
static bfd_boolean sort_def_symbol (struct bfd_link_hash_entry *hash_entry, info)
static void init_os (lang_output_section_statement_type *s)
static void section_already_linked (bfd *abfd, asection *sec, void *data)
void lang_add_section (lang_statement_list_type *ptr, asection *section, lang_output_section_statement_type *output, lang_input_statement_type *file)
static int compare_section (sort_type sort, asection *asec, asection *bsec)
static lang_statement_union_typewild_sort (lang_wild_statement_type *wild, struct wildcard_list *sec, lang_input_statement_type *file, asection *section)
static void output_section_callback (lang_wild_statement_type *ptr, struct wildcard_list *sec, asection *section, lang_input_statement_type *file, void *output)
static void check_section_callback (lang_wild_statement_type *ptr ATTRIBUTE_UNUSED, struct wildcard_list *sec ATTRIBUTE_UNUSED, asection *section, lang_input_statement_type *file ATTRIBUTE_UNUSED, void *data)
void add_excluded_libs (const char *list)
static void check_excluded_libs (bfd *abfd)
static void wild (lang_wild_statement_type *s, const char *target ATTRIBUTE_UNUSED, lang_output_section_statement_type *output)
static int get_target (const bfd_target *target, void *data)
static void stricpy (char *dest, char *src)
static void strcut (char *haystack, char *needle)
static int name_compare (char *first, char *second)
static int closest_target_match (const bfd_target *target, void *data)
static char * get_first_input_target (void)
const char * lang_get_output_target (void)
static bfdopen_output (const char *name)
static void ldlang_open_output (lang_statement_union_type *statement)
static void init_opb (void)
static void open_input_bfds (lang_statement_union_type *s, bfd_boolean force)
void lang_track_definedness (const char *name)
static struct bfd_hash_entrylang_definedness_newfunc (struct bfd_hash_entry *entry, struct bfd_hash_table *table ATTRIBUTE_UNUSED, const char *name ATTRIBUTE_UNUSED)
int lang_symbol_definition_iteration (const char *name)
void lang_update_definedness (const char *name, struct bfd_link_hash_entry *h)
void ldlang_add_undef (const char *const name)
static void lang_place_undefineds (void)
static void check_input_sections (lang_statement_union_type *s, lang_output_section_statement_type *output_section_statement)
static void update_wild_statements (lang_statement_union_type *s)
static void map_input_to_output_sections (lang_statement_union_type *s, const char *target, lang_output_section_statement_type *os)
static void strip_excluded_output_sections (void)
static void print_output_section_statement (lang_output_section_statement_type *output_section_statement)
static void print_assignment (lang_assignment_statement_type *assignment, lang_output_section_statement_type *output_section)
static void print_input_statement (lang_input_statement_type *statm)
static bfd_boolean print_one_symbol (struct bfd_link_hash_entry *hash_entry, void *ptr)
static void print_input_section (lang_input_section_type *in)
static void print_fill_statement (lang_fill_statement_type *fill)
static void print_data_statement (lang_data_statement_type *data)
static void print_address_statement (lang_address_statement_type *address)
static void print_reloc_statement (lang_reloc_statement_type *reloc)
static void print_padding_statement (lang_padding_statement_type *s)
static void print_wild_statement (lang_wild_statement_type *w, lang_output_section_statement_type *os)
static void print_group (lang_group_statement_type *s, lang_output_section_statement_type *os)
void dprint_statement (lang_statement_union_type *s, int n)
static void insert_pad (lang_statement_union_type **ptr, fill_type *fill, unsigned int alignment_needed, asection *output_section, bfd_vma dot)
static bfd_vma size_input_section (lang_statement_union_type **this_ptr, lang_output_section_statement_type *output_section_statement, fill_type *fill, bfd_vma dot)
static void lang_check_section_addresses (void)
static void os_region_check (lang_output_section_statement_type *os, lang_memory_region_type *region, etree_type *tree, bfd_vma base)
static bfd_vma lang_size_sections_1 (lang_statement_union_type *s, lang_output_section_statement_type *output_section_statement, lang_statement_union_type **prev, fill_type *fill, bfd_vma dot, bfd_boolean *relax, bfd_boolean check_regions)
bfd_vma lang_size_sections (lang_statement_union_type *s, lang_output_section_statement_type *output_section_statement, lang_statement_union_type **prev, fill_type *fill, bfd_vma dot, bfd_boolean *relax, bfd_boolean check_regions)
static bfd_vma lang_do_assignments_1 (lang_statement_union_type *s, lang_output_section_statement_type *output_section_statement, fill_type *fill, bfd_vma dot)
void lang_do_assignments (lang_statement_union_type *s, lang_output_section_statement_type *output_section_statement, fill_type *fill, bfd_vma dot)
static void lang_set_startof (void)
static void lang_finish (void)
static void ignore_bfd_errors (const char *s ATTRIBUTE_UNUSED,...)
static void lang_check (void)
static void lang_common (void)
static void lang_place_orphans (void)
void lang_set_flags (lang_memory_region_type *ptr, const char *flags, int invert)
void lang_for_each_input_file (void(*func)(lang_input_statement_type *))
void lang_for_each_file (void(*func)(lang_input_statement_type *))
void ldlang_add_file (lang_input_statement_type *entry)
void lang_add_output (const char *name, int from_script)
static int topower (int x)
lang_output_section_statement_typelang_enter_output_section_statement (const char *output_section_statement_name, etree_type *address_exp, enum section_type sectype, etree_type *align, etree_type *subalign, etree_type *ebase, int constraint)
void lang_final (void)
void lang_reset_memory_regions (void)
static void gc_section_callback (lang_wild_statement_type *ptr, struct wildcard_list *sec ATTRIBUTE_UNUSED, asection *section, lang_input_statement_type *file ATTRIBUTE_UNUSED, void *data ATTRIBUTE_UNUSED)
static void lang_gc_sections_1 (lang_statement_union_type *s)
static void lang_gc_sections (void)
void lang_process (void)
void lang_add_wild (struct wildcard_spec *filespec, struct wildcard_list *section_list, bfd_boolean keep_sections)
void lang_section_start (const char *name, etree_type *address, const segment_type *segment)
void lang_add_entry (const char *name, bfd_boolean cmdline)
void lang_add_target (const char *name)
void lang_add_map (const char *name)
void lang_add_fill (fill_type *fill)
void lang_add_data (int type, union etree_union *exp)
void lang_add_reloc (bfd_reloc_code_real_type reloc, reloc_howto_type *howto, asection *section, const char *name, union etree_union *addend)
lang_assignment_statement_typelang_add_assignment (etree_type *exp)
void lang_add_attribute (enum statement_enum attribute)
void lang_startup (const char *name)
void lang_float (bfd_boolean maybe)
static void lang_get_regions (lang_memory_region_type **region, lang_memory_region_type **lma_region, const char *memspec, const char *lma_memspec, bfd_boolean have_lma, bfd_boolean have_vma)
void lang_leave_output_section_statement (fill_type *fill, const char *memspec, lang_output_section_phdr_list *phdrs, const char *lma_memspec)
void lang_abs_symbol_at_beginning_of (const char *secname, const char *name)
void lang_abs_symbol_at_end_of (const char *secname, const char *name)
void lang_statement_append (lang_statement_list_type *list, lang_statement_union_type *element, lang_statement_union_type **field)
void lang_add_output_format (const char *format, const char *big, const char *little, int from_script)
void lang_enter_group (void)
void lang_leave_group (void)
void lang_new_phdr (const char *name, etree_type *type, bfd_boolean filehdr, bfd_boolean phdrs, etree_type *at, etree_type *flags)
void lang_add_nocrossref (lang_nocrossref_type *l)
void lang_enter_overlay (etree_type *vma_expr, etree_type *subalign)
void lang_enter_overlay_section (const char *name)
void lang_leave_overlay_section (fill_type *fill, lang_output_section_phdr_list *phdrs)
void lang_leave_overlay (etree_type *lma_expr, int nocrossrefs, fill_type *fill, const char *memspec, lang_output_section_phdr_list *phdrs, const char *lma_memspec)
static struct
bfd_elf_version_expr
lang_vers_match (struct bfd_elf_version_expr_head *head, struct bfd_elf_version_expr *prev, const char *sym)
static const char * realsymbol (const char *pattern)
struct bfd_elf_version_exprlang_new_vers_pattern (struct bfd_elf_version_expr *orig, const char *new, const char *lang)
struct bfd_elf_version_treelang_new_vers_node (struct bfd_elf_version_expr *globals, struct bfd_elf_version_expr *locals)
static hashval_t version_expr_head_hash (const void *p)
static int version_expr_head_eq (const void *p1, const void *p2)
static void lang_finalize_version_expr_head (struct bfd_elf_version_expr_head *head)
void lang_register_vers_node (const char *name, struct bfd_elf_version_tree *version, struct bfd_elf_version_deps *deps)
struct bfd_elf_version_depslang_add_vers_depend (struct bfd_elf_version_deps *list, const char *name)
void lang_add_unique (const char *name)

Variables

static struct obstack stat_obstack
static struct obstack map_obstack
static const char * startup_file
static lang_statement_list_type input_file_chain
static bfd_boolean placed_commons = FALSE
static
lang_output_section_statement_type
default_common_section
static bfd_boolean map_option_f
static bfd_vma print_dot
static lang_input_statement_typefirst_file
static const char * current_target
static const char * output_target
static lang_statement_list_type statement_list
static struct lang_phdrlang_phdr_list
static struct bfd_hash_table lang_definedness_table
lang_output_section_statement_typeabs_output_section
lang_statement_list_type lang_output_section_statement
lang_statement_list_typestat_ptr = &statement_list
lang_statement_list_type file_chain = { NULL, NULL }
struct bfd_sym_chain entry_symbol = { NULL, NULL }
const char * entry_section = ".text"
bfd_boolean entry_from_cmdline
bfd_boolean lang_has_input_file = FALSE
bfd_boolean had_output_filename = FALSE
bfd_boolean lang_float_flag = FALSE
bfd_boolean delete_output_file_on_failure = FALSE
struct lang_nocrossrefsnocrossref_list
struct unique_sectionsunique_section_list
static bfd_boolean ldlang_sysrooted_script = FALSE
int lang_statement_iteration = 0
etree_typebase
static lang_memory_region_typelang_memory_region_list
static lang_memory_region_type ** lang_memory_region_list_tail = &lang_memory_region_list
static struct excluded_libexcluded_libs
static const bfd_targetwinner
static unsigned int opb_shift = 0
static
lang_output_section_statement_type
current_section
static etree_typeoverlay_vma
static etree_typeoverlay_subalign
static etree_typeoverlay_max
static struct overlay_listoverlay_list
struct bfd_elf_version_treelang_elf_version_info
static int version_index


Define Documentation

#define IGNORE_SECTION (  ) 

Value:

((s->flags & SEC_NEVER_LOAD) != 0       \
   || (s->flags & SEC_ALLOC) == 0       \
   || ((s->flags & SEC_THREAD_LOCAL) != 0     \
  && (s->flags & SEC_LOAD) == 0))

Definition at line 3473 of file ldlang.c.

Referenced by lang_check_section_addresses(), and lang_size_sections_1().

#define ldlang_undef_chain_list_head   entry_symbol.next

Definition at line 2556 of file ldlang.c.

Referenced by lang_place_undefineds(), lang_process(), and ldlang_add_undef().

#define new_stat ( x,
 )     (x##_type *) new_statement (x##_enum, sizeof (x##_type), y)

#define obstack_chunk_alloc   xmalloc

Definition at line 84 of file ldlang.c.

Referenced by bitmap_obstack_initialize().

#define obstack_chunk_free   free

Definition at line 85 of file ldlang.c.

Referenced by bitmap_obstack_initialize().

#define offsetof ( TYPE,
MEMBER   )     ((size_t) & (((TYPE*) 0)->MEMBER))

Definition at line 63 of file ldlang.c.

#define outside_section_address ( q   )     ((q)->output_offset + (q)->output_section->vma)

Definition at line 151 of file ldlang.c.

#define outside_symbol_address ( q   )     ((q)->value + outside_section_address (q->section))

Definition at line 154 of file ldlang.c.

#define SECTION_NAME_MAP_LENGTH   (16)

#define TO_ADDR ( X   )     ((X) >> opb_shift)

#define TO_SIZE ( X   )     ((X) << opb_shift)

Definition at line 2372 of file ldlang.c.

Referenced by lang_do_assignments_1(), lang_size_sections_1(), and size_input_section().

#define wildcardp ( pattern   )     (strpbrk ((pattern), "?*[") != NULL)


Typedef Documentation

Definition at line 119 of file ldlang.c.

Definition at line 2554 of file ldlang.c.


Function Documentation

void add_excluded_libs ( const char *  list  ) 

Definition at line 1725 of file ldlang.c.

References end, memcpy, excluded_lib::name, excluded_lib::next, NULL, p, strlen(), strpbrk(), and xmalloc().

static void check_excluded_libs ( bfd abfd  )  [static]

static void check_input_sections ( lang_statement_union_type s,
lang_output_section_statement_type output_section_statement 
) [static]

static void check_section_callback ( lang_wild_statement_type *ptr  ATTRIBUTE_UNUSED,
struct wildcard_list *sec  ATTRIBUTE_UNUSED,
asection section,
lang_input_statement_type *file  ATTRIBUTE_UNUSED,
void data 
) [static]

static int closest_target_match ( const bfd_target target,
void data 
) [static]

static int compare_section ( sort_type  sort,
asection asec,
asection bsec 
) [static]

void dprint_statement ( lang_statement_union_type s,
int  n 
)

static void exp_init_os ( etree_type exp  )  [static]

static void gc_section_callback ( lang_wild_statement_type ptr,
struct wildcard_list *sec  ATTRIBUTE_UNUSED,
asection section,
lang_input_statement_type *file  ATTRIBUTE_UNUSED,
void *data  ATTRIBUTE_UNUSED 
) [static]

Definition at line 4814 of file ldlang.c.

References bfd_section::flags, lang_wild_statement_struct::keep_sections, and SEC_KEEP.

Referenced by lang_gc_sections_1().

static char* get_first_input_target ( void   )  [static]

static int get_target ( const bfd_target target,
void data 
) [static]

Definition at line 2078 of file ldlang.c.

References bfd_target::name, and strcmp().

Referenced by open_output().

static void ignore_bfd_errors ( const char *s  ATTRIBUTE_UNUSED,
  ... 
) [static]

Definition at line 4366 of file ldlang.c.

Referenced by lang_check().

static void init_map_userdata ( abfd  ,
asection sec,
data   
) [static]

static void init_map_userdata ( bfd ,
asection ,
void  
) [static]

Referenced by lang_map(), and sort_def_symbol().

static void init_opb ( void   )  [static]

static void init_os ( lang_output_section_statement_type s  )  [static]

static void insert_pad ( lang_statement_union_type **  ptr,
fill_type fill,
unsigned int  alignment_needed,
asection output_section,
bfd_vma  dot 
) [static]

static void insert_undefined ( const char *  name  )  [static]

void lang_abs_symbol_at_beginning_of ( const char *  secname,
const char *  name 
)

void lang_abs_symbol_at_end_of ( const char *  secname,
const char *  name 
)

lang_assignment_statement_type* lang_add_assignment ( etree_type exp  ) 

Definition at line 5215 of file ldlang.c.

References new_stat.

Referenced by lang_insert_orphan(), lang_leave_overlay_section(), ldctor_build_sets(), mri_public(), and yyparse().

void lang_add_attribute ( enum statement_enum  attribute  ) 

Definition at line 5225 of file ldlang.c.

References new_statement().

Referenced by yyparse().

void lang_add_data ( int  type,
union etree_union exp 
)

Definition at line 5176 of file ldlang.c.

References new_stat, and etree_union::type.

Referenced by ldctor_build_sets(), and yyparse().

void lang_add_entry ( const char *  name,
bfd_boolean  cmdline 
)

Definition at line 5130 of file ldlang.c.

References entry_from_cmdline, bfd_sym_chain::name, and NULL.

Referenced by parse_args(), and yyparse().

void lang_add_fill ( fill_type fill  ) 

Definition at line 5167 of file ldlang.c.

References new_stat.

Referenced by yyparse().

lang_input_statement_type* lang_add_input_file ( const char *  name,
lang_input_file_enum_type  file_type,
const char *  target 
)

Definition at line 506 of file ldlang.c.

References lang_has_input_file, new_afile(), and TRUE.

Referenced by add_bfd_to_link(), build_filler_bfd(), lang_init(), mri_load(), parse_args(), and yyparse().

void lang_add_map ( const char *  name  ) 

Definition at line 5152 of file ldlang.c.

References map_option_f, and TRUE.

Referenced by yyparse().

void lang_add_nocrossref ( lang_nocrossref_type l  ) 

void lang_add_output ( const char *  name,
int  from_script 
)

Definition at line 4710 of file ldlang.c.

References had_output_filename, output_filename, and TRUE.

Referenced by mri_name(), parse_args(), and yyparse().

void lang_add_output_format ( const char *  format,
const char *  big,
const char *  little,
int  from_script 
)

Definition at line 5376 of file ldlang.c.

References command_line, args_type::endian, ENDIAN_BIG, ENDIAN_LITTLE, NULL, and output_target.

Referenced by mri_format(), parse_args(), and yyparse().

void lang_add_reloc ( bfd_reloc_code_real_type  reloc,
reloc_howto_type howto,
asection section,
const char *  name,
union etree_union addend 
)

void lang_add_section ( lang_statement_list_type ptr,
asection section,
lang_output_section_statement_type output,
lang_input_statement_type file 
)

void lang_add_target ( const char *  name  ) 

Definition at line 5142 of file ldlang.c.

References new_stat.

Referenced by parse_args(), and yyparse().

void lang_add_unique ( const char *  name  ) 

Definition at line 6219 of file ldlang.c.

References unique_sections::name, unique_sections::next, strcmp(), xmalloc(), and xstrdup().

Referenced by parse_args().

struct bfd_elf_version_deps* lang_add_vers_depend ( struct bfd_elf_version_deps list,
const char *  name 
) [read]

void lang_add_wild ( struct wildcard_spec filespec,
struct wildcard_list section_list,
bfd_boolean  keep_sections 
)

static void lang_check ( void   )  [static]

static void lang_check_section_addresses ( void   )  [static]

static void lang_common ( void   )  [static]

static struct bfd_hash_entry* lang_definedness_newfunc ( struct bfd_hash_entry entry,
struct bfd_hash_table *table  ATTRIBUTE_UNUSED,
const char *name  ATTRIBUTE_UNUSED 
) [static, read]

static struct bfd_hash_entry* lang_definedness_newfunc ( struct bfd_hash_entry ,
struct bfd_hash_table ,
const char *   
) [static, read]

Referenced by lang_init().

void lang_do_assignments ( lang_statement_union_type s,
lang_output_section_statement_type output_section_statement,
fill_type fill,
bfd_vma  dot 
)

static bfd_vma lang_do_assignments_1 ( lang_statement_union_type s,
lang_output_section_statement_type output_section_statement,
fill_type fill,
bfd_vma  dot 
) [static]

Definition at line 4069 of file ldlang.c.

References _, abort, lang_reloc_statement_type::addend_exp, lang_reloc_statement_type::addend_value, lang_statement_union::assignment_statement, bfd_get_reloc_size(), lang_output_section_statement_struct::bfd_section, BYTE, BYTE_SIZE, lang_wild_statement_struct::children, lang_output_section_statement_struct::children, lang_group_statement_type::children, constructor_list, lang_statement_union::data_statement, einfo(), lang_assignment_statement_type::exp, lang_data_statement_type::exp, exp_fold_tree(), exp_get_abs_int(), FAIL, lang_fill_statement_type::fill, lang_output_section_statement_struct::fill, lang_statement_union::fill_statement, bfd_section::flags, lang_statement_union::group_statement, statement_list::head, lang_statement_union::header, lang_reloc_statement_type::howto, in, lang_statement_union::input_section, lang_final_phase_enum, link_info, bfd_section::lma, lang_output_section_statement_struct::load_base, LONG, LONG_SIZE, lang_statement_header_struct::next, NULL, lang_statement_union::output_section_statement, lang_statement_union::padding_statement, QUAD_SIZE, lang_statement_union::reloc_statement, bfd_link_info::relocatable, SEC_EXCLUDE, SEC_HAS_CONTENTS, SEC_THREAD_LOCAL, etree_value_type::section, lang_input_section_type::section, SHORT, SHORT_SIZE, lang_padding_statement_type::size, size, bfd_section::size, SQUAD, TO_ADDR, TO_SIZE, lang_data_statement_type::type, lang_statement_header_struct::type, etree_value_type::valid_p, etree_value_type::value, lang_data_statement_type::value, bfd_section::vma, and lang_statement_union::wild_statement.

Referenced by lang_do_assignments().

static void lang_do_version_exports_section ( void   )  [static]

void lang_enter_group ( void   ) 

Definition at line 5398 of file ldlang.c.

References lang_group_statement_type::children, g, lang_list_init(), and new_stat.

Referenced by parse_args(), and yyparse().

lang_output_section_statement_type* lang_enter_output_section_statement ( const char *  output_section_statement_name,
etree_type address_exp,
enum section_type  sectype,
etree_type align,
etree_type subalign,
etree_type ebase,
int  constraint 
)

void lang_enter_overlay ( etree_type vma_expr,
etree_type subalign 
)

Definition at line 5586 of file ldlang.c.

References ASSERT, and NULL.

Referenced by yyparse().

void lang_enter_overlay_section ( const char *  name  ) 

void lang_final ( void   ) 

Definition at line 4781 of file ldlang.c.

References new_stat, and output_filename.

Referenced by main().

static void lang_finalize_version_expr_head ( struct bfd_elf_version_expr_head head  )  [static]

static void lang_finish ( void   )  [static]

void lang_float ( bfd_boolean  maybe  ) 

Definition at line 5245 of file ldlang.c.

References lang_float_flag.

Referenced by yyparse().

void lang_for_each_file ( void(*)(lang_input_statement_type *)  func  ) 

Definition at line 4669 of file ldlang.c.

References f, func, and LANG_FOR_EACH_INPUT_STATEMENT.

Referenced by check_nocrossrefs().

void lang_for_each_input_file ( void(*)(lang_input_statement_type *)  func  ) 

Definition at line 4654 of file ldlang.c.

References f, func, statement_list::head, lang_input_statement_struct::next_real_file, and NULL.

void lang_for_each_statement ( void(*)(lang_statement_union_type *)  func  ) 

Definition at line 377 of file ldlang.c.

References func, statement_list::head, and lang_for_each_statement_worker().

Referenced by lang_process(), and ldwrite().

static void lang_for_each_statement_worker ( void(*)(lang_statement_union_type *)  func,
lang_statement_union_type s 
) [static]

static void lang_gc_sections ( void   )  [static]

static void lang_gc_sections_1 ( lang_statement_union_type s  )  [static]

const char* lang_get_output_target ( void   ) 

static void lang_get_regions ( lang_memory_region_type **  region,
lang_memory_region_type **  lma_region,
const char *  memspec,
const char *  lma_memspec,
bfd_boolean  have_lma,
bfd_boolean  have_vma 
) [static]

void lang_init ( void   ) 

lang_output_section_statement_type* lang_insert_orphan ( lang_input_statement_type file,
asection s,
const char *  secname,
lang_output_section_statement_type after,
struct orphan_save place,
etree_type address,
lang_statement_list_type add_child 
)

void lang_leave_group ( void   ) 

Definition at line 5413 of file ldlang.c.

Referenced by parse_args(), and yyparse().

void lang_leave_output_section_statement ( fill_type fill,
const char *  memspec,
lang_output_section_phdr_list phdrs,
const char *  lma_memspec 
)

void lang_leave_overlay ( etree_type lma_expr,
int  nocrossrefs,
fill_type fill,
const char *  memspec,
lang_output_section_phdr_list phdrs,
const char *  lma_memspec 
)

void lang_leave_overlay_section ( fill_type fill,
lang_output_section_phdr_list phdrs 
)

void lang_list_init ( lang_statement_list_type list  ) 

void lang_map ( void   ) 

static void lang_map_flags ( flagword  flag  )  [static]

Definition at line 1081 of file ldlang.c.

References minfo(), SEC_ALLOC, SEC_CODE, SEC_DATA, SEC_LOAD, and SEC_READONLY.

Referenced by lang_map().

static lang_memory_region_type* lang_memory_default ( asection section  )  [static]

lang_memory_region_type* lang_memory_region_lookup ( const char *const   name,
bfd_boolean  create 
)

void lang_new_phdr ( const char *  name,
etree_type type,
bfd_boolean  filehdr,
bfd_boolean  phdrs,
etree_type at,
etree_type flags 
)

struct bfd_elf_version_tree* lang_new_vers_node ( struct bfd_elf_version_expr globals,
struct bfd_elf_version_expr locals 
) [read]

struct bfd_elf_version_expr* lang_new_vers_pattern ( struct bfd_elf_version_expr orig,
const char *  new,
const char *  lang 
) [read]

static bfd_boolean lang_one_common ( struct bfd_link_hash_entry h,
void info 
) [static]

lang_output_section_statement_type* lang_output_section_find ( const char *const   name  ) 

Definition at line 648 of file ldlang.c.

References lang_output_section_find_1().

Referenced by exp_init_os(), and fold_name().

static lang_output_section_statement_type* lang_output_section_find_1 ( const char *const   name,
int  constraint 
) [static]

lang_output_section_statement_type* lang_output_section_find_by_flags ( const asection sec,
lang_output_section_statement_type **  exact 
)

lang_output_section_statement_type* lang_output_section_statement_lookup ( const char *const   name  ) 

static lang_output_section_statement_type* lang_output_section_statement_lookup_1 ( const char *const   name,
int  constraint 
) [static]

static void lang_place_orphans ( void   )  [static]

static void lang_place_undefineds ( void   )  [static]

void lang_process ( void   ) 

static void lang_record_phdrs ( void   )  [static]

void lang_register_vers_node ( const char *  name,
struct bfd_elf_version_tree version,
struct bfd_elf_version_deps deps 
)

void lang_reset_memory_regions ( void   ) 

void lang_section_start ( const char *  name,
etree_type address,
const segment_type segment 
)

void lang_set_flags ( lang_memory_region_type ptr,
const char *  flags,
int  invert 
)

static void lang_set_startof ( void   )  [static]

bfd_vma lang_size_sections ( lang_statement_union_type s,
lang_output_section_statement_type output_section_statement,
lang_statement_union_type **  prev,
fill_type fill,
bfd_vma  dot,
bfd_boolean *  relax,
bfd_boolean  check_regions 
)

static bfd_vma lang_size_sections_1 ( lang_statement_union_type s,
lang_output_section_statement_type output_section_statement,
lang_statement_union_type **  prev,
fill_type fill,
bfd_vma  dot,
bfd_boolean *  relax,
bfd_boolean  check_regions 
) [static]

Definition at line 3575 of file ldlang.c.

References _, abort, lang_output_section_statement_struct::addr_tree, after, align_power, bfd_section::alignment_power, ASSERT, lang_statement_union::assignment_statement, bfd_get_flavour, bfd_get_reloc_size(), bfd_get_section_name, bfd_is_abs_section, bfd_relax_section, lang_output_section_statement_struct::bfd_section, bfd_section_vma, bfd_set_section_vma, bfd_target_coff_flavour, bfd_target_ecoff_flavour, lang_output_section_statement_struct::block_value, BYTE, BYTE_SIZE, args_type::check_section_addresses, lang_wild_statement_struct::children, lang_output_section_statement_struct::children, lang_group_statement_type::children, command_line, config, constructor_list, bfd_link_info::create_object_symbols_section, memory_region_struct::current, lang_statement_union::data_statement, DEFAULT_MEMORY_REGION, einfo(), lang_assignment_statement_type::exp, lang_data_statement_type::exp, exp_fold_tree(), exp_intop(), FAIL, FALSE, lang_fill_statement_type::fill, lang_output_section_statement_struct::fill, lang_statement_union::fill_statement, lang_output_section_statement_struct::flags, bfd_section::flags, lang_statement_union::group_statement, statement_list::head, lang_statement_union::header, lang_reloc_statement_type::howto, i, IGNORE_SECTION, lang_statement_union::input_section, insert_pad(), lang_allocating_phase_enum, lang_memory_default(), lang_memory_region_lookup(), link_info, bfd_section::lma, lang_output_section_statement_struct::lma_region, lang_output_section_statement_struct::load_base, LONG, LONG_SIZE, memory_region_struct::name, lang_output_section_statement_struct::name, lang_statement_header_struct::next, memory_region_struct::next, NULL, os_region_check(), output_bfd, lang_padding_statement_type::output_offset, bfd_section::output_offset, lang_reloc_statement_type::output_section, lang_data_statement_type::output_section, lang_fill_statement_type::output_section, lang_statement_union::output_section_statement, lang_reloc_statement_type::output_vma, lang_data_statement_type::output_vma, bfd_section::owner, lang_statement_union::padding_statement, lang_output_section_statement_struct::processed, QUAD_SIZE, r, lang_output_section_statement_struct::region, lang_statement_union::reloc_statement, bfd_link_info::relocatable, SEC_ALLOC, SEC_COFF_SHARED_LIBRARY, SEC_HAS_CONTENTS, SEC_LOAD, SEC_NEVER_LOAD, SEC_THREAD_LOCAL, etree_value_type::section, lang_input_section_type::section, lang_output_section_statement_struct::section_alignment, SHORT, SHORT_SIZE, lang_padding_statement_type::size, size, bfd_section::size, size_input_section(), SQUAD, strcmp(), TO_ADDR, TO_SIZE, TRUE, lang_data_statement_type::type, lang_statement_header_struct::type, lang_output_section_statement_struct::update_dot_tree, etree_value_type::valid_p, etree_value_type::value, bfd_section::vma, ld_config_type::warn_section_align, and lang_statement_union::wild_statement.

Referenced by lang_size_sections().

void lang_startup ( const char *  name  ) 

void lang_statement_append ( lang_statement_list_type list,
lang_statement_union_type element,
lang_statement_union_type **  field 
)

int lang_symbol_definition_iteration ( const char *  name  ) 

void lang_track_definedness ( const char *  name  ) 

Definition at line 2472 of file ldlang.c.

References _, bfd_hash_lookup(), einfo(), FALSE, lang_definedness_table, NULL, and TRUE.

Referenced by fold_name().

void lang_update_definedness ( const char *  name,
struct bfd_link_hash_entry h 
)

static struct bfd_elf_version_expr* lang_vers_match ( struct bfd_elf_version_expr_head head,
struct bfd_elf_version_expr prev,
const char *  sym 
) [static, read]

void ldlang_add_file ( lang_input_statement_type entry  ) 

void ldlang_add_undef ( const char *const   name  ) 

Definition at line 2559 of file ldlang.c.

References insert_undefined(), ldlang_undef_chain_list_head, NULL, output_bfd, stat_alloc(), and xstrdup().

Referenced by parse_args(), and yyparse().

static void ldlang_open_output ( lang_statement_union_type statement  )  [static]

static bfd_boolean load_symbols ( lang_input_statement_type entry,
lang_statement_list_type place 
) [static]

static lang_input_statement_type * lookup_name ( const char *  name  )  [static]

static void map_input_to_output_sections ( lang_statement_union_type s,
const char *  target,
lang_output_section_statement_type os 
) [static]

static int name_compare ( char *  first,
char *  second 
) [static]

Definition at line 2121 of file ldlang.c.

References free(), result, strcut(), stricpy(), strlen(), and xmalloc().

Referenced by closest_target_match().

static lang_input_statement_type* new_afile ( const char *  name,
lang_input_file_enum_type  file_type,
const char *  target,
bfd_boolean  add_to_list 
) [static]

static lang_statement_union_type* new_statement ( enum statement_enum  type,
size_t  size,
lang_statement_list_type list 
) [static]

static void open_input_bfds ( lang_statement_union_type s,
bfd_boolean  force 
) [static]

static bfd* open_output ( const char *  name  )  [static]

static void os_region_check ( lang_output_section_statement_type os,
lang_memory_region_type region,
etree_type tree,
bfd_vma  base 
) [static]

static asection* output_prev_sec_find ( lang_output_section_statement_type os  )  [static]

static void output_section_callback ( lang_wild_statement_type ptr,
struct wildcard_list sec,
asection section,
lang_input_statement_type file,
void output 
) [static]

static void print_address_statement ( lang_address_statement_type address  )  [static]

static void print_all_symbols ( asection sec  )  [static]

static void print_assignment ( lang_assignment_statement_type assignment,
lang_output_section_statement_type output_section 
) [static]

static void print_data_statement ( lang_data_statement_type data  )  [static]

static void print_fill_statement ( lang_fill_statement_type fill  )  [static]

static void print_group ( lang_group_statement_type s,
lang_output_section_statement_type os 
) [static]

static void print_input_section ( lang_input_section_type in  )  [static]

static void print_input_statement ( lang_input_statement_type statm  )  [static]

static bfd_boolean print_one_symbol ( struct bfd_link_hash_entry hash_entry,
void ptr 
) [static]

static void print_output_section_statement ( lang_output_section_statement_type output_section_statement  )  [static]

static void print_padding_statement ( lang_padding_statement_type s  )  [static]

static void print_reloc_statement ( lang_reloc_statement_type reloc  )  [static]

static void print_statement ( lang_statement_union_type s,
lang_output_section_statement_type os 
) [static]

static void print_statement_list ( lang_statement_union_type s,
lang_output_section_statement_type os 
) [static]

static void print_statements ( void   )  [static]

Definition at line 3353 of file ldlang.c.

References statement_list::head, and print_statement_list().

Referenced by lang_map().

static void print_wild_statement ( lang_wild_statement_type w,
lang_output_section_statement_type os 
) [static]

static const char* realsymbol ( const char *  pattern  )  [static]

Definition at line 5865 of file ldlang.c.

References changed, FALSE, free(), NULL, p, strlen(), TRUE, and xmalloc().

Referenced by lang_new_vers_pattern().

static void section_already_linked ( bfd abfd,
asection sec,
void data 
) [static]

static bfd_vma size_input_section ( lang_statement_union_type **  this_ptr,
lang_output_section_statement_type output_section_statement,
fill_type fill,
bfd_vma  dot 
) [static]

static bfd_boolean sort_def_symbol ( struct bfd_link_hash_entry hash_entry,
info   
) [static]

static bfd_boolean sort_def_symbol ( struct bfd_link_hash_entry ,
void  
) [static]

Referenced by lang_map().

void* stat_alloc ( size_t  size  ) 

static void strcut ( char *  haystack,
char *  needle 
) [static]

Definition at line 2102 of file ldlang.c.

References src, strlen(), and strstr().

Referenced by name_compare().

static void stricpy ( char *  dest,
char *  src 
) [static]

Definition at line 2088 of file ldlang.c.

References c, and TOLOWER.

Referenced by name_compare().

static void strip_excluded_output_sections ( void   )  [static]

static int topower ( int  x  )  [static]

Definition at line 4723 of file ldlang.c.

References i.

Referenced by lang_enter_output_section_statement().

bfd_boolean unique_section_p ( const asection sec  ) 

static void update_wild_statements ( lang_statement_union_type s  )  [static]

static int version_expr_head_eq ( const void p1,
const void p2 
) [static]

Definition at line 5967 of file ldlang.c.

References strcmp(), and bfd_elf_version_expr::symbol.

Referenced by lang_finalize_version_expr_head().

static hashval_t version_expr_head_hash ( const void p  )  [static]

Definition at line 5959 of file ldlang.c.

References htab_hash_string(), and bfd_elf_version_expr::symbol.

Referenced by lang_finalize_version_expr_head().

static void walk_wild ( lang_wild_statement_type s,
callback_t  callback,
void data 
) [static]

static void walk_wild_file ( lang_wild_statement_type s,
lang_input_statement_type f,
callback_t  callback,
void data 
) [static]

static void walk_wild_section ( lang_wild_statement_type ptr,
lang_input_statement_type file,
callback_t  callback,
void data 
) [static]

static void wild ( lang_wild_statement_type s,
const char *target  ATTRIBUTE_UNUSED,
lang_output_section_statement_type output 
) [static]

static lang_statement_union_type* wild_sort ( lang_wild_statement_type wild,
struct wildcard_list sec,
lang_input_statement_type file,
asection section 
) [static]


Variable Documentation

Definition at line 139 of file ldlang.c.

Referenced by _ALLOCATE(), _cntig_chk(), _cpp_simplify_pathname(), _cpp_valid_ucn(), _DEALLOC(), _DEALLOCATE(), ANL_LOOP_CONSTRUCT::_First_Loop_Stmt(), ANL_REGION_CONSTRUCT::_First_Region_Stmt(), ANL_LOOP_CONSTRUCT::_Last_Loop_Stmt(), ANL_REGION_CONSTRUCT::_Last_Region_Stmt(), ANL_LOOP_CONSTRUCT::_Loop_Srcpos_Range(), _REALLOC(), _unpack_arry(), access_can_touch_variable(), add_address_candidates(), CODEMAP::Add_expr(), add_fdes(), add_iv_value_candidates(), PF_LOOPNODE::Add_Ref(), add_to_sequence(), add_vcall_offset(), addr_base_offset(), KEY_SCH::Addr_Generation(), adjust_result_of_qualified_name_lookup(), aligned_memory_operand(), alpha_build_builtin_va_list(), alpha_build_va_list(), alpha_gimplify_va_arg(), analyze_addressof_ty_being_split(), Analyze_OP_For_Unwind_Info(), POINTS_TO::Analyze_ST(), annotate_constant_pool_refs(), Append_Distribution(), apply_macro_to_string(), AR_convert_hex_str_to_float(), AR_INTRIN2(), ARA_REF::ARA_REF(), arc_print_operand_address(), arm_gen_rotated_half_load(), arm_legitimize_address(), arm_reload_in_hi(), arm_reload_out_hi(), aux_compute_alignment(), avr_override_options(), Base_Symbol(), Base_Symbol_And_Offset(), Base_Symbol_And_Offset_For_Addressing(), basename(), bfd_elf_final_link(), binary_search_single_encoding_fdes(), bsearch(), build_addr(), build_anon_union_vars(), ARRAY_REF::Build_Array(), Build_Class_Hierarchy(), build_fold_addr_expr_with_type(), build_insn_table(), build_object_call(), TRANSPOSE_DIRECTED_GRAPH16::Build_Snl_Array(), build_static_cast(), build_static_cast_1(), build_unary_op(), c4x_check_legit_addr(), c4x_legitimate_address_p(), c_initialize_diagnostics(), CGTARG_TN_For_Asm_Operand(), Check_range(), choose_temp_base(), choose_tmpdir(), chrec_convert_1(), classify_object_over_fdes(), OPT_STAB::Collect_nested_ref_info(), comp_except_specs(), comp_target_types(), compute_bb_dataflow(), compute_object_offset(), convert_binary_literal(), convert_hex_literal(), Convert_Regs(), convert_to_string(), count_ev_in_wider_type(), cp_parser_base_clause(), cpp_interpret_integer(), cpp_interpret_string(), Create_And_Set_ST_Base(), create_file_names(), create_new_iv(), Create_ST_For_Tree(), create_unique_file(), crx_decompose_address(), cwh_io_ST_base(), cwh_stab_adjust_base_name(), cwh_stab_altentry_TY(), cxx_initialize_diagnostics(), cygwin_gt_pch_get_address(), darwin_emit_unwind_label(), Dead_Store_Eliminate_Arrays(), Delete_Unwanted_Prefetches(), dequeue_and_dump(), desc_frgr_mem(), determine_base_object(), determine_biv_step(), determine_exit_conditions(), determine_iv_cost(), dfs_base_derived_from(), dfs_find_vbase_instance(), Do_Linearize(), do_spill(), double_max_option_seen(), DRA_Make_File_Name(), DST_Create_type(), DST_enter_member_function(), DST_enter_normal_field(), DST_enter_static_data_mem(), DST_enter_struct_union_members(), dw2_asm_output_offset(), EBO_Fold_Load_Duplicate(), EBO_Lea_Insertion(), EBO_Load_Execution(), EETARG_Call_Mcount(), elf_bfd_final_link(), eliminate_regs_in_insn(), emit_notes_in_bb(), emit_restore_regs(), emit_save_or_restore_regs(), emit_save_regs(), STMTREP::Enter_lhs(), EPROP(), Exp_Immediate(), Exp_Immediate_Int(), Expand_32Bit_Int_Less(), Expand_32Bit_Int_Less_Equal(), Expand_Add(), Expand_Int_Less(), Expand_Int_Less_Equal(), Expand_Sub(), expr_iter(), extract_force_align_mem_bit_field(), fde_single_encoding_compare(), fei_exponentiate(), fei_static_base(), fei_task_var(), ffestc_R1227(), final_equivalence_semantics(), find(), find_bivs(), find_givs_in_stmt(), find_interesting_uses_address(), Find_Reduction_Array_Base(), find_reloads_subreg_address(), finish_vtbls(), fix_lexical_addr(), FIX_PROC_HEAD(), Fixup_Common(), Fold_Base(), fold_const_aggregate_ref(), fold_offsetof_1(), fold_rtx(), fold_rtx_mem_1(), fold_unary(), Formal_Sym(), FPROP(), frv_hard_regno_mode_ok(), frv_index_memory(), gather_memory_references_ref(), gen_bypass(), Gen_Post_Incr_Memop(), generate_classfile(), get_address_cost(), get_aligned_mem(), Get_callee(), get_charset_aliases(), Get_element_mtype(), Get_element_ty(), Get_MP_modref(), Get_ST_Base(), Get_TN_Value(), get_unaligned_address(), ggc_allocated_p(), ggc_pch_this_base(), gimplify_omp_atomic_fetch_op(), REGION_BOUND::GRB_formal_ref(), hash_c_test(), hppa_expand_prologue(), hppa_legitimize_address(), i960_address_cost(), i960_va_arg(), i960_va_start(), ia64_split_timode(), ia64_split_tmode(), ia64_split_tmode_move(), Identify_and_delete_incr(), init_alias_analysis(), initialize_argument_information(), instantiate_class_template(), instantiate_element(), BB_LOOP::Invariant_cr_rec(), IP_READ_pu_infos(), IPO_Pad_Arrays(), Is_Allocated(), is_call_clobbered_ref(), Is_Common_Based_Symbol(), Is_Control_Speculation_Gratuitous(), Is_Local_Array_Reference(), ix86_decompose_address(), ix86_split_long_move(), java_get_line_col(), lambda_lattice_compute_base(), lbasename(), legitimate_address_p(), legitimize_address(), legitimize_pic_address(), legitimize_tls_address(), lex_number(), linear_search_fdes(), load_multiple_operation(), look_for_casts(), lookup_page_table_entry(), lower_bit_field_id(), lower_complex_expr(), lower_split_sym_addrs(), POINTS_TO::Lower_to_base(), lower_uplevel_reference(), m32c_print_operand(), m32r_legitimize_pic_address(), m32r_print_operand_address(), m68hc11_reload_operands(), m68hc11_small_indexed_indirect_p(), m68hc11_valid_addressing_p(), m88k_va_arg(), machopic_indirect_data_reference(), machopic_legitimize_pic_address(), main(), make_ii_file_name(), make_rii_file_name(), OPT_STAB::Make_st_group(), make_temp_file(), may_be_unaligned_p(), mcore_print_operand_address(), mdx_epilogue(), MEM_LARGE_BLOCK_realloc(), mem_min_alignment(), memory_address_length(), merge_types(), mf_xform_derefs_1(), mips16_optimize_gp(), mips_cannot_force_const_mem(), mips_expand_epilogue(), mips_legitimize_const_move(), mips_output_function_prologue(), mips_unspec_address(), MIR_Build_Loop_List_Array(), mpw_basename(), mpw_mixed_basename(), mri_base(), mri_draw_tree(), mri_load(), new_buff(), new_class_binding(), New_DACT(), New_Gather_References(), RVI_NODE::New_home_wn(), nlm_sparc_write_import(), nonlocal_mentioned_p_1(), object_analysis(), Offset_From_Base_Symbol(), Op_In_Working_Set(), open_files(), compress_path::operator()(), transfer_attributes_as_needed::operator()(), out_movhi_mr_r(), out_movhi_r_mr(), out_movsi_mr_r(), out_movsi_r_mr(), output_global_address(), output_restore_regs(), output_toc(), Pad_Arrays(), Pad_Local_Arrays_In_Whirl(), parse_identifier(), parse_line_table(), parse_number(), parse_slow(), pe_print_edata(), REGION_STRIDE_PREFETCH::Phased_Multi_Stride_Ins(), ARRAY_DIRECTED_GRAPH16::Print(), Print_Feedback_Info(), print_operand(), print_operand_address(), print_operand_reloc(), print_relative_path(), print_shift_count_operand(), SUMMARIZE< program >::Process_procedure(), process_set(), Process_Stack_Variable(), Promote_Pointer(), COPYPROP::Propagatable(), read_count_file(), read_graph_file(), Read_isr_cg(), Read_Pragma_Data_Affinity(), real_nan(), Record_unknown_memory_op(), register_indirect_p(), reload_combine(), resolve_offset_ref(), rs6000_override_options(), s390_decompose_address(), s390_optimize_prologue(), Scalarize_Arrays(), ACCESS_ARRAY::Set_Array(), set_mem_attributes_minus_bitpos(), set_page_table_entry(), Set_Reduction_Array_Base_is_shared_auto(), sort_mem_initializers(), sparc_nonflat_function_prologue(), sparc_output_addr_diff_vec(), Split_Common_Block(), ST_alignment(), ST_Block_Merge(), St_Block_Union(), ST_is_const_initialized_scalar(), ST_on_stack(), ST_Source_COMMON_Block(), store_killed_in_insn(), store_multiple_operation(), REGION_STRIDE_PREFETCH::Strong_Single_Stride_Ins(), synthesize_exception_spec(), TEST_FOR_FIX_PROC_HEAD(), thumb_load_double_from_address(), tree_could_trap_p(), tree_expr_nonzero_p(), tree_expr_nonzero_warnv_p(), true_dependence(), true_regnum(), tsubst_copy(), unaligned_memory_operand(), update_alias_info(), use_anchored_address(), va_list_counter_struct_op(), vect_analyze_data_refs(), vect_compute_data_ref_alignment(), vect_object_analysis(), vfp_output_fstmx(), vrp_expr_computes_nonzero(), vt_initialize(), walk_rtx(), WFE_Start_Function(), WGEN_Start_Function(), WN2F_String_Argument(), WN_get_global_symtab(), WN_get_PU_Infos(), WN_get_symtab(), write_dependence_p(), write_integer_cst(), xref_basetypes(), xstormy16_expand_builtin_va_arg(), xstormy16_expand_builtin_va_start(), and xt_true_regnum().

Definition at line 4720 of file ldlang.c.

Referenced by GLOBAL_ARRAY_LIST::Find_Global_Array_Info().

const char* current_target [static]

Definition at line 93 of file ldlang.c.

Referenced by lang_get_output_target(), lang_process(), ldlang_open_output(), and open_input_bfds().

Definition at line 89 of file ldlang.c.

bfd_boolean delete_output_file_on_failure = FALSE

Definition at line 133 of file ldlang.c.

Referenced by open_output(), and remove_output().

bfd_boolean entry_from_cmdline

Definition at line 129 of file ldlang.c.

Referenced by lang_add_entry().

const char* entry_section = ".text"

Definition at line 128 of file ldlang.c.

Referenced by lang_finish().

struct bfd_sym_chain entry_symbol = { NULL, NULL }

Definition at line 127 of file ldlang.c.

Definition at line 1722 of file ldlang.c.

Definition at line 126 of file ldlang.c.

Definition at line 92 of file ldlang.c.

Referenced by main().

bfd_boolean had_output_filename = FALSE

Definition at line 131 of file ldlang.c.

Referenced by lang_add_output().

Definition at line 87 of file ldlang.c.

Definition at line 5755 of file ldlang.c.

bfd_boolean lang_float_flag = FALSE

Definition at line 132 of file ldlang.c.

Referenced by lang_float().

bfd_boolean lang_has_input_file = FALSE

Definition at line 130 of file ldlang.c.

Referenced by lang_add_input_file(), lang_add_wild(), main(), and new_afile().

Definition at line 565 of file ldlang.c.

Definition at line 567 of file ldlang.c.

Referenced by lang_memory_region_lookup().

Definition at line 124 of file ldlang.c.

Definition at line 96 of file ldlang.c.

bfd_boolean ldlang_sysrooted_script = FALSE [static]

Definition at line 136 of file ldlang.c.

Referenced by load_symbols(), and new_afile().

Definition at line 82 of file ldlang.c.

Referenced by lang_map(), and sort_def_symbol().

bfd_boolean map_option_f [static]

Definition at line 90 of file ldlang.c.

Referenced by lang_add_map().

Definition at line 134 of file ldlang.c.

Referenced by check_local_sym_xref(), check_nocrossref(), main(), and notice().

unsigned int opb_shift = 0 [static]

Definition at line 2375 of file ldlang.c.

const char* output_target [static]

Definition at line 5581 of file ldlang.c.

Definition at line 5572 of file ldlang.c.

Definition at line 5569 of file ldlang.c.

Definition at line 5567 of file ldlang.c.

bfd_boolean placed_commons = FALSE [static]

Definition at line 88 of file ldlang.c.

Referenced by lang_add_wild().

bfd_vma print_dot [static]

const char* startup_file [static]

Definition at line 86 of file ldlang.c.

Referenced by lang_startup().

Definition at line 81 of file ldlang.c.

Referenced by lang_init(), and stat_alloc().

Definition at line 125 of file ldlang.c.

Referenced by ldctor_build_sets(), pe_dll_fill_sections(), and pe_exe_fill_sections().

Definition at line 95 of file ldlang.c.

Definition at line 135 of file ldlang.c.

int version_index [static]

Definition at line 5956 of file ldlang.c.

Referenced by _bfd_elf_link_assign_sym_version(), and elf_link_check_versioned_symbol().

const bfd_target* winner [static]


Generated on Wed Apr 8 15:01:45 2009 for Open64 by  doxygen 1.5.6