[qt/clang/llvm-project]: Summary of bulk changes made
KDE Git Services - Bulk Change <[email protected]>
| Newsgroups | gmane.comp.kde.cvs |
|---|---|
| Message-ID | <[email protected]> |
Git repository change summary for qt/clang/llvm-project
Pushed by mirror-service into branch 'upstream/users/arsenm/amdgpu/fillfeaturemap-msad-insts'.
Changed from b9add0fc07a057a970e3cd81a88446bcd1cf3b9c to 09d8e6d467d7c1d537c75baabe70598359e89066
Acknowledgement was received that this change introduces only existing code that has been pushed to another public open source repository.
This change contains the following new commits:
Git commit a7fa385ffa27504240e90e2b857455459dbd11de by GitHub (on behalf of Matt Arsenault) on 31/07/2026 at 05:46..
AMDGPU: Add missing atomic-fmin-fmax-global to gfx13 feature map (#213119)
fillAMDGCNFeatureMap omitted atomic-fmin-fmax-global-f32 and
atomic-fmin-fmax-global-f64 for gfx1310/gfx13-generic, so clang wrongly
rejected the raw_ptr_buffer_atomic_f{min,max}_f{32,64} builtins on those
targets even though the backend enables the features. Add them to the
gfx13 case.
Co-authored-by: Claude (Claude-Opus-4.8)
https://invent.kde.org/qt/clang/llvm-project/-/commit/a7fa385ffa27504240e90e2b857455459dbd11de
Git commit 14192adddc39cb28b7bcb1e6d50dc6ef87f4d54b by GitHub (on behalf of Peter Rong) on 31/07/2026 at 06:01..
[clang][Sema] Fix ObjC file-scope literal diagnostic (#209688)
A non-constant ObjC collection literal used as a file-scope initializer
should get the targeted err_objc_literal_nonconstant_at_file_scope
pointing at the offending element. CheckForConstantInitializer instead
inspected the wrapped Init/Culprit, so under -fobjc-arc, for id-typed
variables, or with parentheses it skipped the per-element loop and fell
back to the generic "initializer element is not a compile-time constant"
on the whole @{...}/@[...] -- or blamed the wrong element (e.g. a valid
string key rather than the non-constant value).
Unwrap the culprit with IgnoreParenImpCasts and drive classification and
per-element reporting off it, mirroring BuildObjC{Array,Dictionary}Literal
(unwrap before each isa<>; keys must be string literals, values/elements
constant object literals). Also treat CK_ARCReclaimReturnedObject as
transparent in Expr::isConstantInitializer so ARC-wrapped literals are
recognized and the reported culprit is the literal itself.
Add objc-constant-literal-dict-key-restrictions.m (macOS no-ARC, iOS ARC,
ObjC++), with each culprit on its own line so -verify checks the caret.
[Assisted-by](https://t.ly/Dkjjk): Opus 4.8
https://invent.kde.org/qt/clang/llvm-project/-/commit/14192adddc39cb28b7bcb1e6d50dc6ef87f4d54b
Git commit 6a38e4e0971285ccd7cca1b732f644a49f772d49 by GitHub (on behalf of Fangrui Song) on 31/07/2026 at 06:14..
[BFI] Simplify computeMassInLoops. NFC (#213200)
Iterate backwards with a plain iterator instead of dancing with
prev(base()).
https://invent.kde.org/qt/clang/llvm-project/-/commit/6a38e4e0971285ccd7cca1b732f644a49f772d49
Git commit 0312615e54f021ed2dc400a3ecd6698058490ae6 by GitHub (on behalf of Mariya Podchishchaeva) on 31/07/2026 at 06:24..
[clang][doc] Use my private email for now (#213058)
I'm in the middle of changing employers and will loose access to the
current email soon for a while.
https://invent.kde.org/qt/clang/llvm-project/-/commit/0312615e54f021ed2dc400a3ecd6698058490ae6
Git commit 9f6b782c7a993dedc8fe8b6e69c36c9684191f27 by GitHub (on behalf of Anutosh Bhat) on 31/07/2026 at 06:24..
[WebAssembly] Fix legalization of v8f16 insertelement (#212992)
```
define <8 x half> @insert_v8f16(<8 x half> %v, half %x) {
%r = insertelement <8 x half> %v, half %x, i32 3
ret <8 x half> %r
}
```
```
llc \
-mtriple=wasm32-unknown-unknown \
-mattr=+simd128,+fp16 \
-o /dev/null \
/private/tmp/wasm-v8f16-insert-only.ll
```
Would lead to
```
Initial selection DAG: %bb.0 'insert_v8f16:'
SelectionDAG has 10 nodes:
t0: ch,glue = EntryToken
t2: v8f16 = WebAssemblyISD::ARGUMENT TargetConstant:i32<0>
t4: i32 = WebAssemblyISD::ARGUMENT TargetConstant:i32<1>
t5: i16 = truncate t4
t6: f16 = bitcast t5
t8: v8f16 = insert_vector_elt t2, t6, Constant:i32<3>
t9: ch = WebAssemblyISD::RETURN t0, t8
Soft promote half operand 1:
t8: v8f16 = insert_vector_elt t2, t6, Constant:i32<3>
SoftPromoteHalfOperand Op #1:
t8: v8f16 = insert_vector_elt t2, t6, Constant:i32<3>
LLVM ERROR: Do not know how to soft promote this operator's operand!
```
https://invent.kde.org/qt/clang/llvm-project/-/commit/9f6b782c7a993dedc8fe8b6e69c36c9684191f27
Git commit 652e04312e8c5f4fc90ac16be494c3562c111ab9 by GitHub (on behalf of Ramon Munoz Jr) on 31/07/2026 at 06:24..
[MC] Add default ctor to SubtargetSubTypeAliasKV for zero-alias targets- #38762 (#212919)
Fixes a Windows MSVC 2019-only build break from 02da012 ("TableGen: Use
a compact table for CPU aliases", #211952).
That commit added std::array<SubtargetSubTypeAliasKV, NumAliases> to
SubtargetSubTypeKVStorage. SubtargetSubTypeAliasKV uses relative string
offsets, so it is non-copyable and declares only a two-argument
constructor -
no default constructor. In the MSVC 2019 STL, std::array<T, 0> still
holds a
real _Ty _Elems[1] and value-initializes it, so it requires T to be
default-constructible. Any target that defines no ProcessorAlias records
instantiates std::array<..., 0> and fails to compile. MSVC 2022 changed
this
member to a conditionally-empty type, so only MSVC 2019 is affected.
Fix: add a constexpr default constructor.
Co-Authored-By: Claude Opus 5
Signed-off-by: Munoz Jr, Ramon <[email protected]>
https://invent.kde.org/qt/clang/llvm-project/-/commit/652e04312e8c5f4fc90ac16be494c3562c111ab9
Git commit d91967e13ea281e37930cc592d35dfd3c5447a3f by GitHub (on behalf of David Green) on 31/07/2026 at 06:39..
[AArch64][GlobalISel] Update combine tests with concrete types. NFC (#213212)
https://invent.kde.org/qt/clang/llvm-project/-/commit/d91967e13ea281e37930cc592d35dfd3c5447a3f
Git commit 88fb1a93f4dd4e2bc5637b5e30ff0fab9edc21a9 by GitHub (on behalf of Timm Baeder) on 31/07/2026 at 06:47..
[clang][bytecode][NFC] Use auto* if we can (#213209)
Instead of just auto.
https://invent.kde.org/qt/clang/llvm-project/-/commit/88fb1a93f4dd4e2bc5637b5e30ff0fab9edc21a9
Git commit e1823e8b1778997d12ba947350190af5ee845ca9 by GitHub (on behalf of Nathaniel McCallum) on 31/07/2026 at 07:13..
[X86] Fix miscompile of fptosi.sat.iN.f16 for NaN under avx512fp16 (#210556)
`X86TargetLowering::LowerFP_TO_INT_SAT` incorrectly lowered
`llvm.fptosi.sat.iN.f16` for N = 13, 14, 15, 16 under `avx512fp16`
codegen: NaN inputs produced the destination type's minimum value
instead of the 0 that the intrinsic's documented semantics require.
Vector forms that scalarize through this lowering are affected under
the same condition, applied per element. See the third commit message
for the full root-cause analysis and fix rationale.
---
Assisted-by: Claude (Anthropic)
Assisted-by: Codex (OpenAI)
The investigation, root-cause analysis, fix, and tests in this PR were
developed with substantial AI assistance (Claude), including four
independent AI-assisted review rounds (Codex). I reviewed and take
responsibility for all code, analysis, and claims in this PR, and can
answer questions about the reasoning above.
https://invent.kde.org/qt/clang/llvm-project/-/commit/e1823e8b1778997d12ba947350190af5ee845ca9
Git commit bcf20310bdafd37253c6c849cd9bd3ba5b79752f by GitHub (on behalf of Jakob Koschel) on 31/07/2026 at 07:24..
[ubsan] Test CFI summaries globally (#206434)
Always enable report_error_type=1 and print_summary=1 for CFI tests, and
update existing tests to check for cfi-bad-type. This allows us to
verify summary output comprehensively across the test suite.
This is a prerequisite for the change to the UBSan summary for CFI in
https://github.com/llvm/llvm-project/pull/203341.
Assisted-by: Automated tooling, human reviewed.
https://invent.kde.org/qt/clang/llvm-project/-/commit/bcf20310bdafd37253c6c849cd9bd3ba5b79752f
Git commit 5eb4272b04144bded2ca1819c2d93b1cd4f1a26b by GitHub (on behalf of Kareem Ergawy) on 31/07/2026 at 07:26..
[flang][CodeGen] Replace fir.select* FIR-to-LLVM patterns with stubs that emit conversion errors (#212978)
`fir.select`, `fir.select_case`, `fir.select_rank`, and
`fir.select_type` are lowered to cf.* earlier in the pipeline
(`--fir-select-ops-conversion` and `--fir-polymorphic-op`). Their
FIR-to-LLVM conversion patterns are dead in a correct pipeline. Replace
them with a single templated stub
`SelectShouldHaveBeenConvertedStub<OP>` that emits `"'fir.<op>' op
should have already been converted"` and fails legalization, so running
`--fir-to-llvm-ir` standalone on stale IR reports a clear diagnostic
instead of "unable to legalize".
`Fir/convert-to-llvm.fir`'s six select* test blocks are removed (the
lowering no longer runs; CF-level coverage lives in
`Fir/SelectOpsConversion/`). `Fir/convert-to-llvm-invalid.fir` gains a
stub-error test per op. `Fir/Todo/select_case_with_character.fir` is
retargeted to check the equivalent diagnostic now emitted by
`--fir-select-ops-conversion`.
Co-Authored-By: Claude Sonnet 4.6 (1M context) <[email protected]>
PR Stack:
* https://github.com/llvm/llvm-project/pull/212977
* ▶️ https://github.com/llvm/llvm-project/pull/212978
Co-authored-by: Claude Sonnet 4.6 (1M context) <[email protected]>
https://invent.kde.org/qt/clang/llvm-project/-/commit/5eb4272b04144bded2ca1819c2d93b1cd4f1a26b
Git commit 2897ee1dbbbfb2d28ba23105b85697824b4a98a5 by GitHub (on behalf of Fabian Ritter) on 31/07/2026 at 07:37..
[AMDGPU][Docs] Memory Model: Refactor location-order to cover reads (#213044)
This shouldn't change anything semantically, only make the spec
(a) closer to the Vulkan spec, which includes reads in their location-ordered
relation: https://docs.vulkan.org/spec/latest/appendices/memorymodel.html#memory-model-location-ordered
(b) more uniform: this way, the may-see constraints are the same as the vanilla
LLVM constraints, only with all occurrences of "happens-before" replaced by
"location-ordered before".
https://invent.kde.org/qt/clang/llvm-project/-/commit/2897ee1dbbbfb2d28ba23105b85697824b4a98a5
Git commit a3ae1e0a8d5edaebe9e934e69fc4df84ed89d365 by GitHub (on behalf of Timm Baeder) on 31/07/2026 at 07:43..
[clang][bytecode][NFC] Enforce internal linkage (#213208)
For a struct and a function.
https://invent.kde.org/qt/clang/llvm-project/-/commit/a3ae1e0a8d5edaebe9e934e69fc4df84ed89d365
Git commit 21b0fc84c2f5fac1d3f763cfa581762684ad2a89 by GitHub (on behalf of Timm Baeder) on 31/07/2026 at 07:45..
[clang][bytecode][NFC] Remove redundant casts (#213210)
https://invent.kde.org/qt/clang/llvm-project/-/commit/21b0fc84c2f5fac1d3f763cfa581762684ad2a89
Git commit 99b3c767c34a04af0a2bbb1fd41bf1b2cb62b331 by GitHub (on behalf of David Sherwood) on 31/07/2026 at 07:52..
[Analysis] Optimise mul(const, (udiv %n, const)) during SCEV expansion (#212769)
We sometimes see SCEV expansions like this:
%lshr = lshr i64 %n, 2
%shl = shl i64 %lshr, 2
which originate from SCEV mul and udiv expressions:
mul(4, udiv(%n, 4))
that both share the same multiplicand, divisor. The instcombine pass
normally canonicalises this into
%and = and %n, -4
which is the final IR typically seen by the backend. In the case of SCEV
expansion during a pass like the loop vectoriser, instcombine does clean
this up. However, before this is cleaned up it will lead to
over-estimation of costs of SCEV checks, since the shifts are costed
separately and added up. It doesn't seem like there is an easy way to
look at the use count of a SCEV node in the SCEVExpander code. However,
I think for simple cases like this it's always beneficial to fold them
even if there are multiple uses of the SCEV udiv because we're dropping
both shifts.
https://invent.kde.org/qt/clang/llvm-project/-/commit/99b3c767c34a04af0a2bbb1fd41bf1b2cb62b331
Git commit 9d1018038c01d12801ccca9da5e6b5589989750a by GitHub (on behalf of Lukas Sommer) on 31/07/2026 at 07:57..
[RegAlloc] Avoid split past block-prologue interference (#209704)
`leaveIntvAtTop` skips the target-specific block prologue when
determining the insertion point.
If the block prologue itself contains an instruction that interferes
with the interval, we must leave the interval before the block,
otherwise we will hit an assertion in `splitLiveThroughBlock`.
---------
Signed-off-by: Lukas Sommer <[email protected]>
https://invent.kde.org/qt/clang/llvm-project/-/commit/9d1018038c01d12801ccca9da5e6b5589989750a
Git commit 28896ffcde9a773361e5d61191ebc2100abf5bcf by GitHub (on behalf of Benedek Kaibas) on 31/07/2026 at 08:15..
[analyzer][NFC] Add test cases for the lifetime test suite (#212254)
During the development of the lifetime checkers I had many important
test cases saved locally and were never imported to the test files of
the checkers. This PR adds those missing test cases to the test files.
By adding these test cases it helps tracking the state of the lifetime
checkers and what improvements they need in order to have better
coverage and reduce the false positive rate.
*AI policy*: During the development I have consulted with claude sonnet
5 to list me test case scenarios it thinks are useful and then reviewed
its feedback and implemented/wrote those test cases by myself. Since
some of the test cases are edge cases I wanted to make sure the
implementation is on the right track.
https://invent.kde.org/qt/clang/llvm-project/-/commit/28896ffcde9a773361e5d61191ebc2100abf5bcf
Git commit 5eb876fcaf460a9ee1dac9490b4b2871674b80ec by GitHub (on behalf of Benedek Kaibas) on 31/07/2026 at 08:24..
[analyzer][NFC] Match the parameters order of getEndPath and finalizeVisitor with VisitNode (#212883)
Currently the ordering of the parameters in `getEndPath` and
`finalizeVisitor` functions does not match the declaration of the
`VisitNode` function. This PR resolves it by reordering the parameters
among these functions to be consistent.
https://invent.kde.org/qt/clang/llvm-project/-/commit/5eb876fcaf460a9ee1dac9490b4b2871674b80ec
Git commit 2b4f6c42a7dbc8b28c71a334a9fbecce99b68eaf by GitHub (on behalf of Matt Arsenault) on 31/07/2026 at 08:26..
AMDGPU: Add missing mqsad-pk-insts to gfx13 frontend feature map (#213124)
fillAMDGCNFeatureMap omitted mqsad-pk-insts for gfx1310/gfx13-generic,
so clang wrongly rejected __builtin_amdgcn_mqsad_pk_u16_u8 on those
targets even though the backend enables the feature. Add it to the gfx13 case.
Co-authored-by: Claude (Claude-Opus-4.8)
https://invent.kde.org/qt/clang/llvm-project/-/commit/2b4f6c42a7dbc8b28c71a334a9fbecce99b68eaf
Git commit df81098826f9b45df3cbe2f29af3c44d69d5851a by GitHub (on behalf of Sergey Shcherbinin) on 31/07/2026 at 08:27..
[llvm-profgen] Preserve zero-valued first PT_LOAD address (#212258)
FirstLoadableAddress was initialized with if (!FirstLoadableAddress), so
a valid first PT_LOAD at vaddr 0 was treated as unset and overwritten by
a later segment. Track whether the first loadable segment has been seen
instead.
Assisted by GPT-5
https://invent.kde.org/qt/clang/llvm-project/-/commit/df81098826f9b45df3cbe2f29af3c44d69d5851a
Git commit 4fbad31a8adf437e1d0f1307ff4c26a248462b09 by GitHub (on behalf of Arseniy Obolenskiy) on 31/07/2026 at 08:36..
[mlir][SPIR-V] Add SPIRVToLLVM conversions for FMod and SMod (#206933)
https://invent.kde.org/qt/clang/llvm-project/-/commit/4fbad31a8adf437e1d0f1307ff4c26a248462b09
Git commit 814c0e672dfc81ae02a0772879f993a57bdbc1ad by GitHub (on behalf of Jeremy Johnson) on 31/07/2026 at 08:36..
[mlir][tosa] Switch matmul_t output to bf16 from fp16 (#212970)
Note that this implements the TOSA specification change:
https://github.com/arm/tosa-specification/pull/67
---------
Signed-off-by: Jeremy Johnson <[email protected]>
https://invent.kde.org/qt/clang/llvm-project/-/commit/814c0e672dfc81ae02a0772879f993a57bdbc1ad
Git commit 9b734e25473bc9e299a4b58575b9b0e618925b78 by GitHub (on behalf of Siyi Xu) on 31/07/2026 at 08:38..
[mlir][NVVM] Add memory clobber support to inline_ptx and BasicPtxBui… (#212937)
PTX with memory side effects (stores, atomics, mbarrier operations with
acquire/release semantics) emitted through `nvvm.inline_ptx` lowers to
`llvm.inline_asm` with register constraints only. Without a `~{memory}`
clobber, LLVM may reorder memory accesses across the inline assembly.
There was no way to express the clobber through this op or the
`BasicPtxBuilderInterface` machinery.
This patch adds, as discussed with @grypp:
- A `hasMemoryClobber` interface method (default `false`) on
`BasicPtxBuilderOpInterface`; when it returns `true`, `PtxBuilder`
appends `~{memory}` to the constraints of the generated inline assembly,
after all register constraints and tied indices.
- An opt-in `memory_clobber` boolean attribute (default `false`) on
`nvvm.inline_ptx` exposing this. Existing behavior is unchanged unless
the attribute is set to `true`.
For example:
```mlir
nvvm.inline_ptx "mbarrier.init.b64 [$0], $1;" ro(%p, %c : !llvm.ptr, i32) memory_clobber = true
```
now lowers to inline assembly with constraints `"l,r,~{memory}"`.
Tests: constraint emission with/without the attribute, combination with
predicate (`"l,r,b,~{memory}"`), read-write operands with tied indices
(`"=f,=f,r,r,0,1,~{memory}"`), and the no-operand case (`"~{memory}"`).
The op documentation's first example (mbarrier.init) is updated to show
correct usage.
https://invent.kde.org/qt/clang/llvm-project/-/commit/9b734e25473bc9e299a4b58575b9b0e618925b78
Git commit 65cd5388148e798798507dd9301e1dfe564f8ab3 by GitHub (on behalf of David Sherwood) on 31/07/2026 at 08:47..
[LV][NFC] Remove almost all remaining instcombine passes in RUN lines (#213067)
https://invent.kde.org/qt/clang/llvm-project/-/commit/65cd5388148e798798507dd9301e1dfe564f8ab3
Git commit 4120b5f5a3770cea9b26063eaca3d18153307961 by GitHub (on behalf of Yingying Wang) on 31/07/2026 at 08:53..
[RISCV] Deduplicate frame base address materializations for large stack frames (#211748)
For large stack frames, `eliminateFrameIndex` materializes the frame
base with a `LUI+ADD` sequence for every frame index access. When
multiple accesses share the same 4096-aligned base, this generates
redundant `LUI+ADD` sequences that `MachineLateInstrsCleanup` cannot
eliminate because it operates on individual instructions.
Introduce `PseudoAddUpperImm` to represent the `LUI+ADD` sequence as a
single pseudo instruction during frame index elimination. This enables
`MachineLateInstrsCleanup` to CSE identical frame base computations
within a basic block. The pseudo is expanded back to `LUI+ADD` in
`RISCVPostRAExpandPseudo`.
This patch improves SPEC CPU2026 `cactus` performance by 18% on the
SpaceMit K3 processor.
### Example
Before :
```assembly
lui a0, 4
add a0, a0, sp
fsd fa3, -1976(a0)
lui a0, 4 # redundant
add a0, a0, sp # redundant
ld s10, -160(a0)
```
After :
```assembly
lui a0, 4
add a0, a0, sp
fsd fa3, -1976(a0)
ld s10, -160(a0) # reuses a0
```
https://invent.kde.org/qt/clang/llvm-project/-/commit/4120b5f5a3770cea9b26063eaca3d18153307961
Git commit 6f9c189f738d47c7ad80f6bdf928fea441bfa8d6 by GitHub (on behalf of Jakob Koschel) on 31/07/2026 at 08:56..
[ubsan] Report specific CFI checks in UBSan summaries (#213224)
Instead of reporting generic `cfi-bad-type` in UBSan summaries for CFI
failures, report the specific CFI check kind (e.g., `cfi-vcall`,
`cfi-nvcall`, `cfi-icall`, `cfi-mfcall`, `cfi-derived-cast`,
`cfi-unrelated-cast`).
This is done by splitting CFIBadType into specific error types in
ubsan_checks.inc, and updating the handlers to report the appropriate
ErrorType based on the check kind. The suppression flag name for all of
them remains `cfi` to maintain backward compatibility.
Also replaces cfi-bad-type expectations in the existing tests.
Assisted-by: Automated tooling, human reviewed.
https://invent.kde.org/qt/clang/llvm-project/-/commit/6f9c189f738d47c7ad80f6bdf928fea441bfa8d6
Git commit 5808b2d513d1baa3355d078193006ab9384a4ee3 by GitHub (on behalf of Arseniy Obolenskiy) on 31/07/2026 at 08:58..
[SPIR-V] Expand atomicrmw nand through compare-exchange (#213217)
https://invent.kde.org/qt/clang/llvm-project/-/commit/5808b2d513d1baa3355d078193006ab9384a4ee3
Git commit ed0b5c0a428202f29f1477f1dbc31c1ab6083341 by GitHub (on behalf of Sean Clarke) on 31/07/2026 at 09:10..
[LoopIdiom] Update MemorySSA when optimizing CRC with lookup table (#213054)
Although the lookup table optimization of CRC loops inserts a `load`
instruction, MemorySSA is not properly updated, and is oblivious to the
new memory access. Insert a memory use immediately after creating the
`load` instruction, and verify MemorySSA at the end of the optimization
if applicable.
https://invent.kde.org/qt/clang/llvm-project/-/commit/ed0b5c0a428202f29f1477f1dbc31c1ab6083341
Git commit 55418a582c8ced243b4a6eda9b9d7280499af56c by GitHub (on behalf of Petar Avramovic) on 31/07/2026 at 09:11..
GlobalISel: Don't use GISelMatchGenericTypes for floating point opcodes (#212814)
With GISelMatchGenericTypes, AMDGPU had the same input pattern for
G_ATOMICRMW_FADD that checks for v2s16, so the one that is first
in the tablegen table always fires (it was v2f16 in this case).
Should explicitly check for v2f16/v2bf16.
https://invent.kde.org/qt/clang/llvm-project/-/commit/55418a582c8ced243b4a6eda9b9d7280499af56c
Git commit 81cd5b6217f12ada97e0f1791ba8545120c13230 by GitHub (on behalf of David Spickett) on 31/07/2026 at 09:28..
[lldb] Convert generic register names in a case insensitive way (#213001)
Part of #212778.
There are 3 types of register name:
* The primary name, displayed by default.
* An optional alias, for example AArch64 "lr" is also "x30".
* Generic convenience names like "sp", "ra" and so on.
The first two types are handled case insensitively, but generic names
were not. For example:
(lldb) register read RA
error: Invalid register name 'RA'
(lldb) register read ra
lr = 0x0000fffff7e27400
In this change I've fixed that.
This does close a workaround for #212778, where you could get to the
actual x86_64 "sp" by using "sP". However, this is only known to work on
Linux, and other architectures are negatively impacted by the bug so I'm
fixing it.
https://invent.kde.org/qt/clang/llvm-project/-/commit/81cd5b6217f12ada97e0f1791ba8545120c13230
Git commit 303ec27d8b231f9fb3078333894fe9813761e566 by GitHub (on behalf of antoine moynault) on 31/07/2026 at 09:45..
Revert "[ProfileData] Implement contains in SampleProfileNameTable (NFC)" (#213231)
Reverts llvm/llvm-project#211995
Broke arm 32-bit buildbots (narrowing conversion uint64_t -> size_t)
https://invent.kde.org/qt/clang/llvm-project/-/commit/303ec27d8b231f9fb3078333894fe9813761e566
Git commit 9621bedd8a7a09c5e48a12697ff2d0463067e341 by GitHub (on behalf of Charles Zablit) on 31/07/2026 at 09:49..
[lldb] Only preload a Module's symbols once (#213094)
Creating several targets for the same file concurrently could deadlock.
Targets share Module objects. Therefore, each concurrent
`SBDebugger::CreateTarget()` call creates a `PreloadSymbols()` task for
the *same* Module. The thread pool running those tasks can pick up a
duplicate preload task for the same Module. The mutex used by the Module
is recursive, so the thread starts the task again, enters the same
`std::call_once` and deadlocks.
Preloading only needs to happen once: it does work taht a later lookup
would do anyway. If it's already in progress, skip it. This deduplicate
the task that causes the deadlock.
At desk, this fixes a timeout in
`api/multiple-targets/TestMultipleTargets.py`, roughly 1/40 runs. To
reproduce the issue, I shrunk the thread pool to 2 threads, which makes
it always timeout.
https://invent.kde.org/qt/clang/llvm-project/-/commit/9621bedd8a7a09c5e48a12697ff2d0463067e341
Git commit dcce9de575fdb9f652f38c2ba1b62f4a4da66515 by GitHub (on behalf of Matt Arsenault) on 31/07/2026 at 09:55..
AMDGPU: Give v_cvt_sr_pk_bf16_f32 its own subtarget feature (#213150)
v_cvt_sr_pk_bf16_f32 was gated on bf16-cvt-insts, but that feature is
also present on gfx950 where the (non-sr) v_cvt_pk_bf16_f32 was first
added. The stochastic-rounding v_cvt_sr_pk_bf16_f32 was only added
for gfx1250 and has no gfx950 encoding, so it would mis-select and
later hit the "Invalid opcode" assert. Introduce
cvt-sr-pk-bf16-f32-inst, currently added to gfx13 and 125*
Co-authored-by: Claude (Claude-Opus-4.8)
https://invent.kde.org/qt/clang/llvm-project/-/commit/dcce9de575fdb9f652f38c2ba1b62f4a4da66515
Git commit 275365f4f94a6e66b933d3d62cb62ac081daa3a9 by GitHub (on behalf of Petar Avramovic) on 31/07/2026 at 10:00..
GlobalISel: Fix lowerMergeValues when dst type is float (#212795)
Lowering is done in the integer domain. Similar to the type
mismatch when dst is a pointer, make a bitcast when dst is float.
https://invent.kde.org/qt/clang/llvm-project/-/commit/275365f4f94a6e66b933d3d62cb62ac081daa3a9
Git commit 09d8e6d467d7c1d537c75baabe70598359e89066 by Matt Arsenault on 31/07/2026 at 10:34..
AMDGPU: Add missing msad-insts to gfx13 frontend feature map
fillAMDGCNFeatureMap omitted msad-insts for gfx1310/gfx13-generic, so
clang wrongly rejected __builtin_amdgcn_msad_u8 on those targets even
though the backend enables the feature (FeatureGFX9 generation, inherited
through FeatureGFX13). Add it to the gfx13 case.
Co-authored-by: Claude (Claude-Opus-4.8)
https://invent.kde.org/qt/clang/llvm-project/-/commit/09d8e6d467d7c1d537c75baabe70598359e89066