missed optimization: transforming while(n>=1) into if(n>=1)

2011-05-20 Thread Matt Turner
Hi, While trying to optimize pixman, I noticed that gcc is unable to recognize that 'while (n >= 1)' can often be simplified to 'if (n >= 1)'. Consider the following example, where there are loops that operate on larger amounts of data and smaller loops that deal with small or unaligned data. int

your ad

2011-05-20 Thread annoncessansregrets
hello, your ad: http://www.sansregrets.com/classifieds/ thank you.

gcc-4.6-20110520 is now available

2011-05-20 Thread gccadmin
Snapshot gcc-4.6-20110520 is now available on ftp://gcc.gnu.org/pub/gcc/snapshots/4.6-20110520/ and on various mirrors, see http://gcc.gnu.org/mirrors.html for details. This snapshot has been generated from the GCC 4.6 SVN branch with the following options: svn://gcc.gnu.org/svn/gcc/branches

Re: MIPS branch-likely not tied to branch probability?

2011-05-20 Thread Jeff Law
On 05/19/11 01:32, Richard Sandiford wrote: > Paul Koning writes: >> It looks like the machinery that picks MIPS branch-likely instructions >> (on processors that don't object to them) is driven purely by their >> delay slot annul properties and not at all by branch probability. > > Unfortunately

Re: MIPS branch-likely not tied to branch probability?

2011-05-20 Thread Jeff Law
On 05/19/11 13:01, Paul Koning wrote: > > On May 19, 2011, at 6:41 AM, Paul Koning wrote: > >> >> On May 19, 2011, at 3:32 AM, Richard Sandiford wrote: >> >>> Paul Koning writes: ... >>> 2. In the delay slot fill machinery (reorg.c), I don't see how a target can supply hooks to ad

Re: Delay slot problem

2011-05-20 Thread Ian Lance Taylor
Camo Johnson writes: > I have some trouble dealing with delay slots. The problem is that our > architecture can't handle branch instructions using registers which have been > changed in the previous instruction. So a delay slot is needed. > The difficult part is, that this delay slot is only ne

Re: finding the induction variable after graphite (before ivcanon pass)?

2011-05-20 Thread Sebastian Pop
On Fri, May 20, 2011 at 08:27, Basile Starynkevitch wrote: >> What is your definition of induction variable? > > The one which is used by graphite. Ok, then you can match against the scalar evolution of a variable: the evolution of your variable should be of the form "{a, +, 1}_x" with "x" the nu

Delay slot problem

2011-05-20 Thread Camo Johnson
Hello, I have some trouble dealing with delay slots. The problem is that our architecture can't handle branch instructions using registers which have been changed in the previous instruction. So a delay slot is needed. The difficult part is, that this delay slot is only needed if the same regist

Re: finding the induction variable after graphite (before ivcanon pass)?

2011-05-20 Thread Basile Starynkevitch
On Thu, 19 May 2011 09:52:11 -0500 Sebastian Pop wrote: > On Thu, May 19, 2011 at 09:21, Basile Starynkevitch > wrote: [...] > > How should I find the induction variable? > > What is your definition of induction variable? The one which is used by graphite. > My definitions are: > - every vari