]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
gcc/
authorRichard Sandiford <rdsandiford@googlemail.com>
Sun, 16 Jun 2013 19:30:48 +0000 (19:30 +0000)
committerRichard Sandiford <rsandifo@gcc.gnu.org>
Sun, 16 Jun 2013 19:30:48 +0000 (19:30 +0000)
* config.gcc (mips*-mti-linux*, mips64*-*-linux*, mipsisa64*-*-linux*)
(mips*-*-linux*): Move default with_llsc setting to where other
defaults are set.
(mips*-*-vxworks*): Move with_arch default from with_cpu block to
with_arch block.
(mips64r5900-*-*, mips64r5900el-*-*, mipsr5900-*-*, mipsr5900el-*-*):
Likewise.  Remove default with_tune setting.  Move default float
setting to its own block.  Handle with_llsc in the same block as above.

From-SVN: r200139

gcc/ChangeLog
gcc/config.gcc

index f6eee23285572fe1f3961278f50664e6006ff81d..9f97845f85e3790f90795306f7fcb0da04986ec4 100644 (file)
@@ -1,3 +1,14 @@
+2013-06-16  Richard Sandiford  <rdsandiford@googlemail.com>
+
+       * config.gcc (mips*-mti-linux*, mips64*-*-linux*, mipsisa64*-*-linux*)
+       (mips*-*-linux*): Move default with_llsc setting to where other
+       defaults are set.
+       (mips*-*-vxworks*): Move with_arch default from with_cpu block to
+       with_arch block.
+       (mips64r5900-*-*, mips64r5900el-*-*, mipsr5900-*-*, mipsr5900el-*-*):
+       Likewise.  Remove default with_tune setting.  Move default float
+       setting to its own block.  Handle with_llsc in the same block as above.
+
 2013-06-16  Joern Rennecke <joern.rennecke@embecosm.com>
 
        PR rtl-optimization/57425
index dcb6ee4368105d2faa5eb3ad82bb7a16c7c5f6d2..0ad7217aca69468563926800d4fc52eb58114773 100644 (file)
@@ -1813,7 +1813,6 @@ mips*-mti-linux*)
        tm_defines="${tm_defines} MIPS_ISA_DEFAULT=33 MIPS_ABI_DEFAULT=ABI_32"
        gnu_ld=yes
        gas=yes
-       test x$with_llsc != x || with_llsc=yes
        ;;
 mips64*-*-linux* | mipsisa64*-*-linux*)
        tm_file="dbxelf.h elfos.h gnu-user.h linux.h glibc-stdint.h ${tm_file} mips/gnu-user.h mips/gnu-user64.h mips/linux64.h mips/linux-common.h"
@@ -1834,7 +1833,6 @@ mips64*-*-linux* | mipsisa64*-*-linux*)
        esac
        gnu_ld=yes
        gas=yes
-       test x$with_llsc != x || with_llsc=yes
        ;;
 mips*-*-linux*)                                # Linux MIPS, either endian.
         tm_file="dbxelf.h elfos.h gnu-user.h linux.h glibc-stdint.h ${tm_file} mips/gnu-user.h mips/linux.h"
@@ -1850,7 +1848,6 @@ mips*-*-linux*)                           # Linux MIPS, either endian.
         mipsisa32*)
                tm_defines="${tm_defines} MIPS_ISA_DEFAULT=32"
         esac
-       test x$with_llsc != x || with_llsc=yes
        ;;
 mips*-mti-elf*)
        tm_file="elfos.h newlib-stdint.h ${tm_file} mips/elf.h mips/sde.h mips/mti-elf.h"
@@ -2982,22 +2979,6 @@ if test x$with_cpu = x ; then
          ;;
       esac
       ;;
-    mips64r5900-*-* | mips64r5900el-*-* | mipsr5900-*-* | mipsr5900el-*-*)
-      with_arch=r5900
-      with_tune=r5900
-      if test x$with_llsc = x; then
-       # r5900 doesn't support ll, sc, lld and scd instructions:
-       with_llsc=no
-      fi
-      if test x$with_float = x; then
-       # r5900 doesn't support 64 bit float:
-       # 32 bit float doesn't comply with IEEE 754.
-       with_float=soft
-      fi
-      ;;
-    mips*-*-vxworks)
-      with_arch=mips2
-      ;;
     powerpc*-*-*spe*)
       if test x$enable_e500_double = xyes; then
          with_cpu=8548
@@ -3058,6 +3039,12 @@ if test x$with_arch = x ; then
     x86_64-*-*)
       with_arch=$arch
       ;;
+    mips64r5900-*-* | mips64r5900el-*-* | mipsr5900-*-* | mipsr5900el-*-*)
+      with_arch=r5900
+      ;;
+    mips*-*-vxworks)
+      with_arch=mips2
+      ;;
   esac
 
   # Avoid overriding --with-arch-32 and --with-arch-64 values.
@@ -3092,6 +3079,17 @@ if test x$with_arch = x ; then
   esac
 fi
 
+# Infer a default setting for --with-float.
+if test x$with_float = x; then
+  case ${target} in
+    mips64r5900-*-* | mips64r5900el-*-* | mipsr5900-*-* | mipsr5900el-*-*)
+      # The R5900 doesn't support 64-bit float.  32-bit float doesn't
+      # comply with IEEE 754.
+      with_float=soft
+      ;;
+  esac
+fi
+
 # Support --with-fpmath.
 if test x$with_fpmath != x; then
   case ${target} in
@@ -3126,6 +3124,20 @@ if test x$with_schedule = x; then
        esac
 fi
 
+# Infer a default setting for --with-llsc.
+if test x$with_llsc = x; then
+  case ${target} in
+    mips64r5900-*-* | mips64r5900el-*-* | mipsr5900-*-* | mipsr5900el-*-*)
+      # The R5900 doesn't support LL(D) and SC(D).
+      with_llsc=no
+      ;;
+    mips*-*-linux*)
+      # The kernel emulates LL and SC where necessary.
+      with_llsc=yes
+      ;;
+  esac
+fi
+
 # Validate and mark as valid any --with options supported
 # by this target.  In order to use a particular --with option
 # you must list it in supported_defaults; validating the value