Re: trouble emilinating redundant compares

2012-01-24 Thread Paul S
Thanks, I was mistakenly only considering ports that defined TARGET_FIXED_CONDITION_CODE_REGS Paul. On 23/01/12 11:23, Richard Henderson wrote: On 01/18/2012 08:16 AM, Paul S wrote: Thanks H-P, That worked first time ! For a few days I had been searching the non cc0 ports for hints. T

Re: trouble emilinating redundant compares

2012-01-24 Thread Paul S
Happy to oblige, when I believe I'm competent to advise others :-) On 23/01/12 14:21, Hans-Peter Nilsson wrote: On Mon, 23 Jan 2012, Paul S wrote: Thanks Dave, I would never have guessed from gccinternals.pdf that it is possible to use mode iterators to select predicates& constraints ...

Re: trouble emilinating redundant compares

2012-01-22 Thread Hans-Peter Nilsson
On Mon, 23 Jan 2012, Paul S wrote: > Thanks Dave, > > I would never have guessed from gccinternals.pdf that it is possible to use > mode iterators to select predicates & constraints ... Really? If you but if you have suggestions for improving the documentation, that'd be welcome. > I think I hav

Re: trouble emilinating redundant compares

2012-01-22 Thread Richard Henderson
On 01/18/2012 08:16 AM, Paul S wrote: > Thanks H-P, > > That worked first time ! > > For a few days I had been searching the non cc0 ports for hints. Two > of the ports don't bother using the set CC side effect to avoid > compares and the others are obfuscated by the fact that they > (understanda

Re: trouble emilinating redundant compares

2012-01-22 Thread Paul S
Thanks Dave, I would never have guessed from gccinternals.pdf that it is possible to use mode iterators to select predicates & constraints ... I think I have a use for this today :-) Cheers, Paul. On 20/01/12 10:26, Dave Korn wrote: On 17/01/2012 21:16, Paul S wrote: For example the i

Re: trouble emilinating redundant compares

2012-01-19 Thread Dave Korn
On 17/01/2012 21:16, Paul S wrote: > For example the i386 seems to use predicates and constraints of the form > <*_operand> and for the reload versions of these instructions - > and I haven't been able to find definitions of these or a mention in > gcc_internals.pdf of any special meaning assigne

Re: trouble emilinating redundant compares

2012-01-17 Thread Paul S
Thanks H-P, That worked first time ! For a few days I had been searching the non cc0 ports for hints. Two of the ports don't bother using the set CC side effect to avoid compares and the others are obfuscated by the fact that they (understandably) use custom CC modes and the reload conditions

Re: trouble emilinating redundant compares

2012-01-16 Thread Hans-Peter Nilsson
On Mon, 16 Jan 2012, Paul S wrote: > In the port I'm working on I have used the newer CC tracking technique (i.e. > not cc0). I have followed the directions at the top of compare-elim.c and have > the following pattern for addhi3 > I'm clearly missing something... can anyone provide a hint ? You'

trouble emilinating redundant compares

2012-01-15 Thread Paul S
In the port I'm working on I have used the newer CC tracking technique (i.e. not cc0). I have followed the directions at the top of compare-elim.c and have the following pattern for addhi3 (define_insn "addhi3" [ (set (match_operand:WORD 0 "register_operand" "=r,r,r") (plu