diff options
author | Richard Guenther <rguenther@suse.de> | 2008-03-26 11:09:43 +0000 |
---|---|---|
committer | Richard Biener <rguenth@gcc.gnu.org> | 2008-03-26 11:09:43 +0000 |
commit | cf3135aaa1c0553f5e61128eea65fabbfb101eaf (patch) | |
tree | 4aad68ab876037b00330e7b405df515b72769af7 /gcc/tree-ssa-dom.c | |
parent | 49e013b373db31b854984a3b71f1764a0d80ed7e (diff) | |
download | gcc-cf3135aaa1c0553f5e61128eea65fabbfb101eaf.zip gcc-cf3135aaa1c0553f5e61128eea65fabbfb101eaf.tar.gz gcc-cf3135aaa1c0553f5e61128eea65fabbfb101eaf.tar.bz2 |
tree-flow.h (widen_bitfield): Remove declaration.
2008-03-26 Richard Guenther <rguenther@suse.de>
* tree-flow.h (widen_bitfield): Remove declaration.
* tree-ssa-ccp.c (visit_assignment): Remove unneeded code.
(widen_bitfield): Remove function.
* tree-ssa-dom.c (record_equivalences_from_stmt): Remove unneeded
code.
From-SVN: r133597
Diffstat (limited to 'gcc/tree-ssa-dom.c')
-rw-r--r-- | gcc/tree-ssa-dom.c | 37 |
1 files changed, 6 insertions, 31 deletions
diff --git a/gcc/tree-ssa-dom.c b/gcc/tree-ssa-dom.c index 64ff4ef..909bfeb 100644 --- a/gcc/tree-ssa-dom.c +++ b/gcc/tree-ssa-dom.c @@ -1595,38 +1595,13 @@ record_equivalences_from_stmt (tree stmt, int may_optimize_p, stmt_ann_t ann) tree rhs = GIMPLE_STMT_OPERAND (stmt, 1); tree new_stmt; - /* FIXME: If the LHS of the assignment is a bitfield and the RHS - is a constant, we need to adjust the constant to fit into the - type of the LHS. If the LHS is a bitfield and the RHS is not - a constant, then we can not record any equivalences for this - statement since we would need to represent the widening or - narrowing of RHS. This fixes gcc.c-torture/execute/921016-1.c - and should not be necessary if GCC represented bitfields - properly. */ - if (lhs_code == COMPONENT_REF - && DECL_BIT_FIELD (TREE_OPERAND (lhs, 1))) - { - if (TREE_CONSTANT (rhs)) - rhs = widen_bitfield (rhs, TREE_OPERAND (lhs, 1), lhs); - else - rhs = NULL; - - /* If the value overflowed, then we can not use this equivalence. */ - if (rhs && ! is_gimple_min_invariant (rhs)) - rhs = NULL; - } - - if (rhs) - { - /* Build a new statement with the RHS and LHS exchanged. */ - new_stmt = build_gimple_modify_stmt (rhs, lhs); - - create_ssa_artificial_load_stmt (new_stmt, stmt, true); + /* Build a new statement with the RHS and LHS exchanged. */ + new_stmt = build_gimple_modify_stmt (rhs, lhs); + create_ssa_artificial_load_stmt (new_stmt, stmt, true); - /* Finally enter the statement into the available expression - table. */ - lookup_avail_expr (new_stmt, true); - } + /* Finally enter the statement into the available expression + table. */ + lookup_avail_expr (new_stmt, true); } } |