[AMDGPU][Attributor] Make `AAAMDFlatWorkGroupSize` honor existing attribute
If a function has `amdgpu-flat-work-group-size`, honor it in `initialize` by
taking its value directly; otherwise, it uses the default range as a starting
point. We will no longer manipulate the known range, which can cause issues
because the known range is a "throttle" to the assumed range such that the
assumed range can't get widened properly in `updateImpl` if the known range is
not set properly for whatever reasons. Another benefit of not touching the known
range is, if we indicate pessimistic state, it also invalidates the AA such that
`manifest` will not be called. Since we honor the attribute, we don't want and
will not add any half-baked attribute added to a function.
Need to call unsleep before doing the SSTOP check. We need to ensure that
if a sleep is interrupted but the thread is also stopped that on a wakeup
the thread runs again.
OK mpi@
[RISCV] Add +optimized-nfN-segment-load-store (#114414)
This is a follow up to #111511, where after benchmarking we learnt that
the Banana Pi F3 has fast segmented loads for not just NF=2, but also
NF=3 and NF=4:
https://github.com/preames/bp3-microarch#vlseg_lmul_x_sew_throughput
This adds tuning features to allow these segment loads and stores to be
costed cheaper and enables it for the spacemit-x60.
It also enables +optimized-nf2-segment-load-store by default in the
generic tuning to maintain the previous behaviour when compiled without
-mcpu or -mtune.
www/davix: fix build with clang 19
Clang 19 has become more strict about assigning to const class members,
resulting in errors similar to:
/wrkdirs/usr/ports/www/davix/work/davix-R_0_8_7/src/libs/rapidjson/document.h:319:82: error: cannot assign to non-static data member 'length' with const-qualified type 'const SizeType' (aka 'const unsigned int')
319 | GenericStringRef& operator=(const GenericStringRef& rhs) { s = rhs.s; length = rhs.length; }
| ~~~~~~ ^
/wrkdirs/usr/ports/www/davix/work/davix-R_0_8_7/src/libs/rapidjson/document.h:325:20: note: non-static data member 'length' declared const here
325 | const SizeType length; //!< length of the string (excluding the trailing NULL terminator)
| ~~~~~~~~~~~~~~~^~~~~~
Upstream rapidjson has fixed this in commit 3b2441b8 [1], which simply
removes the assignment operator.
[1] https://github.com/Tencent/rapidjson/commit/3b2441b8
PR: 282515
Approved by: yuri (maintainer)
[3 lines not shown]
math/openfst-vosk: fix build with clang and libc++ 19
With clang and libc++ 19 math/openfst-vosk fails to compile, with errors
similar to:
./../include/fst/fst.h:704:15: error: no viable overloaded '='
704 | isymbols_ = impl.isymbols_ ? impl.isymbols_->Copy() : nullptr;
| ~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/v1/__memory/unique_ptr.h:231:67: note: candidate function not viable: no known conversion from 'SymbolTable *' to 'unique_ptr<SymbolTable>' for 1st argument
231 | _LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR_SINCE_CXX23 unique_ptr& operator=(unique_ptr&& __u) _NOEXCEPT {
| ^ ~~~~~~~~~~~~~~~~
/usr/include/c++/v1/__memory/unique_ptr.h:241:67: note: candidate template ignored: could not match 'unique_ptr<_Up, _Ep>' against 'SymbolTable *'
241 | _LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR_SINCE_CXX23 unique_ptr& operator=(unique_ptr<_Up, _Ep>&& __u) _NOEXCEPT {
| ^
/usr/include/c++/v1/__memory/unique_ptr.h:263:67: note: candidate function not viable: no known conversion from 'SymbolTable *' to 'nullptr_t' (aka 'std::nullptr_t') for 1st argument
263 | _LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR_SINCE_CXX23 unique_ptr& operator=(nullptr_t) _NOEXCEPT {
| ^ ~~~~~~~~~
/usr/include/c++/v1/__memory/unique_ptr.h:138:59: note: candidate function (the implicit copy assignment operator) not viable: no known conversion from 'SymbolTable *' to 'const unique_ptr<SymbolTable>' for 1st argument
138 | class _LIBCPP_UNIQUE_PTR_TRIVIAL_ABI _LIBCPP_TEMPLATE_VIS unique_ptr {
[17 lines not shown]
net/wifi-firmware-*kmod: update firmware for iwlwifi, rtw88, rtw89
The drivers are updated in main. Add newer supported firmware along
with it while (manually) keeping some older revisions in some drivers
for the stable braches.
Sponsored by: The FreeBSD Foundation
Reviewed by: jrm, (cy previous revision)
Differential Revision: https://reviews.freebsd.org/D47142
(cherry picked from commit 1a0146ce027d0c4315042d541458fb9831268e48)
net/wifi-firmware-kmod: add a release flavor
Add a flavor for a selection of wireless firmware packages to put
onto a relase media. There is no point shipping firmware for the
installer if there is no active driver for them yet.
Sponsored by: The FreeBSD Foundation
Reviewed by: jrm
Differential Revision: https://reviews.freebsd.org/D47141
(cherry picked from commit a4a64114c919e53333f51960c3fdac0c9c653057)
net/wifi-firmware-kmod: stop building kmods on main and 14.2 and on
In Feb 2024 a feature to firmware(9) was introduced to be able to load
plain firmware files (not kernel modules) from /boot/firmware/ .
If the system is modern enough stop building kernel modules but simply
copy the firmware files in.
This makes the entire build process a lot simpler.
For older versions we still have to generate kernel modules (though
they all shipped with firmware in src so we can possibly unsupport
them in the future).
Sponsored by: The FreeBSD Foundation
Reviewed by: jrm, imp
Differential Revision: https://reviews.freebsd.org/D47068
(cherry picked from commit 7a02aa98f615f499ee7e3cb87cec9d3da4f3d80b)