On 07/30/2012 08:40 AM, Ulrich Weigand wrote:
>> > I presume a good test case to examine for ICM is with such an operand
>> > coming from a global. What about STCM? I don't see the output from
>> > sync_compare_and_swap ever being allowed in memory...
> Actually, it's only ICM that is of interest
Richard Henderson wrote:
> On 2012-07-30 07:09, Ulrich Weigand wrote:
> > This seems to disable use of ICM / STCM to perform byte or
> > aligned halfword access. Why is this necessary? Those operations
> > are supposed to provide the required operand consistency ...
>
> Because MEM_P for cmp and
On 2012-07-30 07:09, Ulrich Weigand wrote:
> Richard Henderson wrote:
>
>> Tested only as far as cross-compile. I had a browse through
>> objdump of libatomic for a brief sanity check.
>>
>> Can you please test on real hw and report back?
>
> I'll run a test, but a couple of things I noticed:
>
Richard Henderson wrote:
> Tested only as far as cross-compile. I had a browse through
> objdump of libatomic for a brief sanity check.
>
> Can you please test on real hw and report back?
I'll run a test, but a couple of things I noticed:
>/* Shift the values to the correct bit positions.
Tested only as far as cross-compile. I had a browse through
objdump of libatomic for a brief sanity check.
Can you please test on real hw and report back?
r~
---
gcc/config/s390/s390-protos.h |3 +-
gcc/config/s390/s390.c| 90 +-
gcc/config/s390/s390.md | 373