[PATCH] D71600: PowerPC 32-bit - forces 8 byte lock/lock_free decisions at compiled time

Fangrui Song via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Sun Jan 12 15:29:39 PST 2020


MaskRay added a comment.

I am still confused why you need the special rule for `__atomic_is_lock_free` (GCC/clang) and `__c11_atomic_is_lock_free` (clang).

https://github.com/gcc-mirror/gcc/blob/master/gcc/builtins.c#L7300-L7314 GCC `__atomic_is_lock_free` expands to either 1 or a library call to `__atomic_is_lock_free`, never 0. We can probably extend the semantics of `__c11_atomic_is_lock_free` and use `clang::TargetInfo::getMaxAtomicPromoteWidth`, but I'll make more research in this area.

Can you be elaborate how do `__atomic_is_lock_free`/`__c11_atomic_is_lock_free` pull in libatomic.{a,so} dependency on FreeBSD powerpc?


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D71600/new/

https://reviews.llvm.org/D71600





More information about the llvm-commits mailing list