Browse Source
Currently when recording a PROVIDE statement in a linker map file we
display something like:
PROVIDE (SYMBOL, VALUE)
However, in a linker script we write these statements like this:
PROVIDE (SYMBOL = VALUE);
This commit changes the output in the map file to be closer to linker
script format, the map file now contains:
PROVIDE (SYMBOL = VALUE)
The ';' is still missing from the end, but map files are not intended
to be valid linker script input, so adding the ';' just seems like
clutter.
ld/ChangeLog:
* ldexp.c (exp_print_tree): Use '=' instead of ',' when printing
PROVIDE statements.
* testsuite/ld-scripts/provide-4.map: Update expected output.
* testsuite/ld-scripts/provide-5.map: Likewise.
binutils-2_30-branch
4 changed files with 15 additions and 8 deletions
@ -1,13 +1,13 @@ |
|||
#... |
|||
Linker script and memory map |
|||
#... |
|||
\[!provide\] +PROVIDE \(foo, 0x1\) |
|||
\[!provide\] +PROVIDE \(bar, 0x2\) |
|||
0x0+3 +PROVIDE \(baz, 0x3\) |
|||
\[!provide\] +PROVIDE \(foo = 0x1\) |
|||
\[!provide\] +PROVIDE \(bar = 0x2\) |
|||
0x0+3 +PROVIDE \(baz = 0x3\) |
|||
#... |
|||
0x0+2000 +foo |
|||
\[!provide\] +PROVIDE \(loc1, ALIGN \(\., 0x10\)\) |
|||
0x0+2010 +PROVIDE \(loc2, ALIGN \(\., 0x10\)\) |
|||
\[!provide\] +PROVIDE \(loc3, \(loc1 \+ 0x20\)\) |
|||
\[!provide\] +PROVIDE \(loc1 = ALIGN \(\., 0x10\)\) |
|||
0x0+2010 +PROVIDE \(loc2 = ALIGN \(\., 0x10\)\) |
|||
\[!provide\] +PROVIDE \(loc3 = \(loc1 \+ 0x20\)\) |
|||
0x0+2030 +loc4 = \(loc2 \+ 0x20\) |
|||
#... |
|||
|
|||
Loading…
Reference in new issue