Changes

Summary

  1. [Release] Increase test-release.sh verbosity (details)
  2. [clangd] Semantic highlighting for constrained-parameter (details)
  3. [NFC] Inline variable (details)
  4. [OpenMP][libomptarget] Notify the plugins regarding new mapping/unmappings (details)
  5. [mlir][llvm] Fix bug in constant import from LLVM IR. (details)
  6. [RISCV][NFC] Update debug message for XTHeadVdot (details)
  7. [NFC][OpenMP][libomptarget] Fix format in PluginInterface header (details)
  8. [InstCombine] precommit tests for icmp with bool range; NFC (details)
  9. [Modules] Recreate file manager for ftime-trace when compiling a module (details)
  10. [mlir][llvm] Drop opaque ptr test in LLVM IR import. (details)
  11. [Instcombine] precommit tests for icmp with intrinsic look through trunc; NFC (details)
  12. [mlir][tensor][bufferize] tensor.empty does not define the result tensor contents (details)
  13. [libc] Fix pthread argument for scudo integration tests when using GCC (details)
  14. [TLI] SimplifyMultipleUseDemandedBits - remove insert_subvector(undef, x, 0) fold (details)
Commit 8d2d8e022e3c709a17b97d351b529e40ac28f4df by ro
[Release] Increase test-release.sh verbosity

`test-release.sh` is too silent in some cases:

- Only the build proper is run verbosely, but `check-all` is not.
- `lit` is run without `-v`, so in case of failures one cannot see what's
actually wrong.

This patch fixes both issues, running all `${MAKE}` invocations with
`$Verbose` (except for `${MAKE} install` where it would only add noise),
and running `lit` with `-v`.

Tested on `x86_64-pc-linux-gnu` and `arm64-apple-darwin21.6`.

Differential Revision: https://reviews.llvm.org/D143249
The file was modifiedllvm/utils/release/test-release.sh (diff)
Commit 6c4691391419814d0fd8fcd92c99026813c35b47 by zeratul976
[clangd] Semantic highlighting for constrained-parameter

Differential Revision: https://reviews.llvm.org/D142871
The file was modifiedclang-tools-extra/clangd/unittests/SemanticHighlightingTests.cpp (diff)
The file was modifiedclang-tools-extra/clangd/FindTarget.cpp (diff)
Commit 80eacb1bc21f185ee62814e302c135cadbf1d26c by gchatelet
[NFC] Inline variable
The file was modifiedllvm/lib/Target/CSKY/CSKYISelLowering.cpp (diff)
The file was modifiedllvm/lib/Target/LoongArch/LoongArchISelLowering.cpp (diff)
Commit 6ca034644d59dde3e00c1a41196bb9ba44bc1b17 by kevin.sala
[OpenMP][libomptarget] Notify the plugins regarding new mapping/unmappings

The NextGen plugins use the information regarding new mapping/unmappings to
lock/unlock the corresponding host buffer and speed up the host-device memory
transfers involving those buffers. The locking/unlocking is disabled by default
and can be enabled by the LIBOMPTARGET_LOCK_MAPPED_HOST_BUFFERS envar. The
envar accepts boolean values (on/off) and a special option:
  - off:       Do not lock mapped host buffers (default).
  - on:        Lock mapped host buffers automatically, but do not report lock
               failures if the plugin fails to lock them.
  - mandatory: Lock mapped host buffers automatically and treat locking failures
               in the plugins as fatal errors. This option may be useful for
               debugging purposes.

