[CIR] Regenerate CHECK lines for 8 more callconv opt-out tests (#218931)
These 8 CIR tests compile clean with x86_64 calling-convention lowering
on, but their CHECK lines still pinned the pre-coercion CIR: raw record
types in signatures, plain by-value loads for temporaries with a
non-trivial destructor, and matching store/load pairs for empty records.
The pass now emits the ABI-correct shape instead: sret return
parameters, a dropped or byref-marked argument for records that carry no
data or that need pass-by-reference, and a `#cir.poison` placeholder
where a value the pass ignores used to be stored.
Assisted-by: Cursor / claude-opus-5
NAS-142601 / 27.0.0-BETA.1 / Tolerate a license SDK that has no top-level expiry (by sonicaj) (#19543)
This commit fixes an issue where get_license_info() read
LicenseStatus.expires_at, which newer builds of the license SDK no
longer define. The dataclass is slots=True, so the read raises
AttributeError instead of coming back None, and that escapes plugin
setup by way of alert.initialize asking for the product type. Nothing
catches it, so middlewared never finishes starting and the box sits in a
crash loop rather than reporting itself unlicensed. It fires on any
license the daemon considers valid, so an existing install breaks on the
SDK upgrade alone, with no new license involved.
The read is a getattr now, which works against both the old SDK and the
new one where the only expiry a license carries lives on the support
contract. The unit fixture drops the same field for the same reason.
Original PR: https://github.com/truenas/middleware/pull/19542
Co-authored-by: Waqar Ahmed <waqarahmedjoyia at live.com>
Revert "[CodeGen] Take the executable stack from a module flag" (#218964)
Reverts llvm/llvm-project#215152
This change breaks -Wl,-z,execstack for target offload.
Reapply "[clang-repl] Honor -emit-llvm to print incremental IR" (#218735)
Relands #217870 with a fix for the failure in `clang/test/Interpreter/emit-llvm.cpp` seen on ppc64le
[clang][CIR][AArch64] Add lowering for conversion intrinsics (#217263)
This PR adds lowering for intrinsic from the following groups:
* https://arm-software.github.io/acle/neon_intrinsics/advsimd.html#conversions
It continues the work started in #190961, #193273, #199990, #209252,
, #211609, #216757 and #217017.
This PR implements the conversions for the following:
1) "int to float" intrinsics:
* vcvt_f32_s32
* vcvtq_f32_s32
* vcvt_f32_u32
* vcvtq_f32_u32
* vcvts_f32_s32
* vcvts_f32_u32
* vcvt_f64_s64
* vcvtq_f64_s64
* vcvt_f64_u64
[24 lines not shown]
Tolerate a license SDK that has no top-level expiry
This commit fixes an issue where get_license_info() read LicenseStatus.expires_at, which newer builds of the license SDK no longer define. The dataclass is slots=True, so the read raises AttributeError instead of coming back None, and that escapes plugin setup by way of alert.initialize asking for the product type. Nothing catches it, so middlewared never finishes starting and the box sits in a crash loop rather than reporting itself unlicensed. It fires on any license the daemon considers valid, so an existing install breaks on the SDK upgrade alone, with no new license involved.
The read is a getattr now, which works against both the old SDK and the new one where the only expiry a license carries lives on the support contract. The unit fixture drops the same field for the same reason.
[mlir] Remove dead forward declarations (#218863)
This patch removes forward declarations of classes and structs that
are no longer referenced anywhere in MLIR.
[DWARFLinker] Resolve a module import through the module's anchor (#218575)
An importing compile unit emits its own DW_TAG_module skeleton, and that
skeleton can name a different DW_AT_LLVM_include_path than the unit
built from the .pcm. For example, a Swift unit names the .swiftmodule
while the companion Clang module names the framework bundle.
The classic linker gets this from DeclContext uniquing. f03b9d709525
made the parallel linker's type pool pick the right copy, but the type
pool only covers ODR languages. This addresses the non-ODR case.
Add a link-global ModulePool, using the dotted module path as the key. A
module unit records where it put each DW_TAG_module, either as a type
entry or as a section + offset. Because the import may not exist during
cloning, we emit a placeholder and only emit it when the anchor is fully
resolved.
A .pcm holds the description of the module it was built for, and also a
partial copy of every module that it imports. Only the first is the
[13 lines not shown]
Pull up following revision(s) (requested by kre in ticket #1330):
usr.bin/xinstall/xinstall.c: revision 1.131 (patch)
PR bin/58577 - install(1) -d issues
Fix issues where "install -d" (with no directory) simply
exit(0)s. That one is kind of marginal, installing nothing
when nothing is needed could be treated as OK, but the man
page does indicate in the SYNOPSIS that with -d, at least
one directory is needed (it says nothing at all about that
in the text).
Second, after creating a directory, if a later operation
(chown, chmod) fails, that is not success, a warning was
issued (good), a bad metalog was being created (bad).
That is clearly a bug (though probably doesn't happen
very often).
[29 lines not shown]
[mlir][Tosa] Use split discardable/inherent attribute APIs (#218912)
Use typed operation accessors and explicit discardable attribute APIs in
the Tosa dialect, conversions, target handling, and validation.
Assisted-by: Codex
[SCEV] Fix dead CHECK lines in ptrtoint.ll (NFC) (#218932)
There is no CHECK prefix; remove and regenerate with X32/X86 check
lines.
As suggested in https://github.com/llvm/llvm-project/pull/217378.
Pull up following revision(s) (requested by kre in ticket #1331):
lib/libc/locale/runetable.c: revision 1.30
lib/libc/locale/iswctype_mb.c: revision 1.15
PR lib/59067 (wctrans got error member)
Patches from the OP (ru_j217) and from RVP - see the PR
This looks to be just correcting what appear to be simple
errors in the code.
[MergeFunctions] Fix merging functions with different KCFI type identifiers (#217665)
MergeFunctions currently merges functions with identical bodies even
when
their function-level !kcfi_type metadata contains different type
identifiers.
This can redirect calls or function pointers to a function with a
mismatched
KCFI type identifier, potentially causing KCFI checks to fail at
runtime.
Compare function-level !kcfi_type metadata in FunctionComparator so that
functions with different KCFI type identifiers are not merged.
Add a minimal regression test covering two identical functions with
different
KCFI type identifiers.
Fixes #217629