Sparc: Use LastSubtargetCache in getSubtargetImpl
Adopt new common pattern for targets to lookup subtargets.
Co-authored-by: Claude Opus 5.5 <noreply at anthropic.com>
[llvm-c] Point C API target machines at the C API library options (#242692)
LLVMParseCommandLineOptions parses library options into
cl::getCAPILibraryOptions() and replays them into T::Global, which
target machines, JITs, and disassemblers created through the LLVM and
MLIR C APIs read since their MCTargetOptions::LibraryOptions is null.
Point them at getCAPILibraryOptions() and remove the replay.
LLM-aided
[SCEV] Use the union of the constants as range of selects of constants. (#242706)
A select of two constants that is not modeled as min/max becomes a
SCEVUnknown. Use union of constants as result range.
This improves precision in a number of cases in practice (218 files
changed): https://github.com/dtcxzyw/llvm-opt-benchmark-nightly/pull/2043
Only constant operands are handled; using the ranges of arbitrary
operands, via SCEV or computeConstantRange, is more costly and most
improvements seen in practice seem to come from selects of constants.
PR: https://github.com/llvm/llvm-project/pull/242706
interfaces: reports say 26.8.9 fixed this which may have been a kernel issue
We do have PPP defer now which also tests well so we don't need this anymore.
DAG: Allow narrowing sint_to_fp source to the sext source type
Same as 241c94e3919e for uint_to_fp. The narrowing fold skipped
sint_to_fp (sext x) when the narrow type matched x, so sitofp (sext i32
to i64) was expanded as a 64-bit conversion on AMDGPU.
Co-authored-by: Claude Opus 5.5 <noreply at anthropic.com>
AMDGPU: Add more sitofp of sext from i32 tests (#242782)
These currently get the full i64 conversion expansion.
Co-authored-by: Claude Opus 5.5 <noreply at anthropic.com>
Mips: Use LastSubtargetCache in getSubtargetImpl (#242775)
Migrate to use the new common infrastructure and pattern which caches
based on the last used subtarget.
Co-authored-by: Claude Opus 5.5 <noreply at anthropic.com>
AliasAnalysis: Use SmallVectors in AAResults (#242769)
AAResults is rebuilt for each function whenever AAManager is
invalidated,
and the default pipeline adds 3 or 4 AA results to it. With std::vector
each one regrows its storage on the second and third addition.
callgrind instructions, opt -O3: kimwitu++ k.bc -0.45%, SPASS cnf.bc
-0.12%, sqlite3 -0.03%. CTMark instructions:u: O3 -0.02%, ThinLTO
-0.01%.
Co-authored-by: Claude Opus 5.5 <noreply at anthropic.com>
PPC: Use inline regclass syntax in mir tests (#242457)
Also clean up unnecessary registers sections
Co-authored-by: Claude Opus 5.5 <noreply at anthropic.com>
system: implemement far gateway for IPv6 #10578
Apparently this works on recent FreeBSD and WG VPN providers
like the coolness of /128 addresses being given out. Fix both
static routes and gateways, but do not add an auto-detect for
IPv6 which isn't needed for this use case and also not otherwise
known to happen out in the wild.
Since the 'missing' gateway error print doesn't bring much to
the table remove it and prevent empty gateway from being used
below which wouldn't work anyway.
Co-authored-by: @cayossarian
devel/detect-it-easy: [NEW PORT] program for determining types of files
Detect It Easy (DiE) is a cross-platform tool for file identification and
static inspection, used by malware analysts, cybersecurity experts, and
reverse engineers. It combines native format parsers with an extensible
DiE-JS analysis layer, supporting both compact signatures and multi-stage
static analysis across Windows, Linux, macOS, and now FreeBSD.
Co-authored-by: Michael Osipov <michaelo at FreeBSD.org>
WWW: https://github.com/horsicq/Detect-It-Easy
PR: 297334
www/nginx-module-auth-ldap: Update to 0.3.0
The bind password can now be read from a file, auth_ldap takes a variable
as its realm and off turns the check off per request, user_filter matches
the login against several attributes at once, user_attributes hands the
user DN and named attributes on as variables, and a refused login leaves a
line naming the user and the server.
Changelog: https://github.com/sysadmin-labs/nginx-auth-ldap-module/releases/tag/v0.3.0
Sponsored by: Netzkommune GmbH