* ldlang.c (lang_map): Increment lang_statement_iteration so that DEFINED() expressions are correctly computed.
* testsuite/ld-script/map-address.d, * testsuite/ld-script/map-address.t: Add a test for testing DEFINED in map output.
This commit is contained in:
parent
30b0f203dd
commit
a1438fce30
5 changed files with 17 additions and 1 deletions
|
@ -1,3 +1,8 @@
|
||||||
|
2007-08-31 Tristan Gingold <gingold@adacore.com>
|
||||||
|
|
||||||
|
* ldlang.c (lang_map): Increment lang_statement_iteration so that
|
||||||
|
DEFINED() expressions are correctly computed.
|
||||||
|
|
||||||
2007-08-31 Alan Modra <amodra@bigpond.net.au>
|
2007-08-31 Alan Modra <amodra@bigpond.net.au>
|
||||||
|
|
||||||
* ldlang.c (lang_record_phdrs): Give a fatal error if no sections
|
* ldlang.c (lang_record_phdrs): Give a fatal error if no sections
|
||||||
|
|
|
@ -1811,6 +1811,7 @@ lang_map (void)
|
||||||
bfd_map_over_sections (p, init_map_userdata, 0);
|
bfd_map_over_sections (p, init_map_userdata, 0);
|
||||||
bfd_link_hash_traverse (link_info.hash, sort_def_symbol, 0);
|
bfd_link_hash_traverse (link_info.hash, sort_def_symbol, 0);
|
||||||
}
|
}
|
||||||
|
lang_statement_iteration ++;
|
||||||
print_statements ();
|
print_statements ();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -3539,7 +3540,7 @@ print_assignment (lang_assignment_statement_type *assignment,
|
||||||
value = h->u.def.value;
|
value = h->u.def.value;
|
||||||
|
|
||||||
if (expld.result.section)
|
if (expld.result.section)
|
||||||
value += expld.result.section->vma;
|
value += expld.result.section->vma;
|
||||||
|
|
||||||
minfo ("[0x%V]", value);
|
minfo ("[0x%V]", value);
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,3 +1,9 @@
|
||||||
|
2007-08-31 Tristan Gingold <gingold@adacore.com>
|
||||||
|
|
||||||
|
* ld-script/map-address.t: Add a test for testing DEFINED in map
|
||||||
|
output.
|
||||||
|
* ld-script/map-address.d: Update expected output.
|
||||||
|
|
||||||
2007-08-28 Mark Shinwell <shinwell@codesourcery.com>
|
2007-08-28 Mark Shinwell <shinwell@codesourcery.com>
|
||||||
Joseph Myers <joseph@codesourcery.com>
|
Joseph Myers <joseph@codesourcery.com>
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,8 @@
|
||||||
#...
|
#...
|
||||||
Linker script and memory map
|
Linker script and memory map
|
||||||
#...
|
#...
|
||||||
|
*0x0*000020 *def1 = .*
|
||||||
|
*0x0*000020 *def2 = def1
|
||||||
*0x0*010001 *\. = 0x10001
|
*0x0*010001 *\. = 0x10001
|
||||||
*0x0*010001 *foo = \.
|
*0x0*010001 *foo = \.
|
||||||
*0x0*010201 *\. = \(\. \+ 0x200\)
|
*0x0*010201 *\. = \(\. \+ 0x200\)
|
||||||
|
|
|
@ -1,5 +1,7 @@
|
||||||
SECTIONS
|
SECTIONS
|
||||||
{
|
{
|
||||||
|
def1 = DEFINED(foo) ? 0x10 : 0x20;
|
||||||
|
def2 = def1;
|
||||||
. = 0x10001;
|
. = 0x10001;
|
||||||
foo = .;
|
foo = .;
|
||||||
. += 0x200;
|
. += 0x200;
|
||||||
|
|
Loading…
Reference in a new issue