From: Bernd Schmidt Date: Thu, 11 Jan 2001 17:53:42 +0000 (+0000) Subject: Backport changes to set TREE_SIDE_EFFECTS automatically to 2.95 branch X-Git-Tag: prereleases/gcc-2.95.3-test2~11 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=c9b1b1fcc545ae15e1fd402644f62a5ff267f32d;p=thirdparty%2Fgcc.git Backport changes to set TREE_SIDE_EFFECTS automatically to 2.95 branch From-SVN: r38912 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 3d40878c4fa4..dc923e29be39 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,13 @@ +2001-01-11 Bernd Schmidt + + Mon Oct 4 16:56:11 1999 Richard Henderson + * tree.c (build1): Set TREE_SIDE_EFFECTS for expressions that + always have side-effects. + + Mon Oct 4 02:12:41 1999 Mark Mitchell + * tree.c (make_node): Set TREE_SIDE_EFFECTS for expressions that + always have side-effects. + 2001-01-01 Bernd Schmidt * version.c: Bump. diff --git a/gcc/tree.c b/gcc/tree.c index 5e29d2f9115b..b6cdf7bebf88 100644 --- a/gcc/tree.c +++ b/gcc/tree.c @@ -1121,6 +1121,26 @@ make_node (code) case 'c': TREE_CONSTANT (t) = 1; break; + + case 'e': + switch (code) + { + case INIT_EXPR: + case MODIFY_EXPR: + case RTL_EXPR: + case PREDECREMENT_EXPR: + case PREINCREMENT_EXPR: + case POSTDECREMENT_EXPR: + case POSTINCREMENT_EXPR: + /* All of these have side-effects, no matter what their + operands are. */ + TREE_SIDE_EFFECTS (t) = 1; + break; + + default: + break; + } + break; } return t; @@ -3107,6 +3127,24 @@ build1 (code, type, node) TREE_RAISES (t) = 1; } + switch (code) + { + case INIT_EXPR: + case MODIFY_EXPR: + case RTL_EXPR: + case PREDECREMENT_EXPR: + case PREINCREMENT_EXPR: + case POSTDECREMENT_EXPR: + case POSTINCREMENT_EXPR: + /* All of these have side-effects, no matter what their + operands are. */ + TREE_SIDE_EFFECTS (t) = 1; + break; + + default: + break; + } + return t; }