SuccessChanges

Summary

  1. [clang-tidy] readability-identifier-naming checks configs for included files (details)
  2. [MachineVerifier] Refactor calcRegsPassed. NFC (details)
  3. [clang-tidy][NFC] Small refactor (details)
  4. [X86][AVX] Extend v2f64 BROADCAST(LOAD) -> BROADCAST_LOAD to v2i64/v4f32/v4i32 (details)
  5. [InstSimplify] add abs test with assume; NFC (details)
  6. [InstSimplify] simplify abs if operand is known non-negative (details)
  7. [mlir][Vector] Simplify code a bit. NFCI. (details)
  8. [ARM] Distribute post-inc for Thumb2 sign/zero extending loads/stores (details)
  9. [Attributor][NFC] Update description for the dependency graph (details)
  10. [VectorCombine] add tests for non-zero gep offsets; NFC (details)
  11. [LCSSA] Use IRBuilder for PHI creation. (details)
  12. [X86][AVX] Ensure we only combine to PSHUFLW/PSHUFHW on supporting targets (details)
  13. [libcxx] Add compatible with constraint tests for some shared_ptr constructors. (details)
Commit 4888c9ce97d8c20d988212b10f1045e3c4022b8e by n.james93
[clang-tidy] readability-identifier-naming checks configs for included files

When checking for the style of a decl that isn't in the main file, the check will now search for the configuration that the included files uses to gather the style for its decls.

This can be useful to silence warnings in header files that follow a different naming convention without using header-filter to silence all warnings(even from other checks) in the header file.

Reviewed By: aaron.ballman, gribozavr2

Differential Revision: https://reviews.llvm.org/D84814
The file was addedclang-tools-extra/test/clang-tidy/checkers/Inputs/readability-identifier-naming/global-style-disabled/header.h
The file was addedclang-tools-extra/test/clang-tidy/checkers/Inputs/readability-identifier-naming/global-style1/header.h
The file was modifiedclang-tools-extra/clang-tidy/readability/IdentifierNamingCheck.h
The file was modifiedclang-tools-extra/docs/clang-tidy/checks/readability-identifier-naming.rst
The file was addedclang-tools-extra/test/clang-tidy/checkers/Inputs/readability-identifier-naming/global-style2/.clang-tidy
The file was addedclang-tools-extra/test/clang-tidy/checkers/readability-identifier-naming-multiple-styles.cpp
The file was addedclang-tools-extra/test/clang-tidy/checkers/Inputs/readability-identifier-naming/global-style-disabled/.clang-tidy
The file was modifiedclang-tools-extra/docs/ReleaseNotes.rst
The file was addedclang-tools-extra/test/clang-tidy/checkers/Inputs/readability-identifier-naming/global-style2/header.h
The file was modifiedclang-tools-extra/clang-tidy/readability/IdentifierNamingCheck.cpp
The file was addedclang-tools-extra/test/clang-tidy/checkers/Inputs/readability-identifier-naming/global-style1/.clang-tidy
Commit e73f5d86f179644b8d66d4141d8d359cd6f0435b by eleviant
[MachineVerifier] Refactor calcRegsPassed. NFC

Patch improves performance of verify-machineinstrs pass up to 10x.
Differential revision: https://reviews.llvm.org/D84105
The file was modifiedllvm/lib/CodeGen/MachineVerifier.cpp
Commit 9f21947a331203ee2579db87f1d1ec22a949e20a by n.james93
[clang-tidy][NFC] Small refactor
The file was modifiedclang-tools-extra/clang-tidy/readability/IdentifierNamingCheck.cpp
Commit 1b1901536a7db8a074e794f004f9d94b941f7068 by llvm-dev
[X86][AVX] Extend v2f64 BROADCAST(LOAD) -> BROADCAST_LOAD to v2i64/v4f32/v4i32

Minor precursor fix for D66004, but helps the SSE41 tests as well as they run with -disable-peephole
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
The file was modifiedllvm/test/CodeGen/X86/sse41.ll
Commit 1aa52d67d1c1a8eb174d4a85391a17c5f0731116 by spatel
[InstSimplify] add abs test with assume; NFC
The file was modifiedllvm/test/Transforms/InstSimplify/call.ll
Commit 04b99a4d18cf13c13f1d76c5698696bcaef4e4b6 by spatel
[InstSimplify] simplify abs if operand is known non-negative

