This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[committed, pa] Add long long support to config/pa/linux-atomic.c


The attached change re-integrates long long support into linux-atomic.c.  This is possible due a kernel
fix to the LWS syscall and a middle-end fix to expand_atomic_compare_and_swap.

The patch corrects the inverted value returned by __sync_bool_compare_and_swap_##WIDTH.

It revises the return value check order in __kernel_cmpxchg2 to improve the fast path.

Finally, the return value types used to store results of __kernel_cmpxchg and __kernel_cmpxchg2
have been changed to long to match the type returned by these calls.

Tested on hppa-unknown-linux-gn with no regressions.  Committed to trunk, gcc-5 and gcc-4.9 branches.

Dave
--
John David Anglin	dave.anglin@bell.net


Attachment: linux-atomic.c.d.txt
Description: Text document


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]