OSDN Git Service

* config/arm/arm.opt (mhard-float, msoft-float): Use Alias.
authorjsm28 <jsm28@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 22 Mar 2011 22:29:29 +0000 (22:29 +0000)
committerjsm28 <jsm28@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 22 Mar 2011 22:29:29 +0000 (22:29 +0000)
* config/arm/arm.c (arm_handle_option): Don't handle -mhard-float
or -msoft-float here.
* config/arm/arm.h (CPP_SPEC): Handle -mfloat-abi=*, not
-msoft-float and -mhard-float.
(OPTION_DEFAULT_SPECS): Don't handle -mhard-float and
-msoft-float.
* config/arm/coff.h (MULTILIB_DEFAULTS): Use mfloat-abi=soft, not
msoft-float.
* config/arm/elf.h (ASM_SPEC): Don't handle -mhard-float and
-msoft-float.
(MULTILIB_DEFAULTS): Use mfloat-abi=soft, not msoft-float.
* config/arm/linux-elf.h (MULTILIB_DEFAULTS): Use mfloat-abi=hard,
not mhard-float.
(LIBGCC_SPEC): Don't handle -msoft-float.
* config/arm/netbsd-elf.h (SUBTARGET_ASM_FLOAT_SPEC): Don't handle
-mhard-float.
* config/arm/pe.h (MULTILIB_DEFAULTS): Use mfloat-abi=soft, not
msoft-float.
* config/arm/rtems-elf.h (SUBTARGET_EXTRA_ASM_SPEC): Handle
-mfloat-abi=*, not -msoft-float and -mhard-float.
* config/arm/semi.h((ASM_SPEC): Don't handle -mhard-float and
-msoft-float.
* config/arm/t-arm-elf (MULTILIB_OPTIONS, MULTILIB_EXCEPTIONS):
Use mfloat-abi=hard and mfloat-abi=soft in comments, not
mhard-float and msoft-float.
* config/arm/t-linux (MULTILIB_OPTIONS): Use mfloat-abi=hard and
mfloat-abi=soft in comments, not mhard-float and msoft-float.
* config/arm/t-rtems (MULTILIB_OPTIONS, MULTILIB_EXCEPTIONS): Use
mfloat-abi=soft and mfloat-abi=hard, not msoft-float and
mhard-float.
* config/arm/t-strongarm-elf (MULTILIB_OPTIONS): Use
mfloat-abi=hard and mfloat-abi=soft, not mhard-float and
msoft-float.
* config/arm/t-wince-pe (MULTILIB_OPTIONS): Use mfloat-abi=hard,
not mhard-float.
* config/arm/wince-pe.h (MULTILIB_DEFAULTS): Use mfloat-abi=soft,
not msoft-float.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171313 138bc75d-0d04-0410-961f-82ee72b054a4

17 files changed:
gcc/ChangeLog
gcc/config/arm/arm.c
gcc/config/arm/arm.h
gcc/config/arm/arm.opt
gcc/config/arm/coff.h
gcc/config/arm/elf.h
gcc/config/arm/linux-elf.h
gcc/config/arm/netbsd-elf.h
gcc/config/arm/pe.h
gcc/config/arm/rtems-elf.h
gcc/config/arm/semi.h
gcc/config/arm/t-arm-elf
gcc/config/arm/t-linux
gcc/config/arm/t-rtems
gcc/config/arm/t-strongarm-elf
gcc/config/arm/t-wince-pe
gcc/config/arm/wince-pe.h

index 5cc8ec5..71af1f4 100644 (file)
@@ -1,3 +1,44 @@
+2011-03-22  Joseph Myers  <joseph@codesourcery.com>
+
+       * config/arm/arm.opt (mhard-float, msoft-float): Use Alias.
+       * config/arm/arm.c (arm_handle_option): Don't handle -mhard-float
+       or -msoft-float here.
+       * config/arm/arm.h (CPP_SPEC): Handle -mfloat-abi=*, not
+       -msoft-float and -mhard-float.
+       (OPTION_DEFAULT_SPECS): Don't handle -mhard-float and
+       -msoft-float.
+       * config/arm/coff.h (MULTILIB_DEFAULTS): Use mfloat-abi=soft, not
+       msoft-float.
+       * config/arm/elf.h (ASM_SPEC): Don't handle -mhard-float and
+       -msoft-float.
+       (MULTILIB_DEFAULTS): Use mfloat-abi=soft, not msoft-float.
+       * config/arm/linux-elf.h (MULTILIB_DEFAULTS): Use mfloat-abi=hard,
+       not mhard-float.
+       (LIBGCC_SPEC): Don't handle -msoft-float.
+       * config/arm/netbsd-elf.h (SUBTARGET_ASM_FLOAT_SPEC): Don't handle
+       -mhard-float.
+       * config/arm/pe.h (MULTILIB_DEFAULTS): Use mfloat-abi=soft, not
+       msoft-float.
+       * config/arm/rtems-elf.h (SUBTARGET_EXTRA_ASM_SPEC): Handle
+       -mfloat-abi=*, not -msoft-float and -mhard-float.
+       * config/arm/semi.h((ASM_SPEC): Don't handle -mhard-float and
+       -msoft-float.
+       * config/arm/t-arm-elf (MULTILIB_OPTIONS, MULTILIB_EXCEPTIONS):
+       Use mfloat-abi=hard and mfloat-abi=soft in comments, not
+       mhard-float and msoft-float.
+       * config/arm/t-linux (MULTILIB_OPTIONS): Use mfloat-abi=hard and
+       mfloat-abi=soft in comments, not mhard-float and msoft-float.
+       * config/arm/t-rtems (MULTILIB_OPTIONS, MULTILIB_EXCEPTIONS): Use
+       mfloat-abi=soft and mfloat-abi=hard, not msoft-float and
+       mhard-float.
+       * config/arm/t-strongarm-elf (MULTILIB_OPTIONS): Use
+       mfloat-abi=hard and mfloat-abi=soft, not mhard-float and
+       msoft-float.
+       * config/arm/t-wince-pe (MULTILIB_OPTIONS): Use mfloat-abi=hard,
+       not mhard-float.
+       * config/arm/wince-pe.h (MULTILIB_DEFAULTS): Use mfloat-abi=soft,
+       not msoft-float.
+
 2011-03-22  Richard Henderson  <rth@redhat.com>
 
        * config/alpha/alpha.c (alpha_expand_prologue): Don't test
index 31a0726..59ab926 100644 (file)
@@ -1362,14 +1362,6 @@ arm_handle_option (struct gcc_options *opts, struct gcc_options *opts_set,
       arm_selected_cpu = arm_find_cpu(arg, all_cores, "-mcpu");
       return true;
 
-    case OPT_mhard_float:
-      target_float_abi_name = "hard";
-      return true;
-
-    case OPT_msoft_float:
-      target_float_abi_name = "soft";
-      return true;
-
     case OPT_mtune_:
       arm_selected_tune = arm_find_cpu(arg, all_cores, "-mtune");
       return true;
index 6abc832..221fbf2 100644 (file)
@@ -1,6 +1,6 @@
 /* Definitions of target machine for GNU compiler, for ARM.
    Copyright (C) 1991, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
-   2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
+   2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011
    Free Software Foundation, Inc.
    Contributed by Pieter `Tiggr' Schoenmakers (rcpieter@win.tue.nl)
    and Martin Simmons (@harleqn.co.uk).
@@ -174,8 +174,8 @@ extern void (*arm_lang_output_object_attributes_hook)(void);
 
 #undef  CPP_SPEC
 #define CPP_SPEC "%(subtarget_cpp_spec)                                        \
-%{msoft-float:%{mhard-float:                                           \
-       %e-msoft-float and -mhard_float may not be used together}}      \
+%{mfloat-abi=soft:%{mfloat-abi=hard:                                   \
+       %e-mfloat-abi=soft and -mfloat-abi=hard may not be used together}} \
 %{mbig-endian:%{mlittle-endian:                                                \
        %e-mbig-endian and -mlittle-endian may not be used together}}"
 
@@ -317,16 +317,14 @@ extern void (*arm_lang_output_object_attributes_hook)(void);
     by --with-arch.
    --with-tune is ignored if -mtune or -mcpu are specified (but not affected
      by -march).
-   --with-float is ignored if -mhard-float, -msoft-float or -mfloat-abi are
-   specified.
+   --with-float is ignored if -mfloat-abi is specified.
    --with-fpu is ignored if -mfpu is specified.
    --with-abi is ignored is -mabi is specified.  */
 #define OPTION_DEFAULT_SPECS \
   {"arch", "%{!march=*:%{!mcpu=*:-march=%(VALUE)}}" }, \
   {"cpu", "%{!march=*:%{!mcpu=*:-mcpu=%(VALUE)}}" }, \
   {"tune", "%{!mcpu=*:%{!mtune=*:-mtune=%(VALUE)}}" }, \
-  {"float", \
-    "%{!msoft-float:%{!mhard-float:%{!mfloat-abi=*:-mfloat-abi=%(VALUE)}}}" }, \
+  {"float", "%{!mfloat-abi=*:-mfloat-abi=%(VALUE)}" }, \
   {"fpu", "%{!mfpu=*:-mfpu=%(VALUE)}"}, \
   {"abi", "%{!mabi=*:-mabi=%(VALUE)}"}, \
   {"mode", "%{!marm:%{!mthumb:-m%(VALUE)}}"},
index a39bb3a..48acc9b 100644 (file)
@@ -94,7 +94,7 @@ Target RejectNegative Joined Var(target_fpu_name)
 Specify the name of the target floating point hardware/format
 
 mhard-float
-Target RejectNegative
+Target RejectNegative Alias(mfloat-abi=, hard)
 Alias for -mfloat-abi=hard
 
 mlittle-endian
@@ -122,7 +122,7 @@ Target Report Mask(SINGLE_PIC_BASE)
 Do not load the PIC register in function prologues
 
 msoft-float
-Target RejectNegative
+Target RejectNegative Alias(mfloat-abi=, soft)
 Alias for -mfloat-abi=soft
 
 mstructure-size-boundary=
index bd3e6f8..5bf1e78 100644 (file)
@@ -1,7 +1,7 @@
 /* Definitions of target machine for GNU compiler.
    For ARM with COFF object format.
    Copyright (C) 1995, 1996, 1997, 1998, 1999, 2000, 2002, 2003, 2004, 2005,
-   2007 Free Software Foundation, Inc.
+   2007, 2009, 2011 Free Software Foundation, Inc.
    Contributed by Doug Evans (devans@cygnus.com).
    
    This file is part of GCC.
@@ -37,7 +37,7 @@
 
 #ifndef MULTILIB_DEFAULTS
 #define MULTILIB_DEFAULTS \
-  { "marm", "mlittle-endian", "msoft-float", "mno-thumb-interwork" }
+  { "marm", "mlittle-endian", "mfloat-abi=soft", "mno-thumb-interwork" }
 #endif
 \f
 /* This is COFF, but prefer stabs.  */
index 8840088..ac68fa4 100644 (file)
@@ -1,7 +1,7 @@
 /* Definitions of target machine for GNU compiler.
    For ARM with ELF obj format.
    Copyright (C) 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2004, 2005, 2007,
-   2008 Free Software Foundation, Inc.
+   2008, 2009, 2011 Free Software Foundation, Inc.
    Contributed by Philip Blundell <philb@gnu.org> and
    Catherine Moore <clm@cygnus.com>
    
@@ -61,7 +61,6 @@
 %{mapcs-*:-mapcs-%*} \
 %(subtarget_asm_float_spec) \
 %{mthumb-interwork:-mthumb-interwork} \
-%{msoft-float:-mfloat-abi=soft} %{mhard-float:-mfloat-abi=hard} \
 %{mfloat-abi=*} %{mfpu=*} \
 %(subtarget_extra_asm_spec)"
 #endif
 
 #ifndef MULTILIB_DEFAULTS
 #define MULTILIB_DEFAULTS \
-  { "marm", "mlittle-endian", "msoft-float", "mno-thumb-interwork", "fno-leading-underscore" }
+  { "marm", "mlittle-endian", "mfloat-abi=soft", "mno-thumb-interwork", "fno-leading-underscore" }
 #endif
 \f
 #define TARGET_ASM_FILE_START_APP_OFF true
index 81d27bb..b7ae374 100644 (file)
@@ -51,7 +51,7 @@
 
 #undef  MULTILIB_DEFAULTS
 #define MULTILIB_DEFAULTS \
-       { "marm", "mlittle-endian", "mhard-float", "mno-thumb-interwork" }
+       { "marm", "mlittle-endian", "mfloat-abi=hard", "mno-thumb-interwork" }
 
 /* Now we define the strings used to build the spec file.  */
 #undef  LIB_SPEC
@@ -60,7 +60,7 @@
    %{shared:-lc} \
    %{!shared:%{profile:-lc_p}%{!profile:-lc}}"
 
-#define LIBGCC_SPEC "%{msoft-float:-lfloat} %{mfloat-abi=soft*:-lfloat} -lgcc"
+#define LIBGCC_SPEC "%{mfloat-abi=soft*:-lfloat} -lgcc"
 
 #define GLIBC_DYNAMIC_LINKER "/lib/ld-linux.so.2"
 
index 9cf186b..bf620f1 100644 (file)
@@ -1,5 +1,6 @@
 /* Definitions of target machine for GNU compiler, NetBSD/arm ELF version.
-   Copyright (C) 2002, 2003, 2004, 2005, 2007 Free Software Foundation, Inc.
+   Copyright (C) 2002, 2003, 2004, 2005, 2007, 2009, 2011
+   Free Software Foundation, Inc.
    Contributed by Wasabi Systems, Inc.
 
    This file is part of GCC.
 #define SUBTARGET_EXTRA_ASM_SPEC       \
   "-matpcs %{fpic|fpie:-k} %{fPIC|fPIE:-k}"
 
-/* Default to full VFP if -mhard-float is specified.  */
+/* Default to full VFP if -mfloat-abi=hard is specified.  */
 #undef SUBTARGET_ASM_FLOAT_SPEC
 #define SUBTARGET_ASM_FLOAT_SPEC       \
-  "%{mhard-float:{!mfpu=*:-mfpu=vfp}}   \
-   %{mfloat-abi=hard:{!mfpu=*:-mfpu=vfp}}"
+  "%{mfloat-abi=hard:{!mfpu=*:-mfpu=vfp}}"
 
 #undef SUBTARGET_EXTRA_SPECS
 #define SUBTARGET_EXTRA_SPECS                          \
index 009c4fe..7bb90c5 100644 (file)
@@ -1,5 +1,5 @@
 /* Definitions of target machine for GNU compiler, for ARM with PE obj format.
-   Copyright (C) 1995, 1996, 1999, 2000, 2002, 2003, 2004, 2005, 2007
+   Copyright (C) 1995, 1996, 1999, 2000, 2002, 2003, 2004, 2005, 2007, 2011
    Free Software Foundation, Inc.
    Contributed by Doug Evans (dje@cygnus.com).
    
@@ -49,7 +49,7 @@
 
 #undef  MULTILIB_DEFAULTS
 #define MULTILIB_DEFAULTS \
-  { "marm", "mlittle-endian", "msoft-float", "mno-thumb-interwork" }  
+  { "marm", "mlittle-endian", "mfloat-abi=soft", "mno-thumb-interwork" }  
 \f
 #undef  WCHAR_TYPE
 #define WCHAR_TYPE     "short unsigned int"
index dade74b..027d95a 100644 (file)
@@ -1,5 +1,6 @@
 /* Definitions for RTEMS based ARM systems using ELF
-   Copyright (C) 2000, 2002, 2005, 2007, 2008 Free Software Foundation, Inc.
+   Copyright (C) 2000, 2002, 2005, 2007, 2008, 2009, 2011
+   Free Software Foundation, Inc.
  
    This file is part of GCC.
  
@@ -36,7 +37,7 @@
  */
 #undef SUBTARGET_EXTRA_ASM_SPEC
 #define SUBTARGET_EXTRA_ASM_SPEC "\
-  %{!mhard-float: %{!msoft-float:-mfpu=softfpa}}"
+  %{!mfloat-abi=hard: %{!mfloat-abi=soft:-mfpu=softfpa}}"
 
 /*
  *  The default includes --start-group and --end-group which conflicts
index 1e35710..a0005d1 100644 (file)
@@ -1,5 +1,5 @@
 /* Definitions of target machine for GNU compiler.  ARM on semi-hosted platform
-   Copyright (C) 1994, 1995, 1996, 1997, 2001, 2004, 2005, 2007
+   Copyright (C) 1994, 1995, 1996, 1997, 2001, 2004, 2005, 2007, 2011
    Free Software Foundation, Inc.
    Contributed by Richard Earnshaw (richard.earnshaw@arm.com)
 
@@ -68,7 +68,6 @@
 %{mcpu=*:-mcpu=%*} \
 %{march=*:-march=%*} \
 %{mapcs-float:-mfloat} \
-%{msoft-float:-mfloat-abi=soft} %{mhard-float:-mfloat-abi=hard} \
 %{mfloat-abi=*} %{mfpu=*} \
 %{mthumb-interwork:-mthumb-interwork} \
 %(subtarget_extra_asm_spec)"
index 38c2918..ab85293 100644 (file)
@@ -1,5 +1,5 @@
 # Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007,
-# 2008, 2010 Free Software Foundation, Inc.
+# 2008, 2010, 2011 Free Software Foundation, Inc.
 #
 # This file is part of GCC.
 #
@@ -67,9 +67,9 @@ MULTILIB_EXCEPTIONS    += *mthumb/*mfloat-abi=hard*
 # MULTILIB_DIRNAMES    += le be
 # MULTILIB_MATCHES     += mbig-endian=mbe mlittle-endian=mle
 # 
-# MULTILIB_OPTIONS    += mhard-float/msoft-float
+# MULTILIB_OPTIONS    += mfloat-abi=hard/mfloat-abi=soft
 # MULTILIB_DIRNAMES   += fpu soft
-# MULTILIB_EXCEPTIONS += *mthumb/*mhard-float*
+# MULTILIB_EXCEPTIONS += *mthumb/*mfloat-abi=hard*
 # 
 # MULTILIB_OPTIONS    += mno-thumb-interwork/mthumb-interwork
 # MULTILIB_DIRNAMES   += normal interwork
index a6fddad..9a2cb1a 100644 (file)
@@ -1,5 +1,5 @@
 # Copyright (C) 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2006,
-# 2008 Free Software Foundation, Inc.
+# 2008, 2011 Free Software Foundation, Inc.
 #
 # This file is part of GCC.
 #
@@ -25,7 +25,7 @@ LIB1ASMSRC = arm/lib1funcs.asm
 LIB1ASMFUNCS = _udivsi3 _divsi3 _umodsi3 _modsi3 _dvmd_lnx _clzsi2 _clzdi2 \
        _arm_addsubdf3 _arm_addsubsf3
 
-# MULTILIB_OPTIONS = mhard-float/msoft-float
+# MULTILIB_OPTIONS = mfloat-abi=hard/mfloat-abi=soft
 # MULTILIB_DIRNAMES = hard-float soft-float
 
 # EXTRA_MULTILIB_PARTS = crtbegin.o crtend.o
index 52d14ba..f12387f 100644 (file)
@@ -5,6 +5,6 @@ MULTILIB_DIRNAMES    = arm thumb
 MULTILIB_EXCEPTIONS  = 
 MULTILIB_MATCHES     = marm=mno-thumb
 
-MULTILIB_OPTIONS    += msoft-float/mhard-float
+MULTILIB_OPTIONS    += mfloat-abi=soft/mfloat-abi=hard
 MULTILIB_DIRNAMES   += soft fpu
-MULTILIB_EXCEPTIONS += *mthumb/*mhard-float*
+MULTILIB_EXCEPTIONS += *mthumb/*mfloat-abi=hard*
index 64d7ca6..6af4f52 100644 (file)
@@ -1,4 +1,5 @@
-# Copyright (C) 2000, 2001, 2006, 2008 Free Software Foundation, Inc.
+# Copyright (C) 2000, 2001, 2006, 2008, 2009, 2011
+# Free Software Foundation, Inc.
 #
 # This file is part of GCC.
 #
@@ -37,7 +38,7 @@ dp-bit.c: $(srcdir)/config/fp-bit.c
        echo '#endif' >> dp-bit.c
        cat $(srcdir)/config/fp-bit.c >> dp-bit.c
 
-MULTILIB_OPTIONS     = mlittle-endian/mbig-endian mhard-float/msoft-float
+MULTILIB_OPTIONS     = mlittle-endian/mbig-endian mfloat-abi=hard/mfloat-abi=soft
 MULTILIB_DIRNAMES    = le be fpu soft
 MULTILIB_EXCEPTIONS  =
 MULTILIB_MATCHES     = mbig-endian=mbe mlittle-endian=mle
index 165bef2..5aebc44 100644 (file)
@@ -1,4 +1,4 @@
-# Copyright (C) 2003, 2004, 2006, 2008, 2009, 2010
+# Copyright (C) 2003, 2004, 2006, 2008, 2009, 2010, 2011
 # Free Software Foundation, Inc.
 #
 # This file is part of GCC.
@@ -43,7 +43,7 @@ pe.o: $(srcdir)/config/arm/pe.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \
        $(COMPILER) -c $(ALL_COMPILERFLAGS) $(ALL_CPPFLAGS) $(INCLUDES) \
                $(srcdir)/config/arm/pe.c
 
-MULTILIB_OPTIONS = mhard-float
+MULTILIB_OPTIONS = mfloat-abi=hard
 MULTILIB_DIRNAMES = fpu
 # Note - Thumb multilib omitted because Thumb support for
 # arm-wince-pe target does not appear to be working in binutils
index ffaa0c6..7ef3823 100644 (file)
@@ -1,5 +1,5 @@
 /* Definitions of target machine for GNU compiler, for ARM with WINCE-PE obj format.
-   Copyright (C) 2003, 2004, 2005, 2007 Free Software Foundation, Inc.
+   Copyright (C) 2003, 2004, 2005, 2007, 2011 Free Software Foundation, Inc.
    Contributed by Nick Clifton <nickc@redhat.com>
    
    This file is part of GCC.
@@ -23,4 +23,4 @@
 
 #undef  MULTILIB_DEFAULTS
 #define MULTILIB_DEFAULTS \
-  { "marm", "mlittle-endian", "msoft-float", "mno-thumb-interwork" }  
+  { "marm", "mlittle-endian", "mfloat-abi=soft", "mno-thumb-interwork" }