[IR] Check FMF in isIdenticalTo() (#232805)
isIdenticalTo() is supposed to check that poison-generating flags are
the same. This accidentally broke when FastMathFlags move out of
SubclassOptionalData.
As a side-note, the transform in question should really be using
isIdenticalToWhenDefined() and intersecting flags, but that's a separate
issue...
Fixes https://github.com/llvm/llvm-project/issues/231487.
[mlir] Track known constant insertion effects (#232574)
Report whether inserting a known constant leaves the IR unchanged,
hoists the operation, or replaces it with an existing constant.
Use this result to accurately track IR changes in the greedy rewrite driver.
Assisted-by: gpt 6.1 Sol
[CIR] Lower nothrow on functions to nounwind (#232539)
Lower `nounwind` properly, CIR was dropping it.
Co-authored-by: Claude Opus 5.5 (1M context) <noreply at anthropic.com>
18530 ZTS: Improve cleanup in removal_with_export
Imported from: OpenZFS 5d508d92d2dd5fdb679fcf8b2a3977adb1f4199f
Reviewed-by: John Kennedy <john.kennedy at delphix.com>
Reviewed-by: Igor Kozhukhov <igor at dilos.org>
Reviewed by: Toomas Soome <tsoome at me.com>
Approved by: Gordon Ross <gordon.w.ross at gmail.com>
[CIR][NFC] Cache the CIRDataLayout in CIRGenModule (#232886)
... instead of rebuilding it. This fix a long standing FIXME.
The spec is fixed after Initialize and layout is only queried on
complete records (struct queries assert this and union queries never see
incomplete records in the test suite), so the cache stays valid for the
whole compilation. Also, CIRGen itself is single-threaded.
Compile time gains here are marginal, ~15% of CIRGen wall time on some
cases (SemaExpr.cpp, 66.2s to 65.4s (-0.8s), median of 3 runs).
[LV] Add tests for early-exit loops with reductions (NFC) (#232690)
Add tests for loops with uncountable early exits that contain
reductions, including reductions and reduction phis used on the early
exits.
Also keep the first loop in create-induction-resume.ll scalar, so the
test keeps exercising the IV expansion once early-exit loops with
reductions can be vectorized.
fix: [CIR] Check only the converted pointer's address space
Limit opaque pointer conversion to its own address space and diagnose unsupported pointee types where their layout is required. Emit type-specific errors for failed pointer conversions.
Validate pointee memory conversion before deriving copy sizes, alignments, or pointer-difference strides from CIR layout. Keep deeper pointee types opaque when their layouts are not needed.
Assisted-by: Codex / GPT-6
py-jedi: updated to 0.20.1
0.20.1
- Avoid loading an executable path from `project.json`
- Avoid changing the global recursion limit
- Support for async pytest fixtures
- Work better with PEP 695 type parameter syntax
[CIR] Reject language address spaces in DirectToLLVM pointer conversion
Reject unlowered language address spaces in pointer types when bypassing TargetLowering. Guard pointer-producing lowerings, including generated patterns, so failed conversions report legalization failures instead of silently selecting address space zero or constructing invalid LLVM operations.
Assisted-by: Codex / GPT-6
[CIR] Propagate initializer type adjustment failures
Reject initializers whose active members have no LLVM representation, including when an enclosing union's storage type is convertible. Propagate recursive adjustment failures before querying data layout or constructing LLVM operations.
Assisted-by: Codex / GPT-6
fix: [CIR] Diagnose unsupported type conversions
Emit NYI diagnostics naming the unsupported type and include symbol context when available.
Assisted-by: Codex / GPT-6
[CIR] Propagate type conversion failures in DirectToLLVM
Propagate failed type and constant conversions through DirectToLLVM so unsupported types produce legalization failures instead of invalid LLVM operations or a void function result.
Assisted-by: Codex / GPT-6
[Offload][OMP] Pass native device binary to device_load OMPT callback (#232478)
According to the specification and input from tool authors, OMPT tools
expect information about native device binary while invoking the
`device_load` OMPT callback function.
lang/s7: update to 11.9.20261009
This updates improves compatibility with 32-bit platforms somewhat.
There are still some issues with numbers >=2**32, but we are getting
there.
MFH: 2026Q4
(cherry picked from commit c4a3dd9e0af4aee9dace4b2cb1d28fcbeb406ec0)
archivers/lzma: update to 26.04
- a bug fix release
Upstream changes:
- Some bugs and vulnerabilities were fixed.
MFH: 2026Q4
(cherry picked from commit 8e2bdfc3a41dc46bd25796529ad980e07df4f59d)
devel/go-tools: update to 0.52.0
Selected upstream changes:
- cmd/compilebench: exit nonzero when a benchmark fails
- x/tools: delete obsolete code and dead test
- cmd/toolstash: check -linkobj files to support early export
- go.mod: update golang.org/x dependencies
Changelog: https://github.com/golang/tools/compare/v0.50.0...v0.52.0
MFH: 2026Q4
(cherry picked from commit 04b7864de90ca2b42d27592b0bc894cbbff372b7)