freebsd-nq/contrib/llvm
Ed Schouten 6306ff32fd Pull in r183033 and r183036 from LLVM trunk:
Add support for optimized (non-generic) atomic libcalls.

  For integer types of sizes 1, 2, 4 and 8, libcompiler-rt (and libgcc)
  provide atomic functions that pass parameters by value and return
  results directly.

  libgcc and libcompiler-rt only provide optimized libcalls for
  __atomic_fetch_*, as generic libcalls on non-integer types would make
  little sense. This means that we can finally make __atomic_fetch_*
  work
  on architectures for which we don't provide these operations as
  builtins
  (e.g. ARM).

  This should fix the dreaded "cannot compile this atomic library call
  yet" error that would pop up once every while.

This should make it possible for me to get C11 atomics working on all of
our platforms.
2013-06-01 08:07:09 +00:00
..
include Upgrade our copy of llvm/clang to trunk r178860, in preparation of the 2013-04-12 17:57:40 +00:00
lib Pull in r182656 from upstream llvm trunk: 2013-05-26 14:14:42 +00:00
tools Pull in r183033 and r183036 from LLVM trunk: 2013-06-01 08:07:09 +00:00
utils/TableGen Upgrade our copy of llvm/clang to trunk r178860, in preparation of the 2013-04-12 17:57:40 +00:00
LICENSE.TXT Upgrade our copy of llvm/clang to trunk r178860, in preparation of the 2013-04-12 17:57:40 +00:00