Richard Henderson <r...@redhat.com> writes:
> On 2012-06-12 22:50, Maxim Kuvyrkov wrote:
>> The third patch is a small optimization to alleviate
>> __atomic_compare_exchange[_n] builtins being a use-one-for-all
>> solutions.  These builtins return both boolean "success" and "oldval"
>> results.  As most cases use only one of the results, this
>> optimizations looks at REG_UNUSED notes to determine if instructions
>> to set these results can be omitted.
>
> If you split the pattern, similar to how it's handled on Alpha,
> and normal dead-code elimination will handle this.

One hitch with that is that we need a branch-likely instruction for
-mfix-r10000.  I suppose we could fudge it with a special (probably
unspec_volatile) branch pattern, but I'm nervous about doing something
so unusual for such a corner case.

Richard

Reply via email to