[SystemZ, LoopVectorizer] Enable vectorization of epilogue loops. (#172925)
This enables vectorization of epilogue loops produced by LoopVectorizer on
SystemZ.
LoopVectorizationCostModel::isEpilogueVectorizationProfitable() and
TTI.preferEpilogueVectorization() have been refactored slightly so that
targets can override preferEpilogueVectorization(ElementCount Iters) and
directly control this, whereas before this depended on
TTI.getMaxInterleaveFactor() as well.
The Iters passed to preferEpilogueVectorization() reflects the total number
of scalar iterations performed in the vectorized loop (including interleaving).
The default implementation of preferEpilogueVectorization() now subsumes
the old check against getMaxInterleaveFactor(). This patch should be NFC for
other targets.
[AMDGPU] Fix caller/callee mismatch in SGPR assignment for inreg args
On the callee side, `LowerFormalArguments` marks SGPR0-3 as allocated in
`CCState` before running the CC analysis. On the caller side, `LowerCall` (and
GlobalISel's `lowerCall`/`lowerTailCall`) added the scratch resource to
`RegsToPass` without marking it in `CCState`. This caused `CC_AMDGPU_Func` to
treat SGPR0-3 as available on the caller side, assigning user inreg args there,
while the callee skipped them without marking it in `CCState`. This caused
`CC_AMDGPU_Func` to treat SGPR0-3 as available on the caller side, assigning
user inreg args there, while the callee skipped them.
[DAGCombiner] Add legality check for CLMULR fold to prevent infinite loop (#182376)
The bitreverse(clmul(bitreverse, bitreverse)) -> clmulr fold was missing
a legality check, causing an infinite loop when CLMULR isn't supported
on the target. Added the check to match other folds in visitBITREVERSE.
Fixes #182270
multimedia/lives: Improve port
- Fix build with FFMPEG option, but mark it BROKEN:
"Crashes at runtime if the FFMPEG option is enabled".
- Replace PORTVERSION with DISTVERSION.
- Merge gettext-runtime and gettext-tools to gettext in USES.
- Split long OPTIONS_DEFINE.
- Remove NLS from OPTIONS_DEFINE - NLS is enabled by default by ports
framework.
- Remove NLS_USES=gettext-tools - gettext already in USES.
- Refresh patch-jack1.
doc/pkg-vulnerabilities: add rails eol and clean up
* Tweak package names for older Ruby on Rails pacakges.
* Add eol for Ruby on Rails packages 7.0 and 7.1.
* Add php81* with eol.
[NFC][AMDGPU] Add test showing caller/callee SGPR mismatch for inreg args
Add a test demonstrating a bug where the caller and callee disagree on which
SGPRs hold user inreg arguments when there are enough to reach the SGPR0-3
range.
On the callee side, `LowerFormalArguments` marks SGPR0-3 as allocated in
`CCState` before the CC analysis runs. On the caller side, `LowerCall` adds the
scratch resource to `RegsToPass` without marking SGPR0-3 in `CCState`. This
causes `CC_AMDGPU_Func` to assign user inreg args to SGPR0-3 on the caller side
(they appear free) while the callee skips them.
In the test, the caller writes arg 0 (value 42) to s0, but the callee reads arg
0 from s16.
[CIR] Emit cir.zero directly in Vector logical ops (#182703)
Emit `cir.zero` directly instead of `vec.create<n, 0>` that will be
folded to `cir.const_vector<n, 0>` later
graphics/cloudcompare: Update 2.12.4 => 2.13.2, take maintainership
* Add WWW for source code repository.
* Static tarball is available, but not used, as GH_TUPLE is needed
for bundled external libraries and 3-rd party plugins.
* GL is needed for the main application, not for the plugins only.
* Build PLUGIN_IO_QPDAL unconditionally, just like other plugins.
* Supply *.desktop with *.png files from the previous version, as
upstream doesn't ship them anymore. Fix post-install accordingly.
* Fix plugin path detection actually enabling plugins autoloading.
* Improve COMMENT and pkg-descr
Reviewed by: arrowd@
Approved by: db@, yuri@ (Mentors, implicit)
Differential Revision: https://reviews.freebsd.org/D55434
kernel/rman: Fix error return in sysctl_rman().
Matt changed the error handling in 869748ea0626d3966a0b0e1a8223de70ef05
but forgot to return 'error' from now on.
This fixes devinfo -r (show hardware resource information).
[llvm] Remove the docs for the (now removed) LLVM test-suite Makefiles (#179288)
The LLVM test suite used to provide a Makefile-based suite, which had
been deprecated and mostly unmaintained for many years. As explained in
https://discourse.llvm.org/t/llvm-test-suite-removing-the-deprecated-makefiles,
we recently got consensus to remove that test suite, which was done in
llvm/llvm-test-suite#320. This patch cleans up the related
documentation.