SuccessChanges

Summary

  1. [ARM] Add some tests for MVE lane interleaving. NFC (details)
  2. [AMDGPU] Fix build breakage (details)
  3. [AMDGPU] Limit memory scope for scratch, LDS and GDS (details)
  4. [ARM] A couple of small MVE reduction tests from intrinsics. NFC (details)
  5. [BasicAA] Add test for single arg phi in loop (NFC) (details)
  6. [BasicAA] Merge aliasGEP code paths (details)
  7. [ConstraintElimination] Fix variables used for pattern matching. (details)
  8. [ARM] Move PhaseOrdering test to the correct place. NFC (details)
  9. [clang-format] Add possibility to be based on parent directory (details)
  10. [llvm/Support] Add SHA256 implementation (details)
  11. [gn build] Port 656ead1fb7db (details)
  12. Reland "[mlir] add support for verification in integration tests" (details)
  13. [lldb] [Process/FreeBSDRemote] Fix clang-formatting on ppc commit (details)
  14. [GlobalISel] Extract a narrowScalarAddSub method. NFC (details)
  15. [GlobalISel] Disable vector types in narrowScalarAddSub (details)
Commit ac00518c9dc98590a2973634cae8e15184dd6284 by david.green
[ARM] Add some tests for MVE lane interleaving. NFC
The file was addedllvm/test/CodeGen/Thumb2/mve-laneinterleaving.ll
The file was addedllvm/test/CodeGen/Thumb2/mve-laneinterleaving-cost.ll
Commit b4c0d610a66087aa332e256daabdec6460e5ef21 by kazu
[AMDGPU] Fix build breakage
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUMachineCFGStructurizer.cpp (diff)
Commit 8a91b68b95e6d1fd31e2a62a61ecb3a3506cf837 by Tony.Tye
[AMDGPU] Limit memory scope for scratch, LDS and GDS

Changes for AMD GPU SIMemoryLegalizer:

- Limit the memory scope to maximum supported by the scratch, LDS and
  GDS address spaces.

- Improve assertion checking.

- Correct toSIAtomicScope argument name.

Reviewed By: rampitec

Differential Revision: https://reviews.llvm.org/D96643
The file was modifiedllvm/test/CodeGen/AMDGPU/local-atomics-fp.ll (diff)
The file was modifiedllvm/test/CodeGen/AMDGPU/atomicrmw-nand.ll (diff)
The file was modifiedllvm/test/CodeGen/AMDGPU/memory-legalizer-local-system.ll (diff)
The file was modifiedllvm/test/CodeGen/AMDGPU/memory-legalizer-local-agent.ll (diff)
The file was modifiedllvm/lib/Target/AMDGPU/SIMemoryLegalizer.cpp (diff)
The file was modifiedllvm/test/CodeGen/AMDGPU/atomic_optimizations_local_pointer.ll (diff)
Commit bc2e843839ee53800cfd29f7f893bca2b9cbe515 by david.green
[ARM] A couple of small MVE reduction tests from intrinsics. NFC

Also added a PhaseOrdering test, to make sure they are not broken by
VectorCombine cost changes.
The file was addedllvm/test/Transforms/PhaseOrdering/arm_floatreduce.ll
The file was modifiedllvm/test/CodeGen/Thumb2/mve-float32regloops.ll (diff)
The file was modifiedllvm/test/CodeGen/Thumb2/mve-float16regloops.ll (diff)
Commit da46a2a87bca044fe1577bb0ca674296848453b8 by nikita.ppv
[BasicAA] Add test for single arg phi in loop (NFC)
The file was modifiedllvm/test/Analysis/BasicAA/phi-aa.ll (diff)
Commit f197cf2126be3b224cadfe8b1cde9c05f638a0ea by nikita.ppv
[BasicAA] Merge aliasGEP code paths

At this point, we can treat the case of GEP/GEP aliasing and
GEP/non-GEP aliasing in essentially the same way. The only
differences are that we need to do an additional negative GEP base
check, and that we perform a bailout on unknown sizes for the
GEP/non-GEP case (the latter exists only to limit compile-time).

This change is not quite NFC due to the peculiar effect that
the DecomposedGEP for V2 can actually be non-trivial even if V2
is not a GEP. The reason for this is that getUnderlyingObject()
can look through LCSSA phi nodes, while stripPointerCasts() doesn't.
This can lead to slightly better results if single-entry phi nodes
occur inside a loop, where looking through the phi node via aliasPhi()
would subject it to phi cycle equivalence restrictions. It would
probably make sense to adjust pointer cast stripping (for AA) to
handle this case, and ensure consistent results.
The file was modifiedllvm/test/Analysis/BasicAA/phi-aa.ll (diff)
The file was modifiedllvm/lib/Analysis/BasicAliasAnalysis.cpp (diff)
Commit 3df5d5aace0e61592ffa8e9b950d86099228e77d by flo
[ConstraintElimination] Fix variables used for pattern matching.

