From ad50bc8d803c56fc9ec9a81b70877e74d61c7c14 Mon Sep 17 00:00:00 2001 From: Richard Henderson Date: Wed, 22 Dec 2004 10:51:24 -0800 Subject: [multiple changes] 2004-12-22 Richard Kenner * trans.c (mark_visited): Set TYPE_SIZES_GIMPLIFIED. 2004-12-22 Richard Kenner * tree.h (TYPE_SIZES_GIMPLIFIED): New. * function.c (gimplify_parm_type): Don't gimplify type if already done. * gimplify.c (gimplify_decl_expr): Likewise. (gimplify_type_sizes): Set TYPE_SIZES_GIMPLIFIED. Examine nested array types. 2004-12-22 Richard Henderson * gimplify.c (eval_save_expr): Remove. (gimplify_one_sizepos): Unshare expr before gimplifying. * stor-layout.c (variable_size): Revert 2004-12-19 change. (layout_decl): Revert 2004-12-18 change. (layout_type): Revert 2004-12-21 change. From-SVN: r92495 --- gcc/tree.h | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'gcc/tree.h') diff --git a/gcc/tree.h b/gcc/tree.h index f70683c..76424a5 100644 --- a/gcc/tree.h +++ b/gcc/tree.h @@ -368,6 +368,8 @@ struct tree_common GTY(()) all expressions all decls all constants + TYPE_SIZES_GIMPLIFIED + ..._TYPE unsigned_flag: @@ -934,6 +936,9 @@ extern void tree_operand_check_failed (int, enum tree_code, also appear in an expression or decl where the value is constant. */ #define TREE_CONSTANT(NODE) (NON_TYPE_CHECK (NODE)->common.constant_flag) +/* Nonzero if NODE, a type, has had its sizes gimplified. */ +#define TYPE_SIZES_GIMPLIFIED(NODE) (TYPE_CHECK (NODE)->common.constant_flag) + /* In a decl (most significantly a FIELD_DECL), means an unsigned field. */ #define DECL_UNSIGNED(NODE) (DECL_CHECK (NODE)->common.unsigned_flag) -- cgit v1.1