[GlobalISel][IRTranslator] Fix inserting a <1 x Ty> into a <1 x Ty> vector (#235828)
Fixes #235314.
`IRTranslatorImpl::translateInsertVector` copied operand 0 (the
destination)
when both the inserted vector and the destination vector have one
element.
Inserting a `<1 x Ty>` at index 0 replaces the whole destination, so the
result must be operand 1.
```
- %2:_(s32) = COPY %0 ; dst
+ %2:_(s32) = COPY %1 ; src
```
Tests in `irtranslator-subvector.ll`: the one-element insert checks now
expect the source operand, the intrinsic suffixes match the argument
types,
[3 lines not shown]
Fix direct reads of blocks pending free
Direct reads only check the on-disk block pointer for holes, so they
can read stale data after a block has been freed but before the free
has synced. Share buffered read hole detection with direct reads to
honor pending frees as well.
Keep cached data ahead of hole detection and preserve the transaction
ordering of block clone and direct write overrides. Retain the block
pointer recheck after dnode_block_freed() for concurrent syncing.
Reviewed-by: Brian Behlendorf <behlendorf1 at llnl.gov>
Signed-off-by: Wale Zhang <wale.zhang.ftd at gmail.com>
Closes #19633
[cmake] Findzstd: probe AIX .a archives for shared objects (#235575)
On AIX, shared libraries are conventionally packaged as `.a` archives
containing shared-object members. The existing heuristic in
`Findzstd.cmake` classifies any `.a` file (other than `.dll.a` import
libraries) as a static library, based solely on the file suffix.
Fix this by probing the found library on AIX. Treat it as shared if `ar
-t` lists a member ending in `.imp`. Otherwise, treat it as shared if
`dump -ov` shows a member whose `Flags` include `SHROBJ` but not
`LOADONLY`. The file-suffix heuristic is preserved unchanged for all
other platforms.
Assisted-by: IBM Bob
---------
Co-authored-by: Hubert Tong <hstong at ca.ibm.com>
Attributor: Fix use-after-free clearing tail calls in AAPrivatizablePtr (#239070)
The tail calls collected during manifest may be erased by a signature
rewrite of their callee before the repair callback runs. Find them in
the callback instead.
Co-authored-by: Claude Opus 5.5 <noreply at anthropic.com>
x11-wm/devilspie2-devel: Fix BadMatch when attempting to minimize
A BadMatch error occurs when trying to minimize a CSD application in
fullscreen mode.
[CIR][OpenMP] Add support for 'distribute parallel for' with 'target teams'
Adds support for handling the full '[target] teams distribute parallel for'.
Introduces setting the omp.composite attibute for the 'distribute parallel for'
composite construct.
Assisted-by: Cursor / Claude Sonnet 5 High
[CIR][OpenMP] Add initial support for distribute
This patch adds initial support for the OpenMP 'distribute' directive. Basic
code generation for the standalone and combined cases is introduced. Support
for clauses will be added in the future. The composite 'teams distribute
parallel for' form will be added in a subsequent patch.
Assisted-by: Cursor / Claude Sonnet 5 High
[CIR][OpenMP] Add support for omp teams
This patch adds support for the OpenMP 'teams' directive, both standalone
and as the combined `target teams` construct. isCombinableLeaf now also
recognizes teams, so an explicitly-nested `target` + `teams` pair gets
the same omp.combined marking as the combined case.
Assisted-by: Cursor / Claude Sonnet 5 High
[CIR][OpenMP] Add support for host_eval so that SPMD kernels can be used
This patch adds support for host_eval so that SPMD kernels and in the future
num_threads and other clauses can be implemented correctly.
Assisted-by: Cursor / Claude Sonnet 5 High
[CIR][OpenMP] Add support for the OpenMP 'for' directive
This patch adds support for wsloop in ClangIR: the `for` directive and its
combined forms `parallel for` and `target parallel for`. This is lowered to an
omp.wsloop + omp.loop_nest, nested utilizing the existing queue-based
decomposition.
Assisted-by: Cursor / Claude Sonnet 5 High
[libc][annex_k] Terminate abort_handler_s through OSUtil instead of abort
Code under src/__support must not depend on public entrypoints such as
src/stdlib/abort.h and must stay OS independent. Terminate through the
OSUtil exit abstraction instead, following the precedent in libc_assert.h.
Mk/Uses/cran.mk: Respect TEST_ENV in do-test
Prior to this change, MAKE_ENV was passed to do-test, so R-cran ports
could not set separate environments for installing and testing.
devel/R-cran-rJava: Drop the workaround that added test variables to
MAKE_ENV and set TEST_ENV directly.
Reviewed by: longros
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D60845
[libc][annex_k] Terminate abort_handler_s through OSUtil instead of abort
Code under src/__support must not depend on public entrypoints such as
src/stdlib/abort.h and must stay OS independent. Terminate through the
OSUtil exit abstraction instead, following the precedent in libc_assert.h.
Co-Authored-By: Claude Fable 5.1 <noreply at anthropic.com>