register allocation

2010-12-23 Thread roy rosen
Hi All, I am looking at the code generated by my port and it seems that I have a problem that too many copies between registers are generated. I looked a bit at the register allocation and wanted to verify that I understand its behavior. Is that true that it first chooses a register class for eac

[RFC] Improving GCSE to reduce constant splits on ARM

2010-12-23 Thread Dmitry Melnik
Hi, We've found that constant splitting on ARM can be very inefficient, if it's done inside a loop. For example, the expression a = a & 0xff00ff00; will be translated into the following code (on ARM, only 8-bit values shifted by an even number can be used as immediate arguments): bic

Re: register allocation

2010-12-23 Thread Vladimir Makarov
On 12/23/2010 03:13 AM, roy rosen wrote: Hi All, I am looking at the code generated by my port and it seems that I have a problem that too many copies between registers are generated. I looked a bit at the register allocation and wanted to verify that I understand its behavior. Is that true tha

Re: BImode is treated as normal byte-wide mode and causes bug.

2010-12-23 Thread Richard Henderson
On 12/22/2010 06:54 AM, Paolo Bonzini wrote: > On 12/22/2010 03:43 PM, Bingfeng Mei wrote: >> Thanks for letting me know this. Since only our target experiences such >> issue, I guess no other processors have such requirements of manipulating >> BImode. I can live with the workaround now. > > Perh

Re: register allocation

2010-12-23 Thread Jeff Law
On 12/23/10 09:50, Vladimir Makarov wrote: Defining classes for pseudos is already one of the most expensive operation in IRA. Looking at the flow would make it even more complicated (I even don't know how to use this to improve the allocation because it means live range splitting before col

default system path questions

2010-12-23 Thread Edward Peschko
All, I found much to my dismay today that -I doesn't always work as intuited. Namely, if I set CFLAGS to: -I/path/to/gcc/include where the default system path is: /path/to/gcc/lib/gcc/i686-pc-linux-gnu/3.4.6/include /usr/local/include /path/to/gcc/include /usr/include the expected behavior wou

gcc-4.5-20101223 is now available

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

Re: default system path questions

2010-12-23 Thread Jonathan Wakely
On 23 December 2010 22:17, Edward Peschko wrote: > All, > > I found much to my dismay today that -I doesn't always work as > intuited. Namely, if I set CFLAGS to: > > -I/path/to/gcc/include > where the default system path is: > > /path/to/gcc/lib/gcc/i686-pc-linux-gnu/3.4.6/include > /usr/local/inc