Re: [PR80693] drop value of parallel SETs dropped by combine

2017-12-08 Thread Segher Boessenkool
Hi! On Thu, Dec 07, 2017 at 07:01:03PM -0200, Alexandre Oliva wrote: [ Big snip; thanks for all the detailed information! ] > Still, I'm concerned I haven't caught all of the cases in which > adjusting REG_N_SETS would be needed: we might have dropped multiple > SETs of the same pseudo, each

Re: [PR80693] drop value of parallel SETs dropped by combine

2017-12-08 Thread Kyrill Tkachov
Hi Alexandre, On 07/12/17 21:01, Alexandre Oliva wrote: On Jul 7, 2017, Segher Boessenkool wrote: > I meant, just double check if your new > code does the correct thing for the set count. Sorry this took me so long to get back to. Even this was difficult for me

Re: [PR80693] drop value of parallel SETs dropped by combine

2017-12-07 Thread Alexandre Oliva
On Jul 7, 2017, Segher Boessenkool wrote: > I meant, just double check if your new > code does the correct thing for the set count. Sorry this took me so long to get back to. Even this was difficult for me to answer for sure, then and now. We don't (and can't?)

Re: [PR80693] drop value of parallel SETs dropped by combine

2017-07-07 Thread Segher Boessenkool
Hi again, sorry for the delay, On Fri, Jun 23, 2017 at 11:01:12PM -0300, Alexandre Oliva wrote: > > Things should probably be restructured a bit so we keep the sets count > > correct, if that is possible? > > I'll have to think a bit to figure out the exact conditions in which to > decrement the

Re: [PR80693] drop value of parallel SETs dropped by combine

2017-06-23 Thread Alexandre Oliva
On Jun 22, 2017, Segher Boessenkool wrote: > On Thu, Jun 22, 2017 at 03:21:01AM -0300, Alexandre Oliva wrote: >> On Jun 8, 2017, Segher Boessenkool wrote: >> >> > [ I missed this patch the first time around; please cc: me to prevent this

Re: [PR80693] drop value of parallel SETs dropped by combine

2017-06-22 Thread Segher Boessenkool
On Thu, Jun 22, 2017 at 09:25:21AM -0300, Alexandre Oliva wrote: > On Jun 8, 2017, Segher Boessenkool wrote: > > > Would it work to just have "else" instead if this "if"? Or hrm, we'll > > need to kill the recorded reg_stat value in the last case before this > > as

Re: [PR80693] drop value of parallel SETs dropped by combine

2017-06-22 Thread Segher Boessenkool
On Thu, Jun 22, 2017 at 03:21:01AM -0300, Alexandre Oliva wrote: > On Jun 8, 2017, Segher Boessenkool wrote: > > > [ I missed this patch the first time around; please cc: me to prevent this ] > > > On Thu, May 18, 2017 at 07:25:57AM -0300, Alexandre Oliva wrote: >

Re: [PR80693] drop value of parallel SETs dropped by combine

2017-06-22 Thread Alexandre Oliva
On Jun 22, 2017, Alexandre Oliva wrote: > The patch below (is this what you meant?) fixes the PR testcase, and the > new else block doesn't get exercised in an x86_64-linux-gnu bootstrap. Err, I misdescribed the situation. It's not that it doesn't get exercised, it's that

Re: [PR80693] drop value of parallel SETs dropped by combine

2017-06-22 Thread Alexandre Oliva
ression tests yet) [PR80693] drop value of parallel SETs dropped by combine When an insn used by combine has multiple SETs, only the non-REG_UNUSED set is used: others will end up dropped on the floor. We have to take note of the dropped REG_UNUSED SETs, clearing their cached values, so that

Re: [PR80693] drop value of parallel SETs dropped by combine

2017-06-22 Thread Alexandre Oliva
On Jun 8, 2017, Segher Boessenkool wrote: > [ I missed this patch the first time around; please cc: me to prevent this ] > On Thu, May 18, 2017 at 07:25:57AM -0300, Alexandre Oliva wrote: >> When an insn used by combine has multiple SETs, only the non-REG_UNUSED >>

Re: [PR80693] drop value of parallel SETs dropped by combine

2017-06-08 Thread Segher Boessenkool
Hi! [ I missed this patch the first time around; please cc: me to prevent this ] On Thu, May 18, 2017 at 07:25:57AM -0300, Alexandre Oliva wrote: > When an insn used by combine has multiple SETs, only the non-REG_UNUSED > set is used: others will end up dropped on the floor. Sometimes, yes; not

Re: [PR80693] drop value of parallel SETs dropped by combine

2017-06-06 Thread Alexandre Oliva
On May 18, 2017, Alexandre Oliva wrote: > When an insn used by combine has multiple SETs, only the non-REG_UNUSED > set is used: others will end up dropped on the floor. We have to take > note of the dropped REG_UNUSED SETs, clearing their cached values, so > that, even if

[PR80693] drop value of parallel SETs dropped by combine

2017-05-18 Thread Alexandre Oliva
When an insn used by combine has multiple SETs, only the non-REG_UNUSED set is used: others will end up dropped on the floor. We have to take note of the dropped REG_UNUSED SETs, clearing their cached values, so that, even if the REGs remain used (e.g. because they were referenced in the used