[NFC][lldb] Make skipIfTargetDoesNotSupportThreads a require decorator (#215614)
Convert `skipIfTargetDoesNotSupportThreads` to `requireThreadSupport` to
clearly mark wasi targets as unsupported for tests which use threads.
[DAG][X86] Avoid slow masked-store folds on Zen and x86-64-v3 (#214187)
PR #145176 added a method (`foldToMaskedStore`) which folds same-address
load/select/store sequences into masked stores. On Zen 1-3 CPUs, this
may select the slow legacy `vpmaskmovd/q` store instead of normal vector
memory operations.
Use `TargetLowering::isTypeDesirableForOp` to mark MSTORE undesirable on
targets with slow masked stores. The fold is enabled by default. We
disable it on Zen 1-3 and x86-64-v3 (for the worst case; here Zen) by
using the new tuning for slow vector mask stores. Explicit masked-store
intrinsics are untouched.
Fixes #213195
mca: https://godbolt.org/z/7brjMzj15
New `slow-vpmaskmov.ll` test added.
[Clang][Driver] Accept `--offload-jobs` without parallel work (#214310)
Clang reported `--offload-jobs` as unused when an active offload
compilation had no device work that could run in parallel. CMake tests
compiler options with `-Werror`, so this warning made HIP/offload option
detection fail. It also caused unnecessary build errors and CMake
workarounds in projects targeting one or several GPU architectures.
`--offload-jobs` sets the maximum number of parallel jobs, not a
required number. An offload compilation with fewer jobs, including zero
or one, is valid and should not produce an unused argument warning. A
normal C++ compilation without offloading still reports the option as
unused; CMake should probe it using a HIP/offload compilation.
Claim and validate the option whenever offloading is active,
independently of whether parallel device jobs are found. Keep job
discovery responsible only for marking work that can run in parallel.
Firewall: Diagnostics - use new rlabel from pfctl, closes https://github.com/opnsense/core/issues/10552
since pftop uses numbers as well, we need to map these to labels too, which means mapping labels to numbers with `pfctl -vvPsr` inside the query_top() function.
NAS-142001 / 27.0.0-BETA.1 / Stop discarding options passed to pool.dataset.create (by creatorcary) (#19488)
`pool.dataset.create` accepted three options and then threw them away:
`encryption_options.algorithm`, `encryption_options.pbkdf2iters`, and
`user_properties`.
Per review, the encryption suite is no longer selectable at all — new
encrypted datasets, zvols and pool roots are always AES-256-GCM.
`encryption_options.algorithm` is removed from the create API along with
`pool.dataset.encryption_algorithm_choices`. Callers that still send it
get a validation error; requests on older API versions have it dropped
by the version adapter and get AES-256-GCM. Existing datasets are
unaffected: `encryption` is a ONETIME property, and reading or unlocking
a dataset created with another suite is unchanged.
The iteration count was passed through `properties`, where the crypto
nvlist — which always carries the default — overwrote it, so a request
for 5000000 iterations silently produced 1300000. It now goes through
the crypto configuration alongside the key format and key.
[23 lines not shown]
[lldb] Don't assume a category dump order in TimeTest (#213100)
There is no guarantee that the categories are sorted by the time they
took to finish. This is especially flaky on a loaded host, causing the
test to fail.
Find the categories by their name instead. This fixes TimeTest being
flaky (on Windows).
[AMDGPU] Fold image load/store with known-zero slice index to non-arrayed form (#214744)
Fold an arrayed image load or store whose array slice is a known-zero
constant into the equivalent non-arrayed op, dropping the slice
coordinate. Slice 0 is the base layer, which is the texel the
non-arrayed op addresses. Dropping the coordinate also removes the
materialization of the zero, freeing a VGPR.
Covers 1D_ARRAY -> 1D, 2D_ARRAY -> 2D and 2D_MSAA_ARRAY -> 2D_MSAA,
keeping fragid for the MSAA case. The mapping is a new NonArrayDim
field on MIMGDimInfo, defaulting to the dim itself so that CUBE,
whose extra component is a face rather than a layer, is left alone.
[lldb-vscode] make "integratedTerminal" the default console (#171429)
This patch changes the default `console` from `"internalConsole"` to
`"integratedTerminal"`. `"internalConsole"` in VSCode does not support
sending stdin to the debuggee on any platform, whereas
`"integratedTerminal"` does.
This patch fixes https://github.com/llvm/llvm-project/issues/162887.
[llvm][utils] Correct release package links for Windows (#215770)
The new Wix installer has a .msi extension instead of .exe. I've not
seen an installer for Windows on Arm or 32-bit x86, but I'm assuming
they follow the same format.
-LLVM-23.1.0-rc3-win64.[exe]
+LLVM-23.0.0.3-win64.[msi]
The change to Wix was done in
https://github.com/llvm/llvm-project/pull/200734.
Wix does not allow versions with characters in them. Fixed in the builds
by https://github.com/llvm/llvm-project/pull/215030, and I've done an
equivalent in Python.
-clang+llvm-[23.1.0-rc3]-x86_64-pc-windows-msvc.tar.xz
+clang+llvm-[23.0.0.3]-x86_64-pc-windows-msvc.tar.xz