Re: [PATCH] Fix VTA updating in the combiner (PR debug/48343)

2011-04-05 Thread Alexandre Oliva
On Apr 5, 2011, Jakub Jelinek wrote: > or DF would have resetted those debug_insns referencing it > (or replaced the pseudos in there with a debug temporary set before the last > real use), otherwise debug insns would change the liveness of the pseudo. Ah, right, that was the bit I was missing!

Re: [PATCH] Fix VTA updating in the combiner (PR debug/48343)

2011-04-05 Thread Jakub Jelinek
On Tue, Apr 05, 2011 at 02:24:55PM -0300, Alexandre Oliva wrote: > On Apr 4, 2011, Jakub Jelinek wrote: > > > Alternatively, perhaps all we care about is either i3, or NEXT_INSN of > > the last debug_insn propagate_for_debug changed in an interesting way. > > Ideally, we'd like to identify all

Re: [PATCH] Fix VTA updating in the combiner (PR debug/48343)

2011-04-05 Thread Alexandre Oliva
On Apr 4, 2011, Jakub Jelinek wrote: > Alternatively, perhaps all we care about is either i3, or NEXT_INSN of > the last debug_insn propagate_for_debug changed in an interesting way. Ideally, we'd like to identify all debug users of i2dest (or whatever DEF we're removing) and propagate into the

Re: [PATCH] Fix VTA updating in the combiner (PR debug/48343)

2011-04-05 Thread Eric Botcazou
> Alternatively, perhaps all we care about is either i3, or NEXT_INSN of the > last debug_insn propagate_for_debug changed in an interesting way. Thus > propagate_for_debug could return the last DEBUG_INSN it changed, and caller > decide either that no updating of last_modified_debug_insn is neede

Re: [PATCH] Fix VTA updating in the combiner (PR debug/48343)

2011-04-05 Thread Jakub Jelinek
On Mon, Apr 04, 2011 at 09:55:12AM +0200, Jakub Jelinek wrote: > So something like this? Now bootstrapped/regtested on x86_64-linux and i686-linux, ok? > 2011-04-04 Jakub Jelinek > > PR debug/48343 > * combine.c (combine_instructions): Add last_combined_insn, > update it if

Re: [PATCH] Fix VTA updating in the combiner (PR debug/48343)

2011-04-04 Thread Jakub Jelinek
On Sun, Apr 03, 2011 at 11:39:22AM +0200, Eric Botcazou wrote: > > I think we need to update there in all cases. The reason we don't need to > > update beyond i3 resp. undobuf.other_insn is that DF guarantees us that > > there won't be debug insns referring to those pseudos afterwards, otherwise >

Re: [PATCH] Fix VTA updating in the combiner (PR debug/48343)

2011-04-03 Thread Eric Botcazou
> I think we need to update there in all cases. The reason we don't need to > update beyond i3 resp. undobuf.other_insn is that DF guarantees us that > there won't be debug insns referring to those pseudos afterwards, otherwise > either the pseudo must be live afterwards in real code (then it woul

Re: [PATCH] Fix VTA updating in the combiner (PR debug/48343)

2011-04-02 Thread Jakub Jelinek
On Sat, Apr 02, 2011 at 05:42:55PM +0200, Eric Botcazou wrote: > > Combiner has code to adjust this too (propagate_for_debug), but only > > updates debug insns between i2 and i3 (resp. i3 and undobuf.other_insn). > > The problem on the testcase is that this is a retry, so first > > try_combine with

Re: [PATCH] Fix VTA updating in the combiner (PR debug/48343)

2011-04-02 Thread Eric Botcazou
> Combiner has code to adjust this too (propagate_for_debug), but only > updates debug insns between i2 and i3 (resp. i3 and undobuf.other_insn). > The problem on the testcase is that this is a retry, so first > try_combine with a later i3 calls propagate_for_debug and changes debug > insns before

[PATCH] Fix VTA updating in the combiner (PR debug/48343)

2011-03-30 Thread Jakub Jelinek
Hi! We ICE on the attached testcase, because combiner changes mode of a pseudo (which was set just once and used once plus in debug insns) from SImode to QImode, but the uses in debug insns aren't adjusted. Combiner has code to adjust this too (propagate_for_debug), but only updates debug insns b