[Polly] Fix assertion in addUserAssumptions for unreachable blocks (#227311)
ScopBuilder::addUserAssumptions() crashes when an llvm.assume call
resides in a block that has no entry in InvalidDomainMap. This happens
when __builtin_unreachable() is converted to llvm.assume by earlier
passes, but Polly's buildDomainsWithBranchConstraints() skips the block
(e.g. due to an UnreachableInst terminator), leaving its
InvalidDomainMap entry uninitialized.
Skip such assumptions instead of asserting.
Fixes #226718
[lldb][test] Use external debug info on Arm in TestExitDuringStep and TestThreadExit (#228047)
Arm has to care about Arm and Thumb modes, so without the separate debug
info file installed by libc6-dbg on Linux, we cannot backtrace if the
starting point is in a libc function.
This is the case for these tests where a thread may be stopped in a libc
syscall wrapper.
As the backtrace wasn't working, the code added by #227312 did not see
that some threads were part of the main executable, which made both
these tests fail on Arm Linux.
It's possible we should be running more tests on Arm with this option
on, but for now I just want to get the bot back to green.
More details in https://github.com/llvm/llvm-project/issues/228014.
Mips/GlobalISel: Fix adding $gp to calls as a def instead of a use (#227679)
A PIC call needs $gp to point at the GOT for the lazy binding stub.
SelectionDAG adds it as an ordinary argument register. GlobalISel
instead added it as an implicit def, which killed the $gp copy set up
right before the call.
Co-authored-by: Claude Opus 5 <noreply at anthropic.com>
[flang][OpenMP] Remember decision of allowing past/future clause
When a deprecated or a future clause is used on a directive, and it is
allowed with a warning, remember that decision and consider that clause
allowed on that directive in all subsequent checks.
Introduce an OpenMPKartoffel warning category to guard these warnings
(and the corresponding -Wopenmp-kartoffel option).
SLP: Remove artificial shifts from min-bitwidth test (NFC) (#222634)
Replace shifts by zero with zero constants, using a slightly negative
threshold to preserve the test signal. This allows a future update to
the cost of foldable shifts.
[OpenMP] Add default value for Size argument in EnumSet (#227853)
Most of the interesting enums cover a contiguous range of values, and
define members First_ and Last_. By subtracting the underlying values
one can get the number of elements in the enum.
interfaces: defer PPP to after bootup as an idea for #10936
This is just a sketch that may fix other bootup related issues with PPPoE
where it retriggers DHCPv6 too many times. Maybe this way we can avoid
both and just need to add some glue for CARP support in the shell script.
multimedia/moviebox-tui: update to 0.1.26
Fixed
Media Playback & Subtitle Engine:
Preserved native Windows \ path separators for --sub-file in VLC (C:\...) and passed --no-one-instance on Windows and Linux so running VLC windows keep subtitle, header, and resume flags.
Stripped query strings and fragments before parsing subtitle extensions (.srt, .vtt, .ass, .ssa, .sub) so signed CloudFront and OSS URLs keep their true format and DASH MIME type.
Pre-downloaded subtitles locally for mpv with remote URL fallback, parallelized subtitle downloads with StreamRelay sidecar startup, appended an 8-char URL hash to subtitle filenames, and sanitized commas in --script-opts.
Mounted xdg-cache/moviebox-tui:ro, xdg-data/moviebox-tui, and /tmp:ro in flatpak run while keeping custom user Flatpak flags so sandboxed mpv and VLC can read subtitles and write watch progress.
Served Termux private-storage subtitles over the local StreamRelay /sub/ loopback endpoint when Android shared storage is unavailable, and restricted startup subtitle cleanup to internal cache and temp folders.
Parsed player stderr and exit codes to report specific failure reasons (HTTP 403, HTTP 404, HTTP 410, timeout, connection refused), and added deterministic cross-platform contract integration tests (tests/player_contract.rs) asserting VLC Win32/UNC paths, IINA CLI option schemas, and header support across OSes.
Unified IINA command construction with standard --mpv-* argument schemas across platforms, and restricted macOS IINA header disqualification to GUI app fallbacks missing command line tools.
Standardized player display labels to uppercase acronyms (MPV, IINA, VLC) across player selection popups, settings, and notifications.
StreamRelay Proxy & Downloader:
Forwarded User-Agent and Referer while isolating stream cookies (Cookie: Edge-Cache-Cookie=...) to same-host requests across StreamRelay, subtitle pre-downloads, and media downloads.
Capped .m4s segment chunk fetching in StreamRelay to batches of 16 concurrent Range requests, registered in-flight segment wait futures under lock, and required http:// or https:// schemes on /proxy?url= routes.
Increased MovieBox DASH yt-dlp --concurrent-fragments from 8 to 32 (3.77 MiB/s -> 11.13 MiB/s, +195% live CDN throughput) and scaled the direct HTTP multi-segment engine to 4 to 16 workers with Range: bytes=0-0 size discovery, 1 MiB write buffers, and a single end-of-file sync_data flush.
Reported specific subtitle and DASH download errors (HTTP status, timeout, missing yt-dlp vs ffmpeg) and matched "at" after "of" in yt-dlp progress lines.
Providers & Disk Cache:
[17 lines not shown]
devel/serie: update to 0.9.2
What's Changed
Update CONTRIBUTING.md by @lusingander in #177
Update GitHub Actions workflows by @lusingander in #178
Avoid overlapping reused graph columns by @lusingander in #179
Add graph tests by @lusingander in #180
[LV][NFC] Print more debug to account for mismatch in final costs (#227757)
After printing out the costs of recipes we then print out the total
cost, including the cost per lane. Unfortunately, the final cost often
doesn't match the total of all the recipe costs due to extra precomputed
costs and reg spill costs. This PR adds the missing information.
[clang] Fix crash with follow-on diagnostics w/invalid logical operator (#227837)
If the logical operator involves a vector operand, we perform special
vector-specific checks. `CheckVectorOperands()` returns a null QualType
to signal there was an issue, and `CheckVectorLogicalOperands()` was
using that signal to decide to report an "invalid operands to binary
expression" diagnostic. However, `CheckVectorOperands()` also sometimes
modifies the given LHS and RHS values and when that happens, the caller
cannot assume they're still valid on a null QualType return. This was
causing a crash from `CheckVectorLogicalOperands()` because it was
attempting to use those newly invalidated expressions.
This fixes the crash by letting `CheckVectorOperands()` report the
diagnostics directly and removing the fallback logic from
`CheckVectorLogicalOperands()`. This also helpfully removes some
unhelpful follow-on diagnostics in other cases where we would report
"cannot convert operands" followed by "invalid operands to binary
expression".
Fixes #227588
[flang][OpenMP] Sink intervening code unguarded into collapsed loop body (#225159)
### Summary
Lower intervening code in a collapsed imperfect loop nest by sinking it
unguarded into the innermost `omp.loop_nest` body, so it executes once
per collapsed logical iteration. Per OpenMP 6.0 6.4.3.
An earlier implementation of this work guarded intervening code so that
it ran once per enclosing iteration. That required recomputing the inner
loop's bounds inside the region — and in a `target` region, either
accessing or re-evaluating
the enclosing `omp.target`'s `host_eval` bounds (#223475) — which
overcomplicates the solution and is not required by the spec. Sinking
the intervening code removes all bound arithmetic from the region, while
the execution count remains within the permitted range.
### Notes
Fixes #199092
Assisted-by: Copilot