NAS-139757 / 26.0.0-BETA.1 / remove all fork+exec from dhcp funcs and remove dhclient references (#18199)
This cleans up the dhcp related functions to remove all fork+exec's
since these functions are called in hot-paths (and in for loops). This
uses asynchronous native dbus functions for starting/stopping/checking
the dhcpcd service for interfaces. This also uses dhcpcd's manager
control socket interface for retrieving dhcp lease information. This
means all fork+exec is removed from these functions. I also removed the
service class since these are exclusively private and not called across
heartbeat interface on HA boxes. Custom build and CI run
[here](http://jenkins.eng.ixsystems.net:8080/job/tests/job/api_tests/7634)
[DAGCombiner] Fix crash caused by illegal InterVT in ForwardStoreValueToDirectLoad (#181175)
This patch fixes an assertion failure in ForwardStoreValueToDirectLoad
during DAGCombine.
The crash occurs when `STLF (Store-to-Load Forwarding)` creates an
illegal intermediate bitcast type (e.g., `v128i1` when bridging a
128-bit store to a `<32 x i1>` load on X86). Since `v128i1` is not a
legal mask type for the backend, it violates the expectations of the
LegalizeDAG pass.
The fix adds a `TLI.isTypeLegal(InterVT)` check to ensure that the
intermediate type used for the transformation is supported by the
target.
Fixes #181130
[Clang][inlineasm] Add special support for "rm" output constraints (#92040)
Clang isn't able to support multiple constraints on inputs and outputs,
like "rm". Instead, it picks the "safest" one to use, i.e. the memory
constraint for "rm". This leads to obviously horrible code:
asm __volatile__ ("pushf\n\t"
"popq %0"
: "=rm" (x));
is compiled to:
pushf
popq -8(%rsp)
movq -8(%rsp), %rax
It gets worse when inlined into other functions, because it may
introduce
a stack where none is needed.
[16 lines not shown]