Differential Revision: https://reviews.llvm.org/D142514
The file was modifiedopenmp/libomptarget/plugins-nextgen/common/PluginInterface/PluginInterface.cpp (diff)
The file was modifiedopenmp/libomptarget/include/omptargetplugin.h (diff)
The file was modifiedopenmp/libomptarget/include/device.h (diff)
The file was modifiedopenmp/libomptarget/include/rtl.h (diff)
The file was modifiedopenmp/libomptarget/src/rtl.cpp (diff)
The file was modifiedopenmp/libomptarget/plugins-nextgen/amdgpu/src/rtl.cpp (diff)
The file was modifiedopenmp/libomptarget/test/lit.cfg (diff)
The file was modifiedopenmp/libomptarget/plugins-nextgen/generic-elf-64bit/src/rtl.cpp (diff)
The file was modifiedopenmp/libomptarget/src/omptarget.cpp (diff)
The file was modifiedopenmp/libomptarget/plugins-nextgen/common/PluginInterface/PluginInterface.h (diff)
The file was modifiedopenmp/libomptarget/plugins-nextgen/cuda/src/rtl.cpp (diff)
The file was modifiedopenmp/libomptarget/src/device.cpp (diff)
Commit b6a2e33500cd29c8cce40acd08ff1dbd7559656f by tobias.gysi
[mlir][llvm] Fix bug in constant import from LLVM IR.

The revision addresses a bug during constant expression traversal
when importing LLVM IR. A constant expression may have cyclic
dependencies, for example, when a constant is initialized with its
address. This revision extends the constant expression traversal
to detect cyclic dependencies and adds a test to verify this
case is handled properly.

Reviewed By: Dinistro

Differential Revision: https://reviews.llvm.org/D143152
The file was modifiedmlir/test/Target/LLVMIR/Import/global-variables.ll (diff)
The file was modifiedmlir/test/Target/LLVMIR/Import/incorrect-constant-caching.ll (diff)
The file was modifiedmlir/test/Target/LLVMIR/Import/incorrect-constexpr-inst-caching.ll (diff)
The file was modifiedmlir/lib/Target/LLVMIR/ModuleImport.cpp (diff)
The file was modifiedmlir/test/Target/LLVMIR/Import/constant.ll (diff)
Commit ba8b8a73fcb6b830e63cd8e20c6e13b2a14d69bf by philipp.tomsich
[RISCV][NFC] Update debug message for XTHeadVdot

As we prepare the tree to add more vendor-defined extensions that are
originating with T-Head, the debug message announcing the XTheadVdot
decoder namespace should refer to XTHeadVdot instead of all T-Head
custom extensions.
The file was modifiedllvm/lib/Target/RISCV/Disassembler/RISCVDisassembler.cpp (diff)
Commit 230d97685384bcb85253deeec546ee2a1b8af567 by kevin.sala
[NFC][OpenMP][libomptarget] Fix format in PluginInterface header
The file was modifiedopenmp/libomptarget/plugins-nextgen/common/PluginInterface/PluginInterface.h (diff)
Commit 322a2ed3557a3cdba9ee459d46bc1fc0c159d850 by chenglin.bi
[InstCombine] precommit tests for icmp with bool range; NFC
The file was modifiedllvm/test/Transforms/InstCombine/icmp-range.ll (diff)
Commit 7c97c574cc795705737cd0b73daf6867406fe624 by yedeng.yd
[Modules] Recreate file manager for ftime-trace when compiling a module

Close https://github.com/llvm/llvm-project/issues/60544.

The root cause for the issue is that when we compile a module unit, the
file manager (and proprocessor and source manager) are owned by AST
instead of the compilaton instance. So the file manager may be invalid
when we want to create a time-report file for -ftime-trace when we are
compiling a module unit.

This patch tries to recreate the file manager for -ftime-trace if we
find the file manager is not valid.
The file was modifiedclang/tools/driver/cc1_main.cpp (diff)
The file was modifiedclang/lib/Frontend/FrontendAction.cpp (diff)
The file was addedclang/test/Modules/ftime-trace.cppm
The file was modifiedclang/lib/Frontend/CompilerInstance.cpp (diff)
Commit 7dd974a11532c7495f54168f69d6ab3942308fbe by tobias.gysi
[mlir][llvm] Drop opaque ptr test in LLVM IR import.

