* ldgram.y: Add support for REGION_ALIAS operator.

* ldlang.c: Likewise.
        * ldlang.h: Likewise.
        * ldlex.l: Likewise.
        * NEWS: Mention the new feature.
        * ld.texinfo: Document the new feature.
        * ld-scripts/regions-alias-1.t: New file.
        * ld-scripts/regions-alias-2.t: New file.
        * ld-scripts/regions-alias-3.t: New file.
        * ld-scripts/regions-alias-4.t: New file.
        * ld-scripts/script.exp: Run region alias tests.
This commit is contained in:
Nick Clifton
2009-03-02 17:27:36 +00:00
parent 220df88bff
commit 4a93e18003
25 changed files with 330 additions and 45 deletions

View File

@@ -43,13 +43,19 @@ struct _fill_type
typedef struct statement_list
{
union lang_statement_union *head;
union lang_statement_union **tail;
union lang_statement_union * head;
union lang_statement_union ** tail;
} lang_statement_list_type;
typedef struct memory_region_name_struct
{
const char * name;
struct memory_region_name_struct * next;
} lang_memory_region_name;
typedef struct memory_region_struct
{
char *name;
lang_memory_region_name name_list;
struct memory_region_struct *next;
bfd_vma origin;
bfd_size_type length;
@@ -429,7 +435,8 @@ struct lang_definedness_hash_entry
/* Used by place_orphan to keep track of orphan sections and statements. */
struct orphan_save {
struct orphan_save
{
const char *name;
flagword flags;
lang_output_section_statement_type *os;
@@ -457,10 +464,10 @@ extern void lang_init
(void);
extern void lang_finish
(void);
extern lang_memory_region_type *lang_memory_region_lookup
(const char *const, bfd_boolean);
extern lang_memory_region_type *lang_memory_region_default
(asection *);
extern lang_memory_region_type * lang_memory_region_lookup
(const char * const, bfd_boolean);
extern void lang_memory_region_alias
(const char *, const char *);
extern void lang_map
(void);
extern void lang_set_flags