[llvm-dev] BE8 elf format on gold

Doug Kwan (關振德) via llvm-dev llvm-dev at lists.llvm.org
Wed May 18 10:50:54 PDT 2016

While most parts of gold are written to support both big and little endian
targets, the arm32 backend has not been tested on anything that is not
little-endian.  Pure big-endian config might work out of the box but I have
never tried it myself.

If I understand correctly, --be8 tells the linker to emit output with
little-endian instruction but big-endian data.  gold currently does not
support this.  We need to add code to emit branch stubs in correct
endianness and also byte swap the input instructions.


On Wed, May 18, 2016 at 10:35 AM, Umesh Kalappa <umesh.kalappa0 at gmail.com>

> Thank you Tim and Doug you said that BE8 is not supported and i'm bit
> confused now :(
> ~Umesh
> On Wed, May 18, 2016 at 7:16 PM, Tim Northover <t.p.northover at gmail.com>
> wrote:
> > On 18 May 2016 at 01:27, Umesh Kalappa via llvm-dev
> > <llvm-dev at lists.llvm.org> wrote:
> >> Do be8 format is very mandatory for  armv7(big endian) ? Or we can
> >> proceed without –be8 option    ??
> >
> > You should be fine. It looks like gold does support big-endian on ARM,
> > and the default is almost certainly BE8 (BE32 is widely regarded as a
> > mistake best forgotten).
> >
> > Cheers.
> >
> > Tim.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20160518/1816b728/attachment.html>

More information about the llvm-dev mailing list