aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorDavid Edelsohn <edelsohn@gnu.org>2006-08-03 13:48:01 +0000
committerDavid Edelsohn <dje@gcc.gnu.org>2006-08-03 09:48:01 -0400
commit1650e3f510bc051067c55b099889636638b78eb4 (patch)
tree7aebbdb23d81c2c4acbf766c7db26110fa8ee079 /gcc
parentd9b826510682145a6ba32da8ca8f765ac2eaf0a2 (diff)
downloadgcc-1650e3f510bc051067c55b099889636638b78eb4.zip
gcc-1650e3f510bc051067c55b099889636638b78eb4.tar.gz
gcc-1650e3f510bc051067c55b099889636638b78eb4.tar.bz2
re PR target/27566 (ICEs in final_scan_insn and reload_cse_simplify_operands for vectors with SPE)
PR target/27566 * config/rs6000/rs6000.c (rs6000_legitimize_reload_address): Do not reload a SPE symbol_ref into a lo_sum address. From-SVN: r115902
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog6
-rw-r--r--gcc/config/rs6000/rs6000.c1
2 files changed, 7 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 3688cbd..aa7b5441 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,9 @@
+2006-08-03 David Edelsohn <edelsohn@gnu.org>
+
+ PR target/27566
+ * config/rs6000/rs6000.c (rs6000_legitimize_reload_address): Do
+ not reload a SPE symbol_ref into a lo_sum address.
+
2006-08-02 Daniel Jacobowitz <dan@codesourcery.com>
PR debug/28063
diff --git a/gcc/config/rs6000/rs6000.c b/gcc/config/rs6000/rs6000.c
index c988857..676f964 100644
--- a/gcc/config/rs6000/rs6000.c
+++ b/gcc/config/rs6000/rs6000.c
@@ -3421,6 +3421,7 @@ rs6000_legitimize_reload_address (rtx x, enum machine_mode mode,
if (GET_CODE (x) == SYMBOL_REF
&& !ALTIVEC_VECTOR_MODE (mode)
+ && !SPE_VECTOR_MODE (mode)
#if TARGET_MACHO
&& DEFAULT_ABI == ABI_DARWIN
&& (flag_pic || MACHO_DYNAMIC_NO_PIC_P)