diff options
author | Aldy Hernandez <aldyh@redhat.com> | 2006-12-05 17:26:05 +0000 |
---|---|---|
committer | Aldy Hernandez <aldyh@gcc.gnu.org> | 2006-12-05 17:26:05 +0000 |
commit | 07beea0df36b29ef9acb27111eac0b0e92e181a5 (patch) | |
tree | 32d3ee1ddfcad180d619d756a84eeb0df779a6a2 /gcc/tree-gimple.c | |
parent | 3b8aab767b942e122caf583493d7cd858c091cde (diff) | |
download | gcc-07beea0df36b29ef9acb27111eac0b0e92e181a5.zip gcc-07beea0df36b29ef9acb27111eac0b0e92e181a5.tar.gz gcc-07beea0df36b29ef9acb27111eac0b0e92e181a5.tar.bz2 |
Merge gimple-tuples-branch into mainline.
From-SVN: r119546
Diffstat (limited to 'gcc/tree-gimple.c')
-rw-r--r-- | gcc/tree-gimple.c | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/gcc/tree-gimple.c b/gcc/tree-gimple.c index 3dab75d..eda4541 100644 --- a/gcc/tree-gimple.c +++ b/gcc/tree-gimple.c @@ -87,7 +87,7 @@ is_gimple_formal_tmp_rhs (tree t) bool is_gimple_reg_rhs (tree t) { - /* If the RHS of the MODIFY_EXPR may throw or make a nonlocal goto + /* If the RHS of the GIMPLE_MODIFY_STMT may throw or make a nonlocal goto and the LHS is a user variable, then we need to introduce a formal temporary. This way the optimizers can determine that the user variable is only modified if evaluation of the RHS does not throw. @@ -233,7 +233,7 @@ is_gimple_stmt (tree t) return true; case CALL_EXPR: - case MODIFY_EXPR: + case GIMPLE_MODIFY_STMT: /* These are valid regardless of their type. */ return true; @@ -427,8 +427,10 @@ is_gimple_call_addr (tree t) tree get_call_expr_in (tree t) { - if (TREE_CODE (t) == MODIFY_EXPR) - t = TREE_OPERAND (t, 1); + /* FIXME tuples: delete the assertion below when conversion complete. */ + gcc_assert (TREE_CODE (t) != MODIFY_EXPR); + if (TREE_CODE (t) == GIMPLE_MODIFY_STMT) + t = GIMPLE_STMT_OPERAND (t, 1); if (TREE_CODE (t) == WITH_SIZE_EXPR) t = TREE_OPERAND (t, 0); if (TREE_CODE (t) == CALL_EXPR) @@ -473,7 +475,7 @@ recalculate_side_effects (tree t) switch (code) { case INIT_EXPR: - case MODIFY_EXPR: + case GIMPLE_MODIFY_STMT: case VA_ARG_EXPR: case PREDECREMENT_EXPR: case PREINCREMENT_EXPR: |