[all-commits] [llvm/llvm-project] 86478c: [libcxx][atomic] Remove workaround for PR31864

bzEq via All-commits all-commits at lists.llvm.org
Sat Mar 5 16:56:47 PST 2022


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 86478c7ad8a7a5fd844429a27cda896774619975
      https://github.com/llvm/llvm-project/commit/86478c7ad8a7a5fd844429a27cda896774619975
  Author: Kai Luo <lkail at cn.ibm.com>
  Date:   2022-03-06 (Sun, 06 Mar 2022)

  Changed paths:
    M libcxx/test/std/atomics/atomics.lockfree/isalwayslockfree.pass.cpp

  Log Message:
  -----------
  [libcxx][atomic] Remove workaround for PR31864

I believe the origin issue in PR31864 has been addressed by https://reviews.llvm.org/D59566.

As discussed in https://github.com/llvm/llvm-project/issues/53840, `ATOMIC_LLONG_LOCK_FREE == 2` sometimes is not consistent with `std::atomic<long long>::is_always_lock_free`, since the macro takes `long long`'s ABI alignment into account. https://reviews.llvm.org/D28213 proposed we should not rely on ABI alignment of types, thus we have consistent `ATOMIC_LLONG_LOCK_FREE` and `std::atomic<long long>::is_always_lock_free` on x86's old cpu. Currently, I plan to move on to remove the workaround which should have been addressed and don't want to break current tests.

Reviewed By: #libc, ldionne, Quuxplusone

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




More information about the All-commits mailing list