http://sourceware.org/bugzilla/show_bug.cgi?id=13213
Bug #: 13213
Summary: Gold does not support the BE-8 big-endian variant of
the ARM architecture
Product: binutils
Version: unspecified
Status: NEW
Severity: normal
Priority: P2
Component: gold
AssignedTo: [email protected]
ReportedBy: [email protected]
Classification: Unclassified
Target: arm-none-eabi
Gold only supports the BE-32 (word-invariant) big-endian variant of the ARM
architecture (supported in v4, v5, and optionally v6). v6 and v7 introduce
BE-8 variant (byte invariant).
One of the major features of the BE-8 variant is that all instructions are in
little-endian format, whereas they are big-endian in BE-32.
The ABI
(http://infocenter.arm.com/help/topic/com.arm.doc.ihi0044d/IHI0044D_aaelf.pdf)
section 5.5.1 says that object files are produced in BE-32 format and when the
linker produces a BE-8 executable image it byte reverses instructions back to
little endian format (word-by-word for ARM, half-word-by-half-word for Thumb).
BE-8 executable files have the processor specific flag EF_ARM_BE8 set on the
image.
The implication of this is that currently Gold cannot produce images that will
run correctly in big-endian mode on ARM v7-A CPUs.
--
Configure bugmail: http://sourceware.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
_______________________________________________
bug-binutils mailing list
[email protected]
https://lists.gnu.org/mailman/listinfo/bug-binutils