SuccessChanges

Summary

  1. [clang][docs] Fix documentation of -O (details)
  2. [SLP] sort candidates to increase chance of optimal compare reduction (details)
  3. [llvm-readelf/obj][test] - Document what we print in various places for unnamed section symbols. (details)
  4. [obj2yaml] - Don't emit EM_NONE. (details)
  5. [SVE][CodeGen] Lower floating point -> integer conversions (details)
  6. [MemorySSA] Add another loop clobber test case. (details)
  7. [ARM][MachineOutliner] Add missing testcase for calls. (details)
  8. InstCombiner.h - remove unnecessary KnownBits.h include. NFCI. (details)
  9. [AMDGPU] Bump to ROCm 3.7 dependency hip_hcc->amdhip64 (details)
  10. SafeStackLayout.cpp - remove unnecessary StackLifetime.h include. NFCI. (details)
  11. [compiler-rt] Avoid pulling libatomic to sanitizer tests (details)
  12. ValueList.cpp - remove unnecessary includes. NFCI. (details)
  13. DwarfExpression.cpp - remove unnecessary includes. NFCI. (details)
  14. LiveDebugVariables.cpp - remove unnecessary Compiler.h include. NFCI. (details)
  15. [compiler-rt] Replace INLINE with inline (details)
  16. [compiler-rt] [tsan] [netbsd] Catch unsupported LONG_JMP_SP_ENV_SLOT (details)
  17. [AMDGPU] should expand ROTL i16 to shifts. (details)
  18. [compiler-rt] [netbsd] Include <sys/dkbad.h> (details)
  19. [compiler-rt] [hwasan] Replace INLINE with inline (details)
  20. [mlir][Standard] Canonicalize chains of tensor_cast operations (details)
Commit 788c7d2ec11dfc868a5b03478c922dc9699c6d47 by jrtc27
[clang][docs] Fix documentation of -O

D79916 changed the behaviour from -O2 to -O1 but the documentation was
not updated to reflect this.
The file was modifiedclang/docs/CommandGuide/clang.rst
Commit 03783f19dc78fc45fd987f892c314578b5e52d78 by spatel
[SLP] sort candidates to increase chance of optimal compare reduction

This is one (small) part of improving PR41312:
https://llvm.org/PR41312

As shown there and in the smaller tests here, if we have some member of the
reduction values that does not match the others, we want to push it to the
end (bring the matching members forward and together).

In the regression tests, we have 5 candidates for the 4 slots of the reduction.
If the one "wrong" compare is grouped with the others, it prevents forming the
ideal v4i1 compare reduction.

Differential Revision: https://reviews.llvm.org/D87772
The file was modifiedllvm/test/Transforms/SLPVectorizer/X86/compare-reduce.ll
The file was modifiedllvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
Commit 0dca1ac617d802c0806f57f67eb830c4f5f3fffb by grimar
[llvm-readelf/obj][test] - Document what we print in various places for unnamed section symbols.

We have an issue with `ELFDumper<ELFT>::getSymbolSectionName`:
1) It is used deeply for both LLVM/GNU styles and might return LLVM-style only
   values to describe symbols: "Undefined", "Processor Specific", "Absolute", etc.

2) `getSymbolSectionName` is used by `getFullSymbolName` and these special values
   might appear in instead of symbol names in many places.
   This occurs for unnamed section symbols.

It was not noticed because for most cases I've found it is unexpected to have an
unnamed section symbol. This patch documents the existent behavior, adds tests and FIXMEs.

Differential revision: https://reviews.llvm.org/D87763
The file was modifiedllvm/test/tools/llvm-readobj/ELF/dyn-symbols.test
The file was modifiedllvm/test/tools/llvm-readobj/ELF/hash-symbols.test
The file was modifiedllvm/test/tools/llvm-readobj/ELF/mips-got.test
The file was modifiedllvm/test/tools/llvm-readobj/ELF/mips-plt.test
The file was modifiedllvm/test/tools/llvm-readobj/ELF/symbol-shndx.test
Commit 279943edf87887403fce72c505f9760764e416f0 by grimar
[obj2yaml] - Don't emit EM_NONE.

When ELF header's `e_machine == 0`, we emit:

```
Machine: EM_NONE
```

We can avoid doing this, because yaml2obj sets the
`e_machine` field to `EM_NONE` by default.

