[LLDB] Add assignment to DIL. (#190223)
Add the ability for DIL to recognize and process assignment, updating
program variables. Recognizes '=', '+=' and '-=' operators. Increment
and decrement ('++' and '--') will be added in a separate (future) PR.
"*=" and "/=" need to wait until DIL handles multiply and divide
operators.
[CIR][NFC] Remove unused DataLayout in array lowering (#201408)
The per-element loop in CIRAttrToValue::visitCirAttr(ConstArrayAttr) constructed an mlir::DataLayout for every element of an ArrayAttr-backed constant array and never used it. Constructing a DataLayout walks the parent ops to gather the layout spec, so for an N-element array this was N redundant constructions on the lowering path. Removing the dead local is NFC -- the generated IR is unchanged.
Split out of #198427, where it was flagged as an unrelated drive-by.
[llvm-exegesis] Support LookupRegClassByHwMode in exegesis Instruction::create
This resolves the TODO for LookupRegClassByHwMode support in llvm-exegesis by
passing the MCSubtargetInfo to Instruction::create and calling
getOpRegClassID with the active HwMode.
This also updates MemoryUse test expectations for Mips, as the target now
correctly resolve HwMode-dependent memory register operands (MSA128F16 in
Mips and post-#177073 BasePtrRegClass for RISC-V).
Pull Request: https://github.com/llvm/llvm-project/pull/200525
Remove the optional bitcast between a musttail call and its ret (#201280)
Under opaque pointers the only bitcast the verifier could accept in this
position is a no-op ptr->ptr cast
Drop it and reduce isTypeCongruent to a plain type equality check
[mlir][acc] ACCComputeLowering needs to account for device_type par (#201267)
When assigning parallelism for compute constructs or loops, device_type
parallelism must be first considered as a group for all available (gang,
worker, vector) - if any of these have device_type setting, then those
are the only ones that should be considered. Only if the loop has no
device_type specific parallelism then default parallelism should be
assigned.
[lldb][docs] Convert simple RST pages to Markdown (NFC) (#201256)
Convert nine short, low-risk RST docs to MyST Markdown as the first
batch of an incremental RST -> Markdown migration. Subsequent batches
will cover the rest.
Verified by building the docs on origin/main and on this branch with
identical sphinx flags and diffing the rendered HTML. Seven of nine
pages are byte-identical.
contributing.html differs in 42 lines, all attributable to `{doc}` xrefs
replacing RST hyperlinks to sibling pages (`reference external` ->
`reference internal`) and CommonMark collapsing two-spaces-after- period
to one.
ondemand.html differs in 26 lines because two bulleted lists that
followed a paragraph with no blank-line separator originally rendered as
literal `- ...` text in both RST and Markdown. The conversion tool
preserved that by emitting `\-`; this patch instead inserts a blank line
[5 lines not shown]
lang/go126: Update to 1.26.4
Changes:
go1.26.4 (released 2026-06-02) includes security fixes to the
crypto/x509, mime, and net/textproto packages, as well as bug fixes to
the compiler, the runtime, the go fix command, and the crypto/fips140
package.
MFH: 2026Q2
Reviewed by: adamw
Differential Revision: https://reviews.freebsd.org/D57407
(cherry picked from commit afbda080c88aab06c89a536eb723dae5559d05e1)
lang/go125: Update to 1.25.11
Changes:
go1.25.11 (released 2026-06-02) includes security fixes to the
crypto/x509, mime, and net/textproto packages, as well as bug fixes to
the compiler and the runtime.
MFH: 2026Q2
Reviewed by: adamw
Differential Revision: https://reviews.freebsd.org/D57406
(cherry picked from commit 329713ce942821d5fd5130fb37560765711aee17)
[SelectionDAG] Fold extracts of subvector inserts
Fold extract_subvector(insert_subvector(...)) when the extraction is
outside the inserted subvector or the inserted subvector only amends
the extracted
In particular,
1. vA extract_subvector (vB insert_subvector(vB X, vC Y, C1), C2) =>
vA extract_subvector(X, C2) when [C2, C2 + A) intersect [C1, C1 + C)
is the empty set
2. ... => extract_subvector(Y, C2 - C1) if [C2, C2 + Y) is a subset of
[C1, C1 + C) - an existing simplification
3. ... => vA insert_subvector(vA extract_subvector(vB X, C2), vC Y, C1 - C2)
if [C1, C1 + C) is a subset of [C2, C2 + A) - that is, if you're only
updating the extracted sub-part.
Adds a regresssion tests for an infinite SelectionDAG cycle that is
fixed by a stack of commits that ends with this one.
[3 lines not shown]
lang/go126: Update to 1.26.4
Changes:
go1.26.4 (released 2026-06-02) includes security fixes to the
crypto/x509, mime, and net/textproto packages, as well as bug fixes to
the compiler, the runtime, the go fix command, and the crypto/fips140
package.
MFH: 2026Q2
Reviewed by: adamw
Differential Revision: https://reviews.freebsd.org/D57407
lang/go125: Update to 1.25.11
Changes:
go1.25.11 (released 2026-06-02) includes security fixes to the
crypto/x509, mime, and net/textproto packages, as well as bug fixes to
the compiler and the runtime.
MFH: 2026Q2
Reviewed by: adamw
Differential Revision: https://reviews.freebsd.org/D57406
[SelectionDAG] Fold subvector inserts into concat operands
Push insert_subvector into the containing CONCAT_VECTORS operand when the insertion is wholly contained there.
AI note: an LLM generated the code and the test, I've read them
Co-Authored-By: OpenAI Codex <codex at openai.com>
[RISCV] Allow 64-bit fixed frame-offsets on RV64 (#201338)
Some HPC code requires a _very_ large stack. GCC also allows 64-bit
frame-offsets on 64-bit systems.
Since RISCVInstrInfo::movImm() supports materializing 64-bit immediates
the existing framework already handles the lowering correctly.
This patch only enables support for 64-bit _fixed_ frame offsets.
Scalable offsets call RISCVInstrInfo::mulImm() which doesn't seem to
support 64-bit calculations yet. This should be fine since there'd have
to be more than 2^31 RVV spills for this case to happen.
[SelectionDAG] Fold extracts spanning concat operands
Factor the extract_subvector-of-CONCAT_VECTORS logic and handle
extracts that cover multiple whole concat operands by rebuilding a
smaller concat directly.
AI note: an LLM generated the code and the test, I've read them
Co-Authored-By: OpenAI Codex <codex at openai.com>