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]

Re: [vta4.4] fix two build regressions


On Wed, Jul 29, 2009 at 10:46 PM, Alexandre Oliva<aoliva@redhat.com> wrote:
> The cleanups I installed in the VTA branch and then backported to VTA4.4
> introduced two build regressions in the VTA4.4 branch, fixed with the
> patch below.
>
> One problem was caused by sharing of expression trees between debug and
> non-debug stmts. ?The trees were modified in-place while going out of
> SSA, producing incorrect results.
>
> The other was a failure to update debug statements that referenced
> formerly-addressable variables. ?Since we don't keep VOPs for debug
> stmts, the debug stmt is not marked as interesting for an SSA update, so
> the reference to the now-gimple-reg variable is left alone instead of
> being turned into SSA form (or dropped, if it's completely gone). ?Later
> on, the statement may be rescanned, adding a USE to a variable that
> should be in SSA form but isn't, triggering verification errors.
>
> I wish I had a cleaner solution for this second problem, but rescanning
> debug stmts' operands when there are symbols to be renamed was the best
> I could come up with. ?Any suggestions?

Not really.  Why's that not an issue on the trunk?  I suppose the debug
statements return true for gimple_reference_memory_p?

Richard.


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