diff options
author | Richard Kenner <kenner@vlsi1.ultra.nyu.edu> | 2004-07-24 01:29:11 +0000 |
---|---|---|
committer | Richard Kenner <kenner@gcc.gnu.org> | 2004-07-23 21:29:11 -0400 |
commit | 9e51aaf570ad8c2c6551c0c5bdf358df2655ca6b (patch) | |
tree | f3db9e6f9f7f86d544fb2a65e954a843aeee4eb6 /gcc/tree-gimple.c | |
parent | ffe4e0376f66ff4db3a098f9c41fd8c8dd3c5ac7 (diff) | |
download | gcc-9e51aaf570ad8c2c6551c0c5bdf358df2655ca6b.zip gcc-9e51aaf570ad8c2c6551c0c5bdf358df2655ca6b.tar.gz gcc-9e51aaf570ad8c2c6551c0c5bdf358df2655ca6b.tar.bz2 |
gimplify.c (gimplify_compound_lval): Check for no handled operations, rather than checking for explicit list of nodes.
* gimplify.c (gimplify_compound_lval): Check for no handled
operations, rather than checking for explicit list of nodes.
(is_gimple_addr_expr_arg_or_indirect): New function.
(gimplify_addr_expr): Call it and handle INDIRECT_REF; remove
redundant setting of TREE_INVARIANT.
(gimplify_expr, case VIEW_CONVERT_EXPR): Call gimplify_compound_lval.
* tree-gimple.c (is_gimple_addr_expr_arg): Call handled_component_p.
From-SVN: r85110
Diffstat (limited to 'gcc/tree-gimple.c')
-rw-r--r-- | gcc/tree-gimple.c | 9 |
1 files changed, 2 insertions, 7 deletions
diff --git a/gcc/tree-gimple.c b/gcc/tree-gimple.c index 2b119fd..3d2fff8 100644 --- a/gcc/tree-gimple.c +++ b/gcc/tree-gimple.c @@ -322,13 +322,8 @@ is_gimple_condexpr (tree t) bool is_gimple_addr_expr_arg (tree t) { - return (is_gimple_id (t) - || TREE_CODE (t) == ARRAY_REF - || TREE_CODE (t) == ARRAY_RANGE_REF - || TREE_CODE (t) == COMPONENT_REF - || TREE_CODE (t) == REALPART_EXPR - || TREE_CODE (t) == IMAGPART_EXPR - || TREE_CODE (t) == INDIRECT_REF); + return (is_gimple_id (t) || handled_component_p (t) + || TREE_CODE (t) == REALPART_EXPR || TREE_CODE (t) == IMAGPART_EXPR); } /* Return true if T is function invariant. Or rather a restricted |