SuccessChanges

Summary

  1. [zorg] Rename cross-targeting buildbot on AIX (details)
Commit 70ac07d8c27d2c50efc49872530f23c5ee6e406c by Xiangling.Liao
[zorg] Rename cross-targeting buildbot on AIX

Differential Revision: https://reviews.llvm.org/D97222
The file was modifiedbuildbot/osuosl/master/config/builders.py (diff)
The file was modifiedbuildbot/osuosl/master/config/workers.py (diff)

Summary

  1. [JITLink] Fix comments about JITLink's generic link algorithm. (details)
  2. [JITLink] Add assertions, fix a comment. (details)
  3. [docs][JITLink] Add a JITLink design and API document. (details)
  4. [docs][JITLink] Sphinx does not like '::' in monotype. Try using a (details)
  5. Update REQUIRES line in 4 tests that attempt to use arm64 which should be aarch64 not arm. (details)
  6. [mlir][linalg] Fix Linalg roundtrip test. (details)
  7. Recommit "[LV] Allow tryToCreateWidenRecipe to return a VPValue, use for blends." (details)
  8. [docs][JITLink] More attempted fixes for formatting issues in the JITLink doc. (details)
  9. [docs][JITLink] Try explicit literal blocks for monospace list elements. (details)
  10. [docs][JITLink] Return to `` for inline literals. (details)
  11. [docs][JITLink] Make ``ObjectLinkingLayer`` not a paragraph start. (details)
  12. [DAG] Add basic mul-with-overflow constant folding support (details)
  13. [clangd] Fix a race (details)
  14. [dexter] Force dexter tests to use the host triple (details)
  15. [docs][JITLink] More experiments to try to understand sphinx error. (details)
  16. [docs][JITLink] Yet more experiments to try to understand sphinx error. (details)
  17. [docs][JITLink] Remove the JITLink doc for now. (details)
  18. [Utils] collectBitParts - add truncate() handling (details)
  19. [asan] Avoid putting globals in a comdat section when targetting elf. (details)
  20. [ValueTracking] ComputeKnownBits - minimum leading/trailing zero bits in LSHR/SHL (PR44526) (details)
  21. [lldb] Add asserts that prevent construction of cycles in the decl origin tracking (details)
  22. [OpenCL] Allow taking address of functions as an extension. (details)
  23. [lldb][NFC] Rename the second ValueObjectManager to ValueObjectUpdater and remove the dead code (details)
  24. [lldb][NFC] Move trivial ValueObject getters/setters to the header (details)
  25. [AMDGPU] Update s_sendmsg messages (details)
Commit d637235ceed7517287c8b4a724ef58a4681b8ed3 by Lang Hames
[JITLink] Fix comments about JITLink's generic link algorithm.

These comments had gotten out of date with the code.
The file was modifiedllvm/lib/ExecutionEngine/JITLink/JITLinkGeneric.h
Commit 8380d07e398e5f7d6edd877d293a2e28db058d8c by Lang Hames
[JITLink] Add assertions, fix a comment.

The new assertions check that Addressables removed when removing
external or absolute symbols are not referenced by another symbol.

A comment on post-fixup passes is updated: vmaddrs have all been
set up by the time the pre-fixup passes are run, post-fixup passes
run after fixups have been applied to content.
The file was modifiedllvm/include/llvm/ExecutionEngine/JITLink/JITLink.h
Commit ab4648504b259d30cfa0bf12af35246c19017028 by Lang Hames
[docs][JITLink] Add a JITLink design and API document.
The file was modifiedllvm/docs/UserGuides.rst
The file was addedllvm/docs/JITLink.rst
The file was modifiedllvm/docs/Reference.rst
Commit a5e15c770646b05150ca9ca5456ac0a00cf1be5d by Lang Hames
[docs][JITLink] Sphinx does not like '::' in monotype. Try using a
cpp domain expr instead.
The file was modifiedllvm/docs/JITLink.rst
Commit 691c3d59484f6d7f03c68db3b9c5b00c30fe8420 by douglas.yung
Update REQUIRES line in 4 tests that attempt to use arm64 which should be aarch64 not arm.
The file was modifiedlld/test/MachO/header.s
The file was modifiedlld/test/MachO/arm64-reloc-pointer-to-got.s
The file was modifiedlld/test/MachO/arm64-reloc-got-load.s
The file was modifiedlld/test/MachO/arm64-reloc-tlv-load.s
Commit 945b76d42838498740e2aed77a4a8f0168fbe00b by pifon
[mlir][linalg] Fix Linalg roundtrip test.

