SuccessChanges

Summary

  1. [clang] Enable -fsanitize=thread on Fuchsia. (details)
  2. [gcov][test] Don't write a.gcno in CWD (details)
  3. Use report_fatal_error instead of llvm::errs() + abort() (NFC) (details)
  4. [ObjC][ARC] In HandlePotentialAlterRefCount, check whether an (details)
Commit 2e800495a78a6d722eed5766bba1e2fe76f295bc by mvanotti
[clang] Enable -fsanitize=thread on Fuchsia.

This CL modifies clang enabling using -fsanitize=thread on fuchsia. The
change doesn't build the runtime for fuchsia, it just enables the
instrumentation to be used.

pair-programmed-with: mdempsky@google.com
Change-Id: I816c4d240d1f15e9eae2803fb8ba3a7bf667ed51

Reviewed By: mcgrathr, phosek

Differential Revision: https://reviews.llvm.org/D86822
The file was modifiedclang/lib/Driver/ToolChains/Fuchsia.cpp (diff)
The file was modifiedclang/lib/Driver/ToolChains/CommonArgs.cpp (diff)
Commit 90166c25631053eb4eaf5084358563ea268bb482 by maskray
[gcov][test] Don't write a.gcno in CWD
The file was modifiedllvm/test/Transforms/GCOVProfiling/atomic-counter.ll (diff)
Commit 9f2fbfab8d91cc8c623704d03991d4fe755fc1b1 by joker.eph
Use report_fatal_error instead of llvm::errs() + abort() (NFC)

This is making the error reporting in line with other fatal errors.
The file was modifiedmlir/lib/IR/MLIRContext.cpp (diff)
Commit 0231a4e5bd00785abea35b804d504a6cf4c4e464 by Akira
[ObjC][ARC] In HandlePotentialAlterRefCount, check whether an
instruction can decrement the reference count, not whether it can alter
it

This prevents the state transition from S_Use to S_CanRelease when doing
a bottom-up traversal and the transition from S_Retain to S_CanRelease
when doing a top-down traversal when the visited instruction can
increment the ref count but cannot decrement it. This allows the ARC
optimizer to remove retain/release pairs which were previously not
removed.

rdar://problem/21793154
The file was modifiedllvm/test/Transforms/ObjCARC/opt-catchswitch.ll (diff)
The file was modifiedllvm/lib/Transforms/ObjCARC/PtrState.cpp (diff)
The file was modifiedllvm/test/Transforms/ObjCARC/basic.ll (diff)