[mlir][quant] Print actual quant storage type when signed (#187300)
Without the fix, bytecode serialization roundtrip breaks for types that
don't have custom bytecode serializers and contain quant types, since
the fallback mechanism prints the type and the quant printer coerces
signed to signless types. E.g. `!custom<!quant.uniform<ui8:f32, 0.1>>`
will print as `u8` when serializing and later be created as a signless
`i8` when deserializing.
[NFCI][VPlan] Split initial mem-widening into a separate transformation (#182592)
Preparation change before implementing stride-multiversioning as a
VPlan-based transformation. Might help
https://github.com/llvm/llvm-project/pull/147297/ as well.
[libc][NFC] Fix GCC build in __futex_word.h (#192078)
Included __llvm-libc-common.h in __futex_word.h to fix a build failure
with GCC.
GCC in C++ mode does not recognize _Alignas without the mapping to
alignas provided in __llvm-libc-common.h.
The failure was introduced in commit 91c0fdfe1392.
[clang] Add support for SerenityOS (#187941)
Adds support for the $arch-unknown-serenity target to the Clang front
end. This makes the compiler look for libraries and headers in the right
places, and enables some security mitigations like stack-smashing
protection and position-independent code by default.
----
A first attempt at upstreaming this patch was made
[here](https://reviews.llvm.org/D154396). I hope I fixed everything
mentioned there.
I intentionally kept `/usr/local/` in the default lookup path. I
consider it the more practical option, and I’d prefer to have the patch
merged as is and revisit the FIXME later. If this is absolutely
unacceptable to the maintainers, I will happily drop it and keep it as a
local patch until we address the underlying issue.
[7 lines not shown]
NAS-140632 / 27.0.0-BETA.1 / Add LIO as an alternative iSCSI/FC target stack (#18714)
Adds ISCSIMODE.LIO (mode=2) as a selectable iSCSI target stack
alongside the existing SCST modes. The implementation is a "big switch"
- selecting LIO and restarting the iSCSI service brings up LIO with the
same configured targets, extents, and initiator ACLs that SCST was
serving. No data disruption; initiators reconnect and see the same
device identities.
Device identity (VPD page 0x83 NAA designator) is preserved across
migration by reverse-engineering the stored TrueNAS NAA into LIO's
company_id + vpd_unit_serial components, ensuring initiators and
multipath stacks see no device identity change.
Switching from SCST to LIO is blocked with a clear error if the
configuration cannot be faithfully represented in LIO: open initiator
groups with CHAP, multiple discovery-auth credentials, multiple CHAP
credentials per auth tag, iSNS servers, or auth_networks on any target.
[3 lines not shown]
NAS-140632 / 27.0.0-BETA.1 / Add LIO as an alternative iSCSI/FC target stack (#18714)
Adds ISCSIMODE.LIO (mode=2) as a selectable iSCSI target stack
alongside the existing SCST modes. The implementation is a "big switch"
- selecting LIO and restarting the iSCSI service brings up LIO with the
same configured targets, extents, and initiator ACLs that SCST was
serving. No data disruption; initiators reconnect and see the same
device identities.
Device identity (VPD page 0x83 NAA designator) is preserved across
migration by reverse-engineering the stored TrueNAS NAA into LIO's
company_id + vpd_unit_serial components, ensuring initiators and
multipath stacks see no device identity change.
Switching from SCST to LIO is blocked with a clear error if the
configuration cannot be faithfully represented in LIO: open initiator
groups with CHAP, multiple discovery-auth credentials, multiple CHAP
credentials per auth tag, iSNS servers, or auth_networks on any target.
iSER is supported without additional configuration.
[CIR] Disable CIR pipeline for LLVM IR inputs (#187729)
When -fclangir is passed and the input is LLVM IR (e.g. during the
backend phase of OpenMP offloading), the CIR frontend pipeline is not
applicable.
Co-authored-by: Claude Opus 4.6 <noreply at anthropic.com>
[InstCombine] Fold (X + C) + (Y & ~C) to X + (Y | C) (#191334)
Add an InstCombine fold for masked overwrite patterns where the add
constant matches the cleared bits in the mask:
(X + C) + (Y & ~C) -> X + (Y | C)
Since `Y & ~C` clears all bits set in C, adding C cannot generate carry
through those bits and is equivalent to setting them with `or`.
Proof: https://alive2.llvm.org/ce/z/277UFK
Fixed: https://github.com/llvm/llvm-project/issues/191171
ports-mgmt/poudriere-devel: Update to 3.3.0-2554-g0324c5331
Changes:
- Pkg 2.7.0 support
- write_atomic: Add a C implementation
- Hooks: Remove example.org