SuccessChanges

Summary

  1. [NFC] Reuse existing variables instead of re-requesting successors (details)
  2. [NFCI][LoopDeletion] Do not call complex analysis for known non-zero BTC (details)
  3. [mlir] Support dialect-wide canonicalization pattern registration (details)
  4. [AMDGPU][GlobalISel] Allow amdgpu_gfx calling conv (details)
  5. [SelectionDAG][RISCV] Don't unroll 0/1-type bool VSELECTs (details)
  6. [Matrix] Include matrix pipeline for new PM in new-pm-defaults.ll. (details)
  7. [lit][test] Improve testing of use_llvm_tool (details)
  8. Add triples to a bunch of x86-specific tests that currently fail on PPC (details)
  9. [clang-format] [NFC] realign documentation in Format.h... (details)
  10. [ARM] Extra test for reverted WLS memset. NFC (details)
  11. [OpenMP]Add support for workshare loop modifier in lowering (details)
  12. [AMDGPU][Libomptarget][NFC] Remove atmi_mem_place_t (details)
Commit c467585682dcdda75e645ef3ab47c8b48440db12 by mkazantsev
[NFC] Reuse existing variables instead of re-requesting successors
The file was modifiedllvm/lib/Transforms/Scalar/LoopDeletion.cpp
Commit 7d418dadf6b1e6fd9bcccf7c5b5e1db74992ee70 by mkazantsev
[NFCI][LoopDeletion] Do not call complex analysis for known non-zero BTC
The file was modifiedllvm/lib/Transforms/Scalar/LoopDeletion.cpp
Commit 108ca7a7e73ca6d5f4c17a8291d0e94cd9f740d3 by springerm
[mlir] Support dialect-wide canonicalization pattern registration

* Add `hasCanonicalizer` option to Dialect.
* Initialize canonicalizer with dialect-wide canonicalization patterns.
* Add test case to TestDialect.

Dialect-wide canonicalization patterns are useful if a canonicalization pattern does not conceptually associate with any single operation, i.e., it should not be registered as part of an operation's `getCanonicalizationPatterns` function. E.g., this is the case for canonicalization patterns that match an op interface.

Differential Revision: https://reviews.llvm.org/D103226
The file was modifiedmlir/include/mlir/IR/Dialect.h
The file was modifiedmlir/tools/mlir-tblgen/DialectGen.cpp
The file was modifiedmlir/include/mlir/IR/OpBase.td
The file was modifiedmlir/include/mlir/TableGen/Dialect.h
The file was modifiedmlir/lib/Transforms/Canonicalizer.cpp
The file was modifiedmlir/test/Transforms/test-canonicalize.mlir
The file was modifiedmlir/lib/TableGen/Dialect.cpp
The file was modifiedmlir/test/lib/Dialect/Test/TestDialect.cpp
The file was modifiedmlir/test/lib/Dialect/Test/TestOps.td
Commit 0bb60dbe34e4a934e47a0493832f3384fb09b7db by sebastian.neubauer
[AMDGPU][GlobalISel] Allow amdgpu_gfx calling conv

Calling functions from shaders already works with the SelectionDAG.

Differential Revision: https://reviews.llvm.org/D103183
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUCallLowering.cpp
The file was modifiedllvm/test/CodeGen/AMDGPU/pal-simple-indirect-call.ll
Commit 772b58a641affcd786e3062250a0f51acb8b1553 by fraser
[SelectionDAG][RISCV] Don't unroll 0/1-type bool VSELECTs

This patch extends the cases in which the legalizer is able to express
VSELECT in terms of XOR/AND/OR. When dealing with a VSELECT between
boolean vector types, the mask itself is an all-ones or all-ones value
of the operand type, so a 0/1 boolean type behaves identically to a 0/-1
type.

This greatly helps RISC-V which relies on expansion for these nodes. It
also allows scalable-vector bool VSELECTs to use the default expansion,
where before it would crash in SelectionDAG::UnrollVectorOp.

Reviewed By: craig.topper

Differential Revision: https://reviews.llvm.org/D103147
The file was modifiedllvm/lib/Target/RISCV/RISCVISelLowering.cpp
The file was modifiedllvm/lib/CodeGen/SelectionDAG/LegalizeVectorOps.cpp
The file was modifiedllvm/test/CodeGen/RISCV/rvv/fixed-vectors-vselect.ll
The file was addedllvm/test/CodeGen/RISCV/rvv/vselect-mask.ll
Commit 9a4506e7591fc5aaa9b69d35857908cadb4f5743 by flo
[Matrix] Include matrix pipeline for new PM in new-pm-defaults.ll.

-enable-matrix just adds a single pass, so it's easier to just check in
new-pm-default.ll rather than duplicating the full checks for -O3 with
the new pass manager.

Suggested post-commit by @aeubanks.
The file was modifiedllvm/test/Other/opt-O3-pipeline-enable-matrix.ll
The file was modifiedllvm/test/Other/new-pm-defaults.ll
Commit 2ae58431873d449f63fa6dd20dbd280fa43b3ac2 by james.henderson
[lit][test] Improve testing of use_llvm_tool

Reviewed by: MaskRay

