[ValueTracking] Handle sext, zext in computeConstantRange
Propagate constant ranges through sign extension, zero extension.
Extends the existing handling for truncations.
[MachineBlockPlacement] Fix use-after-erase (#197109)
`ComputedEdges.erase(FoundEdge)` invalidates `FoundEdge`, but the
function then returns `FoundEdge->second`. Read the bucket value into
a local before erasing.
[AA] Respect potential synchronization effects of inline asm (#196965)
Respect potential synchronization effects of inline assembly calls on
not-yet-escaped memory.
We only do this if the call is both non-nosync and ModRefs "other"
memory. This is consistent with the atomic memory effects established in
https://github.com/llvm/llvm-project/pull/193768 and makes sure that
things like readonly/argmemonly continue to work as expected even for
frontends that do not emit nosync (which, right now, is all of them).
The limitation to inline asm should not actually exist: The issue
applies to all calls. This just fixes a particularly important case in a
targeted way. (The fact that inline asm memory barrier do not work as
expected is a problem for making optimizations of monotonic accesses
more aggressive, e.g. it caused issues for
https://github.com/llvm/llvm-project/pull/195015.)
The ability of inline asm (with a `~{memory}` clobber) to synchronize
was explicitly specified in
https://github.com/llvm/llvm-project/pull/150191.
[PowerPC] Fix types when emitting ppc_altivec_vupklsw (#187789)
When lowering BUILD_VECTOR, we produce this intrinsic node, but fail to
adjust the input/output types to ensure ISel works.
This patch simply adds the necessary bitcasts.
Fixes: https://github.com/llvm/llvm-project/issues/175297
interfaces: safeguard DHCPv4 settings against arbitrary command injection
Use interfaces_dhcp_safe() and interfaces_dhcp_split() to do damage
control on the more or less custom options that are being allowed to
inject into dhclient.conf.
Tested both basic and advanced mode with test data from previous tickets.
Basic mode should be fine as is. For advanced mode it's impossible to
tell if there are more edge cases given the fact that it takes any type
of input, but we do want to deprecate this advanced part anyway in order
to give way to better structure and easier safeguarding.
Since interfaces_dhcp_split() now exists, unify the behaviour of request,
send, require and option modifiers. The latter are being abused for
raw config options although they should just validate on the actual
modifier keywords. For now we leave this as is but reject the "media"
keyworld which is the instrumental part of the exploit.
Also validate that the hostname is an actual hostname.
[3 lines not shown]
interfaces: safeguard DHCPv4 settings against arbitrary command injection
Use interfaces_dhcp_safe() and interfaces_dhcp_split() to do damage
control on the more or less custom options that are being allowed to
inject into dhclient.conf.
Tested both basic and advanced mode with test data from previous tickets.
Basic mode should be fine as is. For advanced mode it's impossible to
tell if there are more edge cases given the fact that it takes any type
of input, but we do want to deprecate this advanced part anyway in order
to give way to better structure and easier safeguarding.
Since interfaces_dhcp_split() now exists, unify the behaviour of request,
send, require and option modifiers. The latter are being abused for
raw config options although they should just validate on the actual
modifier keywords. For now we leave this as is but reject the "media"
keyworld which is the instrumental part of the exploit.
Also validate that the hostname is an actual hostname.
[2 lines not shown]
[clang][bytecode] Pass correct QualType to getFixedPointSemantics() (#196952)
The expression type might be different, so pass the QualType we have at
hand.
[AArch64] Add a regression test for Apple tuning features(NFC) (#196792)
This patch adds a TableGen regression test that directly checks complete
featrure lists per generation for Apple CPUs, to guard against changes
that can break the <CPU,features> association if we lack indirect
coverage.
A followup patch should introduce generational delta encoding for Apple
tuning features that this test should help verify.
firmware: add repo configuration output to connectivity audit
This gives us a better insight on the way the system may be
misconfigured. To avoid leaking subscription keys scrub them
via output_cmd() and see if they leak somewhere using the new
SUBSCRIPTION_GUARD replacement in the old read.sh place.
The reason for this is also that read.sh is not executing on
the command line so replacing earlier makes sense.
While here refactor the connection audit a bit so we don't
grab the hostname from the URL since we have a script for that.
(cherry picked from commit 989a4672cc17b7e1ca9770ecf39a249ac40b1995)
(cherry picked from commit 2d846e3667960d9cea4fc4f1f8fce2b33c14faab)
(cherry picked from commit eaac21152e45fb817661e73b02b0a5e23a778e33)
(cherry picked from commit f648476a665117e37f6693b55fdbc701677e33eb)
(cherry picked from commit aa27271b696f8564f66e506dd2c06b5f65d17fa2)
graphics/xviewer: update to 3.4.16
- explicitly define USE_GNOME=gdkpixbuf2xlib to match Linux Mint
packaging
- include upstream commit for GIRepository-2.0 compatibility,
especially after devel/libpeas1 update
PR: 292771
[clang][bytecode] Fix a crash with invalid ArraySubscriptExprs (#196964)
In the attached test case, `arr` becomes the _index_, not the base,
which causes us later to run into issues because the index is a pointer
and not an integer.