Re-using the matched variable in the pattern does not work as expected.
This patch fixes that by introducing a new variable for the 2nd level
match.
The file was modifiedllvm/lib/Transforms/Scalar/ConstraintElimination.cpp (diff)
The file was modifiedllvm/test/Transforms/ConstraintElimination/geps.ll (diff)
Commit 08c09bb89fd1f0cf46ea3b31abb194556e4d53ed by david.green
[ARM] Move PhaseOrdering test to the correct place. NFC
The file was removedllvm/test/Transforms/PhaseOrdering/arm_floatreduce.ll
The file was addedllvm/test/Transforms/PhaseOrdering/ARM/mve-floatreduce.ll
Commit 25f753c51e7b17bfca08155c1d777c5667110970 by bjoern
[clang-format] Add possibility to be based on parent directory

This allows the define BasedOnStyle: InheritParentConfig and then
clang-format looks into the parent directories for their
.clang-format and takes that as a basis.

Differential Revision: https://reviews.llvm.org/D93844
The file was modifiedclang/docs/ReleaseNotes.rst (diff)
The file was modifiedclang/docs/ClangFormatStyleOptions.rst (diff)
The file was modifiedclang/unittests/Format/FormatTest.cpp (diff)
The file was modifiedclang/lib/Format/Format.cpp (diff)
The file was modifiedclang/include/clang/Format/Format.h (diff)
Commit 656ead1fb7db0afc4927446e5b604491efbba08c by joker.eph
[llvm/Support] Add SHA256 implementation

Adds an *unaudited* SHA-256 implementation to `llvm/Support`. The ongoing lld-macho effort needs this to emit an adhoc code signature for macho files on macOS Big Sur.

Reviewed By: mehdi_amini

Differential Revision: https://reviews.llvm.org/D96540
The file was addedllvm/lib/Support/SHA256.cpp
The file was addedllvm/include/llvm/Support/SHA256.h
The file was addedllvm/unittests/Support/SHA256.cpp
The file was modifiedllvm/lib/Support/CMakeLists.txt (diff)
The file was modifiedllvm/unittests/Support/CMakeLists.txt (diff)
Commit 28315df073328601a5369773ce53156e979bd9d0 by llvmgnsyncbot
[gn build] Port 656ead1fb7db
The file was modifiedllvm/utils/gn/secondary/llvm/lib/Support/BUILD.gn (diff)
The file was modifiedllvm/utils/gn/secondary/llvm/unittests/Support/BUILD.gn (diff)
Commit 99f3510b413768d8e5a7ad06af5e127ba7fee331 by tobias.gysi
Reland "[mlir] add support for verification in integration tests"

The patch extends the runner utils by verification methods that compare two memrefs. The methods compare the content of the two memrefs and print success if the data is identical up to a small numerical error. The methods are meant to simplify the development of integration tests that compare the results against a reference implementation (cf. the updates to the linalg matmul integration tests).

Originally landed in 5fa893c (https://reviews.llvm.org/D96326) and reverted in dd719fd due to a Windows build failure.

Changes:
- Remove the max function that requires the "algorithm" header on Windows
- Eliminate the truncation warning in the float specialization of verifyElem by using a float constant

Reviewed By: Kayjukh

Differential Revision: https://reviews.llvm.org/D96593
The file was modifiedmlir/integration_test/Dialect/Linalg/CPU/benchmark_matmul_column_major.mlir (diff)
The file was modifiedmlir/lib/ExecutionEngine/RunnerUtils.cpp (diff)
The file was modifiedmlir/integration_test/Dialect/Linalg/CPU/benchmark_matmul_column_major_as_row_major.mlir (diff)
The file was modifiedmlir/integration_test/Dialect/Linalg/CPU/benchmark_matmul_i8_i8_i32.mlir (diff)
The file was modifiedmlir/integration_test/Dialect/Linalg/CPU/benchmark_matmul.mlir (diff)
The file was modifiedmlir/include/mlir/ExecutionEngine/RunnerUtils.h (diff)
Commit 011791dda43c55cd9d5e53b6119b0cf40c183c48 by mgorny
[lldb] [Process/FreeBSDRemote] Fix clang-formatting on ppc commit
The file was modifiedlldb/source/Plugins/Process/FreeBSDRemote/NativeRegisterContextFreeBSD_powerpc.cpp (diff)
The file was modifiedlldb/source/Plugins/Process/FreeBSDRemote/NativeRegisterContextFreeBSD_powerpc.h (diff)
The file was modifiedlldb/unittests/Process/Utility/RegisterContextFreeBSDTest.cpp (diff)
Commit 36246388bae24d233bf9debb2eb5b8448a795f9f by code
[GlobalISel] Extract a narrowScalarAddSub method. NFC

Reviewed By: aemerson

Differential Revision: https://reviews.llvm.org/D95426
The file was modifiedllvm/include/llvm/CodeGen/GlobalISel/LegalizerHelper.h (diff)
The file was modifiedllvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp (diff)
Commit 97a1cdb15618966f786404bcfcac08f52a695f55 by code
[GlobalISel] Disable vector types in narrowScalarAddSub

The implementation for vectors is broken and doesn't seem to be used by
anything. Explicitly remove support for them, they can be added again
later when they're properly implemented.

Reviewed By: aemerson

Differential Revision: https://reviews.llvm.org/D95699
The file was modifiedllvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp (diff)