UnstableChanges

Summary

  1. [AArch64] Fix for BTI landing pad insertion with PAC-RET+bkey. (details)
  2. [GlobalISel] Remove ConstantFoldingMIRBuilder (details)
  3. [Debug-Info] change return type to void for attribute adding functions. (details)
  4. [mlir] Handle strided 1D vector transfer ops in ProgressiveVectorToSCF (details)
  5. [MLIR][NFC] Fix warning, trim includes + cleanup in AffineOps.h (details)
  6. [lldb][NFC] Delete a checked-in build log in docs/testsuite (details)
  7. [mlir] Support dimension permutations in ProgressiveVectorToSCF (details)
  8. [NewGVN] Track simplification dependencies for phi-of-ops. (details)
  9. [mlir][docs] Update `add_mlir_doc` usage (details)
  10. [mlir] Use SCF for loops in ProgressiveVectorToSCF (details)
  11. Revert "[NewGVN] Track simplification dependencies for phi-of-ops." (details)
  12. [mlir] Support broadcast dimensions in ProgressiveVectorToSCF (details)
  13. [Clang] Propagate guaranteed alignment for malloc and others (details)
  14. [mlir] Support masked 1D vector transfer ops in ProgressiveVectorToSCF (details)
  15. llvm-objdump: refactor SourcePrinter into separate file. NFC. (details)
  16. [mlir] Support masked N-D vector transfer ops in ProgressiveVectorToSCF. (details)
  17. [gn build] Port c623945d707c (details)
  18. Revert "[Clang] Propagate guaranteed alignment for malloc and others" (details)
  19. [X86][AMX][NFC] Make comparison operators to be complete (details)
  20. Re-reapply "[DebugInfo] Use variadic debug values to salvage BinOps and GEP instrs with non-const operands" (details)
  21. Recommit "[NewGVN] Track simplification dependencies for phi-of-ops." (details)
  22. [doc] Clarify constrained fcmps behavior (details)
  23. [dexter] Add keyword argument 'on_line' to DexLabel (details)
  24. [lldb][NFC] Remove a stray unicode character in the LLDB test docs (details)
  25. [RISCV] Custom lower vector F(MIN|MAX)NUM to vf(min|max) (details)
  26. [clang] Do not crash on template specialization following a fatal error (details)
Commit b1f463dcae3aafadac2b6a36583f38dea6a7136e by daniel.kiss
[AArch64] Fix for BTI landing pad insertion with PAC-RET+bkey.

EMITBKEY is emitted for PAC-RET+bkey, which is a non machine instructions.

PR: 49957

Reviewed By: eugenis

Differential Revision: https://reviews.llvm.org/D100996
The file was modifiedllvm/lib/Target/AArch64/AArch64BranchTargets.cpp
The file was modifiedllvm/test/CodeGen/AArch64/sign-return-address.ll
Commit 63af3c000b3399b16703da920d874834c402e281 by jay.foad
[GlobalISel] Remove ConstantFoldingMIRBuilder

ConstantFoldingMIRBuilder was an experiment which is not used for
anything. The constant folding functionality is now part of
CSEMIRBuilder.

Differential Revision: https://reviews.llvm.org/D101050
The file was modifiedllvm/unittests/CodeGen/GlobalISel/ConstantFoldingTest.cpp
The file was removedllvm/include/llvm/CodeGen/GlobalISel/ConstantFoldingMIRBuilder.h
The file was modifiedllvm/unittests/CodeGen/GlobalISel/PatternMatchTest.cpp
Commit 027d6735ae798900293059c9dc33ea6d3ebe3615 by czhengsz
[Debug-Info] change return type to void for attribute adding functions.

Make following function return void:

    addLabel()
    addSectionLabel()
    addSectionDelta()

This aligns with other attributes adding functions.

Reviewed By: dblaikie

Differential Revision: https://reviews.llvm.org/D101022
The file was modifiedllvm/lib/CodeGen/AsmPrinter/DwarfUnit.h
The file was modifiedllvm/lib/CodeGen/AsmPrinter/DwarfUnit.cpp
Commit afaf36b69eac614f858631513c27c3af62d99da5 by springerm
[mlir] Handle strided 1D vector transfer ops in ProgressiveVectorToSCF

Strided 1D vector transfer ops are 1D transfers operating on a memref dimension different from the last one. Such transfer ops do not accesses contiguous memory blocks (vectors), but access memory in a strided fashion. In the absence of a mask, strided 1D vector transfer ops can also be lowered using matrix.column.major.* LLVM instructions (in a later commit).

Subsequent commits will extend the pass to handle the remaining missing permutation maps (broadcasts, transposes, etc.).

