Ann: MELT plugin 0.9.7 release candidate 3 for GCC 4.6, 4.7, 4.8

2012-10-03 Thread Basile Starynkevitch
Hello All, MELT is a high-level domain specific language to extend GCC, available as a plugin (and a branch). See http://gcc-melt.org/ for more. I am releasing the third release candidate of MELT plugin 0.9.7 (for GCC 4.6, 4.7 and future 4.8) The MELT plugin 0.9.7 release candidate 3 is avail

Re: Reload reloading outdated values ?

2012-10-03 Thread Frederic Riss
On 2 October 2012 20:25, Frederic Riss wrote: > Something must be wrong, as I don't see how reload can safely move > memory expressions other than constant addresses around like this. I dug a bit more, and I'm still confused about this reload behavior. Let's take this pseudo-RTL code as example:

Re: [GCC-MELT-494] Ann: MELT plugin 0.9.7 release candidate 3 for GCC 4.6, 4.7, 4.8

2012-10-03 Thread Alexandre Lissy
Le 03/10/2012 10:55, Basile Starynkevitch a écrit : > Hello All, > > MELT is a high-level domain specific language to extend GCC, available as a > plugin (and a branch). > See http://gcc-melt.org/ for more. > > I am releasing the third release candidate of MELT plugin 0.9.7 (for GCC 4.6, > 4.7

ARM/getting rid of superfluous zero extension

2012-10-03 Thread Christophe Lyon
Hi, I have recently added ARM support for builtin_bswap16, which uses the rev16 instruction when dealing with an unsigned argument. Considering: unsigned short myfunc(unsigned short x) { return __builtin_bswap16(x); } gcc -O2 generates: myfunc: rev16 r0, r0 uxthr0, r0

Ann: MELT plugin 0.9.7 release candidate 3b for GCC 4.6, 4.7, 4.8

2012-10-03 Thread Basile Starynkevitch
Hello All, MELT is a high level domain specific language to extend GCC. See http://gcc-melt.org/ for more. I made a mistake in uploading the latest melt 0.9.7 release candidate 3, so here is rc3b On Wed, Oct 03, 2012 at 03:28:08PM +0200, Alexandre Lissy wrote: > Le 03/10/2012 10:55, Basile

Variable DECL_SIZE

2012-10-03 Thread Ilya Enkovich
Hi, I fall into ssa verification failure when try to pass field's DECL_SIZE as an operand for CALL_EXPR. The fail occurs if field's size is not a constant. In such case DECL_SIZE holds a VAR_DECL and I need to find it's proper SSA_NAME. I thought it may be the default one but gimple_default_def re

Functions that are CSEable but not pure

2012-10-03 Thread Jason Merrill
In C++ there is a common idiom called "initialize on first use". In its simplest form it looks like int& lazy_i() { static int i = init; return i; } If the initialization is expensive or order-sensitive, this is a useful alternative to initialization on load (http://www.parashift.com/c++

Re: How much time left till phase 3?

2012-10-03 Thread Sriraman Tallam
On Tue, Oct 2, 2012 at 2:45 AM, Richard Guenther wrote: > On Tue, Oct 2, 2012 at 11:34 AM, Richard Guenther > wrote: >> On Tue, Oct 2, 2012 at 10:44 AM, Joern Rennecke >> wrote: >>> I'll have to prepare a few more patches to (supposedly) generic >>> code to support the ARCompact port, which we (

Re: Functions that are CSEable but not pure

2012-10-03 Thread Joseph S. Myers
On Wed, 3 Oct 2012, Jason Merrill wrote: > My implementation of dynamic initialization of TLS variables as mandated by > the C++11 and OpenMP standards uses this idiom implicitly, so I'd really like > to be able to optimize away multiple calls. I'd thought that dynamic initialization of TLS varia

Re: Functions that are CSEable but not pure

2012-10-03 Thread Jason Merrill
On 10/03/2012 07:06 PM, Joseph S. Myers wrote: On Wed, 3 Oct 2012, Jason Merrill wrote: My implementation of dynamic initialization of TLS variables as mandated by the C++11 and OpenMP standards uses this idiom implicitly, so I'd really like to be able to optimize away multiple calls. I'd tho