abs() should be rare enough that using value tracking is not going
to be a compile-time cost burden, so use it to reduce a variety of
potential patterns. We do this in DAGCombiner too.

Differential Revision: https://reviews.llvm.org/D85043
The file was modifiedllvm/lib/Analysis/InstructionSimplify.cpp
The file was modifiedllvm/test/Transforms/InstSimplify/call.ll
Commit eb41f9edde1070d68fce4a4eb31118e0ec1ca36d by benny.kra
[mlir][Vector] Simplify code a bit. NFCI.
The file was modifiedmlir/lib/Dialect/Vector/VectorTransforms.cpp
The file was modifiedmlir/lib/Dialect/Vector/VectorOps.cpp
Commit fd69df62ed1091f25ba4749cc5152e9ce2fe3af4 by david.green
[ARM] Distribute post-inc for Thumb2 sign/zero extending loads/stores

This adds sign/zero extending scalar loads/stores to the MVE
instructions added in D77813, allowing us to create up more post-inc
instructions. These are comparatively simple, compared to LDR/STR (which
may be better turned into an LDRD/LDM), but still require some additions
over MVE instructions. Because there are i12 and i8 variants of the
offset loads/stores dealing with different signs, we may need to convert
an i12 address to a i8 negative instruction. t2LDRBi12 can also be
shrunk to a tLDRi under the right conditions, so we need to be careful
with codesize too.

Differential Revision: https://reviews.llvm.org/D78625
The file was modifiedllvm/lib/Target/ARM/ARMBaseInstrInfo.h
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/mve-float-loops.ll
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/mve-tail-data-types.ll
The file was modifiedllvm/test/CodeGen/Thumb2/mve-float16regloops.ll
The file was modifiedllvm/test/CodeGen/Thumb2/mve-postinc-distribute.ll
The file was modifiedllvm/test/CodeGen/Thumb2/postinc-distribute.mir
The file was modifiedllvm/lib/Target/ARM/ARMLoadStoreOptimizer.cpp
Commit fa30adecc766eb627a85f746b0f6f22b0eadbda8 by clfbbn
[Attributor][NFC] Update description for the dependency graph

The word "dependency graph" is a bit misleading. When there is an
edge from node A to B (A -> B), it actually mean that B depends on
A and when the state of A is updated, B should also be updated. So
I update the comment to make the description clearer.

Reviewed By: jdoerfert

Differential Revision: https://reviews.llvm.org/D85065
The file was modifiedllvm/include/llvm/Transforms/IPO/Attributor.h
Commit d620a6fe98f74d9b305a0d45d4c6804b0e46bf6c by spatel
[VectorCombine] add tests for non-zero gep offsets; NFC
The file was modifiedllvm/test/Transforms/VectorCombine/X86/load.ll
Commit a9b06a2c14f9a38ba16165f0343faaa9ae713fec by flo
[LCSSA] Use IRBuilder for PHI creation.

Use IRBuilder instead PHINode::Create. This should not impact the
generated code, but IRBuilder provides a way to register callbacks for
inserted instructions, which is convenient for some users.

Reviewed By: lebedev.ri

Differential Revision: https://reviews.llvm.org/D85037
The file was modifiedllvm/lib/Transforms/Utils/ScalarEvolutionExpander.cpp
The file was modifiedllvm/include/llvm/Transforms/Utils/LoopUtils.h
The file was modifiedllvm/lib/Transforms/Utils/LCSSA.cpp
Commit bb13c34c3aa100006461c972319abfef0af70603 by llvm-dev
[X86][AVX] Ensure we only combine to PSHUFLW/PSHUFHW on supporting targets

Noticed while investigating combining from concatenated shuffle vectors, we weren't checking that PSHUFLW/PSHUFHW was legal - we were depending on lowering splitting to subvectors.
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
Commit 8697d6cfa8947c4033dfe1d2ac708482d75a28d4 by zoecarver
[libcxx] Add compatible with constraint tests for some shared_ptr constructors.

Add shared_ptr tests where the element type and pointer type aren't 'convertible' but are 'compatible'.

Responding to a comment from D81414.

Differential Revision: https://reviews.llvm.org/D81532
The file was modifiedlibcxx/test/std/utilities/memory/util.smartptr/util.smartptr.shared/util.smartptr.shared.const/pointer_deleter_allocator.pass.cpp
The file was modifiedlibcxx/test/std/utilities/memory/util.smartptr/util.smartptr.shared/util.smartptr.shared.const/pointer_deleter.pass.cpp