Differential Revision: https://reviews.llvm.org/D100946
The file was modifiedmlir/lib/Conversion/VectorToSCF/ProgressiveVectorToSCF.cpp
The file was addedmlir/test/Integration/Dialect/Vector/CPU/test-transfer-read-1d.mlir
Commit 17f6b0c36a77b521bd405bb7cccf5cd239f4330e by uday
[MLIR][NFC] Fix warning, trim includes + cleanup in AffineOps.h

Fix style/clang-tidy warning, trim stale includes and forward
declarations, and cleanup/fix stale comments.

Differential Revision: https://reviews.llvm.org/D101021
The file was modifiedmlir/include/mlir/Dialect/Affine/IR/AffineOps.h
Commit f8f3fc1fbad608ee7c7e0c2a5af0637006e1ba0c by Raphael Isemann
[lldb][NFC] Delete a checked-in build log in docs/testsuite
The file was removedlldb/docs/testsuite/2010-10-19-14_10_49.059609/TestSettings.SettingsCommandTestCase.test_set_output_path.log
Commit ab154176bfc7891979b9cd406d2e952a1764f406 by springerm
[mlir] Support dimension permutations in ProgressiveVectorToSCF

This commit adds support for dimension permutations in permutation maps of vector transfer ops.

Differential Revision: https://reviews.llvm.org/D101007
The file was modifiedmlir/test/Integration/Dialect/Vector/CPU/test-transfer-to-loops.mlir
The file was modifiedmlir/lib/Conversion/VectorToSCF/ProgressiveVectorToSCF.cpp
The file was modifiedmlir/test/Integration/Dialect/Vector/CPU/test-transfer-read-2d.mlir
The file was modifiedmlir/test/Integration/Dialect/Vector/CPU/test-transfer-read-3d.mlir
Commit 4f5da356ff35a218f23f0b0c4d08aee90da7de6e by flo
[NewGVN] Track simplification dependencies for phi-of-ops.

If we are using a simplified value, we need to add an extra
dependency this value , because changes to the class of the
simplified value may require us to invalidate any decision based on
that value.

This is done by adding such values as additional users, however the
current code does not excludes temporary instructions.

At the moment, this means that we miss those dependencies for
phi-of-ops, because they are temporary instructions at this point. We
instead need to add the extra dependencies to the root instruction of
the phi-of-ops.

This patch pushes the responsibility of adding extra users to the
callers of createExpression & performSymbolicEvaluation. At those
points, it is clearer which real instruction to pick.

Alternatively we could either pass the 'real' instruction as additional
argument or use another map, but I think the approach in the patch makes
things a bit easier to follow.

Fixes PR35074.

Reviewed By: asbirlea

Differential Revision: https://reviews.llvm.org/D99987
The file was modifiedllvm/lib/Transforms/Scalar/NewGVN.cpp
The file was addedllvm/test/Transforms/NewGVN/phi-of-ops-simplification-dependencies.ll
Commit ab78e09b9463262254347d1f050b49b611848654 by marius.brehler
[mlir][docs] Update `add_mlir_doc` usage

Updates the docs to reflect the changes introduced to the `add_mlir_doc`
CMake macro with https://reviews.llvm.org/D100517.
The file was modifiedmlir/docs/Tutorials/CreatingADialect.md
Commit f6a3e92e0a19b04320572acf3e992d45c88fc1ec by springerm
[mlir] Use SCF for loops in ProgressiveVectorToSCF

Use SCF for loops instead of Affine for loops.

Differential Revision: https://reviews.llvm.org/D101013
The file was modifiedmlir/lib/Conversion/VectorToSCF/ProgressiveVectorToSCF.cpp
Commit 74854d00e854196445727a49df58fe5768d9ed5b by flo
Revert "[NewGVN] Track simplification dependencies for phi-of-ops."

This reverts commit 4f5da356ff35a218f23f0b0c4d08aee90da7de6e.

This causes some  buildbot failures, e.g.
https://lab.llvm.org/buildbot/#/builders/139/builds/3019
The file was removedllvm/test/Transforms/NewGVN/phi-of-ops-simplification-dependencies.ll
The file was modifiedllvm/lib/Transforms/Scalar/NewGVN.cpp
Commit a819e7339315687f06f686971a649f614afbd987 by springerm
[mlir] Support broadcast dimensions in ProgressiveVectorToSCF

This commit adds support for broadcast dimensions in permutation maps of vector transfer ops.

Also fixes a bug in VectorToSCF that generated incorrect in-bounds checks for broadcast dimensions.

