SuccessChanges

Summary

  1. [AArch64][GlobalISel] Use TST for comparisons when possible Porting over the part of `emitComparison` in AArch64ISelLowering where we use TST to represent a compare. - Rename `tryOptCMN` to `tryFoldIntegerCompare`, since it now also emits TSTs when possible. - Add a utility function for emitting a TST with register operands. - Rename opt-fold-cmn.mir to opt-fold-compare.mir, since it now also tests the TST fold as well. Differential Revision: https://reviews.llvm.org/D64371
  2. [llvm-profdata] Fix buildbot failure on llvm-clang-x86_64-expensive-checks-win This fixes buildbot failure in LLVM on llvm-clang-x86_64-expensive-checks-win from r365386.
  3. AMDGPU: Split extload/zextload local load patterns This will help removing the custom load predicates, allowing the global isel emitter to handle them.
  4. Add parentheses to silence warning.
Revision 365404 by paquette:
[AArch64][GlobalISel] Use TST for comparisons when possible

Porting over the part of `emitComparison` in AArch64ISelLowering where we use
TST to represent a compare.

- Rename `tryOptCMN` to `tryFoldIntegerCompare`, since it now also emits TSTs
  when possible.

- Add a utility function for emitting a TST with register operands.

- Rename opt-fold-cmn.mir to opt-fold-compare.mir, since it now also tests the
  TST fold as well.

Differential Revision: https://reviews.llvm.org/D64371
Change TypePath in RepositoryPath in Workspace
The file was modified/llvm/trunk/lib/Target/AArch64/AArch64InstructionSelector.cpptrunk/lib/Target/AArch64/AArch64InstructionSelector.cpp
The file was removed/llvm/trunk/test/CodeGen/AArch64/GlobalISel/opt-fold-cmn.mirtrunk/test/CodeGen/AArch64/GlobalISel/opt-fold-cmn.mir
The file was added/llvm/trunk/test/CodeGen/AArch64/GlobalISel/opt-fold-compare.mirtrunk/test/CodeGen/AArch64/GlobalISel/opt-fold-compare.mir
Revision 365401 by xur:
[llvm-profdata] Fix buildbot failure on llvm-clang-x86_64-expensive-checks-win

This fixes buildbot failure in LLVM on llvm-clang-x86_64-expensive-checks-win
from r365386.
Change TypePath in RepositoryPath in Workspace
The file was modified/llvm/trunk/test/tools/llvm-profdata/same-filename.testtrunk/test/tools/llvm-profdata/same-filename.test
Revision 365398 by arsenm:
AMDGPU: Split extload/zextload local load patterns

This will help removing the custom load predicates, allowing the
global isel emitter to handle them.
Change TypePath in RepositoryPath in Workspace
The file was modified/llvm/trunk/lib/Target/AMDGPU/AMDGPUInstructions.tdtrunk/lib/Target/AMDGPU/AMDGPUInstructions.td
The file was modified/llvm/trunk/lib/Target/AMDGPU/DSInstructions.tdtrunk/lib/Target/AMDGPU/DSInstructions.td
The file was modified/llvm/trunk/lib/Target/AMDGPU/EvergreenInstructions.tdtrunk/lib/Target/AMDGPU/EvergreenInstructions.td
The file was modified/llvm/trunk/lib/Target/AMDGPU/SIInstrInfo.tdtrunk/lib/Target/AMDGPU/SIInstrInfo.td
Revision 365394 by void:
Add parentheses to silence warning.
Change TypePath in RepositoryPath in Workspace
The file was modified/llvm/trunk/lib/Target/AMDGPU/SIFrameLowering.cpptrunk/lib/Target/AMDGPU/SIFrameLowering.cpp

Summary

  1. Fix line endings. NFC
  2. [Sanitizers] Don't use clang_rt.sancov_{begin,end} on Solaris As explained in https://reviews.llvm.org/D63601, there's no point using clang_rt.sancov_{begin,end} on Solaris any longer. This companion patch to the above removes their use from the driver. Tested on amd64-pc-solaris2.11 Differential Revision: https://reviews.llvm.org/D63602
  3. Add parentheses to silence warnings.
  4. Revert [Sema] Resolve placeholder types before type deduction to silence spurious `-Warc-repeated-use-of-weak` warnings This reverts r365382 (git commit 8b1becf2e31d9170ee356a19c7b6ea991d3a520f) Appears to regress this semi-reduced fragment of valid code from windows SDK headers: #define InterlockedIncrement64 _InterlockedIncrement64 extern "C" __int64 InterlockedIncrement64(__int64 volatile *Addend); #pragma intrinsic(_InterlockedIncrement64) unsigned __int64 InterlockedIncrement(unsigned __int64 volatile *Addend) { return (unsigned __int64)(InterlockedIncrement64)((volatile __int64 *)Addend); } Found on a buildbot here, but no mail was sent due to it already being red: http://lab.llvm.org:8011/builders/sanitizer-windows/builds/48067
