On 28/02/12 15:51, Richard Earnshaw wrote:
> On 28/02/12 15:38, Joseph S. Myers wrote:
>> On Tue, 28 Feb 2012, Richard Earnshaw wrote:
>>
>>> So how about we just deprecate all targets that are still using FPE format?
>>
>> This patch appears to add back the i[34567]86-*-interix3* deprecation - 
> 
> Oops, botched merge conflict.
> 
>> removed deliberately when the target got a maintainer - and 
>> arm-wrs-vxworks is *not* using FPE format, vxworks.h defines 
>> FPUTYPE_DEFAULT to "vfp".  
> 
> Easily fixed.
> 
> Darn, missed the Win-CE port...
> 
> 
> Otherwise, I think this is OK (given a
>> corresponding change to gcc-4.7/changes.html to note these deprecations).
>>
> 
> I would expect, something like:
> 
> All ARM targets using the legacy FPA floating-point format have been
> obsoleted.  These include the ARM ports for FreeBSD, Linux (old ABI),
> ucLinux (old ABI), rtems (old ABI), Ecos, Win-CE and the old ELF
> bare-metal configurations.
> 
> I'm a bit unhappy about the general wording there.  I don't particularly
> want these ports reviving.  I'd rather see configurations that don't use
> the FPA format floats being contributed.  Suggestions?
> 
> R.
> 
> 

Here's an updated patch and a suggested web-page patch:

R.
--- config.gcc  (revision 184639)
+++ config.gcc  (local)
@@ -242,7 +242,18 @@ md_file=
 
 # Obsolete configurations.
 case ${target} in
+ # Avoid special cases that are not obsolete
+   arm*-*-*eabi*                       \
+ )
+     ;;
    alpha*-dec-osf5.1*                  \
+ | arm*-*-ecos-elf                     \
+ | arm*-*-elf                          \
+ | arm*-*-freebsd*                     \
+ | arm*-*-linux*                       \
+ | arm*-*-rtems*                       \
+ | arm*-*-uclinux*                     \
+ | arm*-*-wince*                       \
  | mips-sgi-irix6.5                    \
  | mips*-*-openbsd*                    \
  | score-*                             \
@@ -3043,12 +3054,20 @@ case "${target}" in
 
                case "$with_fpu" in
                "" \
-               | fpa | fpe2 | fpe3 | maverick | vfp | vfp3 | vfpv3 \
+               | vfp | vfp3 | vfpv3 \
                | vfpv3-fp16 | vfpv3-d16 | vfpv3-d16-fp16 | vfpv3xd \
                | vfpv3xd-fp16 | neon | neon-fp16 | vfpv4 | vfpv4-d16 \
                | fpv4-sp-d16 | neon-vfpv4)
                        # OK
                        ;;
+               fpa | fpe2 | fpe3 | maverick)
+                       if test "x$enable_obsolete" != xyes; then
+                           echo "*** Configuration option 
--with-fpu=${with_fpu} is obsolete." >&2
+                           echo "*** Specify --enable-obsolete to build it 
anyway." >&2
+                           echo "*** Support will be REMOVED in the next major 
release of GCC." >&2
+                           exit 1
+                       fi
+                       ;;
                *)
                        echo "Unknown fpu used in --with-fpu=$with_fpu" 2>&1
                        exit 1
Index: changes.html
===================================================================
RCS file: /cvs/gcc/wwwdocs/htdocs/gcc-4.7/changes.html,v
retrieving revision 1.90
diff -u -r1.90 changes.html
--- changes.html        27 Feb 2012 00:33:29 -0000      1.90
+++ changes.html        28 Feb 2012 16:55:56 -0000
@@ -35,6 +35,35 @@
 
     </li>
 
+    <li>Support on ARM for the legacy floating-point accelerator (FPA) and
+    the mixed-endian floating-point format that it used has been obsoleted.
+    The ports that still use this format have been obsoleted as well.
+    Many legacy ARM ports already provide an alternative that uses the
+    VFP floating-point format.  The obsolete ports will be deleted in the
+    next release.
+
+    <p>The obsolete ports with alternatives are:</p>
+
+    <ul>
+         <li>arm-*-rtems (use arm-*-rtemseabi)</li>
+         <li>arm-*-linux-gnu (use arm-*-linux-gnueabi)</li>
+         <li>arm-*-elf (use arm-*-eabi)</li>
+         <li>arm-*-uclinux-gnu (use arm-*-uclinux-gnueabi)</li>
+    </ul>
+    <p>Note, however, that these alternatives are not binary compatible
+    with their legacy counterparts (although some can support running legacy
+    applications).</p>
+    <p>The obsolete ports that currently lack a modern alternative are:</p>
+
+    <ul>
+         <li>arm-*-ecos-elf</li>
+         <li>arm-*-freebsd</li>
+    </ul>
+
+    New ports that support more recent versions of the architecture
+    are welcome.</li>
+    <li>Support for the Maverick co-processor on ARM has been obsoleted.
+    Code to support it will be deleted in the next release.</li>
     <li>Support has been removed for Unix International threads on Solaris
     2, so the <code>--enable-threads=solaris</code> configure option and
     the <code>-threads</code> compiler option don't work any longer.</li>

Reply via email to