Differential Revision: https://reviews.llvm.org/D101019
The file was modifiedmlir/test/Integration/Dialect/Vector/CPU/test-transfer-read-2d.mlir
The file was modifiedmlir/lib/Conversion/VectorToSCF/VectorToSCF.cpp
The file was modifiedmlir/test/Integration/Dialect/Vector/CPU/test-transfer-read-3d.mlir
The file was modifiedmlir/lib/Conversion/VectorToSCF/ProgressiveVectorToSCF.cpp
The file was modifiedmlir/test/Integration/Dialect/Vector/CPU/test-transfer-read-1d.mlir
Commit c2297544c04764237cedc523083c7be2fb3833d4 by Dávid Bolvanský
[Clang] Propagate guaranteed alignment for malloc and others

LLVM should be smarter about *known* malloc's alignment and this knowledge may enable other optimizations.

Originally started as LLVM patch - https://reviews.llvm.org/D100862 but this logic should be really in Clang.

Reviewed By: rjmccall

Differential Revision: https://reviews.llvm.org/D100879
The file was addedclang/test/CodeGen/alloc-fns-alignment.c
The file was modifiedclang/lib/CodeGen/CGCall.cpp
The file was modifiedclang/include/clang/Basic/TargetInfo.h
Commit 545f98efc74bb1fb5dfa6edd2ce80b8154664741 by springerm
[mlir] Support masked 1D vector transfer ops in ProgressiveVectorToSCF

Support for masked N-D vector transfer ops will be added in a subsequent commit.

Differential Revision: https://reviews.llvm.org/D101132
The file was modifiedmlir/lib/Conversion/VectorToSCF/ProgressiveVectorToSCF.cpp
The file was modifiedmlir/test/Integration/Dialect/Vector/CPU/test-transfer-read-1d.mlir
Commit c623945d707c8d50d0cae79b5c95a57166cd066c by Tim Northover
llvm-objdump: refactor SourcePrinter into separate file. NFC.

Preparatory patch for MachO feature.
The file was addedllvm/tools/llvm-objdump/SourcePrinter.h
The file was modifiedllvm/tools/llvm-objdump/CMakeLists.txt
The file was modifiedllvm/tools/llvm-objdump/llvm-objdump.h
The file was addedllvm/tools/llvm-objdump/SourcePrinter.cpp
The file was modifiedllvm/tools/llvm-objdump/llvm-objdump.cpp
Commit 64f7fb5dfca14bead0e4b12142da2135f950034f by springerm
[mlir] Support masked N-D vector transfer ops in ProgressiveVectorToSCF.

Mask vectors are handled similar to data vectors in N-D TransferWriteOp. They are copied into a temporary memory buffer, which can be indexed into with non-constant values.

Differential Revision: https://reviews.llvm.org/D101136
The file was modifiedmlir/test/Integration/Dialect/Vector/CPU/test-transfer-read-2d.mlir
The file was modifiedmlir/lib/Conversion/VectorToSCF/ProgressiveVectorToSCF.cpp
Commit f2bf9322b575c7c91e3ccd44be43e280c2c97e53 by llvmgnsyncbot
[gn build] Port c623945d707c
The file was modifiedllvm/utils/gn/secondary/llvm/tools/llvm-objdump/BUILD.gn
Commit 6914a0ed2b30924b188968e59a83efa07ac5fe57 by Dávid Bolvanský
Revert "[Clang] Propagate guaranteed alignment for malloc and others"

This reverts commit c2297544c04764237cedc523083c7be2fb3833d4. Some buildbots are broken.
The file was modifiedclang/include/clang/Basic/TargetInfo.h
The file was modifiedclang/lib/CodeGen/CGCall.cpp
The file was removedclang/test/CodeGen/alloc-fns-alignment.c
Commit 151e244fe687901e69e4a3c569ef3bb252b7e4fc by pengfei.wang
[X86][AMX][NFC] Make comparison operators to be complete

The previous D101039 didn't fix the SmallSet insertion issue, due to we
always return false for the comparison between 2 different nonnull BBs.
This patch makes the the comparison to be complete by comparing `MBB`
first, so that we can always get the invariant order by a single
operator.
The file was modifiedllvm/lib/Target/X86/X86PreTileConfig.cpp
Commit 791930d74087b8ae8901172861a0fd21a211e436 by stephen.tozer
Re-reapply "[DebugInfo] Use variadic debug values to salvage BinOps and GEP instrs with non-const operands"

Previous build failures were caused by an error in bitcode reading and
writing for DIArgList metadata, which has been fixed in e5d844b587.
There were also some unnecessary asserts that were being triggered on
certain builds, which have been removed.

