summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorrth <rth@138bc75d-0d04-0410-961f-82ee72b054a4>2000-09-11 21:34:57 +0000
committerrth <rth@138bc75d-0d04-0410-961f-82ee72b054a4>2000-09-11 21:34:57 +0000
commit30e43bfba713597c2ab2a063a42e6b494618946b (patch)
tree7083c5a8bedda24af777074b24fec54e07bf9629
parent1beeaf614f68f181409caafcedc04641d42710c6 (diff)
downloadppe42-gcc-30e43bfba713597c2ab2a063a42e6b494618946b.tar.gz
ppe42-gcc-30e43bfba713597c2ab2a063a42e6b494618946b.zip
* cse.c (fold_rtx): Honor NO_FUNCTION_CSE.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@36331 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r--gcc/ChangeLog4
-rw-r--r--gcc/cse.c7
2 files changed, 11 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 31d94b4b8f5..1979574aaa7 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,5 +1,9 @@
2000-09-11 Richard Henderson <rth@cygnus.com>
+ * cse.c (fold_rtx): Honor NO_FUNCTION_CSE.
+
+2000-09-11 Richard Henderson <rth@cygnus.com>
+
* config/ia64/ia64-protos.h (fr_nonimmediate_operand): Declare.
* config/ia64/ia64.c (fr_nonimmediate_operand): New.
(ia64_override_options): Prevent optimizing division for both
diff --git a/gcc/cse.c b/gcc/cse.c
index f9348fbabeb..b86843595ea 100644
--- a/gcc/cse.c
+++ b/gcc/cse.c
@@ -3611,6 +3611,13 @@ fold_rtx (x, insn)
return x;
}
+#ifdef NO_FUNCTION_CSE
+ case CALL:
+ if (CONSTANT_P (XEXP (XEXP (x, 0), 0)))
+ return x;
+ break;
+#endif
+
case ASM_OPERANDS:
for (i = ASM_OPERANDS_INPUT_LENGTH (x) - 1; i >= 0; i--)
validate_change (insn, &ASM_OPERANDS_INPUT (x, i),
OpenPOWER on IntegriCloud