Miscellaneous ld tidies

Localise a struct, prevent an unneeded symbol lookup, and fix a
testcase.

ld/
	* ld.h (struct map_symbol_def): Move to..
	* ldlang.h: ..here.
	* ldlang.c (print_assignment): Don't set expld.assign_name to dot.
ld/testsuite/
	* ld-scripts/pr14962-2.d: Correct target triple.
This commit is contained in:
Alan Modra 2014-01-22 12:51:19 +10:30
parent 2edab91c10
commit 7dd9c6eb05
6 changed files with 18 additions and 7 deletions

View file

@ -1,3 +1,9 @@
2014-01-22 Alan Modra <amodra@gmail.com>
* ld.h (struct map_symbol_def): Move to..
* ldlang.h: ..here.
* ldlang.c (print_assignment): Don't set expld.assign_name to dot.
2014-01-22 Alan Modra <amodra@gmail.com>
* ld.texinfo (Output Section Discarding): Mention assigning to dot

View file

@ -104,11 +104,6 @@ struct wildcard_list {
struct wildcard_spec spec;
};
struct map_symbol_def {
struct bfd_link_hash_entry *entry;
struct map_symbol_def *next;
};
#define BYTE_SIZE (1)
#define SHORT_SIZE (2)
#define LONG_SIZE (4)

View file

@ -3935,6 +3935,7 @@ print_assignment (lang_assignment_statement_type *assignment,
const char *dst = assignment->exp->assign.dst;
is_dot = (dst[0] == '.' && dst[1] == 0);
if (!is_dot)
expld.assign_name = dst;
tree = assignment->exp->assign.src;
}

View file

@ -313,6 +313,11 @@ typedef struct
asection *section;
} lang_input_section_type;
struct map_symbol_def {
struct bfd_link_hash_entry *entry;
struct map_symbol_def *next;
};
/* For input sections, when writing a map file: head / tail of a linked
list of hash table entries for symbols defined in this section. */
typedef struct input_section_userdata_struct

View file

@ -1,3 +1,7 @@
2014-01-22 Alan Modra <amodra@gmail.com>
* ld-scripts/pr14962-2.d: Correct target triple.
2014-01-22 Alan Modra <amodra@gmail.com>
* ld-shared/elf-offset.ld: Align end of .bss with canonical form

View file

@ -1,7 +1,7 @@
#ld: -T pr14962-2.t
#source: pr14962a.s
#nm: -n
#notarget: rx-*-* frv-linux
#notarget: rx-*-* frv-*-*linux*
#...
0+2000 [AT] _start