aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChung-Lin Tang <cltang@codesourcery.com>2012-02-05 15:03:15 +0000
committerRichard Sandiford <rsandifo@gcc.gnu.org>2012-02-05 15:03:15 +0000
commit6caf807fbaf064ef477306d84f58e4de1584ab09 (patch)
treea374e23bb0db486e76dce86eebdb6207d4785611
parentd257df9b5e60eeee8b09b5d23a496bdaa75e143b (diff)
downloadgcc-6caf807fbaf064ef477306d84f58e4de1584ab09.zip
gcc-6caf807fbaf064ef477306d84f58e4de1584ab09.tar.gz
gcc-6caf807fbaf064ef477306d84f58e4de1584ab09.tar.bz2
config.host (mips64*-*-linux*, [...]): Add t-slibgcc-libgcc to tmake_file.
libgcc/ 2012-02-05 Chung-Lin Tang <cltang@codesourcery.com> * config.host (mips64*-*-linux*, mipsisa64*-*-linux*, mips*-*-linux*): Add t-slibgcc-libgcc to tmake_file. * config/mips/libgcc-mips16.ver: Revert previous patch. * config/mips/mips16.S (__mips16_rdhwr): Hide. From-SVN: r183912
-rw-r--r--libgcc/ChangeLog7
-rw-r--r--libgcc/config.host4
-rw-r--r--libgcc/config/mips/libgcc-mips16.ver4
-rw-r--r--libgcc/config/mips/mips16.S3
4 files changed, 12 insertions, 6 deletions
diff --git a/libgcc/ChangeLog b/libgcc/ChangeLog
index abd2a7f..bcdf530 100644
--- a/libgcc/ChangeLog
+++ b/libgcc/ChangeLog
@@ -1,3 +1,10 @@
+2012-02-05 Chung-Lin Tang <cltang@codesourcery.com>
+
+ * config.host (mips64*-*-linux*, mipsisa64*-*-linux*, mips*-*-linux*):
+ Add t-slibgcc-libgcc to tmake_file.
+ * config/mips/libgcc-mips16.ver: Revert previous patch.
+ * config/mips/mips16.S (__mips16_rdhwr): Hide.
+
2012-02-02 Sumanth G <sumanth.gundapaneni@kpitcummins.com>
Jayant R Sonar <jayant.sonar@kpitcummins.com>
diff --git a/libgcc/config.host b/libgcc/config.host
index 14443c1..da845b9 100644
--- a/libgcc/config.host
+++ b/libgcc/config.host
@@ -746,12 +746,12 @@ mips*-*-netbsd*) # NetBSD/mips, either endian.
;;
mips64*-*-linux* | mipsisa64*-*-linux*)
extra_parts="$extra_parts crtfastmath.o"
- tmake_file="${tmake_file} t-crtfm mips/t-mips16 mips/t-tpbit"
+ tmake_file="${tmake_file} t-crtfm mips/t-mips16 mips/t-tpbit t-slibgcc-libgcc"
md_unwind_header=mips/linux-unwind.h
;;
mips*-*-linux*) # Linux MIPS, either endian.
extra_parts="$extra_parts crtfastmath.o"
- tmake_file="${tmake_file} t-crtfm mips/t-mips16"
+ tmake_file="${tmake_file} t-crtfm mips/t-mips16 t-slibgcc-libgcc"
md_unwind_header=mips/linux-unwind.h
;;
mips*-*-openbsd*)
diff --git a/libgcc/config/mips/libgcc-mips16.ver b/libgcc/config/mips/libgcc-mips16.ver
index a925744..ddb23e7 100644
--- a/libgcc/config/mips/libgcc-mips16.ver
+++ b/libgcc/config/mips/libgcc-mips16.ver
@@ -84,7 +84,3 @@ GCC_4.4.0 {
__mips16_call_stub_dc_9
__mips16_call_stub_dc_10
}
-
-GCC_4.7.0 {
- __mips16_rdhwr
-}
diff --git a/libgcc/config/mips/mips16.S b/libgcc/config/mips/mips16.S
index a087508..c82a55d 100644
--- a/libgcc/config/mips/mips16.S
+++ b/libgcc/config/mips/mips16.S
@@ -712,6 +712,9 @@ CALL_STUB_RET (__mips16_call_stub_dc_10, 10, DC)
#ifdef L_m16rdhwr
STARTFN (__mips16_rdhwr)
+ /* Forced always hidden, because the PLT resolver function would
+ not preserve all necessary registers. */
+ .hidden __mips16_rdhwr
.set push
.set mips32r2
.set noreorder