The test did not check whether the operations can be parsed again after
printing them once.

Differential Revision: https://reviews.llvm.org/D97368
The file was modifiedmlir/test/Dialect/Linalg/roundtrip.mlir
The file was modifiedmlir/lib/Dialect/Linalg/IR/LinalgOps.cpp
Commit 6240f436dd24f6734344c732d41e487662141174 by flo
Recommit "[LV] Allow tryToCreateWidenRecipe to return a VPValue, use for blends."

This reverts the revert commit 437f0bbcd509d0ed71b91ec1f86f48c2f4aae980.

It adds a new toVPRecipeResult, which forces VPRecipeOrVPValueTy to be
constructed with a VPRecipeBase *. This should address ambiguous
constructor issues for recipe sub-types that also inherit from VPValue.
The file was modifiedllvm/lib/Transforms/Vectorize/LoopVectorize.cpp
The file was modifiedllvm/lib/Transforms/Vectorize/VPRecipeBuilder.h
The file was modifiedllvm/test/Transforms/LoopVectorize/single-value-blend-phis.ll
Commit d91cfcebbde502c01922b10f1ce39e4196e95223 by Lang Hames
[docs][JITLink] More attempted fixes for formatting issues in the JITLink doc.

Try using the literal domain for `ObjectLinkingLayer::Plugin` and literal
blocks for multi-line method names.
The file was modifiedllvm/docs/JITLink.rst
Commit 731a2bcaf7469e8411cc07b48d36c8f4040d4455 by Lang Hames
[docs][JITLink] Try explicit literal blocks for monospace list elements.
The file was modifiedllvm/docs/JITLink.rst
Commit e2db0d2fa69a7cadf0d47feb71702d19c9548d17 by Lang Hames
[docs][JITLink] Return to `` for inline literals.

Also awkwardly reformat text to test whether the error is occurring
on the line with the '::', or the previous one.
The file was modifiedllvm/docs/JITLink.rst
Commit a4f9c0f562f9356dada313fb189992318c13ca50 by Lang Hames
[docs][JITLink] Make ``ObjectLinkingLayer`` not a paragraph start.

More experiments as I try to placate sphinx.
The file was modifiedllvm/docs/JITLink.rst
Commit 8082bfe7e58d89f6f065fab101db3481516afdbe by llvm-dev
[DAG] Add basic mul-with-overflow constant folding support

As noticed on D97160
The file was modifiedllvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
The file was modifiedllvm/test/CodeGen/X86/xmulo.ll
Commit c94ecf3f81ca42a98b3b279a7b210b67715f1c41 by kadircet
[clangd] Fix a race

Differential Revision: https://reviews.llvm.org/D97366
The file was modifiedclang-tools-extra/clangd/unittests/ClangdLSPServerTests.cpp
Commit 52bc1c1bd5397ef6ff37214a0186a47aa3348b72 by orlando.hyams
[dexter] Force dexter tests to use the host triple

If the default target and host triple don't match then print the following
message when the lit test runs:

    Forcing dexter tests to use host triple {HOST_TRIPLE}.

If we can't target the host arch then, when lit runs, we mark
the dexter test directories as UNSUPPORTED and print the message:

    Host triple {HOST_TRIPLE} not supported. Skipping dexter tests in
    the debuginfo-tests project.

Reviewed By: rnk

Differential Revision: https://reviews.llvm.org/D96494
The file was addeddebuginfo-tests/dexter-tests/lit.local.cfg
The file was modifieddebuginfo-tests/lit.site.cfg.py.in
The file was modifieddebuginfo-tests/dexter/feature_tests/lit.local.cfg
The file was modifieddebuginfo-tests/lit.cfg.py
Commit 3fbe630e03c2da2d2ffaac9ea476d249412883cc by Lang Hames
[docs][JITLink] More experiments to try to understand sphinx error.
The file was modifiedllvm/docs/JITLink.rst
Commit 038a09120b4e71faaa5f99457c951a1c7ddeceda by Lang Hames
[docs][JITLink] Yet more experiments to try to understand sphinx error.
The file was modifiedllvm/docs/JITLink.rst
Commit 912bc4980e969da1a849c16f1f5ab0c73414d8f2 by Lang Hames
[docs][JITLink] Remove the JITLink doc for now.

