[SLP] Retry vectorization of FMA candidates after block processing
fadd/fsub instructions that canConvertToFMA returns valid for were
unconditionally skipped in tryToVectorize, causing regressions
where SLP failed to vectorize loops containing such patterns even when
FMA formation never fires.
Collect skipped FMA candidates during vectorizeChainsInBlock and retry
them with AllowFMACandidates=true after all other instructions in the
block have been processed. The cost model still rejects the retry when
actual FMA formation is more profitable (e.g. FMA4 on bdver2), so
existing FMA-profitable cases are unaffected.
Fixes #198040
Reviewers: davemgreen, bababuck, RKSimon, hiraditya
Pull Request: https://github.com/llvm/llvm-project/pull/198174
[flang-rt] Remove library dependency from flang-rt to offload (#198793)
Summary:
We need the offload project's RPC thread to handle the IO requests
originating from the GPU. Previously we did the 'easy' solution and just
linked this handler directly into the offload proejct. This is not ideal
because it prevents people's ability to build and configure libraries
separately.
This PR inverts the dependency, flang-rt now conditionally enables
support using the existing RPC callback mechanism. The cost is that
every flang-rt program now pays the cost of a boolean compare, the
benefit is the libraries are now independent of each-other.
py-pdf: updated to 6.12.0
6.12.0, 2026-05-21
Security (SEC)
- Disallow cross-reference streams with zero-only width values
- Avoid excessive whitespace in layout mode text extraction
New Features (ENH)
- Implement SASLprep (RFC 4013) for AES-256 password normalization
- CID font resource from font file to encode more characters
Performance Improvements (PI)
- Optimize retrieval of named destinatinos in reader
Bug Fixes (BUG)
- Fix TreeObject.insert_child KeyError on fresh children
Robustness (ROB)
[4 lines not shown]
py-greenlet: updated to 3.5.1
3.5.1
- Add preliminary support for Python 3.15b1. This has not been
reviewed by CPython core developers, but all tests pass. Binary
wheels of this version won't work on earlier Python 3.15 builds and
may not work on later 3.15 builds.
- Fix the discrepancy in the way the two ``getcurrent`` APIs behave
during greenlet teardown. One API (the C API used by, e.g., gevent) raised a
``RuntimeError``; the other (the Python ``greenlet.getcurrent`` API)
returned ``None``. This second way is incompatible with greenlet's type
annotations, so ``greenlet.getcurrent`` now raises a
``RuntimeError`` as well.
py-peewee: updated to 4.0.6
4.0.6
* Add new methods to the postgres `BinaryJSONField`: helpers for in-place
modifications (`set`, `replace`, `insert`, `append`, `update`).
* Also add json-path helpers to the postgres `BinaryJSONField` (`path_exists`,
`path_match`, `path_query`, `path_query_array`, `path_query_first`).
* Quote path elements in SQLite's JSON field.
* Better and faster parsing of formatted date/times. Use the stdlib
`fromisoformat` as a first attempt since it's faster and more robust.
* Ensure `db.connection_context()` can be nested cleanly.
* Fix potential deadlock in `pool.close_all` and `pool.manual_close`.
* Restore whitespace stripping in `FixedCharField`.
py-aiohappyeyeballs: updated to 2.6.2
2.6.2
Bug Fixes
Clear error on empty addr_infos in start_connection
Refactoring
Optimize obtaining event-loop down to 1 line
Testing
Stop verify_no_lingering_tasks from leaking an event loop
catch2: updated to 3.15.0
3.15.0
Fixes
Fixed ambiguous overload issue with std::optional<T> in C++26.
Since std::optional was turned into a range, the partial specialization of StringMaker for range-like types and for std::optional<T> were in conflict.
Improvements
Simplified CATCH_REGISTER_ENUM internals for faster compilation and retrieval.
Successful assertion are slightly (1-2%) faster.
Generic (new-style) matchers support constexpr matching in C++20.
Combining matchers requires C++26.
Catch2-provided generic matchers are all constexpr enabled.
Added STATIC_REQUIRE_THAT for compile-time matcher assertions.
This requires the compiler to support enough constexpr for matchers, see above.
[OpenMP] Prevent parser infinite loop on unimplemented clauses (#198796)
This is to fix an infinite loop in the parser when using un-implemented
clauses. See https://godbolt.org/z/f775asrea .
This patch also fixes this crash: https://godbolt.org/z/WKrsbTGGe .
Fix memory leak in pkg_repo_archive_extract_check_archive
The signature hash (sc) returned by pkg_repo_archive_extract_archive
was never freed - neither on error paths (early returns) nor on
success. Use goto cleanup pattern to ensure pkg_repo_signatures_free
is called on all paths.
Fix memory leak in pkg_jobs_universe_get_upgrade_candidates
When the version filter causes a continue, the pkg allocated by
pkgdb_it_next is not pushed to candidates and not freed. Free
the leftover pkg after the loop exits.
Fix memory leak in jobs_solve_autoremove
Free pkg when pkg_jobs_test_automatic returns false, as the package
is not added to the request and would otherwise leak.
Fix memory leak in delete_process_provides
Free pkg objects obtained from pkgdb_it_next() in all code paths
and reset the pointer to NULL to prevent double-free on the next
iterator call.