aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorJohn F. Carr <jfc@mit.edu>1998-01-30 10:31:34 -0800
committerJim Wilson <wilson@gcc.gnu.org>1998-01-30 10:31:34 -0800
commit4b526a9a94031f39cf5304423828c7a0b08ee5c4 (patch)
tree81b3b6d0e6ca2e1d722becf838a59ed4ce2201df /gcc
parent6209c7e96be9330ee80e305b901741c6c3ea0f5b (diff)
downloadgcc-4b526a9a94031f39cf5304423828c7a0b08ee5c4.zip
gcc-4b526a9a94031f39cf5304423828c7a0b08ee5c4.tar.gz
gcc-4b526a9a94031f39cf5304423828c7a0b08ee5c4.tar.bz2
patch from jfc to improve aliasing/scheduling
* mips.c (save_restore_insns): Set RTX_UNCHANGING_P in register save/restore MEM rtl. From-SVN: r17559
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/config/mips/mips.c2
2 files changed, 7 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 5dc3e30..6c09995 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+Fri Jan 30 18:30:03 1998 John F Carr <jfc@mit.edu>
+
+ * mips.c (save_restore_insns): Set RTX_UNCHANGING_P in register
+ save/restore MEM rtl.
+
Fri Jan 30 09:08:16 1998 Jeffrey A Law (law@cygnus.com)
* configure.in: Check for declaration of abort.
diff --git a/gcc/config/mips/mips.c b/gcc/config/mips/mips.c
index 53beb41..6589ccf 100644
--- a/gcc/config/mips/mips.c
+++ b/gcc/config/mips/mips.c
@@ -5802,6 +5802,7 @@ save_restore_insns (store_p, large_reg, large_offset, file)
rtx mem_rtx = gen_rtx (MEM, word_mode,
gen_rtx (PLUS, Pmode, base_reg_rtx,
GEN_INT (gp_offset - base_offset)));
+ RTX_UNCHANGING_P (mem_rtx) = 1;
/* The mips16 does not have an instruction to load
$31, so we load $7 instead, and work things out
@@ -6006,6 +6007,7 @@ save_restore_insns (store_p, large_reg, large_offset, file)
rtx mem_rtx = gen_rtx (MEM, sz,
gen_rtx (PLUS, Pmode, base_reg_rtx,
GEN_INT (fp_offset - base_offset)));
+ RTX_UNCHANGING_P (mem_rtx) = 1;
if (store_p)
{