[all-commits] [llvm/llvm-project] 1cbaf6: [clang][AIX] Add option to control quadword lock f...

bzEq via All-commits all-commits at lists.llvm.org
Tue Jul 26 18:56:37 PDT 2022

  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 1cbaf681b0f1e7257e7e2a63d290a20216668f17
  Author: Kai Luo <lkail at cn.ibm.com>
  Date:   2022-07-27 (Wed, 27 Jul 2022)

  Changed paths:
    M clang/include/clang/Basic/LangOptions.def
    M clang/include/clang/Driver/Options.td
    M clang/lib/Basic/Targets/PPC.cpp
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/lib/Frontend/CompilerInvocation.cpp
    M clang/test/CodeGen/PowerPC/quadword-atomics.c
    A clang/test/Driver/aix-quadword-atomics-abi.c
    M clang/test/Driver/ppc-unsupported.c
    M clang/test/Sema/atomic-ops.c

  Log Message:
  [clang][AIX] Add option to control quadword lock free atomics ABI on AIX

We are supporting quadword lock free atomics on AIX. For the situation that users on AIX are using a libatomic that is lock-based for quadword types, we can't enable quadword lock free atomics by default on AIX in case user's new code and existing code accessing the same shared atomic quadword variable, we can't guarentee atomicity. So we need an option to enable quadword lock free atomics on AIX, thus we can build a quadword lock-free libatomic(also for advanced users considering atomic performance critical) for users to make the transition smooth.

Reviewed By: shchenz

Differential Revision: https://reviews.llvm.org/D127189

More information about the All-commits mailing list