[runtimes] Protect use of undefined CMAKE_Fortran_COMPILER (#193210)
Unlike everything else in CMake, cmake_path does not assume a default
value for undefined variables, but instead throws an error:
```
CMake Error at cmake/config-Fortran.cmake:77 (cmake_path):
cmake_path undefined variable for input path.
Call Stack (most recent call first):
CMakeLists.txt:284 (include)
```
Protect the use of cmake_path to not trigger this error when
CMAKE_Fortran_COMPILER is undefined.
Fixes the flang-aarch64-out-of-tree buildbot after #171610.
Services: Kea DHCPv4/v6: Remove depend constraint of ddns_reverse_zone (#10182)
Since ddns_forward_zone already depends on ddns_dns_server, and the config generator bails if either of these are empty we do not need to protect ddns_reverse_zone in any specific way right now.
It's a good idea to keep it this way, only populating a reverse zone is very uncommon, and ISC also tethered it to the forward zone being there.
[Polly] Disable PCH reuse for unit tests (#193209)
Polly library targets already disable PCH reuse because Polly
unconditionally builds with -fno-rtti and -fno-exceptions. Reusing LLVM
PCHs that were built with RTTI or exceptions enabled is incompatible
with Clang when compiling Polly targets under those flags.
After 47eb8b43c990 enabled PCH reuse for unit tests, Polly unit tests
can hit the same mismatch as the library targets. Pass DISABLE_PCH_REUSE
through the shared add_polly_unittest wrapper so all Polly unit tests
follow the existing Polly target policy.
cc @aengelke -- a minor fix for polly.
[CIR][NFCI] Remove 'isConstant' from getCIRLinkageForX (#193100)
This variable has since disappeared from classic compiler, and we
weren't using it anywhere anyway. This patch gets us back in sync with
the classic codegen for these interfaces.
Services: Kea DHCPv4/v6: Remove depend constraint of ddns_reverse_zone
Since ddns_forward_zone already depends on ddns_ddns_server, and the config generator bails if either of these are empty
we do not need to protect ddns_reverse_zone in any specific way right now.
[AMDGPU] Multi dword spilling for unaligned tuples (#183701)
While spilling unaligned tuples, rather than breaking the
spill into 32-bit accesses, spill the first register as a single
32-bit spill, and spill the remainder of the tuple as an aligned tuple.
Some additional bookkeeping is required in the spilling
loop to manage the state.
References: https://github.com/llvm/llvm-project/pull/177317
[llvm-cov] Fix error propagation in CoverageMapping::load() (#193197)
Fix a subtle issue on the error path: if loadFromFile() fails there is no error to consume.
x11-wm/hyprland: Fix a few seconds of freeze when window is closing
Reported by: K. Solowoniuk (via private email)
(cherry picked from commit 49e62cc39f5429fa5ef6ad0785b3da7230bf03f0)
ifconfig: Fix segfault in geneve_status_nl
Initialize nla_geneve_link structure to zero to prevent
segfault when a TLV is not received by the netlink parser.
Reported by: Seth Hoffert <seth.hoffert at gmail.com>
Fixes: 688e289ee904 ("ifconfig: Add support for geneve (netlink)")
[InstCombine] fold fabs(uitofp(i16 a) - uitofp(i16 b)) < 1.0 to a == b (#191378)
Fixes: https://github.com/llvm/llvm-project/issues/187088
When a and b are types with bitwidth (16 bits) smaller than the mantissa
for float32 (24 bits), they will be exact and their absolute difference
would be integral ±1 or greater if a != b. On the corollary, if their
difference is < 1.0, this implies that a = b.
This patch exploits this fact to fold the expression to just a single
icmp.
Revert "[clang-tidy][NFC] add numeric include for transform_reduce" (#193200)
After experiment, this didn't fix the build failure. So revert this to
keep the trunk clean.
Reverts llvm/llvm-project#193165
[mlir][arith] Add `arith.flush_denormals` operation (#192641)
Add a new `arith.flush_denormals` operation. The operation takes a
floating-point value as input and returns zero if the value is denormal.
If the input is not denormal, the operation passes through the input.
This commit also adds support to the `ArithToAPFloat` infrastructure.
Running example:
```mlir
%flush_a = arith.flush_denormals %a : f32
%flush_b = arith.flush_denormals %b : f32
%res = arith.addf %flush_a, %flush_b : f32
%flush_res = arith.flush_denormals %res : f32
```
The exact lowering path depends on the backend and is not implemented as
part of this PR:
- Per-instruction mode. E.g., on NVIDIA architectures, the above example
can lower to `add.ftz.f32 dest, a, b`.
[11 lines not shown]