* [PATCH][ARM] Add deprecation warning on pre-v4t architecture revisions
@ 2016-03-01 16:17 Kyrill Tkachov
2016-03-07 15:40 ` Kyrill Tkachov
2016-04-08 9:28 ` Richard Earnshaw (lists)
0 siblings, 2 replies; 7+ messages in thread
From: Kyrill Tkachov @ 2016-03-01 16:17 UTC (permalink / raw)
To: GCC Patches; +Cc: Ramana Radhakrishnan, Richard Earnshaw, Nick Clifton
[-- Attachment #1: Type: text/plain, Size: 930 bytes --]
Hi all,
For GCC 6 we want to deprecate architecture revisions prior to ARMv4T.
This patch implements this by documenting the deprecation in invoke.texi and adding
a warning whenever the user specifies an -march or -mcpu option that selects such
an architecture revision.
Bootstrapped and tested on arm.
Ok for trunk?
Thanks,
Kyrill
P.S. I'll add a note to changes.html to that effect separately.
2016-03-01 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
* config/arm/arm.c (arm_option_override): Warn on pre-ARMv4T
architecture revisions.
* doc/invoke.texi (ARM Options): Add note on deprecation of pre-ARMv4T
architecture revisions.
2016-03-01 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
* gcc.target/arm/ftest-armv4-arm.c: Add dg-warning for deprecation
warning.
* gcc.target/arm/pr62554.c: Likewise.
* gcc.target/arm/pr69610-1.c: Likewise.
* gcc.target/arm/pr69610-2.c: Likewise.
[-- Attachment #2: arm-depr-warning.patch --]
[-- Type: text/x-patch, Size: 3695 bytes --]
diff --git a/gcc/config/arm/arm.c b/gcc/config/arm/arm.c
index 520d6194a7d663685c3d2a38b2a63b9b8b4c6017..b64f0c70fc7359b87e4fad8a06bf72f691db286b 100644
--- a/gcc/config/arm/arm.c
+++ b/gcc/config/arm/arm.c
@@ -3354,6 +3354,10 @@ arm_option_override (void)
flag_reorder_blocks = 1;
}
+ /* Pre-armv4t architecture revisions are deprecated. */
+ if (TARGET_ARM_ARCH <= 4 && !ARM_FSET_HAS_CPU1 (insn_flags, FL_THUMB))
+ warning (0, "architecture revisions earlier than ARMv4T are deprecated");
+
if (flag_pic)
/* Hoisting PIC address calculations more aggressively provides a small,
but measurable, size reduction for PIC code. Therefore, we decrease
diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi
index 18b2b8f31075b6286d63d1f489c2769daac6cec5..6e0143428ed9b59b18df9ce6207054a064ab7889 100644
--- a/gcc/doc/invoke.texi
+++ b/gcc/doc/invoke.texi
@@ -13944,6 +13944,8 @@ of the @option{-mcpu=} option. Permissible names are: @samp{armv2},
@samp{armv7ve}, @samp{armv8-a}, @samp{armv8-a+crc}, @samp{armv8.1-a},
@samp{armv8.1-a+crc}, @samp{iwmmxt}, @samp{iwmmxt2}, @samp{ep9312}.
+Architecture revisions older than @option{armv4t} are deprecated.
+
@option{-march=armv7ve} is the armv7-a architecture with virtualization
extensions.
diff --git a/gcc/testsuite/gcc.target/arm/ftest-armv4-arm.c b/gcc/testsuite/gcc.target/arm/ftest-armv4-arm.c
index 4b48ef803d4f53a67c4f36369cb4f537f584e7c7..b47feb99b78965dfe56a56917c1475c1dc622d3d 100644
--- a/gcc/testsuite/gcc.target/arm/ftest-armv4-arm.c
+++ b/gcc/testsuite/gcc.target/arm/ftest-armv4-arm.c
@@ -12,4 +12,5 @@
#include "ftest-support.h"
+/* { dg-warning "architecture revisions earlier than ARMv4T are deprecated" "" { target *-*-* } 1 } */
diff --git a/gcc/testsuite/gcc.target/arm/pr62554.c b/gcc/testsuite/gcc.target/arm/pr62554.c
index 4d6501cba1fb5122cfa9e276766280414c338225..ef0aaa871f95201443a773e2935faed0baf40371 100644
--- a/gcc/testsuite/gcc.target/arm/pr62554.c
+++ b/gcc/testsuite/gcc.target/arm/pr62554.c
@@ -2,6 +2,7 @@
/* { dg-do compile } */
/* { dg-options "-marm -march=armv3 -O" } */
/* { dg-require-effective-target arm_arm_ok } */
+/* { dg-warning "architecture revisions earlier than ARMv4T are deprecated" "" { target *-*-* } 1 } */
typedef struct
{
diff --git a/gcc/testsuite/gcc.target/arm/pr69610-1.c b/gcc/testsuite/gcc.target/arm/pr69610-1.c
index a671b93392bdac8679415cb49a3691dcbe672790..1343eb282b8a0994312d64d705120783804738d4 100644
--- a/gcc/testsuite/gcc.target/arm/pr69610-1.c
+++ b/gcc/testsuite/gcc.target/arm/pr69610-1.c
@@ -2,7 +2,7 @@
/* { dg-do compile } */
/* { dg-options "-marm -march=armv3 -ftree-ter" } */
/* { dg-require-effective-target arm_arm_ok } */
-
+/* { dg-warning "architecture revisions earlier than ARMv4T are deprecated" "" { target *-*-* } 1 } */
typedef unsigned short v16u16 __attribute__ ((vector_size (16)));
typedef unsigned int v16u32 __attribute__ ((vector_size (16)));
diff --git a/gcc/testsuite/gcc.target/arm/pr69610-2.c b/gcc/testsuite/gcc.target/arm/pr69610-2.c
index e932c63b63962d95eff02ba26430e7eef454329f..eb5d72c35f97de8d0138441506fd8b28f1af6c56 100644
--- a/gcc/testsuite/gcc.target/arm/pr69610-2.c
+++ b/gcc/testsuite/gcc.target/arm/pr69610-2.c
@@ -2,7 +2,7 @@
/* { dg-do compile } */
/* { dg-options "-marm -march=armv3 -O2 -fno-forward-propagate" } */
/* { dg-require-effective-target arm_arm_ok } */
-
+/* { dg-warning "architecture revisions earlier than ARMv4T are deprecated" "" { target *-*-* } 1 } */
typedef short v16u16 __attribute__ ((vector_size (16)));
typedef unsigned v16u32 __attribute__ ((vector_size (16)));
typedef long long v16u64 __attribute__ ((vector_size (16)));
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH][ARM] Add deprecation warning on pre-v4t architecture revisions
2016-03-01 16:17 [PATCH][ARM] Add deprecation warning on pre-v4t architecture revisions Kyrill Tkachov
@ 2016-03-07 15:40 ` Kyrill Tkachov
2016-03-23 10:24 ` Kyrill Tkachov
2016-04-08 9:28 ` Richard Earnshaw (lists)
1 sibling, 1 reply; 7+ messages in thread
From: Kyrill Tkachov @ 2016-03-07 15:40 UTC (permalink / raw)
To: GCC Patches; +Cc: Ramana Radhakrishnan, Richard Earnshaw, Nick Clifton
Ping.
https://gcc.gnu.org/ml/gcc-patches/2016-03/msg00046.html
Thanks,
Kyrill
On 01/03/16 16:17, Kyrill Tkachov wrote:
> Hi all,
>
> For GCC 6 we want to deprecate architecture revisions prior to ARMv4T.
> This patch implements this by documenting the deprecation in invoke.texi and adding
> a warning whenever the user specifies an -march or -mcpu option that selects such
> an architecture revision.
>
> Bootstrapped and tested on arm.
>
> Ok for trunk?
>
> Thanks,
> Kyrill
>
> P.S. I'll add a note to changes.html to that effect separately.
>
> 2016-03-01 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
>
> * config/arm/arm.c (arm_option_override): Warn on pre-ARMv4T
> architecture revisions.
> * doc/invoke.texi (ARM Options): Add note on deprecation of pre-ARMv4T
> architecture revisions.
>
> 2016-03-01 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
>
> * gcc.target/arm/ftest-armv4-arm.c: Add dg-warning for deprecation
> warning.
> * gcc.target/arm/pr62554.c: Likewise.
> * gcc.target/arm/pr69610-1.c: Likewise.
> * gcc.target/arm/pr69610-2.c: Likewise.
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH][ARM] Add deprecation warning on pre-v4t architecture revisions
2016-03-07 15:40 ` Kyrill Tkachov
@ 2016-03-23 10:24 ` Kyrill Tkachov
2016-03-31 13:12 ` Kyrill Tkachov
0 siblings, 1 reply; 7+ messages in thread
From: Kyrill Tkachov @ 2016-03-23 10:24 UTC (permalink / raw)
To: GCC Patches; +Cc: Ramana Radhakrishnan, Richard Earnshaw, Nick Clifton
Ping.
Thanks,
Kyrill
On 07/03/16 15:40, Kyrill Tkachov wrote:
> Ping.
> https://gcc.gnu.org/ml/gcc-patches/2016-03/msg00046.html
>
> Thanks,
> Kyrill
>
> On 01/03/16 16:17, Kyrill Tkachov wrote:
>> Hi all,
>>
>> For GCC 6 we want to deprecate architecture revisions prior to ARMv4T.
>> This patch implements this by documenting the deprecation in invoke.texi and adding
>> a warning whenever the user specifies an -march or -mcpu option that selects such
>> an architecture revision.
>>
>> Bootstrapped and tested on arm.
>>
>> Ok for trunk?
>>
>> Thanks,
>> Kyrill
>>
>> P.S. I'll add a note to changes.html to that effect separately.
>>
>> 2016-03-01 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
>>
>> * config/arm/arm.c (arm_option_override): Warn on pre-ARMv4T
>> architecture revisions.
>> * doc/invoke.texi (ARM Options): Add note on deprecation of pre-ARMv4T
>> architecture revisions.
>>
>> 2016-03-01 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
>>
>> * gcc.target/arm/ftest-armv4-arm.c: Add dg-warning for deprecation
>> warning.
>> * gcc.target/arm/pr62554.c: Likewise.
>> * gcc.target/arm/pr69610-1.c: Likewise.
>> * gcc.target/arm/pr69610-2.c: Likewise.
>
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH][ARM] Add deprecation warning on pre-v4t architecture revisions
2016-03-23 10:24 ` Kyrill Tkachov
@ 2016-03-31 13:12 ` Kyrill Tkachov
2016-04-07 13:48 ` Kyrill Tkachov
0 siblings, 1 reply; 7+ messages in thread
From: Kyrill Tkachov @ 2016-03-31 13:12 UTC (permalink / raw)
To: GCC Patches; +Cc: Ramana Radhakrishnan, Richard Earnshaw, Nick Clifton
Ping.
Thanks,
Kyrill
On 23/03/16 10:11, Kyrill Tkachov wrote:
> Ping.
>
> Thanks,
> Kyrill
>
> On 07/03/16 15:40, Kyrill Tkachov wrote:
>> Ping.
>> https://gcc.gnu.org/ml/gcc-patches/2016-03/msg00046.html
>>
>> Thanks,
>> Kyrill
>>
>> On 01/03/16 16:17, Kyrill Tkachov wrote:
>>> Hi all,
>>>
>>> For GCC 6 we want to deprecate architecture revisions prior to ARMv4T.
>>> This patch implements this by documenting the deprecation in invoke.texi and adding
>>> a warning whenever the user specifies an -march or -mcpu option that selects such
>>> an architecture revision.
>>>
>>> Bootstrapped and tested on arm.
>>>
>>> Ok for trunk?
>>>
>>> Thanks,
>>> Kyrill
>>>
>>> P.S. I'll add a note to changes.html to that effect separately.
>>>
>>> 2016-03-01 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
>>>
>>> * config/arm/arm.c (arm_option_override): Warn on pre-ARMv4T
>>> architecture revisions.
>>> * doc/invoke.texi (ARM Options): Add note on deprecation of pre-ARMv4T
>>> architecture revisions.
>>>
>>> 2016-03-01 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
>>>
>>> * gcc.target/arm/ftest-armv4-arm.c: Add dg-warning for deprecation
>>> warning.
>>> * gcc.target/arm/pr62554.c: Likewise.
>>> * gcc.target/arm/pr69610-1.c: Likewise.
>>> * gcc.target/arm/pr69610-2.c: Likewise.
>>
>
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH][ARM] Add deprecation warning on pre-v4t architecture revisions
2016-03-31 13:12 ` Kyrill Tkachov
@ 2016-04-07 13:48 ` Kyrill Tkachov
0 siblings, 0 replies; 7+ messages in thread
From: Kyrill Tkachov @ 2016-04-07 13:48 UTC (permalink / raw)
To: GCC Patches; +Cc: Ramana Radhakrishnan, Richard Earnshaw, Nick Clifton
Ping.
Thanks,
Kyrill
On 31/03/16 13:28, Kyrill Tkachov wrote:
> Ping.
>
> Thanks,
> Kyrill
>
> On 23/03/16 10:11, Kyrill Tkachov wrote:
>> Ping.
>>
>> Thanks,
>> Kyrill
>>
>> On 07/03/16 15:40, Kyrill Tkachov wrote:
>>> Ping.
>>> https://gcc.gnu.org/ml/gcc-patches/2016-03/msg00046.html
>>>
>>> Thanks,
>>> Kyrill
>>>
>>> On 01/03/16 16:17, Kyrill Tkachov wrote:
>>>> Hi all,
>>>>
>>>> For GCC 6 we want to deprecate architecture revisions prior to ARMv4T.
>>>> This patch implements this by documenting the deprecation in invoke.texi and adding
>>>> a warning whenever the user specifies an -march or -mcpu option that selects such
>>>> an architecture revision.
>>>>
>>>> Bootstrapped and tested on arm.
>>>>
>>>> Ok for trunk?
>>>>
>>>> Thanks,
>>>> Kyrill
>>>>
>>>> P.S. I'll add a note to changes.html to that effect separately.
>>>>
>>>> 2016-03-01 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
>>>>
>>>> * config/arm/arm.c (arm_option_override): Warn on pre-ARMv4T
>>>> architecture revisions.
>>>> * doc/invoke.texi (ARM Options): Add note on deprecation of pre-ARMv4T
>>>> architecture revisions.
>>>>
>>>> 2016-03-01 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
>>>>
>>>> * gcc.target/arm/ftest-armv4-arm.c: Add dg-warning for deprecation
>>>> warning.
>>>> * gcc.target/arm/pr62554.c: Likewise.
>>>> * gcc.target/arm/pr69610-1.c: Likewise.
>>>> * gcc.target/arm/pr69610-2.c: Likewise.
>>>
>>
>
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH][ARM] Add deprecation warning on pre-v4t architecture revisions
2016-03-01 16:17 [PATCH][ARM] Add deprecation warning on pre-v4t architecture revisions Kyrill Tkachov
2016-03-07 15:40 ` Kyrill Tkachov
@ 2016-04-08 9:28 ` Richard Earnshaw (lists)
2016-04-15 13:39 ` Kyrill Tkachov
1 sibling, 1 reply; 7+ messages in thread
From: Richard Earnshaw (lists) @ 2016-04-08 9:28 UTC (permalink / raw)
To: Kyrill Tkachov, GCC Patches; +Cc: Ramana Radhakrishnan, Nick Clifton
On 01/03/16 16:17, Kyrill Tkachov wrote:
> Hi all,
>
> For GCC 6 we want to deprecate architecture revisions prior to ARMv4T.
> This patch implements this by documenting the deprecation in invoke.texi
> and adding
> a warning whenever the user specifies an -march or -mcpu option that
> selects such
> an architecture revision.
>
> Bootstrapped and tested on arm.
>
> Ok for trunk?
>
> Thanks,
> Kyrill
>
> P.S. I'll add a note to changes.html to that effect separately.
>
> 2016-03-01 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
>
> * config/arm/arm.c (arm_option_override): Warn on pre-ARMv4T
> architecture revisions.
> * doc/invoke.texi (ARM Options): Add note on deprecation of pre-ARMv4T
> architecture revisions.
>
> 2016-03-01 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
>
> * gcc.target/arm/ftest-armv4-arm.c: Add dg-warning for deprecation
> warning.
> * gcc.target/arm/pr62554.c: Likewise.
> * gcc.target/arm/pr69610-1.c: Likewise.
> * gcc.target/arm/pr69610-2.c: Likewise.
OK
R.
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH][ARM] Add deprecation warning on pre-v4t architecture revisions
2016-04-08 9:28 ` Richard Earnshaw (lists)
@ 2016-04-15 13:39 ` Kyrill Tkachov
0 siblings, 0 replies; 7+ messages in thread
From: Kyrill Tkachov @ 2016-04-15 13:39 UTC (permalink / raw)
To: Richard Earnshaw (lists), GCC Patches; +Cc: Ramana Radhakrishnan, Nick Clifton
On 08/04/16 10:28, Richard Earnshaw (lists) wrote:
> On 01/03/16 16:17, Kyrill Tkachov wrote:
>> Hi all,
>>
>> For GCC 6 we want to deprecate architecture revisions prior to ARMv4T.
>> This patch implements this by documenting the deprecation in invoke.texi
>> and adding
>> a warning whenever the user specifies an -march or -mcpu option that
>> selects such
>> an architecture revision.
>>
>> Bootstrapped and tested on arm.
>>
>> Ok for trunk?
>>
>> Thanks,
>> Kyrill
>>
>> P.S. I'll add a note to changes.html to that effect separately.
>>
>> 2016-03-01 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
>>
>> * config/arm/arm.c (arm_option_override): Warn on pre-ARMv4T
>> architecture revisions.
>> * doc/invoke.texi (ARM Options): Add note on deprecation of pre-ARMv4T
>> architecture revisions.
>>
>> 2016-03-01 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
>>
>> * gcc.target/arm/ftest-armv4-arm.c: Add dg-warning for deprecation
>> warning.
>> * gcc.target/arm/pr62554.c: Likewise.
>> * gcc.target/arm/pr69610-1.c: Likewise.
>> * gcc.target/arm/pr69610-2.c: Likewise.
> OK
After some offline discussion we've decided to not add an unconditional warning every time someone
compiles for a deprecated architecture. This would irritate users.
As such, I'm just going to commit the invoke.texi hunk documenting the deprecation.
Thanks,
Kyrill
> R.
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2016-04-15 13:39 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-03-01 16:17 [PATCH][ARM] Add deprecation warning on pre-v4t architecture revisions Kyrill Tkachov
2016-03-07 15:40 ` Kyrill Tkachov
2016-03-23 10:24 ` Kyrill Tkachov
2016-03-31 13:12 ` Kyrill Tkachov
2016-04-07 13:48 ` Kyrill Tkachov
2016-04-08 9:28 ` Richard Earnshaw (lists)
2016-04-15 13:39 ` Kyrill Tkachov
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).