summaryrefslogtreecommitdiffstats
path: root/gcc/config.gcc
diff options
context:
space:
mode:
authoramodra <amodra@138bc75d-0d04-0410-961f-82ee72b054a4>2013-04-25 00:57:16 +0000
committeramodra <amodra@138bc75d-0d04-0410-961f-82ee72b054a4>2013-04-25 00:57:16 +0000
commitd80dc9207760d65b12ca3abe0a365722af2f5554 (patch)
tree655ced866b891c8b722de3e93c488c9a3492bc31 /gcc/config.gcc
parentd04c855dc7694081dab7696d2531822dd948035c (diff)
downloadppe42-gcc-d80dc9207760d65b12ca3abe0a365722af2f5554.tar.gz
ppe42-gcc-d80dc9207760d65b12ca3abe0a365722af2f5554.zip
libgcc/
* config.host: Match little-endian powerpc-linux. gcc/ * config.gcc: Support little-endian powerpc-linux targets. * config/rs6000/linux.h (LINK_OS_LINUX_EMUL): Define. (LINK_OS_LINUX_SPEC): Define. * config/rs6000/linuxspe.h (TARGET_DEFAULT): Preserve MASK_LITTLE_ENDIAN. * config/rs6000/default64.h (TARGET_DEFAULT): Likewise. * config/rs6000/linuxaltivec.h (TARGET_DEFAULT): Likewise. * config/rs6000/linux64.h (OPTION_LITTLE_ENDIAN): Don't zero. (LINK_OS_LINUX_EMUL32, LINK_OS_LINUX_EMUL64): Define. (LINK_OS_LINUX_SPEC32, LINK_OS_LINUX_SPEC64): Use above. * config/rs6000/rs6000.c (output_toc): Don't use .tc for TARGET_ELF. Correct fp word order for little-endian. Don't shift toc entries smaller than a word for little-endian. * config/rs6000/rs6000.md (bswaphi2, bswapsi2 split): Comment. (bswapdi2 splits): Correct low-part subreg for little-endian. Remove wrong BYTES_BIG_ENDIAN tests, and rename vars to remove low/high where such is correct only for be. * config/rs6000/sysv4.h (SUBTARGET_OVERRIDE_OPTIONS): Allow little-endian for -mcall-aixdesc. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198273 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/config.gcc')
-rw-r--r--gcc/config.gcc12
1 files changed, 8 insertions, 4 deletions
diff --git a/gcc/config.gcc b/gcc/config.gcc
index 5c5ddcc44ff..5a205df353c 100644
--- a/gcc/config.gcc
+++ b/gcc/config.gcc
@@ -2086,20 +2086,24 @@ powerpc-*-rtems*)
extra_options="${extra_options} rs6000/sysv4.opt"
tmake_file="rs6000/t-fprules rs6000/t-rtems t-rtems rs6000/t-ppccomm"
;;
-powerpc-*-linux* | powerpc64-*-linux*)
+powerpc*-*-linux*)
tm_file="${tm_file} dbxelf.h elfos.h freebsd-spec.h rs6000/sysv4.h"
extra_options="${extra_options} rs6000/sysv4.opt"
tmake_file="rs6000/t-fprules rs6000/t-ppcos ${tmake_file} rs6000/t-ppccomm"
+ case ${target} in
+ powerpc*le-*-*)
+ tm_file="${tm_file} rs6000/sysv4le.h" ;;
+ esac
maybe_biarch=yes
case ${target} in
- powerpc64-*-linux*spe* | powerpc64-*-linux*paired*)
+ powerpc64*-*-linux*spe* | powerpc64*-*-linux*paired*)
echo "*** Configuration ${target} not supported" 1>&2
exit 1
;;
- powerpc-*-linux*spe* | powerpc-*-linux*paired*)
+ powerpc*-*-linux*spe* | powerpc*-*-linux*paired*)
maybe_biarch=
;;
- powerpc64-*-linux*)
+ powerpc64*-*-linux*)
test x$with_cpu != x || cpu_is_64bit=yes
maybe_biarch=always
;;
OpenPOWER on IntegriCloud