After switching all LLVM IR import tests to opaque pointers
the specialized opaque pointer test file is redundant.

Reviewed By: Dinistro

Differential Revision: https://reviews.llvm.org/D143370
The file was removedmlir/test/Target/LLVMIR/Import/opaque.ll
The file was modifiedmlir/test/Target/LLVMIR/Import/instructions.ll (diff)
Commit defa9b8d5a05cebe9757e7ef8296638e2485a167 by chenglin.bi
[Instcombine] precommit tests for icmp with intrinsic look through trunc; NFC
The file was modifiedllvm/test/Transforms/InstCombine/cmp-intrinsic.ll (diff)
Commit 330372f2c58de12d711062f298c6472fc6a51fc5 by springerm
[mlir][tensor][bufferize] tensor.empty does not define the result tensor contents

This is encoded in the `BufferizableOpInterface` via `resultBufferizesToMemoryWrite = false`.

Differential Revision: https://reviews.llvm.org/D143181
The file was modifiedmlir/lib/Dialect/Tensor/Transforms/BufferizableOpInterfaceImpl.cpp (diff)
Commit 6c7e047b40613729a6fe250d9997d86a04f0e000 by david.spickett
[libc] Fix pthread argument for scudo integration tests when using GCC

This adds "-pthreads" which appears to be a clang only
alias for "-pthread" (all the drivers check for both).

Use "-pthread" instead to be compatible with gcc.

Otherwise you get:
FAILED: bin/libc-gwp-asan-uaf-should-crash
: && /usr/bin/g++-11 <...> -pthreads <...> projects/libc/test/integration/scudo/liblibc_for_scudo_integration_test.a && :
g++-11: error: unrecognized command-line option ‘-pthreads’; did you mean ‘-pthread’?

Reviewed By: michaelrj

Differential Revision: https://reviews.llvm.org/D143258
The file was modifiedlibc/test/integration/scudo/CMakeLists.txt (diff)
Commit f7b10467b63f09ab74e67d4002b3e11601091882 by llvm-dev
[TLI] SimplifyMultipleUseDemandedBits - remove insert_subvector(undef, x, 0) fold

SimplifyMultipleUseDemandedBits shouldn't be creating general nodes on the fly, it should mainly just peek through them (although we do currently allow creation of new bitcasts and constant folding).

This is mostly a win - by avoiding new nodes we avoid a lot of hasOneUse limitations inside x86 shuffle combining - the main regressions I've noticed are where we've ended up with multiple insert_subvector(undef, x, 0) nodes, widening x to different vector widths - that should hopefully be improved when we remove the last of the vector widening from combineX86ShufflesRecursively for Issue #45319
The file was modifiedllvm/test/CodeGen/X86/oddshuffles.ll (diff)
The file was modifiedllvm/test/CodeGen/AArch64/vecreduce-and-legalization.ll (diff)
The file was modifiedllvm/test/CodeGen/X86/vector-interleaved-load-i32-stride-5.ll (diff)
The file was modifiedllvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp (diff)
The file was modifiedllvm/test/CodeGen/X86/vector-interleaved-store-i32-stride-7.ll (diff)
The file was modifiedllvm/test/CodeGen/X86/horizontal-sum.ll (diff)
The file was modifiedllvm/test/CodeGen/X86/vector-interleaved-store-i64-stride-8.ll (diff)
The file was modifiedllvm/test/CodeGen/X86/vector-interleaved-store-i64-stride-6.ll (diff)
The file was modifiedllvm/test/CodeGen/X86/vector-interleaved-store-i64-stride-7.ll (diff)
The file was modifiedllvm/test/CodeGen/X86/vector-interleaved-store-i32-stride-5.ll (diff)
The file was modifiedllvm/test/CodeGen/X86/vector-interleaved-store-i64-stride-3.ll (diff)