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]

[PATCH]: Clear SSA_NAME_DEF_STMT on released SSA names


Diego and I actually talked about this at some point during the
summit, to which his answer was "oops".
It turns out that when we release an SSA_NAME, we don't clear out
SSA_NAME_DEF_STMT.
This means if you walk the ssa_name array, and visit
SSA_NAME_DEF_STMT, there is no truly reliable way to tell if the
SSA_NAME_DEF_STMT points to a live statement or not.

Since this doesn't fix a regression, I will apply this to 4.3 once 4.2
branches, unless someone thinks it is a good idea for 4.2 (I imagine
it could save us some memory since it may cause us to keep these
statements live, but i haven't explored in detail whether that is true
or not).

--Dan

2006-09-29 Daniel Berlin <dberlin@dberlin.org>

       * tree-ssanames.c (release_ssa_name):  Clear SSA_NAME_DEF_STMT
       when the SSA_NAME is released.

Attachment: ssanames.diff
Description: Binary data


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