summaryrefslogtreecommitdiff
path: root/gcc/tree.c
diff options
context:
space:
mode:
authordalej <dalej@138bc75d-0d04-0410-961f-82ee72b054a4>2002-12-06 00:08:11 +0000
committerdalej <dalej@138bc75d-0d04-0410-961f-82ee72b054a4>2002-12-06 00:08:11 +0000
commit40e6305ae1d5a9082adcafd92b54abcf9dc558da (patch)
treee2369ad9840bdca798167cf1c0dc408bed8bef39 /gcc/tree.c
parent3e44c5c1b5a3c4aa57b7524828e37a66377f1e3d (diff)
downloadgcc-40e6305ae1d5a9082adcafd92b54abcf9dc558da.tar.gz
2002-12-05 Dale Johannesen <dalej@apple.com>
* tree.c (unsafe_for_reeval): Consider callee child of CALL_EXPR. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@59875 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/tree.c')
-rw-r--r--gcc/tree.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/gcc/tree.c b/gcc/tree.c
index dfac289f137..04fddb26dd3 100644
--- a/gcc/tree.c
+++ b/gcc/tree.c
@@ -1634,7 +1634,7 @@ unsafe_for_reeval (expr)
{
int unsafeness = 0;
enum tree_code code;
- int i, tmp;
+ int i, tmp, tmp2;
tree exp;
int first_rtl;
@@ -1660,8 +1660,9 @@ unsafe_for_reeval (expr)
return unsafeness;
case CALL_EXPR:
+ tmp2 = unsafe_for_reeval (TREE_OPERAND (expr, 0));
tmp = unsafe_for_reeval (TREE_OPERAND (expr, 1));
- return MAX (tmp, 1);
+ return MAX (MAX (tmp, 1), tmp2);
case TARGET_EXPR:
unsafeness = 1;