This is the mail archive of the gcc-bugs@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]

[Bug debug/50317] [4.7 Regression] missing DW_OP_GNU_implicit_pointer


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50317

--- Comment #7 from Michael Matz <matz at gcc dot gnu.org> 2011-11-28 13:46:45 UTC ---
(In reply to comment #6)
> Patch to drop ={v} {CLOBBER} stmts when the lhs lost TREE_ADDRESSABLE bit
> during execute_update_addresses_taken.

Actually it's not only the loss of TREE_ADDRESSABLE, but more specifically
that the symbol is marked for renaming now (i.e. will become a SSA name).
There are other decls (not of gimple_reg type) that aren't marked addressed
but still aren't renamed (and therefore the clobbers are still useful).

I see that your patch does the right thing for this, but just wanted to
mention it because it's really the renaming, not the loss of TREE_ADDRESSABLE
that makes removing the clobber a good idea.  I think your condition is a bit
too verbose.  marked_for_renaming implies !TREE_ADDRESSABLE, and a clobber
statement should always have a gimple_vdef.

Then, adding another IL walk just for this?  Why does your first patch ICE?
Can't that be fixed up somehow?


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