[MacPorts] #58712: macports-clangs > 6.0 are missing atomic builtins on i386

MacPorts noreply at macports.org
Sat Mar 27 00:49:42 UTC 2021


#58712: macports-clangs > 6.0 are missing atomic builtins on i386
-------------------------------------------------+-------------------------
  Reporter:  devernay                            |      Owner:  kencu
      Type:  defect                              |     Status:  assigned
  Priority:  Normal                              |  Milestone:
 Component:  ports                               |    Version:
Resolution:                                      |   Keywords:
      Port:  clang-7.0 clang-8.0 clang-9.0       |
  clang-10 clang-devel                           |
-------------------------------------------------+-------------------------

Comment (by kencu):

 I think we need to do something here. This i386 atomics issue does keep
 coming around. Upstream llvm turned this off because for technical reasons
 it is better implemented as a dylib than as a linked in static
 implementation.

 A number of other projects have run into this, and they have (for the most
 part) just put the atomics back into the static compiler_rt.a library
 (where it used to be). That is easy -- toggle the option, which still
 exists, as above.

 Otherwise we can -- require an appropriate version of libgcc at runtime
 and either manually or automatically add the link library to
 libatomic.1.dylib. Or - find some other, non-gcc implementation of
 libatomic.dylib somewhere that we want to use instead of the one in
 libgcc, and somehow have it work in with our clang libraries.

 I'm leaning towards just toggling it back on. If we do that, with the
 x64_64 and arm64 builds be affected (ie will they use the older, non-
 favoured static lib calls) or will they continue to use the new intrinsic
 calls and be unaffected? If the 64 bit systems are unaffected, I would
 suggest we just toggle the atomics back on for i386 and be done with it.

-- 
Ticket URL: <https://trac.macports.org/ticket/58712#comment:12>
MacPorts <https://www.macports.org/>
Ports system for macOS


More information about the macports-tickets mailing list