johannes 02/12/05 16:11:16
Modified: live/gcc3/gcc tree.c
Log:
Bug #: 3007169
Submitted by: dale
Reviewed by: richard henderson
Roll in FSF-approved fix.
Revision Changes Path
1.50 +3 -2 src/live/gcc3/gcc/tree.c
Index: tree.c
===================================================================
RCS file: /cvs/Darwin/src/live/gcc3/gcc/tree.c,v
retrieving revision 1.49
retrieving revision 1.50
diff -u -r1.49 -r1.50
--- tree.c 2002/10/24 23:43:11 1.49
+++ tree.c 2002/12/06 00:11:15 1.50
@@ -1648,7 +1648,7 @@
{
int unsafeness = 0;
enum tree_code code;
- int i, tmp;
+ int i, tmp, tmp2;
tree exp;
int first_rtl;
@@ -1674,8 +1674,9 @@
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;