I'll reinstate and continue investigation tomorrow.
The file was modifiedllvm/docs/UserGuides.rst
The file was removedllvm/docs/JITLink.rst
Commit b94c215592bdba915455895b2041398dfb2ac44a by llvm-dev
[Utils] collectBitParts - add truncate() handling
The file was modifiedllvm/test/Transforms/InstCombine/bswap.ll
The file was modifiedllvm/lib/Transforms/Utils/Local.cpp
Commit 27830bc2b1b876b1948bcd8ae7ee62819be69758 by pierre.gousseau
[asan] Avoid putting globals in a comdat section when targetting elf.

Putting globals in a comdat for dead-stripping changes the semantic and
can potentially cause false negative odr violations at link time.
If odr indicators are used, we keep the comdat sections, as link time
odr violations will be dectected for the odr indicator symbols.

This fixes PR 47925
The file was modifiedllvm/test/Instrumentation/AddressSanitizer/instrument-section-invalid-c-ident.ll
The file was addedllvm/test/Instrumentation/AddressSanitizer/global_with_comdat.ll
The file was modifiedllvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
The file was modifiedllvm/test/Instrumentation/AddressSanitizer/global_metadata.ll
Commit d65ddca83ff85c7345fe9a0f5a15750f01e38420 by llvm-dev
[ValueTracking] ComputeKnownBits - minimum leading/trailing zero bits in LSHR/SHL (PR44526)

Followup to D72573 - as detailed in https://blog.regehr.org/archives/1709 we don't make use of the known leading/trailing zeros for shifted values in cases where we don't know the shift amount value.

Stop ValueTracking returning zero for poison shift patterns and use the KnownBits shift helpers directly.

Extend KnownBits::shl to combine all possible shifted combinations if both min/max shift amount values are in range.

Differential Revision: https://reviews.llvm.org/D90479
The file was modifiedllvm/lib/Support/KnownBits.cpp
The file was modifiedllvm/lib/Analysis/ValueTracking.cpp
The file was modifiedllvm/test/Transforms/InstSimplify/icmp-constant.ll
Commit 2105912ee0b831d5141146b7700c1934c4185bd6 by Raphael Isemann
[lldb] Add asserts that prevent construction of cycles in the decl origin tracking

LLDB tracks where any imported `clang::Decl` originally came from via a simple
map from 'imported decl' to 'original decl'. That information is used to later
complete parts of the Decl when more information is requested about a certain
Decl (e.g., via the ExternalASTSource interface from Clang).

When finding the 'original decl' for a given decl, the ASTImporterDelegate
essentially just recursively follows the previously mentioned map from
'imported' to 'original decl' until it can find any further 'original decl'. The
final found decl is then the one that will be imported. The recursion is
necessary as in LLDB we don't just import decls from one ASTContext to another,
but also from one ASTContext to another via a (potentially temporary)
ASTContext. For example, the expression parser creates a temporary ASTContext
for parsing the current expression.

The problem with the recursion is however that if we somehow get a cycle into
our mapping, then the ASTImporterDelegate will just infinite recurse. As the
infinite recursion usually happens after the cycle was already created in a code
path such as completing a type, the crash backtraces we get for these bugs are
not very useful. However having the backtrace where the faulty map entry is
created usually makes the code trivial to fix (as there should be some rogue
CopyType call or something similar nearby. See for example D96366).

This patch tries to make these issues easier to track down by putting a bunch of
sanity asserts in the code that fills out the map. All the asserts are just
checking that there is no direct cycle (ASTContext maps to itself) when updating
the origin tracking map.

The assert in the ASTImportDelegate constructor is an `lldbassert` (which also
is getting checked in release builds with disabled asserts) as the code path
there is pretty cold and we can reliably detect a rogue CopyType call from
there.

