Hi,
I've recently been using a target (e200z6) where a "-mno-spe
-mabi=no-spe" libgcc was required.
The closest combination provided by 4.9.1 was "-mno-spe -mabi=no-spe
-mno-isel". My builds disable spe, but leave isel enabled.
Unfortunately, with this combination of options gcc uses an incompatible
libgcc which includes spe instructions.
I have attached a patch which enables the "-mno-spe -mabi=no-spe" multilib.
It seems a bit broken that gcc would use an spe version of libgcc when I
specify "no-spe".
Hopefully someone finds the patch useful.
Kind regards,
Patrick
--- gcc/config/rs6000/t-spe.orig 2014-09-16 13:55:57.649114878 +1000
+++ gcc/config/rs6000/t-spe 2014-09-16 13:56:37.393116284 +1000
@@ -23,6 +23,7 @@
# -mcpu=7400 -maltivec -mabi=altivec
# -mcpu=7400 -msoft-float
# -msoft-float
+# -mno-spe -mabi=no-spe
# -mno-spe -mabi=no-spe -mno-isel
# so we'll need to create exceptions later below.
@@ -56,7 +57,6 @@
*msoft-float/*mno-spe* \
*msoft-float/*mabi=no-spe* \
*msoft-float/*mno-isel* \
- mno-spe/mabi=no-spe \
mno-spe/mno-isel \
mabi=no-spe/mno-isel \
mno-isel/mlittle \
@@ -67,7 +67,6 @@
mcpu=7400/maltivec/mlittle \
mabi=no-spe/mlittle \
mno-spe/mno-isel/mlittle \
- mno-spe/mabi=no-spe/mlittle \
mabi=altivec/mlittle \
maltivec/mlittle \
maltivec/mabi=altivec/mlittle