[mlir][arith] Fix crash in AddUIExtendedOp::fold when operand is ub.poison (#183596)
When `constFoldBinaryOp<IntegerAttr>` is called with a `ub.poison`
operand, it propagates the poison attribute as its result. The fold
method for `arith.addui_extended` then attempted to cast this result to
`TypedAttr` via `llvm::cast<TypedAttr>(sumAttr)`, which failed with an
assertion because `PoisonAttr` does not implement the `TypedAttr`
interface.
Fix this by checking whether the folded sum is a poison attribute before
the cast. When poison is detected, it is propagated to both the sum and
overflow results.
Fixes #181534
[MLIR][Vector] Fix crash in BitCastOp::fold for index element type (#183572)
`BitCastOp::fold` called `Type::getIntOrFloatBitWidth()` on the source
element type without first verifying it satisfies `isIntOrFloat()`. When
the source vector has `index` element type (e.g. `vector<16xindex>`),
the assertion `only integers and floats have a bitwidth` fires.
Add an `srcElemType.isIntOrFloat()` guard to the condition so that the
constant-folding path is skipped for non-integer/float element types.
Fixes #177835
[SCF] allow indexing operations for loop coalesceing (#183180)
Currently if there are operations between the loops we get a dominance
issue as the delinearlized index is added after the operations. This PR
fixes that.
For testing we also add a transform pattern that makes a direct call to
coalesceLoops as the existing pattern calls
coalescePerfectlyNestedSCFForLoops which does not consider the loop nest
perfectly nested if there are operations between them which is safer for
that usage.
Co-authored-by: Claude Opus 4.6 <noreply at anthropic.com>
[libunwind][PAC] Resign explicitly in loadAndAuthenticateLinkRegister
Explicitly call `ptrauth_auth_and_resign` to prevent separate auth and
sign intrinsics being emitted by Clang frontend.
Even if replacing separate "auth" and "sign" operations with a safer "resign"
would be implemented in LLVM optimizer pipeline, Clang frontend treats zero
pointer as a special case w.r.t. PtrAuth. This results in such combination of
an explicit authentication and an implicit signing to be emitted as a hard-to-
simplify comparison against zero along these lines:
tmp = auth(input)
if (tmp == 0)
*output = sign(tmp)
else
*output = 0
NAS-139978 / 26.0.0-BETA.1 / replace enable_smb1 boolean with minimum_protocol (#18294)
This commit responds to an increasing trend where our user base has
disabling all non-SMB3 dialect support on the SMB server as a part of a
compliance checklist. Originally we presented a simply boolean checkbox
to re-enable SMB1 support. The new field is a string containing minimum
protocol that may be set to the following values:
*SMB1* - this enables SMB1 support (as well as SMB2/3). Users generally
*shouldn't* enable SMB1 unless they have a good reason to (for example a
very expensive CNC mill with dependency on a very old version of
Windows).
*SMB2* - (default) this disables SMB1 support, but allows SMB2/3
protocol access. The minimum supported SMB dialect is 2.04 (Windows
Vista / older linux clients).
*SMB3* - new. This disables SMB1 support, and *also* disables access to
SMB2/3 clients that do not support the 3.00 dialect family.
[4 lines not shown]
Fix deadlock on dmu_tx_assign() from vdev_rebuild()
vdev_rebuild() is always called with spa_config_lock held in
RW_WRITER mode. However, when it tries to call dmu_tx_assign()
the latter may hang on dmu_tx_wait() waiting for available txg.
But that available txg may not happen because txg_sync takes
spa_config_lock in order to process the current txg. So we have
a deadlock case here:
- dmu_tx_assign() waits for txg holding spa_config_lock;
- txg_sync waits for spa_config_lock not progressing with txg.
Here are the stacks:
__schedule+0x24e/0x590
schedule+0x69/0x110
cv_wait_common+0xf8/0x130 [spl]
__cv_wait+0x15/0x20 [spl]
dmu_tx_wait+0x8e/0x1e0 [zfs]
[21 lines not shown]
[clang] Fix driver resignaling when cc1 runs out-of-process (#183560)
When cc1 runs out-of-process and crashes, sys::ExecuteAndWait returns -2
for signal-killed children. The resignaling block added in 15488a7f78ce
only handled CommandRes > 128, so the driver would exit normally with
code 1 instead of dying by signal.
[CIR][docs] Fix table of contents for CIR eh and cleanups doc (#183594)
When this document was converted from rst to markdown, the contents
didn't get updated correctly.
[AllocToken] [Clang] Fix type inference for atomic types (#183571)
When evaluating whether an allocated type contains a pointer to generate
the `alloc_token` metadata, `typeContainsPointer` incorrectly stopped
recursion upon encountering an `AtomicType`. This resulted in types like
`_Atomic(int *)` (or `std::atomic<int *>` under libc++) being
incorrectly evaluated as not containing a pointer.
Add support for `AtomicType` in `typeContainsPointer` by recursively
checking the contained type.
Add tests for structs containing `_Atomic(int *)` and `_Atomic(int)`.
[Clang][Lexer][Performance] Optimize Lexer whitespace skipping logic (#180819)
... by extracting the check for space character and marking it as
`LLVM_LIKELY`. This increases performance because the space is by far
the most common horizontal character, so in most cases, this change
allows to replace a lookup table check with a simple comparison,
reducing latency and helping the cache.
This does not reduce instruction count, as a lookup table and a
comparison are both a single instruction. However, it _does_ reduce
cycles in a consistent manner, around `0.2` - `0.3`%:
[benchmark](https://llvm-compile-time-tracker.com/compare.php?from=3192fe2c7b08912cc72c86471a593165b615dc28&to=faa899a6ce518c1176f2bf59f199eb42e59d840e&stat=cycles).
I tested this locally and am able to confirm this is not noise (at least
not entirely, it does feel weird that this impacts `O3` more than
`O0`...), as I achieved almost `2`% faster PP speed in my tests.
audio/mumble-server: Fix "Failed to set TOS for UDP Socket" for IPv6
<W>2025-12-29 23:37:57.715 1 => Server listening on [::]:64738
<W>2025-12-29 23:37:57.721 1 => Server: Failed to set TOS for UDP Socket
This prevents proper QoS from being set for IPv6.
Upstream issue: https://github.com/mumble-voip/mumble/issues/7088
While here pet portclippy.
PR: 292034
MFH: 2026Q1
(cherry picked from commit 70bbcdc61d5678a4a5e9ef232ed6f2d4a3496c82)
audio/mumble-server: Fix "Failed to set TOS for UDP Socket" for IPv6
<W>2025-12-29 23:37:57.715 1 => Server listening on [::]:64738
<W>2025-12-29 23:37:57.721 1 => Server: Failed to set TOS for UDP Socket
This prevents proper QoS from being set for IPv6.
Upstream issue: https://github.com/mumble-voip/mumble/issues/7088
While here pet portclippy.
PR: 292034
MFH: 2026Q1
audio/mumble-server: Fix "Failed to set TOS for UDP Socket" for IPv6
<W>2025-12-29 23:37:57.715 1 => Server listening on [::]:64738
<W>2025-12-29 23:37:57.721 1 => Server: Failed to set TOS for UDP Socket
This prevents proper QoS from being set for IPv6.
Upstream issue: https://github.com/mumble-voip/mumble/issues/7088
While here pet portclippy.
PR: 292034
MFH: 2026Q1
py-stripe: updated to 14.4.0
14.4.0
Allow AIOHTTPClient to accept user-provided session or connector.
Update generated code
Add support for new resources reserve.Hold, reserve.Plan, and reserve.Release
Add support for location and reader on Charge.PaymentMethodDetail.CardPresent, Charge.PaymentMethodDetail.InteracPresent, ConfirmationToken.PaymentMethodPreview.Card.GeneratedFrom.PaymentMethodDetail.CardPresent, PaymentAttemptRecord.PaymentMethodDetail.CardPresent, PaymentAttemptRecord.PaymentMethodDetail.InteracPresent, PaymentMethod.Card.GeneratedFrom.PaymentMethodDetail.CardPresent, PaymentRecord.PaymentMethodDetail.CardPresent, and PaymentRecord.PaymentMethodDetail.InteracPresent
Add support for new value lk_vat on enums Checkout.Session.CustomerDetail.TaxId.type, Invoice.CustomerTaxId.type, Tax.Calculation.CustomerDetail.TaxId.type, Tax.Transaction.CustomerDetail.TaxId.type, and TaxId.type
Add support for new value lk_vat on enums CustomerCreateParamsTaxIdDatum.type, CustomerCreateTaxIdParams.type, InvoiceCreatePreviewParamsCustomerDetailTaxId.type, TaxIdCreateParams.type, and tax.CalculationCreateParamsCustomerDetailTaxId.type
Add support for new values reserve.hold.created, reserve.hold.updated, reserve.plan.created, reserve.plan.disabled, reserve.plan.expired, reserve.plan.updated, and reserve.release.created on enum Event.type
Add support for new values terminal_wifi_certificate and terminal_wifi_private_key on enums File.purpose and FileListParams.purpose
Add support for new values terminal_wifi_certificate and terminal_wifi_private_key on enum FileCreateParams.purpose
Add support for new value pay_by_bank on enums Invoice.PaymentSetting.payment_method_types, InvoiceCreateParamsPaymentSetting.payment_method_types, InvoiceModifyParamsPaymentSetting.payment_method_types, Subscription.PaymentSetting.payment_method_types, SubscriptionCreateParamsPaymentSetting.payment_method_types, and SubscriptionModifyParamsPaymentSetting.payment_method_types
Add support for display_name and service_user_number on Mandate.PaymentMethodDetail.BacsDebit
Change type of PaymentAttemptRecord.PaymentMethodDetail.Boleto.tax_id and PaymentRecord.PaymentMethodDetail.Boleto.tax_id from string to nullable(string)
Change type of PaymentAttemptRecord.PaymentMethodDetail.UsBankAccount.expected_debit_date and PaymentRecord.PaymentMethodDetail.UsBankAccount.expected_debit_date from nullable(string) to string
Add support for transaction_purpose on PaymentIntent.PaymentMethodOption.UsBankAccount, PaymentIntentConfirmParamsPaymentMethodOptionUsBankAccount, PaymentIntentCreateParamsPaymentMethodOptionUsBankAccount, and PaymentIntentModifyParamsPaymentMethodOptionUsBankAccount
Add support for optional_items on PaymentLinkModifyParams
[12 lines not shown]