Differential Revision: https://reviews.llvm.org/D103154
The file was addedllvm/utils/lit/tests/Inputs/use-llvm-tool/build/case7
The file was addedllvm/utils/lit/tests/Inputs/use-llvm-tool/build/case7.exe
The file was removedllvm/utils/lit/tests/Inputs/use-tool-search-env/lit.cfg
The file was addedllvm/utils/lit/tests/Inputs/use-llvm-tool-required/found.exe
The file was addedllvm/utils/lit/tests/Inputs/use-llvm-tool/build/case2
The file was removedllvm/utils/lit/tests/Inputs/use-tool-search-env/test.tool
The file was addedllvm/utils/lit/tests/Inputs/use-llvm-tool/lit.cfg
The file was addedllvm/utils/lit/tests/Inputs/use-llvm-tool/path/case4
The file was addedllvm/utils/lit/tests/Inputs/use-llvm-tool/build/case6.exe
The file was addedllvm/utils/lit/tests/Inputs/use-llvm-tool-required/found
The file was addedllvm/utils/lit/tests/Inputs/use-llvm-tool/build/case3
The file was addedllvm/utils/lit/tests/Inputs/use-llvm-tool/build/case6
The file was addedllvm/utils/lit/tests/Inputs/use-llvm-tool-required/lit.cfg
The file was addedllvm/utils/lit/tests/Inputs/use-llvm-tool-required/true.txt
The file was addedllvm/utils/lit/tests/Inputs/use-llvm-tool/path/case6
The file was removedllvm/utils/lit/tests/use-tool-search-env.py
The file was addedllvm/utils/lit/tests/Inputs/use-llvm-tool/path/case7
The file was addedllvm/utils/lit/tests/Inputs/use-llvm-tool/path/case5
The file was addedllvm/utils/lit/tests/Inputs/use-llvm-tool/path/case7.exe
The file was addedllvm/utils/lit/tests/Inputs/use-llvm-tool/build/case2.exe
The file was removedllvm/utils/lit/tests/Inputs/use-tool-search-env/true.txt
The file was addedllvm/utils/lit/tests/use-llvm-tool.py
The file was addedllvm/utils/lit/tests/Inputs/use-llvm-tool/true.txt
The file was addedllvm/utils/lit/tests/Inputs/use-llvm-tool/build/case3.exe
The file was addedllvm/utils/lit/tests/Inputs/use-llvm-tool/env-case1
The file was addedllvm/utils/lit/tests/Inputs/use-llvm-tool/path/case6.exe
The file was addedllvm/utils/lit/tests/Inputs/use-llvm-tool/path/case5.exe
The file was addedllvm/utils/lit/tests/Inputs/use-llvm-tool/path/case4.exe
The file was addedllvm/utils/lit/tests/Inputs/use-llvm-tool/env-case6
Commit 1546c52d971292ed4145b6d41aaca0d02229ebff by benny.kra
Add triples to a bunch of x86-specific tests that currently fail on PPC
The file was modifiedllvm/test/DebugInfo/X86/basic-block-sections-debug-loclist-2.ll
The file was modifiedllvm/test/DebugInfo/X86/basic-block-sections-debug-loc-split-range.ll
The file was modifiedllvm/test/DebugInfo/X86/basic-block-sections-debug-loclist-1.ll
The file was modifiedllvm/test/DebugInfo/X86/basic-block-sections-debug-loclist-3.ll
Commit 7faffdeb48d3d81ba8fc1353f1a9a563a25adf6d by bjoern
[clang-format] [NFC] realign documentation in Format.h...

... and ClanfFormatStyleOptions.rst for EmptyLineAfterAccessModifier

Differential-Revision: https://reviews.llvm.org/D102989
The file was modifiedclang/include/clang/Format/Format.h
Commit 1d5b976b778327901bfe35c164590f80169e5170 by david.green
[ARM] Extra test for reverted WLS memset. NFC
The file was modifiedllvm/test/CodeGen/Thumb2/mve-memtp-loop.ll
Commit ea4c5fb04c6d9618d451fb2d2c360dc95c6d9131 by mats.petersson
[OpenMP]Add support for workshare loop modifier in lowering

When lowering the dynamic, guided, auto and runtime types of scheduling,
there is an optional monotonic or non-monotonic modifier. This patch
adds support in the OMP IR Builder to pass this down to the runtime
functions.

Also implements tests for the variants.

Differential Revision: https://reviews.llvm.org/D102008
The file was modifiedllvm/unittests/Frontend/OpenMPIRBuilderTest.cpp
The file was modifiedllvm/include/llvm/Frontend/OpenMP/OMPConstants.h
The file was modifiedllvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
Commit 8b79dfb302acbcaf2b103759904146161a3e198d by Pushpinder.Singh
[AMDGPU][Libomptarget][NFC] Remove atmi_mem_place_t

This struct was used to specify the device on which memory was
being allocated/free in atmi_malloc/free. It has now been replaced
with int DeviceId.

Reviewed By: JonChesterfield

Differential Revision: https://reviews.llvm.org/D103239
The file was modifiedopenmp/libomptarget/plugins/amdgpu/impl/atmi_runtime.h
The file was modifiedopenmp/libomptarget/plugins/amdgpu/src/rtl.cpp
The file was modifiedopenmp/libomptarget/plugins/amdgpu/impl/atmi.h
The file was modifiedopenmp/libomptarget/plugins/amdgpu/impl/rt.h
The file was modifiedopenmp/libomptarget/plugins/amdgpu/impl/atmi_interop_hsa.h
The file was modifiedopenmp/libomptarget/plugins/amdgpu/impl/data.cpp
The file was modifiedopenmp/libomptarget/plugins/amdgpu/impl/atmi_interop_hsa.cpp
The file was modifiedopenmp/libomptarget/plugins/amdgpu/impl/atmi.cpp
The file was modifiedopenmp/libomptarget/plugins/amdgpu/impl/internal.h
The file was modifiedopenmp/libomptarget/plugins/amdgpu/impl/system.cpp