bug-binutils
[Top][All Lists]
Advanced

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

[Bug ld/14299] Allow output sections to be spread over multiple memory r


From: marcus.shawcroft at gmail dot com
Subject: [Bug ld/14299] Allow output sections to be spread over multiple memory regions
Date: Thu, 23 Feb 2017 07:48:18 +0000

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

Marcus Shawcroft <marcus.shawcroft at gmail dot com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |marcus.shawcroft at gmail dot 
com

--- Comment #1 from Marcus Shawcroft <marcus.shawcroft at gmail dot com> ---
Aside from performance enhancement aspect of this issue there is a more
sinister correctness issue associated with this problem.

In the case of the cortex-m4 an attempt to perform an unaligned access across
the boundary will result in a memory fault.

A common use case is to aggregate the two regions into a single RAM bank
(ignoring any potental performance optimization that might be had), in this
scenario there is no obvious way to write a link script that fills up both RAM
regions but ensures that no object is placed straddling the boundary.

mbed-os and several other platform software implementations address this issue
by writing a linker script that partitions the RAM into the two output regions
and then manually hardwire input sections to the two output sections.  This
solution is fragile and regularly fails with the first region overflowing,
resulting in further tweaks to the linker script.

zephyr-os also have this issue and currently have no workaround.

-- 
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]