diff mbox

[PR,target/70711,ARM] Fix big-endian ARMv8.1-A builds.

Message ID 5714A6EB.4040104@foss.arm.com
State New
Headers show

Commit Message

Matthew Wahab April 18, 2016, 9:20 a.m. UTC
When ARMv8.1 support was added to the ARM target, the
bpabi.h/BE8_LINK_SPEC list wasn't updated. That means that when GCC
targets ARMv8.1 big-endian, it fails to generate working binaries.

This patch addds the required 'march=armv8.1-a' entries to
BE8_LINK_SPEC. It also adds the missing entries for armv8-a+crc.

Testing for armeb-none-eabi with cross-compiled check-gcc and with
command line testing to confirm working executables are built.

Is this ok for trunk and for GCC-6 once testing is completed?
Matthew

2016-04-18  Matthew Wahab  <matthew.wahab@arm.com>

	PR target/70711
	* config/arm/bpabi.h (BE8_LINK_SPEC): Add entries for armv8+crc,
	armv8.1-a and armv8.1-a+crc.

Comments

Ramana Radhakrishnan April 18, 2016, 9:28 a.m. UTC | #1
On 18/04/16 10:20, Matthew Wahab wrote:
> When ARMv8.1 support was added to the ARM target, the
> bpabi.h/BE8_LINK_SPEC list wasn't updated. That means that when GCC
> targets ARMv8.1 big-endian, it fails to generate working binaries.
> 
> This patch addds the required 'march=armv8.1-a' entries to
> BE8_LINK_SPEC. It also adds the missing entries for armv8-a+crc.
> 
> Testing for armeb-none-eabi with cross-compiled check-gcc and with
> command line testing to confirm working executables are built.
> 
> Is this ok for trunk and for GCC-6 once testing is completed?

Oops, Thanks for catching this - 

Ok for trunk. 

Ok for GCC-6 by me but you need RM sign off before applying to the branch.

Ramana

> Matthew
> 
> 2016-04-18  Matthew Wahab  <matthew.wahab@arm.com>
> 
>     PR target/70711
>     * config/arm/bpabi.h (BE8_LINK_SPEC): Add entries for armv8+crc,
>     armv8.1-a and armv8.1-a+crc.
Richard Biener April 18, 2016, 9:41 a.m. UTC | #2
On Mon, 18 Apr 2016, Ramana Radhakrishnan wrote:

> On 18/04/16 10:20, Matthew Wahab wrote:
> > When ARMv8.1 support was added to the ARM target, the
> > bpabi.h/BE8_LINK_SPEC list wasn't updated. That means that when GCC
> > targets ARMv8.1 big-endian, it fails to generate working binaries.
> > 
> > This patch addds the required 'march=armv8.1-a' entries to
> > BE8_LINK_SPEC. It also adds the missing entries for armv8-a+crc.
> > 
> > Testing for armeb-none-eabi with cross-compiled check-gcc and with
> > command line testing to confirm working executables are built.
> > 
> > Is this ok for trunk and for GCC-6 once testing is completed?
> 
> Oops, Thanks for catching this - 
> 
> Ok for trunk. 
> 
> Ok for GCC-6 by me but you need RM sign off before applying to the branch.

Ok.

Thanks,
Richard.

> Ramana
> 
> > Matthew
> > 
> > 2016-04-18  Matthew Wahab  <matthew.wahab@arm.com>
> > 
> >     PR target/70711
> >     * config/arm/bpabi.h (BE8_LINK_SPEC): Add entries for armv8+crc,
> >     armv8.1-a and armv8.1-a+crc.
Matthew Wahab April 18, 2016, 12:20 p.m. UTC | #3
On 18/04/16 10:41, Richard Biener wrote:
> On Mon, 18 Apr 2016, Ramana Radhakrishnan wrote:
>
>>> Testing for armeb-none-eabi with cross-compiled check-gcc and with
>>> command line testing to confirm working executables are built.
>>>
>>> Is this ok for trunk and for GCC-6 once testing is completed?
>>
>> Oops, Thanks for catching this -
>>
>> Ok for trunk.
>>
>> Ok for GCC-6 by me but you need RM sign off before applying to the branch.
>
> Ok.
>
> Thanks,
> Richard.
>

Tested and committed to trunk and GCC-6.
Matthew
diff mbox

Patch

From 627f689c37eeec3f0d846cda4577385158ca8d10 Mon Sep 17 00:00:00 2001
From: Matthew Wahab <matthew.wahab@arm.com>
Date: Mon, 18 Apr 2016 09:32:54 +0100
Subject: [PATCH] [ARM] Fix big-endian ARMv8.1-A builds.

When ARMv8.1 support was added to the ARM target, the
bpabi.h/BE8_LINK_SPEC list wasn't updated. That means that when GCC
targets ARMv8.1 big-endian, it fails to generate working binaries.

This patch addds the required 'march=armv8.1-a' entries to
BE8_LINK_SPEC. It also adds the missing entries for armv8-a+crc.

Tested for armeb-none-eabi with cross-compiled check-gcc and with
command line testing to confirm working executables are built.

Is this ok for trunk and for GCC-6?
Matthew

2016-04-18  Matthew Wahab  <matthew.wahab@arm.com>

	PR target/70711
	* config/arm/bpabi.h (BE8_LINK_SPEC): Add entries for armv8+crc,
	armv8.1-a and armv8.1-a+crc.

Change-Id: I8a825421b6c4355d9fd611432c11a8d7b4d61bbf
---
 gcc/config/arm/bpabi.h | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/gcc/config/arm/bpabi.h b/gcc/config/arm/bpabi.h
index 5d6c4ed..06488ba 100644
--- a/gcc/config/arm/bpabi.h
+++ b/gcc/config/arm/bpabi.h
@@ -87,6 +87,9 @@ 
    |march=armv7e-m|mcpu=cortex-m4|mcpu=cortex-m7        \
    |march=armv6-m|mcpu=cortex-m0                        \
    |march=armv8-a					\
+   |march=armv8-a+crc					\
+   |march=armv8.1-a					\
+   |march=armv8.1-a+crc					\
    :%{!r:--be8}}}"
 #else
 #define BE8_LINK_SPEC \
@@ -115,6 +118,9 @@ 
    |march=armv7e-m|mcpu=cortex-m4|mcpu=cortex-m7        \
    |march=armv6-m|mcpu=cortex-m0                        \
    |march=armv8-a					\
+   |march=armv8-a+crc					\
+   |march=armv8.1-a					\
+   |march=armv8.1-a+crc					\
    :%{!r:--be8}}}"
 #endif
 
-- 
2.1.4