[AMDGPU][GFX1250] Implement offset handling in s.buffer.load (#178389)
Divergent path of s.buffer.load must handle 32b offset extension
behaviour on GFX1250.
Tests in llvm.amdgcn.s.buffer.load.ll are rewritten to avoid using
export instructions not available on GFX1250.
[WebAssembly] Fix crash in ReplaceNodeResults for ANY_EXTEND_VECTOR_INREG (#178374)
Fixes a crash during type legalization by allowing
ISD::ANY_EXTEND_VECTOR_INREG to fall back to default expansion instead
of hitting llvm_unreachable.
Fixed: #177209
(cherry picked from commit 16d8d4b84edd257a81b243767d7b6bd62bbfb9fa)
[LifetimeSafety] Handle temporaries of non-trivial view types (#177878)
Fixes https://github.com/llvm/llvm-project/issues/177802
This enables the analysis to correctly track lifetimes through
non-trivial view types that require temporary binding due to having a
destructor.
This is fixed by handling `MaterializeTemporaryExpr` even for
lifetime-extended temporaries and fixing the flow of origins.
workflows/release-tasks: Add missing needs tag to release-lit job (#178224)
The job references variables from the validate-tag job, so it needs to
have it listed in the 'needs' tag. This is why this job failed for the
22.1.0-rc2 release.
(cherry picked from commit 7901e2d04c553f6b9e17800059be8cd702c65bac)
sysutils/fluent-bit: fix problem with tail module
On FreeBSD, userland inotify functions do not accept IN_IGNORED and
IN_Q_OVERFLOW flags (they are only returned from system calls by
kernel), and if specified, invokes an error.
PR: 292629
Submitted by: Hiroo Ono
(cherry picked from commit bd220a9cae5310798cdd5788e8e8805c8e7c61e0)
[flang] Remove `AmbiguousStructureConstructor` warnings (#178088)
Remove `AmbiguousStructureConstructor` warnings. This removes harmless
warnings about standards-conforming generic function references that
are never ambiguous with structure constructors.
(cherry picked from commit 5136b04dd2aaeb3cbc724c0015e7f06ed2408e1a)
[flang] Document experimental support for multi-image features (#178011)
This PR updates flang's Fortran standard conformance documentation to
reflect the recent addition of experimental support for multi-image
features.
PRs implementing that support include:
* #151675
* #154081
* #154770
* #154166
* #165573
(cherry picked from commit a58038307a604096bcc2ba0e6635be339ea704b7)
[lldb-dap] Fix debugger initialisation order in DAP::InitializeDebugger (#178022)
Validate the debugger before assigning it to the member debugger to
avoid setting an invalid debugger on error.
We usually have an existing session with that debugger ends up messing
with that session.
(cherry picked from commit fa3b3a0be13c3921d983375b1d0ac03d3d2b725d)
[ShrinkWrap] Ensure we do not crash on unreachable blocks. (#178009)
Since we started optimizating always-true branches in the AArch64
backend (like cbz wzr), shrink wrap has been exposed to some block
structures that it does not handle correctly, usually with unreachable
blocks. This prevents the call to FindIDom/findNearestCommonDominator
from failing when looking at the predecessors of a loop if one is
unreachable.
Fixes: #177866
(cherry picked from commit f5de33dbf59a30246a6113e507e0cb41c21b9e45)
[IRMover] Use signature for exact definition (#177381)
It is possible for optimizations to modify attributes on exact
definitions. In particular, DeadArgumentElimination may find that a
certain argument is dead, and replace arguments in calls with `poison`.
This requires dropping the `noundef` attribute on the argument.
When ThinLTO import is performed, the destination module already has a
declaration for the function, and the definition is not imported (e.g.
because it is noinline), we currently simply retain the original
declaration. This is incorrect if call with poison arguments were
imported, as the calls become immediate UB.
There was a previous attempt to address this in
https://reviews.llvm.org/D139209. What that patch did was to fix up the
attributes of the declaration after the fact, dropping UB implying
attributes that are not present on the definition. It was reverted
because it made an incorrect assumption that the signature between the
declaration and definition must match.
[12 lines not shown]
[SystemZ] Precommit for moving some functions around. (#177441)
In preparation for #171066 (FP16 vector support).
(cherry picked from commit e0a132691fe9499857d95dc1d26994f82f7f4a44)
[SystemZ] Support fp16 vector ABI and basic codegen. (#171066)
- Make v8f16 a legal type so that arguments can be passed in vector
registers. Handle fp16 vectors so that they have the same ABI as other
fp vectors.
- Set the preferred vector action for fp16 vectors to "split". This will
scalarize all operations, which is not always necessary (like with
memory operations), but it avoids the superfluous operations that result
after first widening and then scalarizing a narrow vector (like v4f16).
Fixes #168992
(cherry picked from commit c999e9a4fe8870f7943551d9ff8b575eb282d16d)
[flang] fix DIR IVDEP for array assignments inside loops (#177940)
The access attribute set on hlfir.assign for arrays was lost in
InlineHLFIRAssign.cpp. This patch propagates it to the creates loads and
stores.
(cherry picked from commit c2d510f5bdabf71f4f5fde36a37faf5565762195)
[ARM] Fix inlining issue in ARM (#169337)
There is an issue on ARM where a function wont be inlined due to
mismatching target features between caller and callee.
The caller has `HasV8Ops` and `FeatureDotProd` and the callee does not,
but AFAIK this should not be a problem.
https://godbolt.org/z/f19h3zT66 is an example showing how the call is
not inlined on armv7.
The expected asm output would be something like:
```asm
.fnstart
vsdot.s8 q0, q1, d4[0]
bx lr
.Lfunc_end0:
```
Thanks to @Amichaxx we managed to narrow it down and now can resolve
this problem by adding `ARM::FeatureDotProd, ARM::HasV8Ops` to
InlineFeaturesAllowed in llvm/lib/Target/ARM/ARMTargetTransformInfo.h,
[10 lines not shown]
audio/beets: update 2.0.0 -> 2.5.1
Changelog: https://github.com/beetbox/beets/releases/tag/v2.5.1
Major changes:
Unbreak audio/beats. The breakage was due to an sqlite2
requirement, disabled in ports, to support Double-quoted String
Literals.
Also reorder sections and fix style to make portlint and portfmt
happy.
PR: 289098
Reported by: vishwin
Approved by: Leonhard Wachutka <leonhard at wachutka.eu> (maintainer)
devel/py-lap: New port
Lap is a linear assignment problem solver using Jonker-Volgenant algorithm.
It's required by the latest version of audio/beet.
PR: 289098