From e140700976e3b7eb4250b1ffde9bc16494456903 Mon Sep 17 00:00:00 2001 From: Alexandru-Cezar Sardan Date: Wed, 5 Feb 2014 16:52:31 +0200 Subject: [PATCH 29/46] Enable SPE & AltiVec generation on powepc*linux target When is configured with --target=powerpc-linux, the resulting GCC will not be able to generate code for SPE targets (e500v1/v2). GCC configured with --target=powerpc-linuxspe will not be able to generate AltiVec instructions (for e6500). This patch modifies the configured file such that SPE or AltiVec code can be generated when gcc is configured with --target=powerpc-linux. The ABI and speciffic instructions can be selected through the "-mabi=spe or -mabi=altivec" and the "-mspe or -maltivec" parameters. Upstream-Status: Inappropriate [configuration] Signed-off-by: Alexandru-Cezar Sardan --- gcc/config.gcc | 9 ++++++++- gcc/config/rs6000/linuxspe.h | 3 --- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/gcc/config.gcc b/gcc/config.gcc index 9c6d156..18cff5a 100644 --- a/gcc/config.gcc +++ b/gcc/config.gcc @@ -2392,7 +2392,14 @@ powerpc-*-rtems*) tmake_file="${tmake_file} rs6000/t-fprules rs6000/t-rtems rs6000/t-ppccomm" ;; powerpc*-*-linux*) - tm_file="${tm_file} dbxelf.h elfos.h gnu-user.h freebsd-spec.h rs6000/sysv4.h" + case ${target} in + powerpc*-*-linux*spe* | powerpc*-*-linux*altivec*) + tm_file="${tm_file} dbxelf.h elfos.h gnu-user.h freebsd-spec.h rs6000/sysv4.h" + ;; + *) + tm_file="${tm_file} dbxelf.h elfos.h gnu-user.h freebsd-spec.h rs6000/sysv4.h rs6000/linuxaltivec.h rs6000/linuxspe.h rs6000/e500.h" + ;; + esac extra_options="${extra_options} rs6000/sysv4.opt" tmake_file="${tmake_file} rs6000/t-fprules rs6000/t-ppccomm" extra_objs="$extra_objs rs6000-linux.o" diff --git a/gcc/config/rs6000/linuxspe.h b/gcc/config/rs6000/linuxspe.h index 35623cd..f74e00d 100644 --- a/gcc/config/rs6000/linuxspe.h +++ b/gcc/config/rs6000/linuxspe.h @@ -27,6 +27,3 @@ #undef TARGET_DEFAULT #define TARGET_DEFAULT MASK_STRICT_ALIGN #endif - -#undef ASM_DEFAULT_SPEC -#define ASM_DEFAULT_SPEC "-mppc -mspe -me500" -- 2.8.2