Re: [cxx-mem-model] __sync_mem builtin support patch 2/3 - code

2011-07-27 Thread Richard Henderson
On 07/27/2011 11:17 AM, Andrew MacLeod wrote: > On 07/27/2011 12:03 PM, Richard Henderson wrote: >> Please disable the relevant tests too. > sure. > >>> if ((icode != CODE_FOR_nothing)&& (model == MEMMODEL_SEQ_CST || >>> model == MEMMODEL_ACQ_REL)) >>> + #ifdef HAVE_s

Re: [cxx-mem-model] __sync_mem builtin support patch 2/3 - code

2011-07-27 Thread Andrew MacLeod
On 07/27/2011 12:03 PM, Richard Henderson wrote: Please disable the relevant tests too. sure. if ((icode != CODE_FOR_nothing)&& (model == MEMMODEL_SEQ_CST || model == MEMMODEL_ACQ_REL)) + #ifdef HAVE_sync_mem_thread_fence + emit_mem_thread_fence (

Re: [cxx-mem-model] __sync_mem builtin support patch 2/3 - code

2011-07-27 Thread Richard Henderson
On 07/26/2011 06:20 PM, Andrew MacLeod wrote: > * __sync_mem_compare_exchange has the skeleton in place, but not the > guts. There are some issues that rth and I will work out later, I > just don't want to hold up the rest of the patch for that. Right now > it will fail the compare_exchange tests.

[cxx-mem-model] __sync_mem builtin support patch 2/3 - code

2011-07-26 Thread Andrew MacLeod
This is the main patch which implements all the code for the new __sync_mem routines which take a memory model as a parameter. I used the previously approved and checked in __sync_mem_exchange routine as the model and added all the rest. The only difference is I'm not adding the x86 patterns y