Revision 365402 by probinson:
Fix line endings. NFC
Change TypePath in RepositoryPath in Workspace
The file was modified/cfe/trunk/test/Driver/ps4-analyzer-defaults.cpptrunk/test/Driver/ps4-analyzer-defaults.cpp
Revision 365396 by ro:
[Sanitizers] Don't use clang_rt.sancov_{begin,end} on Solaris

As explained in https://reviews.llvm.org/D63601, there's no point using clang_rt.sancov_{begin,end}
on Solaris any longer.

This companion patch to the above removes their use from the driver.

Tested on amd64-pc-solaris2.11

Differential Revision: https://reviews.llvm.org/D63602
Change TypePath in RepositoryPath in Workspace
The file was modified/cfe/trunk/lib/Driver/ToolChains/Solaris.cpptrunk/lib/Driver/ToolChains/Solaris.cpp
Revision 365395 by void:
Add parentheses to silence warnings.
Change TypePath in RepositoryPath in Workspace
The file was modified/cfe/trunk/lib/Tooling/Syntax/BuildTree.cpptrunk/lib/Tooling/Syntax/BuildTree.cpp
Revision 365393 by rnk:
Revert [Sema] Resolve placeholder types before type deduction to silence spurious `-Warc-repeated-use-of-weak` warnings

This reverts r365382 (git commit 8b1becf2e31d9170ee356a19c7b6ea991d3a520f)

Appears to regress this semi-reduced fragment of valid code from windows
SDK headers:

  #define InterlockedIncrement64 _InterlockedIncrement64
  extern "C" __int64 InterlockedIncrement64(__int64 volatile *Addend);
  #pragma intrinsic(_InterlockedIncrement64)
  unsigned __int64 InterlockedIncrement(unsigned __int64 volatile *Addend) {
    return (unsigned __int64)(InterlockedIncrement64)((volatile __int64 *)Addend);
  }

Found on a buildbot here, but no mail was sent due to it already being
red:
http://lab.llvm.org:8011/builders/sanitizer-windows/builds/48067
Change TypePath in RepositoryPath in Workspace
The file was modified/cfe/trunk/include/clang/AST/Expr.htrunk/include/clang/AST/Expr.h
The file was modified/cfe/trunk/include/clang/Basic/Attr.tdtrunk/include/clang/Basic/Attr.td
The file was modified/cfe/trunk/lib/Sema/SemaDecl.cpptrunk/lib/Sema/SemaDecl.cpp
The file was modified/cfe/trunk/lib/Sema/SemaExpr.cpptrunk/lib/Sema/SemaExpr.cpp
The file was modified/cfe/trunk/lib/Sema/SemaExprCXX.cpptrunk/lib/Sema/SemaExprCXX.cpp
The file was modified/cfe/trunk/test/SemaObjC/arc-repeated-weak.mmtrunk/test/SemaObjC/arc-repeated-weak.mm

Summary

  1. [Sanitizers] Remove clang_rt.sancov_{begin,end} on Solaris There's no point to manually create the __start___sancov_guards and __stop___sancov_guards sections and labels on Solaris any longer. They were originally introduced in https://reviews.llvm.org/D40899 and https://reviews.llvm.org/D40903. - The Solaris 11.4 ld supports creating them out of the box. - We already unconditionally use Solaris 11.4 features like the ld -z gnu-version-script-compat option and fully working .preinit_array support in compiler-rt. - The current files don't assemble on SPARC because the assembler syntax may be different between /bin/as and GNU as. Tested on amd64-pc-solaris2.11. Differential Revision: https://reviews.llvm.org/D63601
Revision 365399 by ro:
[Sanitizers] Remove clang_rt.sancov_{begin,end} on Solaris

There's no point to manually create the __start___sancov_guards and __stop___sancov_guards
sections and labels on Solaris any longer.  They were originally introduced in
https://reviews.llvm.org/D40899 and https://reviews.llvm.org/D40903.

- The Solaris 11.4 ld supports creating them out of the box.
- We already unconditionally use Solaris 11.4 features like the ld -z gnu-version-script-compat option and fully working .preinit_array support in compiler-rt.
- The current files don't assemble on SPARC because the assembler syntax may be different between /bin/as and GNU as.

Tested on amd64-pc-solaris2.11.

Differential Revision: https://reviews.llvm.org/D63601
Change TypePath in RepositoryPath in Workspace
The file was modified/compiler-rt/trunk/lib/sanitizer_common/CMakeLists.txttrunk/lib/sanitizer_common/CMakeLists.txt
The file was removed/compiler-rt/trunk/lib/sanitizer_common/sancov_begin.Strunk/lib/sanitizer_common/sancov_begin.S
The file was removed/compiler-rt/trunk/lib/sanitizer_common/sancov_end.Strunk/lib/sanitizer_common/sancov_end.S