This reverts commit dad5caa59e6b2bde8d6cf5b64a972c393c526c82.
The file was modifiedllvm/lib/Transforms/Utils/Local.cpp
The file was modifiedllvm/include/llvm/IR/IntrinsicInst.h
The file was modifiedllvm/lib/Transforms/Coroutines/CoroFrame.cpp
The file was addedllvm/test/DebugInfo/salvage-nonconst-binop.ll
The file was modifiedllvm/lib/IR/Operator.cpp
The file was modifiedllvm/test/DebugInfo/NVPTX/debug-info.ll
The file was modifiedllvm/lib/IR/DebugInfoMetadata.cpp
The file was modifiedllvm/lib/CodeGen/AsmPrinter/DebugLocEntry.h
The file was modifiedllvm/include/llvm/IR/DebugInfoMetadata.h
The file was modifiedllvm/include/llvm/Transforms/Utils/Local.h
The file was modifiedllvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
The file was modifiedllvm/lib/IR/IntrinsicInst.cpp
The file was modifiedllvm/test/Transforms/InstCombine/debuginfo-sink.ll
The file was modifiedllvm/include/llvm/IR/Operator.h
The file was modifiedllvm/lib/IR/Instructions.cpp
The file was addedllvm/test/DebugInfo/salvage-gep.ll
The file was modifiedllvm/include/llvm/IR/Instructions.h
The file was modifiedllvm/test/Transforms/Reassociate/undef_intrinsics_when_deleting_instructions.ll
Commit 2b15262f89bc0923361e1ed5b596a2d18d22afd9 by flo
Recommit "[NewGVN] Track simplification dependencies for phi-of-ops."

This recommits 4f5da356ff35a218f23f0b0c4d08aee90da7de6e, including
explicit implementations of move a constructor and deleted copy
constructors/assignment operators, to fix failures with some compilers.

This reverts the revert 74854d00e854196445727a49df58fe5768d9ed5b.
The file was addedllvm/test/Transforms/NewGVN/phi-of-ops-simplification-dependencies.ll
The file was modifiedllvm/lib/Transforms/Scalar/NewGVN.cpp
Commit 2fdedf905a6bd8e44a28191bb91f74a705b9c3f6 by thomasp
[doc] Clarify constrained fcmps behavior

Reviewed By: uweigand

Differential Revision: https://reviews.llvm.org/D101053
The file was modifiedllvm/docs/LangRef.rst
Commit 487ab5345920b2cfd2162f04b467dd39fb1a8627 by orlando.hyams
[dexter] Add keyword argument 'on_line' to DexLabel

Add optional keyword argument 'on_line' to DexLabel to label the specifed line
instead of the line the command is found on.

This will be helpful when used alongside DexDeclareFile (D99651).

Reviewed By: TWeaver

Differential Revision: https://reviews.llvm.org/D101055
The file was addeddebuginfo-tests/dexter/feature_tests/subtools/test/err_label_kwarg.cpp
The file was modifieddebuginfo-tests/dexter/Commands.md
The file was modifieddebuginfo-tests/dexter/dex/command/commands/DexLabel.py
The file was addeddebuginfo-tests/dexter/feature_tests/subtools/test/label_another_line.cpp
Commit f3e6f856c2905362f54acebc5ef500df10cb06fa by Raphael Isemann
[lldb][NFC] Remove a stray unicode character in the LLDB test docs

There was a U+2028 character in this line (a special paragraph separator).
The file was modifiedlldb/docs/resources/test.rst
Commit 83b8f8da828383074f59d331c262200d65a4833e by fraser
[RISCV] Custom lower vector F(MIN|MAX)NUM to vf(min|max)

This patch adds support for both scalable- and fixed-length vector code
lowering of the llvm.minnum and llvm.maxnum intrinsics to the equivalent
RVV instructions.

Reviewed By: craig.topper

Differential Revision: https://reviews.llvm.org/D101035
The file was modifiedllvm/lib/Target/RISCV/RISCVInstrInfoVSDPatterns.td
The file was addedllvm/test/CodeGen/RISCV/rvv/fixed-vectors-vfmin.ll
The file was addedllvm/test/CodeGen/RISCV/rvv/vfmax-sdnode.ll
The file was addedllvm/test/CodeGen/RISCV/rvv/fixed-vectors-vfmax.ll
The file was modifiedllvm/lib/Target/RISCV/RISCVISelLowering.h
The file was modifiedllvm/lib/Target/RISCV/RISCVInstrInfoVVLPatterns.td
The file was addedllvm/test/CodeGen/RISCV/rvv/vfmin-sdnode.ll
The file was modifiedllvm/lib/Target/RISCV/RISCVISelLowering.cpp
Commit ddfbdbfefae04ea71391a38ed5e9cb6975f6630b by adamcz
[clang] Do not crash on template specialization following a fatal error

There was a missing isInvalid() check leading to an attempt to
instantiate template with an empty instantiation stack.

Differential Revision: https://reviews.llvm.org/D100675
The file was addedclang/test/SemaCXX/template-specialization-fatal.cpp
The file was modifiedclang/lib/Sema/SemaTemplateDeduction.cpp