This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: [WWWDocs] Deprecate support for non-thumb ARM devices
- From: Kyrill Tkachov <kyrylo dot tkachov at foss dot arm dot com>
- To: Joel Sherrill <joel dot sherrill at oarcorp dot com>, Gerald Pfeifer <gerald at pfeifer dot com>, Richard Earnshaw <Richard dot Earnshaw at arm dot com>
- Cc: gcc-patches <gcc-patches at gcc dot gnu dot org>, "gcc at gcc dot gnu dot org" <gcc at gcc dot gnu dot org>, Ramana Radhakrishnan <Ramana dot Radhakrishnan at arm dot com>, Nick Clifton <nickc at redhat dot com>
- Date: Mon, 29 Feb 2016 11:37:18 +0000
- Subject: Re: [WWWDocs] Deprecate support for non-thumb ARM devices
- Authentication-results: sourceware.org; auth=none
- References: <56CDB728 dot 1050300 at arm dot com> <alpine dot LSU dot 2 dot 20 dot 1602282213130 dot 6772 at anthias> <C1630A71-FF7A-43FD-876D-249A834C9EC4 at oarcorp dot com>
On 28/02/16 21:34, Joel Sherrill wrote:
On February 28, 2016 3:20:24 PM CST, Gerald Pfeifer <gerald@pfeifer.com> wrote:
On Wed, 24 Feb 2016, Richard Earnshaw (lists) wrote:
I propose to commit this patch later this week.
+ Support for revisions of the ARM architecture prior to ARMv4t
has
+ been deprecated and will be removed in a future GCC release.
+ This affects ARM6, ARM7 (but not ARM7TDMI), ARM8, StrongARM,
and
+ Faraday fa526 and fa626 devices, which do not have support for
+ the Thumb execution state.
I am wondering whether this may be confusing for those not
intricately familiar with the older history of ARM platforms.
ARMv8 is pretty new, googling for it has
http://www.arm.com/products/processors/armv8-architecture.php
as first hit, for example, and the only difference versus ARM8
is that little lower-case "v".
I assume this means a number of values for the various -mXXX arguments will be removed. Would it be more helpful to list those values?
I have to agree with Gerald. I think this will obsolete a few older RTEMS BSPs but based on that wording, I don't know which.
ARM8 is a processor, whereas ARMv8-A is an architecture.
I think Richard's link earlier in the thread:
https://community.arm.com/groups/processors/blog/2011/11/02/arm-fundamentals-introduction-to-understanding-arm-processors
gives a good explanation of the naming schemes.
The -mcpu/-mtune arguments that would be deprecated can be found by looking at the
file config/arm/arm-cores.def and finding all the ARM_CORE entries that have '4' or lower in their
4th field These would be:
arm2,arm250,arm3,arm6,arm60,arm600,arm610,arm620,arm7,arm7d,arm7di,arm70,arm700,arm700i,arm710,
arm720,arm710c,arm7100,arm7500,arm7500fe,arm7m,arm7dm,arm7dmi,arm8,arm810,strongarm,strongarm110,
strongarm1100,strongarm1110,fa526,fa626.
The arguments to -march that would be deprecated are:
armv2,armv2a,armv3,armv3m,armv4.
I personally think that list is a bit too long for changes.html.
Do you think it would add more clarity for people who are not familiar with the situation?
Thanks,
Kyrill
Gerald
--joel