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)
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 (diff)
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 (diff)
The file was modifiedllvm/lib/Transforms/Vectorize/SLPVectorizer.cpp (diff)
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/hash-symbols.test (diff)
The file was modifiedllvm/test/tools/llvm-readobj/ELF/mips-got.test (diff)
The file was modifiedllvm/test/tools/llvm-readobj/ELF/symbol-shndx.test (diff)
The file was modifiedllvm/test/tools/llvm-readobj/ELF/dyn-symbols.test (diff)
The file was modifiedllvm/test/tools/llvm-readobj/ELF/mips-plt.test (diff)
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/stack-sizes.yaml (diff)
The file was modifiedllvm/test/tools/obj2yaml/ELF/symbol-visibility.yaml (diff)
The file was modifiedllvm/test/tools/obj2yaml/ELF/no-symtab.yaml (diff)
The file was modifiedllvm/test/tools/obj2yaml/ELF/null-section.yaml (diff)
The file was modifiedllvm/tools/obj2yaml/elf2yaml.cpp (diff)
The file was modifiedllvm/test/tools/obj2yaml/ELF/emachine.yaml (diff)
The file was modifiedllvm/test/tools/obj2yaml/ELF/gnu-unique-symbols.yaml (diff)
The file was modifiedllvm/test/tools/obj2yaml/ELF/implicit-sections-order.yaml (diff)
The file was modifiedllvm/test/tools/obj2yaml/ELF/invalid-section-name.yaml (diff)
The file was modifiedllvm/test/tools/obj2yaml/ELF/call-graph-profile-section.yaml (diff)
The file was modifiedllvm/test/tools/obj2yaml/ELF/duplicate-symbol-and-section-names.yaml (diff)
The file was modifiedllvm/test/tools/obj2yaml/ELF/versym-section.yaml (diff)
The file was modifiedllvm/test/tools/obj2yaml/ELF/sht-symtab-shndx.yaml (diff)
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 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/AArch64ISelLowering.h (diff)
The file was modifiedllvm/lib/Target/AArch64/AArch64SVEInstrInfo.td (diff)
The file was modifiedllvm/lib/Target/AArch64/SVEInstrFormats.td (diff)
The file was modifiedllvm/lib/Target/AArch64/AArch64ISelLowering.cpp (diff)
Commit 9dc1e53787abbf4f2624c73272bf00e23fdffba0 by flo
[MemorySSA] Add another loop clobber test case.
The file was modifiedllvm/test/Analysis/MemorySSA/phi-translation.ll (diff)
Commit deb8f8bcf31540c657716ea5242183b0792702a1 by yvan.roux
[ARM][MachineOutliner] Add missing testcase for calls.
The file was addedllvm/test/CodeGen/ARM/machine-outliner-calls.mir