aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorAlan Modra <amodra@bigpond.net.au>2005-10-21 07:33:30 +0000
committerAlan Modra <amodra@gcc.gnu.org>2005-10-21 17:03:30 +0930
commit972f427b1b75d4c033508680295ef4bd252e63c4 (patch)
tree5c3e77260cfa557fb0f3b7248d27399b4b063f16 /gcc
parent97191ef99f43fe7d02d356002892920c06476457 (diff)
downloadgcc-972f427b1b75d4c033508680295ef4bd252e63c4.zip
gcc-972f427b1b75d4c033508680295ef4bd252e63c4.tar.gz
gcc-972f427b1b75d4c033508680295ef4bd252e63c4.tar.bz2
re PR target/24465 (-mminimal-toc miscompilation of __thread vars)
PR target/24465 * config/rs6000/rs6000.c (rs6000_legitimize_tls_address): Always use r2 for 64-bit tls .got access. From-SVN: r105725
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog6
-rw-r--r--gcc/config/rs6000/rs6000.c2
2 files changed, 7 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 06f3913..ed71c78 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,9 @@
+2005-10-21 Alan Modra <amodra@bigpond.net.au>
+
+ PR target/24465
+ * config/rs6000/rs6000.c (rs6000_legitimize_tls_address): Always
+ use r2 for 64-bit tls .got access.
+
2005-10-21 Paolo Bonzini <bonzini@gnu.org>
* dojump.c (do_jump): Handle side-effecting TRUTH_AND_EXPR and
diff --git a/gcc/config/rs6000/rs6000.c b/gcc/config/rs6000/rs6000.c
index 7077b66..4f8e489 100644
--- a/gcc/config/rs6000/rs6000.c
+++ b/gcc/config/rs6000/rs6000.c
@@ -2979,7 +2979,7 @@ rs6000_legitimize_tls_address (rtx addr, enum tls_model model)
rtx r3, got, tga, tmp1, tmp2, eqv;
if (TARGET_64BIT)
- got = gen_rtx_REG (Pmode, TOC_REGISTER);
+ got = gen_rtx_REG (Pmode, 2);
else
{
if (flag_pic == 1)