bug-binutils
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Bug ld/30059] Weird interaction between "INSERT BEFORE" and "MEMORY"


From: stefan.tauner at gmx dot at
Subject: [Bug ld/30059] Weird interaction between "INSERT BEFORE" and "MEMORY"
Date: Sun, 29 Jan 2023 23:04:07 +0000

https://sourceware.org/bugzilla/show_bug.cgi?id=30059

--- Comment #3 from Stefan <stefan.tauner at gmx dot at> ---
clicking "submit" when adding the attachments was not the best idea, sorry ;)

The MWE shows the problem as follows. When running 'make -B
CC=aarch64-none-elf-gcc' as is the default ram origin is used (with aarch64
that's usually equal to the one commented out: 0x400000). The SECTIONS command
works as intended and the '__text_start' symbol as well as the '.text' section
start at the next 1M-aligned address, i.e.:

$ make -B CC=aarch64-none-elf-gcc
aarch64-none-elf-gcc    -c -o test.o test.S
aarch64-none-elf-gcc -Talign.ld  test.o   -o test
readelf -WS test | grep "\.text " | tr -s ' ' | cut -d' ' -sf6
0000000000500000
readelf -Ws test | grep __text_s
0000000000500000

However, when the MEMORY command of the provided linker file is used by
removing the comments, the addresses diverge:

$ make -B CC=aarch64-none-elf-gcc
aarch64-none-elf-gcc    -c -o test.o test.S
aarch64-none-elf-gcc -Talign.ld  test.o   -o test
readelf -WS test | grep "\.text " | tr -s ' ' | cut -d' ' -sf6
0000000000400040
readelf -Ws test | grep __text_start | tr -s ' ' | cut -d' ' -sf3
0000000000500000

Why does the memory map influence the section address in that way? Is this
intended or a bug?

-- 
You are receiving this mail because:
You are on the CC list for the bug.


reply via email to

[Prev in Thread] Current Thread [Next in Thread]