[cfe-dev] ___atomic_XXX operations in libcxx for Sparc

Chris.Dewhurst via cfe-dev cfe-dev at lists.llvm.org
Thu Dec 17 04:28:38 PST 2015


I am further developing the compiler back-end for Sparc for LLVM and I have some tests which the requirements of my project need to pass. They are using __atomic__XXX operations in libcxx, e.g. __atomic_compare_exchange_1, __atomic_fetch_xor_2 (among others).

These are not implemented currently for Sparc and if I understand http://libcxx.llvm.org/docs/http://libcxx.llvm.org/docs/ correctly, the relevant library containing these inbuilt functions are only implemented for i386 and x86_64.

However, I still need to get these working. There could be some resistance if I suggest using the GCC libraries to solve this problem, but I assume that it's a very non-trivial task to port this library to Sparc.

Would my assumption be correct here? Could anyone give me an estimate for the amount of time it might take to port this? Even a scientific wild-ass guess (SWAG) would be better than what I could currently make.

What options do I have?

If I'm reading this situation incorrectly and it's potentially trivial to implement these for Sparc, how might I go about this easily? If not, is it possible to use the GCC libraries to support this behaviour? Are there any other options?

Best Regards,
Chris Dewhurst,
University of Limerick.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-dev/attachments/20151217/ba66e5d8/attachment.html>

More information about the cfe-dev mailing list