[AArch64][llvm] Allow some `tlbip` insns to be used with only +tlbid
Allow `tlbip` instructions containing *E1IS*, *E1OS*, *E2IS* or *E2OS*
to be used with `+tlbid` or `+d128`. This is because the 2025 Armv9.7-A
MemSys specification says:
```
All TLBIP *E1IS*, TLBIP*E1OS*, TLBIP*E2IS* and TLBIP*E2OS* instructions
that are currently dependent on FEAT_D128 are updated to be dependent
on FEAT_D128 or FEAT_TLBID
```
[AArch64][GlobalISel] Add support for scalar variants of neon right shifts (#178207)
Neon intrinsics are able to operate on single-element vectors (e.g <1 x
i64>). However, LLVM doesn't allow single-element vectors, and instead
converts them to scalar values (e.g i64) in the frontend.
To get around this, the backend must place these scalar values onto an
fpr register bank, in order for the intrinsic to operate on the value as
a vector.
Previously, scalar right shift intrinsics were not legalising due to
misconfigured logic in AArch64LegalizerInfo, which treated non-vector
variants of these intrinsics as invalid.
This has been fixed so that the following can lower:
sqshrn
sqshrun
sqrshrn
sqrshrun
uqshrn
uqrshrn
[CIR] Implement returns_twice, cold, hot, noduplicate, convergent func attrs (#178289)
Continuing my quest to get most of the attributes completed, this patch
implements 5 attributes for CIR/Clang CIR codegen.
4 of the 5 are also implemented in LLVM-MLIR, since 'convergent' was
already there.
As a part of this, we also had to make sure that attributes were handled
properly for Call operation lowering, like we do for function
attributes.
Don't install MD5.3 for now because it is obsolete (conflicts with md5.3 on
case insensitive filesystems). Perhaps we should rename it openssl_MD5.3
and install it as such.
set CPPFLAGS/LDFLAGS to consistently pick up headers and libraries on
gcc and clang archs. add dep on fftw.
fixes a build problem on ports-gcc archs where the default library path
includes /usr/local/lib/gcc/ARCH-unknown-openbsd/15.2.0/../../.., a.k.a.
/usr/local/lib, but the default include search path for system headers
just has /usr/local/lib/gcc/x86_64-unknown-openbsd/15.2.0/include{,-fixed}
and /usr/include (so the library is picked up, but headers are not).
ok claudio@
NAS-139345 / 26.0.0-BETA.1 / Selectively raise app update alerts (#18084)
This PR adds changes to selectively raise app update alerts and also
include latest app version in `app.query` response.
[LifetimeSafety] Detect dangling fields (#177363)
Detect dangling field references when stack memory escapes to class
fields. This change extends lifetime safety analysis to detect a common
class of temporal memory safety bugs where local variables or parameters
are stored in class fields but outlive their scope.
- Added a new `FieldEscapeFact` class to represent when an origin
escapes via assignment to a field
- Refactored `OriginEscapesFact` into a base class with specialized
subclasses for different escape scenarios
- Added detection for stack memory escaping to fields in constructors
and member functions
- Implemented new diagnostic for dangling field references with
appropriate warning messages
Importantly,
- Added `AddParameterDtors` option to CFG to add parameter dtors and
lifetime ends behind an option. In principle, parameters ctors and dtors
[4 lines not shown]