On May 13, 2011, at 5:30 PM, Paul Koning wrote:

> 
> On May 13, 2011, at 4:57 PM, Eric Botcazou wrote:
> 
>>> Question: that code doesn't appear to touch REG_DEAD notes at all.  Is that
>>> right?  From the definition of REG_DEAD, it seems that rewriting a later
>>> insns to use register x means that a preceding (REG_DEAD x) needs to be
>>> deleted.  Or moved to the later insn, perhaps.
>> 
>> If the pass doesn't consume REG_DEAD/REG_UNUSED notes, it doesn't have to 
>> keep 
>> them up-to-date.  Instead, passes that consume them must 
>> df_note_add_problem() 
>> on entry.  For the generic reorg (delay slot filling) pass, this is done in 
>> rest_of_pass_free_cfg.
> 
> rest_of_pass_free_cfg calls df_analyze but it doesn't call 
> df_note_add_problem.  Is that the issue?  I see that some other passes (like 
> regrename) do a sequence of df_xyz calls.

I see that this has been fixed recently, but 4.5.1 has the previous code.  I'll 
try it with that fix.

        paul

Reply via email to