SuccessChanges

Summary

  1. [TSan][libdispatch] Add interceptors for dispatch_barrier_async_and_wait() (details)
  2. [libunwind] Remove static_assert / __has_feature macros (details)
  3. [PowerPC] Handle SUBFIC in reg+reg -> reg+imm transformation (details)
  4. [TSan][libdispatch] Add interceptors for dispatch_barrier_async_and_wait(), pt. 2 (details)
Commit fa0a855c73a053c13d6fcf1aa20bad6f1711d2b8 by julian.lettner
[TSan][libdispatch] Add interceptors for dispatch_barrier_async_and_wait()

Add interceptors for the barrier variants of the "async and wait"
dispatch API family.
The file was modifiedcompiler-rt/lib/tsan/rtl/tsan_interceptors_libdispatch.cpp (diff)
Commit 9e32d7b6e7e6615dbc5049a53f8e2ba03ae0292f by rprichard
[libunwind] Remove static_assert / __has_feature macros

The static_assert macro broke on GCC when a scope had two asserts and a
condition that depended on a template parameter. Remove the macro and
rely on the compiler's C++11 static_assert feature.

The __has_feature macro was only used here to determine whether to
define the static_assert macro.

Reviewed By: mstorsjo, #libunwind

Differential Revision: https://reviews.llvm.org/D86411
The file was modifiedlibunwind/src/config.h (diff)
Commit c485343c8310086ff7ee4aaf40330b4c4b35e99f by nemanja.i.ibm
[PowerPC] Handle SUBFIC in reg+reg -> reg+imm transformation

We initially missed the subtract-immediate in this transformation.
This patch just adds that.

Differential revision: https://reviews.llvm.org/D84659
The file was modifiedllvm/test/CodeGen/PowerPC/pr44183.ll (diff)
The file was modifiedllvm/lib/Target/PowerPC/PPCInstrInfo.cpp (diff)
Commit c1d25e9a82554aa580b3cc0b97fc5c7db8164042 by julian.lettner
[TSan][libdispatch] Add interceptors for dispatch_barrier_async_and_wait(), pt. 2

Also intercept these target functions on Linux.
The file was modifiedcompiler-rt/lib/tsan/rtl/tsan_interceptors_libdispatch.cpp (diff)