shells/oh-my-posh: update to 31.8.0
Bug Fixes
agents: scaffold segments with the options API (a53437e)
Features
agents: block new else branches in the stop hook (fb4fc6e)
www/bunkerweb: Add missing py-maxminddb dependency
The mmdb-country and mmdb-asn jobs validate the downloaded GeoIP
databases with the maxminddb Python module. Without it they abort with
"maxminddb is not installed", the databases are never installed, and
country and ASN stay unknown in the metrics, the web UI and the
country-based access rules.
Sponsored by: Netzkommune GmbH
[AMDGPU] CallInst -> CallBase for divergence analysis (#228744)
This handles non-call instructions like callbr.
The test changes in infinite-loop.ll, where there are now two return
blocks (the original one + the dummy) instead of the unified return
block is a symptom of the callbr in those functions being not marked as
divergent anymore.
This patch was hand-manufactured using Neovim.
---------
Co-authored-by: Matt Arsenault <Matthew.Arsenault at amd.com>
x11-toolkits/fltk: update the port to version 1.3.11
- Fix potential crash when backspace is typed in a menu
- Fluid: output FLTK version for -v/--version command-
line arguments
- Fix Fl_Table_Row inconsistencies
- Improve transitions between fullscreen modes
- Fix potential buffer overflow in Fl_Help_View
The ABI is 100% compatible with releases 1.3.5-1.3.10.
No further releases are planned for the 1.3.x series.
PR: 283342 (wip towards 1.4.x update)
x11-toolkits/fltk: update the port to version 1.3.11
- Fix potential crash when backspace is typed in a menu
- Fluid: output FLTK version for -v/--version command-
line arguments
- Fix Fl_Table_Row inconsistencies
- Improve transitions between fullscreen modes
- Fix potential buffer overflow in Fl_Help_View
The ABI is 100% compatible with releases 1.3.5-1.3.10.
No further releases are planned for the 1.3.x series.
PR: 283342 (wip towards 1.4.x update)
Passes: Replace FunctionAttrs with attributor-light when it is enabled (#231157)
attributor-light is meant to replace FunctionAttrs, but with
-attributor-enable=light both ran. Use AttributorLightCGSCCPass in
place of each PostOrderFunctionAttrsPass, and AttributorLightPass in
place of each ReversePostOrderFunctionAttrsPass, in the default,
ThinLTO and full LTO pipelines.
Co-authored-by: Claude Opus 5.5 <noreply at anthropic.com>
[Coroutines] Avoid line 0 locations for async context projections (#231221)
CoroSplit inlines a call to the async context projection function, which
usually has line zero location as it is compiler generated boilerplate.
If that location has line zero, DwarfDebug skips the projection when it
places prologue_end, so the projection ends up in the prologue. This is
the same problem that 2cf550a04041 ([DebugInfo] Force early line-zero
calls to have meaningful locations, #156850) fixed for line 0 calls:
someone entering the function at prologue_end breaks in after the call
has completed.
If the suspend point has a line 0 location, give the projection the
location of the first instruction after the suspend point with a
non-zero line. We already do this for other intrinsics here.
Assisted by claude
[SLP]Fix copyable smin/smax identity miscompile
Fix truncation of identity value for smin/smax byt doing extra analsyis
of the bitwidth and limit.
Fixes #231210
Reviewers:
Pull Request: https://github.com/llvm/llvm-project/pull/231243
RuntimeLibcalls: Generate an enum for runtime library names (#230780)
Emit an RTLIB::RuntimeLibrary enumerator for each distinct LibraryName,
and use it instead of a string for isLibraryAvailable.
Co-authored-by: Claude Opus 5.5 <noreply at anthropic.com>
RuntimeLibcalls: Remove the Default* libcall lists (#230405)
Every system library now lists only LibcallLibrary members, so nothing
references DefaultRuntimeLibcallImpls. arm64ec's '#'-prefixed set was
still derived from the whole default list minus the width slices and
the Windows exclusions. Build it from the compiler-rt, libm and libc
slices instead, still omitting the calls the Windows runtime lacks.
Take AArch64's fp128 long double calls from the libm slice, and delete
the remaining default and Windows base lists.
The generated tables are unchanged.
Co-authored-by: Claude Opus 5.5 <noreply at anthropic.com>
[MemProf] Fix remapping of matching calls when assigning function clones
When a function has several calls with identical callsite metadata, they
are recorded on one context node with the extra calls in
Node->MatchingCalls. If that function is cloned by context
disambiguation, assignFunctions must remap each version's matching calls
through the function clone's CallMap, the same way it remaps the primary
Call.
Two problems in the IR path:
* AssignCallsiteCloneToFuncClone rewrote the matching calls of the
original node (Node->MatchingCalls) instead of those of the callsite
clone being assigned. The clone node (whose MatchingCalls were copied
from the original at creation) kept the original instructions, and the
original node's list was overwritten with the clone's. UpdateCalls then
updated each function version's matching calls with the other version's
callee clone, i.e. swapped.
[16 lines not shown]
Use 'trimmed' consistently for MIB call stacks shortened by MemProfUse
'Pruning' refers to dropping unimportant non-cold contexts; rename the
tests and comments accordingly.
[MemProf] Duplicate pruned (trimmed) contexts onto callee clones
A context whose call stack was trimmed at an interior frame terminates at
an interior node of the callsite context graph: its id is on that node's
callee edges but on no caller edge. Such a context is caller-agnostic and
applies to every caller of that frame.
When that node is cloned per caller edge for a different allocation,
moveEdgeToExistingCalleeClone only moves the ids found on the caller edge
being moved, so the trimmed context stays on the original node and the new
clone's path to the trimmed allocation has no context. Function assignment
then merges that path into whichever callee version is cheapest, often one
with the wrong allocation type. The outcome depends on which other
allocations happen to be cloned above the shared frame; in a large server
a 1.1 GB allocation lost its cold hint on one path this way.
Fix: when creating a new callee clone, duplicate the contexts terminating
at the old callee (callee-edge ids minus caller-edge ids) with fresh ids
onto the clone and propagate them down its callee edges to the allocation
[8 lines not shown]
Address review: keep ContextIdToAllocationNode current during merging
Make the context id -> allocation node map used by mergeClones a member
that duplicateContextIds keeps up to date, so context ids duplicated while
creating merge nodes are visible to findOtherCallersToShareMerge.
Add mergenodes-pruned.ll (mergenodes.ll plus a third allocation whose cold
context is trimmed at foo's call to baz). This also exposed a latent issue
in assignFunctions: when cloning the other callees of a caller, the
original call was derived from the callee's original node, but that node's
Call is rewritten if the original node was itself assigned to a function
clone (IR path only; index CallInfos share the same pointer across
versions). Record the original call per node up front instead.