57 lines
2.1 KiB
Diff
57 lines
2.1 KiB
Diff
From e140700976e3b7eb4250b1ffde9bc16494456903 Mon Sep 17 00:00:00 2001
|
|
From: Alexandru-Cezar Sardan <alexandru.sardan@freescale.com>
|
|
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 <alexandru.sardan@freescale.com>
|
|
---
|
|
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
|
|
|