This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

mostly fix 14329, except for c++


The DECL_DEBUG_EXPR/DECL_DEBUG_EXPR_IS_FROM is enough to generate
both proper warnings and proper debug info from the SRA optimized
code.  Not that this actually does generate proper debug info,
but in principal the information is now present.

For some reason, the "obvious" changes to the C++ front end pretty
printer (in attachment 2 below) do not work.  Zillions of testsuite
failures due to crashes in this code.  I'll let a C++ person fix it.

Tested on alphaev67-linux.


r~


        * 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.

Attachment: z
Description: Text document

Attachment: zz
Description: Text document


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]