Re: rx-elf: sched2 dependency question

2010-09-27 Thread DJ Delorie
> That said, I suppose it wouldn't hurt to modify sched-deps > to treat a SET+REG_UNUSED as a CLOBBER. Early in sched_analyze_reg, check for ref==USE and a REG_UNUSED note, and change ref to CLOBBER? I tried it, it didn't seem to help... Index: sched-deps.c =

Re: rx-elf: sched2 dependency question

2010-09-27 Thread Richard Henderson
On 09/27/2010 04:21 PM, DJ Delorie wrote: > Would we have to do that for *all* the math/logic ops, or just add? All of them of course. r~

Re: rx-elf: sched2 dependency question

2010-09-27 Thread DJ Delorie
Would we have to do that for *all* the math/logic ops, or just add?

Re: rx-elf: sched2 dependency question

2010-09-27 Thread Richard Henderson
On 09/27/2010 03:37 PM, DJ Delorie wrote: >> I think it's probably a mistake to have the default ADD >> instruction SET the flags, rather than CLOBBER them. > > How else would we optimize away compares? By having a separate ADD that looks like your current one. Combine will put them together for

Re: rx-elf: sched2 dependency question

2010-09-27 Thread DJ Delorie
> I think it's probably a mistake to have the default ADD > instruction SET the flags, rather than CLOBBER them. How else would we optimize away compares?

Re: rx-elf: sched2 dependency question

2010-09-27 Thread Richard Henderson
On 09/27/2010 01:30 PM, DJ Delorie wrote: > (insn 115 114 117 15 dj.c:256 (parallel [ > (set (reg:SI 12 r12 [139]) > (plus:SI (reg:SI 3 r3 [orig:54 pretmp.923 ] [54]) > (reg:SI 12 r12 [138]))) > (set (reg:CC_ZSC 16 cc) > (c

Re: rx-elf: sched2 dependency question

2010-09-27 Thread Ian Lance Taylor
DJ Delorie writes: > In this example, why isn't insn 117 scheduled before insn 115 ? What > is the dependency? The only thing they have in common is CC, but both > generate a value which is never used. I don't see anything in sched-deps.c which prevents using a register for scheduling dependen

rx-elf: sched2 dependency question

2010-09-27 Thread DJ Delorie
In this example, why isn't insn 117 scheduled before insn 115 ? What is the dependency? The only thing they have in common is CC, but both generate a value which is never used. ;; == ;; -- basic block 15 from 114 to 118 -- after reload ;;