aboutsummaryrefslogtreecommitdiff
path: root/gcc/config.gcc
diff options
context:
space:
mode:
authorAlan Modra <amodra@gcc.gnu.org>2005-03-31 09:16:28 +0930
committerAlan Modra <amodra@gcc.gnu.org>2005-03-31 09:16:28 +0930
commita8e04fe6ca41fa2280dfdf32b3deed9109d85179 (patch)
tree6c03297197199c8f04a0e16dfc869a329e7921f8 /gcc/config.gcc
parentfdfa76bdd915d0e9fa1ed725bc131562d7c263f9 (diff)
downloadgcc-a8e04fe6ca41fa2280dfdf32b3deed9109d85179.zip
gcc-a8e04fe6ca41fa2280dfdf32b3deed9109d85179.tar.gz
gcc-a8e04fe6ca41fa2280dfdf32b3deed9109d85179.tar.bz2
config.gcc (cpu_is_64bit): Set for 64-bit powerpc cpus.
* config.gcc (cpu_is_64bit): Set for 64-bit powerpc cpus. (powerpc64-*-linux*): Use it. Rearrange tm_file assignment. (powerpc-*-linux*): Build a biarch compiler when --enable-targets is given with "powerpc64*" or "all", or when --with-cpu chooses a 64-bit cpu. From-SVN: r97290
Diffstat (limited to 'gcc/config.gcc')
-rw-r--r--gcc/config.gcc30
1 files changed, 23 insertions, 7 deletions
diff --git a/gcc/config.gcc b/gcc/config.gcc
index 2bfd9e7..c4d5d3f 100644
--- a/gcc/config.gcc
+++ b/gcc/config.gcc
@@ -231,6 +231,7 @@ esac
# machines.
tm_p_file=
cpu_type=`echo ${target} | sed 's/-.*$//'`
+cpu_is_64bit=
case ${target} in
alpha*-*-*)
cpu_type=alpha
@@ -287,6 +288,11 @@ powerpc*-*-*)
cpu_type=rs6000
extra_headers="ppc-asm.h altivec.h spe.h"
need_64bit_hwint=yes
+ case x$with_cpu in
+ xpowerpc64|xdefault64|x6[23]0|x970|xG5|xpower[345]|xrs64a)
+ cpu_is_64bit=yes
+ ;;
+ esac
;;
rs6000*-*-*)
need_64bit_hwint=yes
@@ -1536,12 +1542,10 @@ avr-*-*)
# extra_headers=
# ;;
powerpc64-*-linux*)
- tm_file="rs6000/biarch64.h ${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h"
- case x$with_cpu in
- x|xpowerpc64|xdefault64|x6[23]0|x970|xG5|xpower[345]|xrs64a)
- tm_file="${tm_file} rs6000/default64.h";;
- esac
- tm_file="${tm_file} rs6000/linux64.h"
+ tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h"
+ test x$with_cpu != x || cpu_is_64bit=yes
+ test x$cpu_is_64bit != xyes || tm_file="${tm_file} rs6000/default64.h"
+ tm_file="rs6000/biarch64.h ${tm_file} rs6000/linux64.h"
tmake_file="rs6000/t-fprules ${tmake_file} rs6000/t-ppccomm rs6000/t-linux64"
;;
powerpc64-*-gnu*)
@@ -1620,8 +1624,20 @@ powerpc-*-linux*spe*)
tmake_file="rs6000/t-fprules rs6000/t-ppcos ${tmake_file} rs6000/t-ppccomm"
;;
powerpc-*-linux*)
- tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/linux.h"
+ tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h"
tmake_file="rs6000/t-fprules rs6000/t-ppcos ${tmake_file} rs6000/t-ppccomm"
+ case ${enable_targets}:${cpu_is_64bit} in
+ *powerpc64* | all:* | *:yes)
+ if test x$cpu_is_64bit = xyes; then
+ tm_file="${tm_file} rs6000/default64.h"
+ fi
+ tm_file="rs6000/biarch64.h ${tm_file} rs6000/linux64.h"
+ tmake_file="$tmake_file rs6000/t-linux64"
+ ;;
+ *)
+ tm_file="${tm_file} rs6000/linux.h"
+ ;;
+ esac
;;
powerpc-*-gnu-gnualtivec*)
tm_file="${cpu_type}/${cpu_type}.h elfos.h svr4.h freebsd-spec.h gnu.h rs6000/sysv4.h rs6000/linux.h rs6000/linuxaltivec.h rs6000/gnu.h"