diff options
author | Richard Henderson <rth@redhat.com> | 2005-01-27 01:28:45 -0800 |
---|---|---|
committer | Richard Henderson <rth@gcc.gnu.org> | 2005-01-27 01:28:45 -0800 |
commit | dad2a933ba0fe99918377dc328ce87325365fb91 (patch) | |
tree | b06cc8f8944057cfd57dcd5faf93040dd75dae74 /gcc/tree.h | |
parent | 17c21957198083a5787308566dff7526d1307bc5 (diff) | |
download | gcc-dad2a933ba0fe99918377dc328ce87325365fb91.zip gcc-dad2a933ba0fe99918377dc328ce87325365fb91.tar.gz gcc-dad2a933ba0fe99918377dc328ce87325365fb91.tar.bz2 |
re PR c++/14329 ([4.1 only] badly formatted warnings for SRA replacements used uninitialized)
PR tree-opt/14329
* tree.h (struct tree_decl): Add debug_expr_is_from.
(DECL_DEBUG_EXPR_IS_FROM): New.
(DECL_DEBUG_EXPR): Rename from DECL_DEBUG_ALIAS_OF.
* dwarf2out.c (dwarf2out_var_location): Update to match.
* tree-outof-ssa.c (create_temp): Likewise.
* var-tracking.c (track_expr_p): Likewise.
* tree-sra.c (instantiate_element): Set DECL_DEBUG_EXPR.
* c-objc-common.c (c_tree_printer) <'D'>: Handle DECL_DEBUG_EXPR.
* toplev.c (default_tree_printer): Likewise.
From-SVN: r94317
Diffstat (limited to 'gcc/tree.h')
-rw-r--r-- | gcc/tree.h | 13 |
1 files changed, 9 insertions, 4 deletions
@@ -2018,9 +2018,13 @@ struct tree_binfo GTY (()) writing debugging information about vfield and vbase decls for C++. */ #define DECL_FCONTEXT(NODE) (FIELD_DECL_CHECK (NODE)->decl.vindex) -/* For VAR_DECL, this is set to the variable we were split from, due to - optimization. */ -#define DECL_DEBUG_ALIAS_OF(NODE) (DECL_CHECK (NODE)->decl.vindex) +/* For VAR_DECL, this is set to either an expression that it was split + from (if DECL_DEBUG_EXPR_IS_FROM is true), otherwise a tree_list of + subexpressions that it was split into. */ +#define DECL_DEBUG_EXPR(NODE) (DECL_CHECK (NODE)->decl.vindex) + +#define DECL_DEBUG_EXPR_IS_FROM(NODE) \ + (DECL_CHECK (NODE)->decl.debug_expr_is_from) /* Every ..._DECL node gets a unique number. */ #define DECL_UID(NODE) (DECL_CHECK (NODE)->decl.uid) @@ -2361,7 +2365,8 @@ struct tree_decl GTY(()) unsigned possibly_inlined : 1; unsigned preserve_flag: 1; unsigned gimple_formal_temp : 1; - /* 13 unused bits. */ + unsigned debug_expr_is_from : 1; + /* 12 unused bits. */ union tree_decl_u1 { /* In a FUNCTION_DECL for which DECL_BUILT_IN holds, this is |