Differential revision: https://reviews.llvm.org/D87829
The file was modifiedllvm/test/tools/obj2yaml/ELF/invalid-section-name.yaml
The file was modifiedllvm/test/tools/obj2yaml/ELF/versym-section.yaml
The file was modifiedllvm/test/tools/obj2yaml/ELF/implicit-sections-order.yaml
The file was modifiedllvm/tools/obj2yaml/elf2yaml.cpp
The file was modifiedllvm/test/tools/obj2yaml/ELF/symbol-visibility.yaml
The file was modifiedllvm/test/tools/obj2yaml/ELF/emachine.yaml
The file was modifiedllvm/test/tools/obj2yaml/ELF/gnu-unique-symbols.yaml
The file was modifiedllvm/test/tools/obj2yaml/ELF/sht-symtab-shndx.yaml
The file was modifiedllvm/test/tools/obj2yaml/ELF/duplicate-symbol-and-section-names.yaml
The file was modifiedllvm/test/tools/obj2yaml/ELF/no-symtab.yaml
The file was modifiedllvm/test/tools/obj2yaml/ELF/stack-sizes.yaml
The file was modifiedllvm/test/tools/obj2yaml/ELF/null-section.yaml
The file was modifiedllvm/test/tools/obj2yaml/ELF/call-graph-profile-section.yaml
Commit f7185b271f5b3010c82a56417b437f2a44a79230 by kerry.mclaughlin
[SVE][CodeGen] Lower floating point -> integer conversions

This patch adds new ISD nodes, FCVTZS_MERGE_PASSTHRU &
FCVTZU_MERGE_PASSTHRU, which are used to lower scalable vector
FP_TO_SINT/FP_TO_UINT operations and the following intrinsics:
- llvm.aarch64.sve.fcvtzu
- llvm.aarch64.sve.fcvtzs

Reviewed By: efriedma, paulwalker-arm

Differential Revision: https://reviews.llvm.org/D87232
The file was modifiedllvm/lib/Target/AArch64/AArch64ISelLowering.h
The file was addedllvm/test/CodeGen/AArch64/sve-fcvt.ll
The file was addedllvm/test/CodeGen/AArch64/sve-split-fcvt.ll
The file was modifiedllvm/lib/Target/AArch64/AArch64SVEInstrInfo.td
The file was modifiedllvm/lib/Target/AArch64/SVEInstrFormats.td
The file was modifiedllvm/lib/Target/AArch64/AArch64ISelLowering.cpp
Commit 9dc1e53787abbf4f2624c73272bf00e23fdffba0 by flo
[MemorySSA] Add another loop clobber test case.
The file was modifiedllvm/test/Analysis/MemorySSA/phi-translation.ll
Commit deb8f8bcf31540c657716ea5242183b0792702a1 by yvan.roux
[ARM][MachineOutliner] Add missing testcase for calls.
The file was addedllvm/test/CodeGen/ARM/machine-outliner-calls.mir
Commit f026812110878484d003f18660492e9321ef2df1 by llvm-dev
InstCombiner.h - remove unnecessary KnownBits.h include. NFCI.

Move the include down to cpp files with an implicit dependency.
The file was modifiedllvm/lib/Target/X86/X86InstCombineIntrinsic.cpp
The file was modifiedllvm/lib/Target/PowerPC/PPCTargetTransformInfo.cpp
The file was modifiedllvm/include/llvm/Transforms/InstCombine/InstCombiner.h
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUInstCombineIntrinsic.cpp
The file was modifiedllvm/lib/Target/ARM/ARMTargetTransformInfo.cpp
Commit e4a198eeee3ca96ff324d5b786e44c4915334054 by zhuoryin
[AMDGPU] Bump to ROCm 3.7 dependency hip_hcc->amdhip64

Differential Revision: https://reviews.llvm.org/D87773
The file was modifiedmlir/tools/mlir-rocm-runner/CMakeLists.txt
Commit 67ae46c820fa680e7f5828b4d8b94a562f51c9bf by llvm-dev
SafeStackLayout.cpp - remove unnecessary StackLifetime.h include. NFCI.

Already included in SafeStackLayout.h
The file was modifiedllvm/lib/CodeGen/SafeStackLayout.cpp
Commit 69516ddd028e8314f575a90bfca1724818fb5ca6 by n54
[compiler-rt] Avoid pulling libatomic to sanitizer tests

Avoid fallbacking to software emulated compiler atomics, that are usually
provided by libatomic, which is not always present.

This fixes the test on NetBSD, which does not provide libatomic in base.

Reviewed By: vitalybuka

Differential Revision: https://reviews.llvm.org/D87568
The file was modifiedcompiler-rt/lib/sanitizer_common/tests/sanitizer_atomic_test.cpp
Commit d566771779cd408bbe4985ea56e9b3c2ba247ed3 by llvm-dev
ValueList.cpp - remove unnecessary includes. NFCI.

Already included in ValueList.h
The file was modifiedllvm/lib/Bitcode/Reader/ValueList.cpp
Commit 46e59062a0e25be6e29d3fb342402f69b0e470b1 by llvm-dev
DwarfExpression.cpp - remove unnecessary includes. NFCI.

Already included in DwarfExpression.h
The file was modifiedllvm/lib/CodeGen/AsmPrinter/DwarfExpression.cpp
Commit 85ba2f16633638e55ebc8e84bfbd0aaaa2f72b7a by llvm-dev
LiveDebugVariables.cpp - remove unnecessary Compiler.h include. NFCI.

Already included in LiveDebugVariables.h
The file was modifiedllvm/lib/CodeGen/LiveDebugVariables.cpp
Commit 85e578f53ad1ba21771470dc9516068a259d29cf by n54
[compiler-rt] Replace INLINE with inline

