aboutsummaryrefslogtreecommitdiff
path: root/gcc/gimplify.c
diff options
context:
space:
mode:
authorRichard Guenther <rguenther@suse.de>2012-05-10 07:58:27 +0000
committerRichard Biener <rguenth@gcc.gnu.org>2012-05-10 07:58:27 +0000
commit3ac8781c36d6f1ce612e5233dc9254d2d8cee5ca (patch)
tree1b55fc7996845f84a927496e5f0f6f7aa9d75d19 /gcc/gimplify.c
parent26c7244823b6d5c3c0cdc86cf411e6e6860ddb16 (diff)
downloadgcc-3ac8781c36d6f1ce612e5233dc9254d2d8cee5ca.zip
gcc-3ac8781c36d6f1ce612e5233dc9254d2d8cee5ca.tar.gz
gcc-3ac8781c36d6f1ce612e5233dc9254d2d8cee5ca.tar.bz2
cuintp.c (UI_From_gnu): Remove TYPE_IS_SIZETYPE use.
2012-05-10 Richard Guenther <rguenther@suse.de> ada/ * gcc-interface/cuintp.c (UI_From_gnu): Remove TYPE_IS_SIZETYPE use. c-family/ * c-common.c (c_sizeof_or_alignof_type): Remove assert and adjust commentary about TYPE_IS_SIZETYPE types. * tree.h (TYPE_IS_SIZETYPE): Remove. * fold-const.c (int_const_binop_1): Remove TYPE_IS_SIZETYPE use. (extract_muldiv_1): Likewise. * gimple.c (gtc_visit): Likewise. (gimple_types_compatible_p): Likewise. (iterative_hash_canonical_type): Likewise. (gimple_canonical_types_compatible_p): Likewise. * gimplify.c (gimplify_one_sizepos): Likewise. * print-tree.c (print_node): Likewise. * stor-layout.c (initialize_sizetypes): Do not set TYPE_IS_SIZETYPE. From-SVN: r187363
Diffstat (limited to 'gcc/gimplify.c')
-rw-r--r--gcc/gimplify.c22
1 files changed, 1 insertions, 21 deletions
diff --git a/gcc/gimplify.c b/gcc/gimplify.c
index 74d7895..811fa22 100644
--- a/gcc/gimplify.c
+++ b/gcc/gimplify.c
@@ -8098,7 +8098,7 @@ gimplify_type_sizes (tree type, gimple_seq *list_p)
void
gimplify_one_sizepos (tree *expr_p, gimple_seq *stmt_p)
{
- tree type, expr = *expr_p;
+ tree expr = *expr_p;
/* We don't do anything if the value isn't there, is constant, or contains
A PLACEHOLDER_EXPR. We also don't want to do anything if it's already
@@ -8110,30 +8110,10 @@ gimplify_one_sizepos (tree *expr_p, gimple_seq *stmt_p)
|| CONTAINS_PLACEHOLDER_P (expr))
return;
- type = TREE_TYPE (expr);
*expr_p = unshare_expr (expr);
gimplify_expr (expr_p, stmt_p, NULL, is_gimple_val, fb_rvalue);
expr = *expr_p;
-
- /* Verify that we've an exact type match with the original expression.
- In particular, we do not wish to drop a "sizetype" in favour of a
- type of similar dimensions. We don't want to pollute the generic
- type-stripping code with this knowledge because it doesn't matter
- for the bulk of GENERIC/GIMPLE. It only matters that TYPE_SIZE_UNIT
- and friends retain their "sizetype-ness". */
- if (TREE_TYPE (expr) != type
- && TREE_CODE (type) == INTEGER_TYPE
- && TYPE_IS_SIZETYPE (type))
- {
- tree tmp;
- gimple stmt;
-
- *expr_p = create_tmp_var (type, NULL);
- tmp = build1 (NOP_EXPR, type, expr);
- stmt = gimplify_assign (*expr_p, tmp, stmt_p);
- gimple_set_location (stmt, EXPR_LOC_OR_HERE (expr));
- }
}
/* Gimplify the body of statements of FNDECL and return a GIMPLE_BIND node