I also had to update some code in
`ClangASTImporter::ASTImporterDelegate::Imported`. This code already had a
safety check for creating a cycle in the origin tracking map, but it still
constructed an ASTImporter while checking for the cycle (by requesting a
delegate via `GetDelegate` and passing two identical ASTContexts which looks
like a rogue CopyType call to the checks).

Reviewed By: shafik

Differential Revision: https://reviews.llvm.org/D97300
The file was modifiedlldb/source/Plugins/ExpressionParser/Clang/ClangASTImporter.h
The file was modifiedlldb/source/Plugins/ExpressionParser/Clang/ClangASTImporter.cpp
Commit abbdb5639c70d167bd66cd62296927330782c3b4 by anastasia.stulova
[OpenCL] Allow taking address of functions as an extension.

When '__cl_clang_function_pointers' extension is enabled
the parser should allow obtaining the function address.

This fixes PR49264!

Differential Revision: https://reviews.llvm.org/D97203
The file was modifiedclang/test/SemaOpenCL/func.cl
The file was modifiedclang/lib/Parse/ParseExpr.cpp
Commit 4631afdeb3c48f63688d3b097643d61de8e48e2b by Raphael Isemann
[lldb][NFC] Rename the second ValueObjectManager to ValueObjectUpdater and remove the dead code

`ValueObject.h` contains the `ValueObject::ValueObjectManager` type which is
just a typedef for the ClusterManager that takes care of the whole ValueObject
memory management. However, there is also `ValueObjectManager` defined in the
same header which is only used in the curses UI implementation and consists
mostly of dead and completely untested code.

This code been around since a while (it was added in 2016 as
8369b28da0750129ababae357bea98940800a0e0), so I think we shouldn't just revert
the whole patch.

Instead this patch just moves the class to its own header that it isn't just
hiding in the ValueObject header and renames it to `ValueObjectUpdater` that it
at least has a unique name (which I hope also slightly better reflects the
purpose of this class). I also deleted all the dead code branches and functions.

Reviewed By: #lldb, mib, JDevlieghere

Differential Revision: https://reviews.llvm.org/D97287
The file was addedlldb/include/lldb/Core/ValueObjectUpdater.h
The file was modifiedlldb/source/Core/IOHandlerCursesGUI.cpp
The file was addedlldb/source/Core/ValueObjectUpdater.cpp
The file was modifiedlldb/include/lldb/Core/ValueObject.h
The file was modifiedlldb/source/Core/CMakeLists.txt
The file was modifiedlldb/source/Core/ValueObject.cpp
Commit 0512b01ebede34fe5f6244d5ec8dde552fa4b375 by Raphael Isemann
[lldb][NFC] Move trivial ValueObject getters/setters to the header

NFC refactoring that moves the definitions of all the trivial getters/setters to the header file
which is what we usually do in LLVM.

Reviewed By: #lldb, JDevlieghere

Differential Revision: https://reviews.llvm.org/D97298
The file was modifiedlldb/include/lldb/Core/ValueObject.h
The file was modifiedlldb/source/Core/ValueObject.cpp
Commit 67f0620831b41ada45ad0d0364adc4d0db4b1247 by jay.foad
[AMDGPU] Update s_sendmsg messages

Update the list of s_sendmsg messages known to the assembler and
disassembler and validate the ones that were added or removed in gfx9
and gfx10.

Differential Revision: https://reviews.llvm.org/D97295
The file was modifiedllvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
The file was modifiedllvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUInstPrinter.cpp
The file was modifiedllvm/lib/Target/AMDGPU/SIDefines.h
The file was modifiedllvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp
The file was modifiedllvm/test/MC/AMDGPU/sopp.s
The file was modifiedllvm/test/MC/AMDGPU/sopp-err.s
The file was modifiedllvm/lib/Target/AMDGPU/Utils/AMDGPUAsmUtils.h
The file was modifiedllvm/test/MC/AMDGPU/sopp-gfx9.s
The file was modifiedllvm/test/MC/AMDGPU/sopp-gfx10.s
The file was modifiedllvm/test/MC/Disassembler/AMDGPU/sopp_vi.txt
The file was modifiedllvm/lib/Target/AMDGPU/Utils/AMDGPUAsmUtils.cpp
The file was modifiedllvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.h