This fixes the clash with BSD headers.

Reviewed By: vitalybuka

Differential Revision: https://reviews.llvm.org/D87562
The file was modifiedcompiler-rt/lib/sanitizer_common/sanitizer_allocator.h
The file was modifiedcompiler-rt/lib/sanitizer_common/sanitizer_internal_defs.h
The file was modifiedcompiler-rt/lib/sanitizer_common/sanitizer_atomic_clang_other.h
The file was modifiedcompiler-rt/lib/sanitizer_common/sanitizer_mac.h
The file was modifiedcompiler-rt/lib/sanitizer_common/sanitizer_allocator_checks.h
The file was modifiedcompiler-rt/lib/sanitizer_common/sanitizer_allocator_secondary.h
The file was modifiedcompiler-rt/lib/sanitizer_common/sanitizer_atomic.h
The file was modifiedcompiler-rt/lib/scudo/scudo_tsd.h
The file was modifiedcompiler-rt/lib/tsan/rtl/tsan_rtl.h
The file was modifiedcompiler-rt/lib/sanitizer_common/sanitizer_atomic_clang_x86.h
The file was modifiedcompiler-rt/lib/sanitizer_common/sanitizer_common.h
The file was modifiedcompiler-rt/lib/asan/asan_malloc_local.h
The file was modifiedcompiler-rt/lib/asan/asan_report.cpp
The file was modifiedcompiler-rt/lib/sanitizer_common/sanitizer_platform_limits_freebsd.cpp
The file was modifiedcompiler-rt/lib/scudo/scudo_utils.h
The file was modifiedcompiler-rt/lib/tsan/rtl/tsan_interceptors.h
The file was modifiedcompiler-rt/lib/sanitizer_common/sanitizer_atomic_clang_mips.h
The file was modifiedcompiler-rt/lib/sanitizer_common/sanitizer_linux.h
The file was modifiedcompiler-rt/lib/asan/asan_malloc_linux.cpp
The file was modifiedcompiler-rt/lib/sanitizer_common/sanitizer_atomic_msvc.h
The file was modifiedcompiler-rt/lib/scudo/scudo_utils.cpp
The file was modifiedcompiler-rt/lib/sanitizer_common/sanitizer_linux_libcdep.cpp
The file was modifiedcompiler-rt/lib/scudo/scudo_crc32.h
The file was modifiedcompiler-rt/lib/msan/tests/msan_test.cpp
The file was modifiedcompiler-rt/lib/scudo/scudo_allocator.cpp
The file was modifiedcompiler-rt/lib/sanitizer_common/sanitizer_atomic_clang.h
The file was modifiedcompiler-rt/lib/sanitizer_common/sanitizer_symbolizer_report.cpp
Commit 9339f68f21facc34fb0901045d571c818e1fa84a by n54
[compiler-rt] [tsan] [netbsd] Catch unsupported LONG_JMP_SP_ENV_SLOT

Error out during build for unsupported CPU.

Reviewed By: vitalybuka

Differential Revision: https://reviews.llvm.org/D87602
The file was modifiedcompiler-rt/lib/tsan/rtl/tsan_platform_linux.cpp
Commit 0efbb70b719e990fe153373eda5a604344ae36bb by Alexander Timofeev
[AMDGPU] should expand ROTL i16 to shifts.

Instruction combining pass turns library rotl implementation to llvm.fshl.i16.
In the selection dag the intrinsic is turned to ISD::ROTL node that cannot be selected.
Need to expand it to shifts again.

Reviewed By: rampitec, arsenm

Differential Revision: https://reviews.llvm.org/D87618
The file was modifiedllvm/test/CodeGen/AMDGPU/rotr.ll
The file was modifiedllvm/lib/Target/AMDGPU/SIISelLowering.cpp
The file was modifiedllvm/test/CodeGen/AMDGPU/rotl.ll
Commit 72c5feeed8d8d570e1c971ef069483491463a003 by n54
[compiler-rt] [netbsd] Include <sys/dkbad.h>

Fixes build on NetBSD/sparc64.
The file was modifiedcompiler-rt/lib/sanitizer_common/sanitizer_platform_limits_netbsd.cpp
Commit e7de267910e935ab885dae22b5191bfb118ca5f9 by n54
[compiler-rt] [hwasan] Replace INLINE with inline

Fixes the build after landing D87562.
The file was modifiedcompiler-rt/lib/hwasan/hwasan_malloc_bisect.h
Commit 5e0ded268929b87ddf2c5e077c9185554342f602 by herhut
[mlir][Standard] Canonicalize chains of tensor_cast operations

Adds a pattern that replaces a chain of two tensor_cast operations by a single tensor_cast operation if doing so will not remove constraints on the shapes.
The file was modifiedmlir/lib/Dialect/StandardOps/IR/Ops.cpp
The file was modifiedmlir/include/mlir/Dialect/StandardOps/IR/Ops.td
The file was modifiedmlir/test/Transforms/canonicalize.mlir