[all-commits] [llvm/llvm-project] a38998: [MLIR][WASM] Introduce the RaiseWasmMLIRPass to co...
Igor Kudrin via All-commits
all-commits at lists.llvm.org
Thu Jun 25 19:34:48 PDT 2026
Branch: refs/heads/users/ikudrin/clang-cwg2282
Home: https://github.com/llvm/llvm-project
Commit: a38998941b2f57ffce38d6161a48d59d7d481964
https://github.com/llvm/llvm-project/commit/a38998941b2f57ffce38d6161a48d59d7d481964
Author: Ferdinand Lemaire <flscminecraft at gmail.com>
Date: 2026-06-20 (Sat, 20 Jun 2026)
Changed paths:
M mlir/include/mlir/Conversion/Passes.h
M mlir/include/mlir/Conversion/Passes.td
A mlir/include/mlir/Conversion/RaiseWasm/RaiseWasmMLIR.h
M mlir/include/mlir/Dialect/WasmSSA/IR/WasmSSAOps.td
M mlir/lib/Conversion/CMakeLists.txt
A mlir/lib/Conversion/RaiseWasm/CMakeLists.txt
A mlir/lib/Conversion/RaiseWasm/RaiseWasmMLIR.cpp
M mlir/lib/Dialect/WasmSSA/IR/WasmSSAOps.cpp
A mlir/test/Conversion/RaiseWasm/wasm-abs-to-math-abs.mlir
A mlir/test/Conversion/RaiseWasm/wasm-add-to-arith-add.mlir
A mlir/test/Conversion/RaiseWasm/wasm-and-to-arith-and.mlir
A mlir/test/Conversion/RaiseWasm/wasm-ceil-to-math-ceil.mlir
A mlir/test/Conversion/RaiseWasm/wasm-clz-to-math-clz.mlir
A mlir/test/Conversion/RaiseWasm/wasm-const-to-arith-const.mlir
A mlir/test/Conversion/RaiseWasm/wasm-convert-to-arith-tofp.mlir
A mlir/test/Conversion/RaiseWasm/wasm-copysign-to-math-copysign.mlir
A mlir/test/Conversion/RaiseWasm/wasm-ctz-to-math-ctz.mlir
A mlir/test/Conversion/RaiseWasm/wasm-demote-to-arith-trunc.mlir
A mlir/test/Conversion/RaiseWasm/wasm-div-to-arith-div.mlir
A mlir/test/Conversion/RaiseWasm/wasm-floor-to-math-floor.mlir
A mlir/test/Conversion/RaiseWasm/wasm-func-to-func.mlir
A mlir/test/Conversion/RaiseWasm/wasm-global-to-memref-global.mlir
A mlir/test/Conversion/RaiseWasm/wasm-local-to-memref.mlir
A mlir/test/Conversion/RaiseWasm/wasm-max-to-arith-maximumf.mlir
A mlir/test/Conversion/RaiseWasm/wasm-min-to-arith-minimumf.mlir
A mlir/test/Conversion/RaiseWasm/wasm-mul-to-arith-mul.mlir
A mlir/test/Conversion/RaiseWasm/wasm-neg-to-arith-neg.mlir
A mlir/test/Conversion/RaiseWasm/wasm-or-to-arith-or.mlir
A mlir/test/Conversion/RaiseWasm/wasm-popcnt-to-math-ctpop.mlir
A mlir/test/Conversion/RaiseWasm/wasm-promote-to-arith-ext.mlir
A mlir/test/Conversion/RaiseWasm/wasm-reinterpret-to-arith-bitcast.mlir
A mlir/test/Conversion/RaiseWasm/wasm-rem-to-arith-rem.mlir
A mlir/test/Conversion/RaiseWasm/wasm-shl-to-arith-shl.mlir
A mlir/test/Conversion/RaiseWasm/wasm-shr_s-to-arith-shrs.mlir
A mlir/test/Conversion/RaiseWasm/wasm-shr_u-to-arith-shru.mlir
A mlir/test/Conversion/RaiseWasm/wasm-sqrt-to-math-sqrt.mlir
A mlir/test/Conversion/RaiseWasm/wasm-sub-to-arith-sub.mlir
A mlir/test/Conversion/RaiseWasm/wasm-trunc-to-math-trunc.mlir
A mlir/test/Conversion/RaiseWasm/wasm-wrap-to-arith-trunc.mlir
A mlir/test/Conversion/RaiseWasm/wasm-xor-to-arith-xor.mlir
Log Message:
-----------
[MLIR][WASM] Introduce the RaiseWasmMLIRPass to convert WasmSSA MLIR to core dialects (#164562)
This is following https://github.com/llvm/llvm-project/pull/154674 and
still related to
https://discourse.llvm.org/t/rfc-mlir-dialect-for-webassembly/86758.
This PR introduces the RaiseWasmMLIRPass. This pass lowers WasmSSA MLIR
to other dialects of the LLVM ecosystem (namely: arith, math, cf and
memref).
This is the first PR of a series of 2 or 3 to introduce the lowering, as
an introduction it brings support for function calls, local and global
variables and handling of arithmetic operations. As explained in the
RFC, most WasmSSA operations have been made to stay close to other
dialects' semantics so that conversion is trivialized.
---------
Signed-off-by: Ferdinand Lemaire <flemairen6 at gmail.com>
Co-authored-by: Ferdinand Lemaire <ferdinand.lemaire at woven-planet.global>
Co-authored-by: Ferdinand Lemaire <flemairen6 at gmail.com>
Commit: ea9bae08990f581e9dce8f65844bc16b3249f91e
https://github.com/llvm/llvm-project/commit/ea9bae08990f581e9dce8f65844bc16b3249f91e
Author: Luc Forget <github at alias.lforget.fr>
Date: 2026-06-20 (Sat, 20 Jun 2026)
Changed paths:
M mlir/include/mlir/Conversion/Passes.h
M mlir/include/mlir/Conversion/Passes.td
R mlir/include/mlir/Conversion/RaiseWasm/RaiseWasmMLIR.h
M mlir/include/mlir/Dialect/WasmSSA/IR/WasmSSAOps.td
M mlir/lib/Conversion/CMakeLists.txt
R mlir/lib/Conversion/RaiseWasm/CMakeLists.txt
R mlir/lib/Conversion/RaiseWasm/RaiseWasmMLIR.cpp
M mlir/lib/Dialect/WasmSSA/IR/WasmSSAOps.cpp
R mlir/test/Conversion/RaiseWasm/wasm-abs-to-math-abs.mlir
R mlir/test/Conversion/RaiseWasm/wasm-add-to-arith-add.mlir
R mlir/test/Conversion/RaiseWasm/wasm-and-to-arith-and.mlir
R mlir/test/Conversion/RaiseWasm/wasm-ceil-to-math-ceil.mlir
R mlir/test/Conversion/RaiseWasm/wasm-clz-to-math-clz.mlir
R mlir/test/Conversion/RaiseWasm/wasm-const-to-arith-const.mlir
R mlir/test/Conversion/RaiseWasm/wasm-convert-to-arith-tofp.mlir
R mlir/test/Conversion/RaiseWasm/wasm-copysign-to-math-copysign.mlir
R mlir/test/Conversion/RaiseWasm/wasm-ctz-to-math-ctz.mlir
R mlir/test/Conversion/RaiseWasm/wasm-demote-to-arith-trunc.mlir
R mlir/test/Conversion/RaiseWasm/wasm-div-to-arith-div.mlir
R mlir/test/Conversion/RaiseWasm/wasm-floor-to-math-floor.mlir
R mlir/test/Conversion/RaiseWasm/wasm-func-to-func.mlir
R mlir/test/Conversion/RaiseWasm/wasm-global-to-memref-global.mlir
R mlir/test/Conversion/RaiseWasm/wasm-local-to-memref.mlir
R mlir/test/Conversion/RaiseWasm/wasm-max-to-arith-maximumf.mlir
R mlir/test/Conversion/RaiseWasm/wasm-min-to-arith-minimumf.mlir
R mlir/test/Conversion/RaiseWasm/wasm-mul-to-arith-mul.mlir
R mlir/test/Conversion/RaiseWasm/wasm-neg-to-arith-neg.mlir
R mlir/test/Conversion/RaiseWasm/wasm-or-to-arith-or.mlir
R mlir/test/Conversion/RaiseWasm/wasm-popcnt-to-math-ctpop.mlir
R mlir/test/Conversion/RaiseWasm/wasm-promote-to-arith-ext.mlir
R mlir/test/Conversion/RaiseWasm/wasm-reinterpret-to-arith-bitcast.mlir
R mlir/test/Conversion/RaiseWasm/wasm-rem-to-arith-rem.mlir
R mlir/test/Conversion/RaiseWasm/wasm-shl-to-arith-shl.mlir
R mlir/test/Conversion/RaiseWasm/wasm-shr_s-to-arith-shrs.mlir
R mlir/test/Conversion/RaiseWasm/wasm-shr_u-to-arith-shru.mlir
R mlir/test/Conversion/RaiseWasm/wasm-sqrt-to-math-sqrt.mlir
R mlir/test/Conversion/RaiseWasm/wasm-sub-to-arith-sub.mlir
R mlir/test/Conversion/RaiseWasm/wasm-trunc-to-math-trunc.mlir
R mlir/test/Conversion/RaiseWasm/wasm-wrap-to-arith-trunc.mlir
R mlir/test/Conversion/RaiseWasm/wasm-xor-to-arith-xor.mlir
Log Message:
-----------
Revert "[MLIR][WASM] Introduce the RaiseWasmMLIRPass to convert WasmSSA MLIR to core dialects" (#204917)
Reverts llvm/llvm-project#164562
Co-authored-by: Luc Forget <lforg37 at users.noreply.github.com>
Commit: ec3b4186a0f5bd182692721d14ed50af1f4af47d
https://github.com/llvm/llvm-project/commit/ec3b4186a0f5bd182692721d14ed50af1f4af47d
Author: A. Jiang <de34 at live.cn>
Date: 2026-06-20 (Sat, 20 Jun 2026)
Changed paths:
A libcxx/test/std/language.support/support.types/byte.compile.pass.cpp
R libcxx/test/std/language.support/support.types/byte.pass.cpp
M libcxx/test/std/language.support/support.types/byteops/and.assign.pass.cpp
M libcxx/test/std/language.support/support.types/byteops/and.pass.cpp
R libcxx/test/std/language.support/support.types/byteops/enum_direct_init.pass.cpp
R libcxx/test/std/language.support/support.types/byteops/lshift.assign.compile.fail.cpp
M libcxx/test/std/language.support/support.types/byteops/lshift.assign.pass.cpp
R libcxx/test/std/language.support/support.types/byteops/lshift.compile.fail.cpp
M libcxx/test/std/language.support/support.types/byteops/lshift.pass.cpp
M libcxx/test/std/language.support/support.types/byteops/not.pass.cpp
M libcxx/test/std/language.support/support.types/byteops/or.assign.pass.cpp
M libcxx/test/std/language.support/support.types/byteops/or.pass.cpp
R libcxx/test/std/language.support/support.types/byteops/rshift.assign.compile.fail.cpp
M libcxx/test/std/language.support/support.types/byteops/rshift.assign.pass.cpp
R libcxx/test/std/language.support/support.types/byteops/rshift.compile.fail.cpp
M libcxx/test/std/language.support/support.types/byteops/rshift.pass.cpp
R libcxx/test/std/language.support/support.types/byteops/to_integer.compile.fail.cpp
M libcxx/test/std/language.support/support.types/byteops/to_integer.pass.cpp
M libcxx/test/std/language.support/support.types/byteops/xor.assign.pass.cpp
M libcxx/test/std/language.support/support.types/byteops/xor.pass.cpp
Log Message:
-----------
[libc++][test] Rewrite tests for `std::byte` (#204116)
Previously, test files for `std::byte` were less than ideal. There were
many issues.
- `byte.pass.cpp` tested many properties which hold for enumeration
types, but failed to verity that `std::byte` is a scoped enumeration
type. Also, it was not a `.compile.pass.cpp`.
- `enum_direct_init.pass.cpp` seemed to be completely redundant.
- It was not tested that compound assignment operators return references
to their left operands.
- Return types of operators were rarely tested.
- Constraints of functions were not tested using SFINAE techniques.
- Test cases were not made run in both constant evaluation and at run
time in the conventional way.
This patch
- rewrites tests for `std::byte` to address these issues,
- expands test coverage for integer types listed in `type_algorithms.h`,
and
- updates lit comments to new-style `// REQUIRES: std-at-least-c++17`.
Commit: 9f578bc595ca7c1a5ce35b17c483fd6c557d11ef
https://github.com/llvm/llvm-project/commit/9f578bc595ca7c1a5ce35b17c483fd6c557d11ef
Author: Damian Höster <damian.hoester at posteo.de>
Date: 2026-06-20 (Sat, 20 Jun 2026)
Changed paths:
M clang/lib/Format/UnwrappedLineParser.cpp
M clang/lib/Format/UnwrappedLineParser.h
M clang/unittests/Format/FormatTest.cpp
Log Message:
-----------
[clang-format] Reset `Line->IsModuleOrImportDecl` in `addUnwrappedLine` (#204565)
The `IsModuleOrImportDecl` flag was not reset in `addUnwrappedLine`.
Since the parser recycles the `Line` object, this flag remained `true`
for all subsequent lines in the file, which disabled wrapping
(`CanBreakBefore` in `TokenAnnotator.cpp`) for expression-level
constructs after any C++20 module or import statement, causing some
formatting rules to not be applied in places. This patch fixes the issue
by resetting the flag to `false`.
---------
Co-authored-by: Owen Pan <owenpiano at gmail.com>
Commit: f21080724d2067b5acf01893bf2d544b49239161
https://github.com/llvm/llvm-project/commit/f21080724d2067b5acf01893bf2d544b49239161
Author: Ryotaro Kasuga <kasuga.ryotaro at fujitsu.com>
Date: 2026-06-20 (Sat, 20 Jun 2026)
Changed paths:
M llvm/lib/Analysis/LoopCacheAnalysis.cpp
Log Message:
-----------
[LoopCacheAnalysis] Drop isLoopSimplifyForm check (NFCI) (#204822)
This patch removes the isLoopSimplifyForm() check from
LoopCacheAnalysis. This check was problematic when I tried migrating
LoopCachePrinterPass from a loop pass to a function pass (i.e.,
#204807), because the former applies the loop-simplify pass via
FunctionToLoopPassAdapter, whereas the latter does not. I believe this
check is meaningless because the analysis doesn't pay attention to the
details of the actual loop structure. So this change should not affect
the behavior of the pass.
Commit: 342de06a7692e76a23b30761e576e58e675b65d8
https://github.com/llvm/llvm-project/commit/342de06a7692e76a23b30761e576e58e675b65d8
Author: Hazarath <92698778+hazarathayya at users.noreply.github.com>
Date: 2026-06-20 (Sat, 20 Jun 2026)
Changed paths:
M llvm/lib/Transforms/Scalar/Reassociate.cpp
A llvm/test/Transforms/Reassociate/reassociate-distribute.ll
Log Message:
-----------
[Reassociate] Distribute multiply over add to enable factorization (#178201)
### This patch improves ReassociatePass to handle patterns like:
(x*C1) - ((y+x)*C2) → x*(C1-C2) - (y*C2)
The optimization consists of two changes:
1. Distribution pre-processing: Transform (A+B)*C → A*C + B*C when:
- The add has exactly one use (avoids code bloat)
- Both add operands are non-constant (avoids unprofitable cases)
This exposes common factors that would otherwise be hidden inside
the addition, enabling subsequent factorization.
2. Factorization heuristic: Prefer extracting non-constant factors
(Instructions/Arguments) over constant factors when occurrence
counts are equal. This enables better constant folding opportunities.
Note: undef is excluded from this preference to maintain existing
test expectations.
Example transformation:
Input IR:
```
%add = add nsw i16 %y, %x
%mul1 = mul nsw i16 %x, 8697
%mul2 = mul nsw i16 %add, 6436
%sub = sub nsw i16 %mul1, %mul2
ret i16 %sub
```
After distribution:
```
%1 = mul nsw i16 %y, 6436
%2 = mul nsw i16 %x, 6436
%3 = add nsw i16 %1, %2
%sub = sub nsw i16 %mul1, %3
```
After reassociation (factors %x, folds 8697-6436):
```
%neg = mul i16 %y, -6436
%reass.mul = mul i16 %x, 2261
%result = add i16 %reass.mul, %neg
```
The transformation preserves nsw/nuw flags during distribution.
Note that flags may be dropped by subsequent reassociation passes;
comprehensive flag preservation can be addressed in future work.
Fixes #167190
Commit: 56262f29ea23c50e82640c8bdc50cc17e9498688
https://github.com/llvm/llvm-project/commit/56262f29ea23c50e82640c8bdc50cc17e9498688
Author: Tom Stellard <tstellar at redhat.com>
Date: 2026-06-20 (Sat, 20 Jun 2026)
Changed paths:
M .github/workflows/new-prs.yml
Log Message:
-----------
workflows/new-prs: Use github-automation container (#204706)
Commit: 68079bb518dcdaec15ee3b202f45701d3a78fa91
https://github.com/llvm/llvm-project/commit/68079bb518dcdaec15ee3b202f45701d3a78fa91
Author: Jan Schultke <me at eisenwave.net>
Date: 2026-06-20 (Sat, 20 Jun 2026)
Changed paths:
M clang/docs/LanguageExtensions.rst
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Basic/Builtins.td
M clang/lib/AST/ByteCode/InterpBuiltin.cpp
M clang/lib/AST/ExprConstant.cpp
M clang/lib/CodeGen/CGBuiltin.cpp
M clang/lib/Sema/SemaChecking.cpp
M clang/test/AST/ByteCode/builtin-functions.cpp
M clang/test/CodeGen/builtins-elementwise-math.c
M clang/test/Sema/builtins-elementwise-math.c
Log Message:
-----------
[clang] Implement `__builtin_elementwise_pext` and `__builtin_elementwise_pdep` (#204296)
Closes #204126
This PR adds `__builtin_elementwise_pext` to emit `@llvm.pext` and `__builtin_elementwise_pdep` to emit `@llvm.pdep`.
Commit: 9019eff661e2c0e93f2389cf25a59fd24b0dd18a
https://github.com/llvm/llvm-project/commit/9019eff661e2c0e93f2389cf25a59fd24b0dd18a
Author: AZero13 <gfunni234 at gmail.com>
Date: 2026-06-20 (Sat, 20 Jun 2026)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineCasts.cpp
M llvm/test/Transforms/InstCombine/scmp.ll
M llvm/test/Transforms/InstCombine/select-to-cmp.ll
M llvm/test/Transforms/InstCombine/ucmp.ll
Log Message:
-----------
[InstCombine] Fold trunc scmp/ucmp -> scmp/ucmp with the target type being what we truncate (#196847)
I don't think I need an alive2 for this, since this is basically a
tautology/self-definition.
Commit: d186503ccc7ad93f695f60302c5def5efc3ac2dd
https://github.com/llvm/llvm-project/commit/d186503ccc7ad93f695f60302c5def5efc3ac2dd
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2026-06-20 (Sat, 20 Jun 2026)
Changed paths:
M clang/lib/AST/ByteCode/Compiler.cpp
Log Message:
-----------
[clang][bytecode][NFC] Remove dead code (#204910)
Unions can't have base classes so this is never used.
Commit: 465c904272709002665bd86765d8f11dc9390a98
https://github.com/llvm/llvm-project/commit/465c904272709002665bd86765d8f11dc9390a98
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2026-06-20 (Sat, 20 Jun 2026)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
Log Message:
-----------
[X86] combineX86ShufflesRecursively - delay widening shuffle inputs. NFC. (#204931)
Perform resolveTargetShuffleInputsAndMask earlier as widening shouldn't
merge any inputs (we canonicalize small shuffle inputs earlier).
We should be able to move the widenSubVector calls inside
combineX86ShuffleChain in a future commit, but this patch should be NFC.
Commit: e26ff5491b91c66bb27bfd2b2ca8afe76bb7489d
https://github.com/llvm/llvm-project/commit/e26ff5491b91c66bb27bfd2b2ca8afe76bb7489d
Author: Andreas Jonson <andjo403 at hotmail.com>
Date: 2026-06-20 (Sat, 20 Jun 2026)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineCasts.cpp
Log Message:
-----------
[InstCombine] Remove fold with OneUse as there is fold without the check (NFC) (#204925)
Commit: 2ec6f2870e13bb8807360f2278108b7d5240fe40
https://github.com/llvm/llvm-project/commit/2ec6f2870e13bb8807360f2278108b7d5240fe40
Author: Andreas Jonson <andjo403 at hotmail.com>
Date: 2026-06-20 (Sat, 20 Jun 2026)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineCasts.cpp
M llvm/test/Transforms/InstCombine/set.ll
Log Message:
-----------
[InstCombine] Fold sext(and/or/xor(trunc nsw x), y) -> and/or/xor(sext(y), x) (#204928)
Proof: https://alive2.llvm.org/ce/z/ntVE_8
Commit: f6296fb4507e80f507024a28a21654e12543b62e
https://github.com/llvm/llvm-project/commit/f6296fb4507e80f507024a28a21654e12543b62e
Author: Andreas Jonson <andjo403 at hotmail.com>
Date: 2026-06-20 (Sat, 20 Jun 2026)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineCasts.cpp
M llvm/test/Transforms/InstCombine/zext.ll
Log Message:
-----------
[InstCombine] Fold zext(and/or/xor(trunc nuw x), y) -> and/or/xor(zext(y), x) (#204927)
proof: https://alive2.llvm.org/ce/z/ZORvJ6
Commit: b2c0c48595ab840c5b949d871302b0d1186acf53
https://github.com/llvm/llvm-project/commit/b2c0c48595ab840c5b949d871302b0d1186acf53
Author: AZero13 <gfunni234 at gmail.com>
Date: 2026-06-20 (Sat, 20 Jun 2026)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
M llvm/test/Transforms/InstCombine/add.ll
M llvm/test/Transforms/InstCombine/and-or-icmps.ll
M llvm/test/Transforms/InstCombine/or.ll
Log Message:
-----------
[InstCombine] Fold or (ashr X, BW-1), zext (icmp ne|sgt X, 0) to scmp(X, 0) (#196828)
Recognize the bitwise signum encoding
or (ashr X, BW-1), zext (icmp ne X, 0) --> llvm.scmp(X, 0)
or (ashr X, BW-1), zext (icmp sgt X, 0) --> llvm.scmp(X, 0)
Alive2: https://alive2.llvm.org/ce/z/UZ7a7Q
Commit: bae51e7ffb767d08d684290d34515b91f2cbb2ed
https://github.com/llvm/llvm-project/commit/bae51e7ffb767d08d684290d34515b91f2cbb2ed
Author: Arda Serdar Pektezol <arda at pektezol.dev>
Date: 2026-06-20 (Sat, 20 Jun 2026)
Changed paths:
M llvm/lib/IR/Instructions.cpp
M llvm/test/Transforms/InstCombine/alloca-big.ll
Log Message:
-----------
[IR] handle oversized constant alloca counts in getAllocationSize (#204540)
AllocaInst::getAllocationSize() unconditionally calls getZExtValue() for
array allocas, which asserts when the constant element count is wider
than 64 bits.
Use tryZExtValue() when reading the constant array size instead. If the
count cannot be represented in uint64_t, return std::nullopt rather than
asserting, matching the existing contract.
Fixes #203519
Commit: c888371ff0a3e10f8472676dc992f4347fca58d9
https://github.com/llvm/llvm-project/commit/c888371ff0a3e10f8472676dc992f4347fca58d9
Author: player <playerc at msn.cn>
Date: 2026-06-20 (Sat, 20 Jun 2026)
Changed paths:
M clang-tools-extra/clangd/CompileCommands.cpp
Log Message:
-----------
[clangd] Look for resource-dir relative to detected compiler path as a fallback (#203332)
If the standard resource directory (which is searched for relative to the clangd
executable) does not exist, look for one relative to the detected compiler as a
fallback. This handles some packaging schemes where clangd and clang are
installed in different prefixes and the resource directory is only located in the
latter.
Also print an error message to the log if the fallback didn't find an existing
directory either.
Commit: 0c3c664f32d5b15ae542ed66fa52ebf86974ccaa
https://github.com/llvm/llvm-project/commit/0c3c664f32d5b15ae542ed66fa52ebf86974ccaa
Author: Adam Scott <88979030+as4230 at users.noreply.github.com>
Date: 2026-06-21 (Sun, 21 Jun 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
M llvm/test/Transforms/PhaseOrdering/X86/madd.ll
M llvm/test/Transforms/PhaseOrdering/X86/sad.ll
M llvm/test/Transforms/PhaseOrdering/X86/vector-reductions.ll
M llvm/test/Transforms/VectorCombine/AArch64/load-extractelement-scalarization.ll
M llvm/test/Transforms/VectorCombine/AArch64/partial-reduce-crash.ll
M llvm/test/Transforms/VectorCombine/X86/extract-binop-inseltpoison.ll
M llvm/test/Transforms/VectorCombine/X86/extract-binop.ll
A llvm/test/Transforms/VectorCombine/X86/shuffle-chain-reduction-subvector.ll
M llvm/test/Transforms/VectorCombine/X86/shuffle-chain-reduction-umin.ll
M llvm/test/Transforms/VectorCombine/fold-shuffle-chains-to-reduce.ll
Log Message:
-----------
[VectorCombine] Add subvector reduction support to foldShuffleChainsToReduce (#199872)
Extends foldShuffleChainsToReduce to recognise subvector reductions
where the chain narrows through shuffles before extracting lane 0.
The matcher tracks per output lane attribution as the chain is walked.
Each lane carries a per source bitmask of contributing source lanes plus
a poison flag. Shuffles permute these records. Binops union them. At the
extract, lane 0's bitmasks rebuild the reduction as one or more partial
reduce intrinsics. The walk is capped at 32 chain nodes.
Also added new test file with 11 tests:
| Test | Reason |
| ------------------------------------------------------ |
--------------------------------------------- |
| `_add_v4i32`, `_add_v8i16`, `_add_v16i8`, `_add_v64i8` | basic
subvector reductions across types/sizes |
| `_mul_v16i8` | non-add reduction |
| `_swapped_v8i16` | root operand swap |
| `_deinterleave_v8i16` | non-contiguous shuffle masks |
| `_multishuffle_accumulator_v8i32` | reduction with multiple shuffle
leaves |
| `_multisource_full_plus_scalar_v4i32` | multi-source reduction chain |
| `_neg_overlapping_masks_v8i16` | overlapping-mask reject case |
| `_neg_different_sources_v8i16` | non-profitable fold reject |
A few patterns the old matcher didn't fold get caught by the new one. In
`extract-binop.ll`, `ext_ext_partial_add_reduction_and_extra_add_v4i32`
mixes two source vectors. The old matcher walked a single chain
bottom-up assuming one source at the leaves so it bailed. The partial
reduction patterns in `load-extractelement-scalarization.ll` fold for
the same reason.
Fixes #197919
---------
Co-authored-by: Simon Pilgrim <llvm-dev at redking.me.uk>
Commit: 2c022e8d946619602e967924a7291f197119e8a5
https://github.com/llvm/llvm-project/commit/2c022e8d946619602e967924a7291f197119e8a5
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2026-06-20 (Sat, 20 Jun 2026)
Changed paths:
M llvm/lib/IR/Verifier.cpp
M llvm/test/CodeGen/AArch64/lower-range-metadata-func-call.ll
M llvm/test/CodeGen/X86/legalize-vec-assertzext.ll
M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-i16.ll
M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-fma.ll
M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-maximum.ll
M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-maximumnum.ll
M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-maxnum.ll
M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-minimum.ll
M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-minimumnum.ll
M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-minnum.ll
M llvm/test/Verifier/nofpclass-metadata.ll
A llvm/test/Verifier/nonnull-metadata.ll
R llvm/test/Verifier/nonnull_metadata.ll
A llvm/test/Verifier/noundef-metadata.ll
R llvm/test/Verifier/range-1.ll
A llvm/test/Verifier/range-metadata.ll
M llvm/test/tools/llubi/metadata.ll
Log Message:
-----------
[Verifier] Only accept noundef metadata on loads and update metadata tests (#204922)
noundef metadata has been accepted everywhere so far, which seems to be
an oversight. This patch rejects it everywhere except for load
instructions, which seem to be the only ones where it's supposed to be
supported. The other metadata tests are also updated so they are
somewhat similar to each other.
Commit: cd532fe7fbcb72b6ca7a73f15cc8cb0023e7a9de
https://github.com/llvm/llvm-project/commit/cd532fe7fbcb72b6ca7a73f15cc8cb0023e7a9de
Author: Ryotaro Kasuga <kasuga.ryotaro at fujitsu.com>
Date: 2026-06-20 (Sat, 20 Jun 2026)
Changed paths:
M llvm/include/llvm/Analysis/LoopCacheAnalysis.h
M llvm/lib/Analysis/LoopCacheAnalysis.cpp
M llvm/lib/Passes/PassRegistry.def
M llvm/test/Analysis/LoopCacheAnalysis/PowerPC/LoopnestFixedSize.ll
M llvm/test/Analysis/LoopCacheAnalysis/PowerPC/compute-cost-m32.ll
M llvm/test/Analysis/LoopCacheAnalysis/PowerPC/compute-cost.ll
M llvm/test/Analysis/LoopCacheAnalysis/PowerPC/loads-store.ll
M llvm/test/Analysis/LoopCacheAnalysis/PowerPC/matmul.ll
M llvm/test/Analysis/LoopCacheAnalysis/PowerPC/matvecmul.ll
M llvm/test/Analysis/LoopCacheAnalysis/PowerPC/multi-store.ll
M llvm/test/Analysis/LoopCacheAnalysis/PowerPC/single-store.ll
M llvm/test/Analysis/LoopCacheAnalysis/PowerPC/stencil.ll
M llvm/test/Analysis/LoopCacheAnalysis/compute-cost.ll
M llvm/test/Analysis/LoopCacheAnalysis/interchange-cost-beneficial.ll
M llvm/test/Analysis/LoopCacheAnalysis/interchange-refcost-overflow.ll
M llvm/test/Analysis/LoopCacheAnalysis/partially-perfect-nest.ll
M llvm/utils/UpdateTestChecks/common.py
Log Message:
-----------
[LoopCacheAnalysis] Generate tests by update_analyze_test_checks.py (#204807)
Since loop interchange has been enabled in the default pipeline,
development on LoopCacheAnalysis, which is used by LoopInterchange, is
becoming more active. So I think it's a good time to support automatic
test generation for LoopCacheAnalysis.
This patch does two things. First, it changes LoopCachePrinterPass from
a loop pass to a function pass to make it possible to use
update_analyze_test_checks.py. Second, it rewrites all the CHECK
directives in the existing LoopCacheAnalysis tests using the script.
Commit: 6619aa70071db7d3a589fe50474e19c58dbca8f9
https://github.com/llvm/llvm-project/commit/6619aa70071db7d3a589fe50474e19c58dbca8f9
Author: Jeffrey Byrnes <jeffrey.byrnes at amd.com>
Date: 2026-06-20 (Sat, 20 Jun 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUBarrierLatency.cpp
A llvm/test/CodeGen/AMDGPU/fence-barrier-latency.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.update.dpp.ll
M llvm/test/CodeGen/AMDGPU/schedule-barrier-latency-gfx9.mir
Log Message:
-----------
[AMDGPU] Use SchedModel latencies for Fence barrier edges (#204657)
For memory->fence dependencies, this PR sets the latency of the edge to
the instr latency of the predecessor memory instruction.
During lowering of these fences, we insert the necessary waitcnts, and
we end up waiting for any outstanding memory op at these fences. Thus,
the latency of the edges should be based on latency of the associated
load/stores.
Commit: b9c334de33a9a0b5713b191f214de8c3c8990507
https://github.com/llvm/llvm-project/commit/b9c334de33a9a0b5713b191f214de8c3c8990507
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2026-06-20 (Sat, 20 Jun 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
A llvm/test/Transforms/SLPVectorizer/X86/insertvalue-reordered-operands.ll
Log Message:
-----------
[SLP] Fix scheduling crash for reordered insertvalue buildvector nodes
Insertvalue nodes keep scalars in program order but reorder operands, like
stores. Remap the operand lane via ReorderIndices for InsertValueInst (not
just StoreInst) in scheduling and the copyable helpers, fixing the
"Operand not found" assertion.
Fixes https://github.com/llvm/llvm-project/pull/200274#issuecomment-4753792761
Reviewers:
Pull Request: https://github.com/llvm/llvm-project/pull/204941
Commit: cb85dfeb3275dce8f00ab7bf18f6ef3734222069
https://github.com/llvm/llvm-project/commit/cb85dfeb3275dce8f00ab7bf18f6ef3734222069
Author: Florian Hahn <flo at fhahn.com>
Date: 2026-06-20 (Sat, 20 Jun 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlanUtils.cpp
A llvm/test/Transforms/LoopVectorize/shl-shift-amount-out-of-range-scev.ll
Log Message:
-----------
[VPlan] Skip shl->mul SCEV rewrite for out-of-range shift amounts. (#204921)
getSCEVExprForVPValue rewrites `shl x, c` as `x * (1 << c)` using
ScalarEvolution::getPowerOfTwo, which asserts that the power is less
than the type's bit width.
Only perform the rewrite when the shift amount is less than the
operand's bit width, to avoid assertion.
Commit: 18c1cbce6874a7341f357014befb66d4c11a04a9
https://github.com/llvm/llvm-project/commit/18c1cbce6874a7341f357014befb66d4c11a04a9
Author: Sungbin Jo <goranmoomin at daum.net>
Date: 2026-06-20 (Sat, 20 Jun 2026)
Changed paths:
M llvm/lib/ObjCopy/MachO/MachOLayoutBuilder.cpp
M llvm/lib/ObjCopy/MachO/MachOWriter.cpp
A llvm/test/tools/llvm-objcopy/MachO/linkedit-alignment.test
M llvm/test/tools/llvm-objcopy/MachO/linkedit-order-1.test
M llvm/test/tools/llvm-objcopy/MachO/linkedit-order-2.test
M llvm/test/tools/llvm-objcopy/MachO/symbol-table.test
Log Message:
-----------
[llvm-objcopy][MachO] Align __LINKEDIT entries to pointer size (#203680)
Align Mach-O __LINKEDIT entries to the target pointer size when building
the tail layout. This matches the behavior of ld64 and lld-macho.
dyld on macOS 27 rejects loading dylibs with misaligned __LINKEDIT
entries.
See #203678 for details and the motivation of this fix.
AI Tool Use Disclosure:
Regarding the PR and the linked issue, I have personally wrote every
single part of the PR by myself, and have/ran/verified every single part
of the issue report as well without any AI tool usage.
I have used LLM-based coding agents only for debugging purposes, e.g. to
figure out why the dylib was not loading (from the original bug report),
and figuring out how to build, run, and test my local `llvm-objcopy`.
Commit: a891d7b38b31fd7e229f88c2555184713935ea60
https://github.com/llvm/llvm-project/commit/a891d7b38b31fd7e229f88c2555184713935ea60
Author: Daniel Rodríguez Troitiño <danielrodriguez at meta.com>
Date: 2026-06-20 (Sat, 20 Jun 2026)
Changed paths:
M llvm/lib/ObjCopy/MachO/MachOLayoutBuilder.cpp
M llvm/lib/ObjCopy/MachO/MachOLayoutBuilder.h
M llvm/lib/ObjCopy/MachO/MachOObjcopy.cpp
Log Message:
-----------
[llvm-objcopy][MachO] Use alignToPowerOf2 instead of alignTo (#204033)
During the review of #203680 I noticed that Mach-O objcopy files seems
to use `alignTo` and import `Alignment.h` to align some offsets to page
boundaries and similar requirements. However, the `alignTo` in
`Alignment.h`, while being intended for powers of 2, requires using an
alignment of type `llvm::Align`, and needs explicit conversion from
`uint64_t` and similar. Single `Alignment.h` includes `MathExtras.h`,
the `alignTo` being invoked ends up being a generic `alignTo` that does
not require powers of 2, and perform divisions and multiplications.
While some of those might be optimized by the compiler into efficient
power of 2 operations, there's an explicit `alignToPowerOf2` version
that is optimized and asserts the alignment is a power of 2 (with
asserts enabled). Since all the alignments should be power of 2 for the
Mach-O binary format, change from `alignTo` to `alignToPowerOf2` to make
the fact more visible (and get the extra safety net of the assertions).
As expected, the test suite of objcopy doesn't show any regressions, but
I have not done a performance benchmark around this either.
Commit: d0c27761d4f1e25d1ab4b672d23bc7e46f517bcd
https://github.com/llvm/llvm-project/commit/d0c27761d4f1e25d1ab4b672d23bc7e46f517bcd
Author: Florian Hahn <flo at fhahn.com>
Date: 2026-06-20 (Sat, 20 Jun 2026)
Changed paths:
M llvm/test/Analysis/BasicAA/phi-aa.ll
M llvm/test/Analysis/BasicAA/phi-and-select.ll
M llvm/test/Analysis/BasicAA/recphi.ll
Log Message:
-----------
[BasicAA] Add additional tests with GEPs with phi/select pointer ops (NFC) (#204947)
Commit: 5502491546363465ef2b58dbf5821a67a3be6164
https://github.com/llvm/llvm-project/commit/5502491546363465ef2b58dbf5821a67a3be6164
Author: Florian Hahn <flo at fhahn.com>
Date: 2026-06-20 (Sat, 20 Jun 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/test/Transforms/LoopVectorize/AArch64/transform-narrow-interleave-to-widen-memory-with-wide-ops-and-casts.ll
M llvm/test/Transforms/LoopVectorize/AArch64/transform-narrow-interleave-to-widen-memory-with-wide-ops.ll
Log Message:
-----------
[VPlan] Properly check predicates and types in canNarrowOps. (#204948)
Update canNarrowOps to properly check the types of all members match.
Similarly, for recipes with predicates, the predicates must match.
Commit: 3c5f0c2d3e00a22a275f404bac29ce62c69d95d5
https://github.com/llvm/llvm-project/commit/3c5f0c2d3e00a22a275f404bac29ce62c69d95d5
Author: Florian Hahn <flo at fhahn.com>
Date: 2026-06-20 (Sat, 20 Jun 2026)
Changed paths:
A llvm/test/Transforms/LoopVectorize/VPlan/AArch64/vplan-memory-op-decisions.ll
Log Message:
-----------
[VPlan] Add memory op decision test for scalarizing loads. (NFC) (#204949)
VPlan printing tests for
https://github.com/llvm/llvm-project/pull/196842
Commit: 959f069f442d75dd7c365cb608140693e834b93e
https://github.com/llvm/llvm-project/commit/959f069f442d75dd7c365cb608140693e834b93e
Author: jofrn <jo7frn1 at gmail.com>
Date: 2026-06-20 (Sat, 20 Jun 2026)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
M llvm/test/CodeGen/X86/atomic-load-store.ll
Log Message:
-----------
[SelectionDAG] Keep split vector atomic store value in a vector register (#201566)
When the value of an ATOMIC_STORE has a vector type whose legalization
action is split (e.g. <4 x half>/<4 x bfloat> on X86 without F16C),
SplitVecOp_ATOMIC_STORE bitcast the value straight to a scalar integer
spanning the memory width. For a split vector that bitcast is expanded
element by element, reassembling the value in GPRs (a long pextrw/shl/or
sequence) before the store.
Instead, keep the value in a vector register when a legal vector form
exists: reinterpret it as a same-shaped integer-element vector (an FP
element type may have no legal vector form, e.g. bfloat on SSE2, while
the integer-of-element-size form does), widen that to a legal vector,
and extract the low integer element of the memory width. This issues the
store directly from a vector register (a single MOVQ/MOVD on X86),
matching the widen-path codegen already produced on AVX targets. Falls
back to the scalar bitcast when no suitable legal vector type exists.
Stacked on top of https://github.com/llvm/llvm-project/pull/197861; and
below of #197862.
Commit: 61d601e796beef1b891ca437dd3167fbabad4451
https://github.com/llvm/llvm-project/commit/61d601e796beef1b891ca437dd3167fbabad4451
Author: Zach Goldthorpe <Zach.Goldthorpe at amd.com>
Date: 2026-06-20 (Sat, 20 Jun 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/GCNVOPDUtils.cpp
Log Message:
-----------
[AMDGPU][VOPD] Cache load reachability checks in VOPDpairing (#204854)
#201930 causes significant compilation time regression when building
ROCm mathlibs.
Major regressions are caused by repeated queries to `DAG->IsReachable`
to detect possible scalarisation of loads when fusing a pair of
VOPD-capable instructions.
This patch caches the set of reachable loads for every potentially
hazardous load instruction to avoid the need to invoke
`DAG->IsReachable` at all.
Commit: afac572cd4c58b02ebe9a72c04f63a91dccc7901
https://github.com/llvm/llvm-project/commit/afac572cd4c58b02ebe9a72c04f63a91dccc7901
Author: owenca <owenpiano at gmail.com>
Date: 2026-06-20 (Sat, 20 Jun 2026)
Changed paths:
M clang/test/CMakeLists.txt
Log Message:
-----------
[clang] Add clang-format-check-format instead to CLANG_TEST_DEPS (#204908)
Ensure that clang-format doesn't break the existing format of its own
source.
Reverts #199169 and #199638.
Commit: ec56065709fe771c90da191f107126ac71bc09ad
https://github.com/llvm/llvm-project/commit/ec56065709fe771c90da191f107126ac71bc09ad
Author: Tom Stellard <tstellar at redhat.com>
Date: 2026-06-20 (Sat, 20 Jun 2026)
Changed paths:
M .github/workflows/new-prs.yml
Log Message:
-----------
workflows/new-prs: Remove obsolete code (#204955)
This was left over after 57e4352de0d2617bae1656dc2e2b3ca430e83c4c and
causing the jobs to fail.
Commit: 9d6c686a8a77e8c5ff9b42803c1bf07bcc1b66b3
https://github.com/llvm/llvm-project/commit/9d6c686a8a77e8c5ff9b42803c1bf07bcc1b66b3
Author: Lang Hames <lhames at gmail.com>
Date: 2026-06-21 (Sun, 21 Jun 2026)
Changed paths:
M orc-rt/include/orc-rt/Session.h
M orc-rt/lib/executor/Session.cpp
Log Message:
-----------
[orc-rt] Sink Session::sendWrapperResult into Session.cpp. NFC. (#204956)
This function is never called inline (except by Session::wrapperReturn,
which is also in Session.cpp), so there's no need for it to be in the
header.
Commit: 5066d3aa84fb7836b9c988c32821334fa8fbf05e
https://github.com/llvm/llvm-project/commit/5066d3aa84fb7836b9c988c32821334fa8fbf05e
Author: Igor Kudrin <ikudrin at accesssoftek.com>
Date: 2026-06-20 (Sat, 20 Jun 2026)
Changed paths:
M clang/include/clang/Sema/Sema.h
M clang/lib/Sema/SemaExprCXX.cpp
M clang/lib/Sema/SemaOverload.cpp
Log Message:
-----------
fixup! Streamline overload resolution
Commit: 2978e2f8b845041423d61647433b86269a54ed85
https://github.com/llvm/llvm-project/commit/2978e2f8b845041423d61647433b86269a54ed85
Author: Igor Kudrin <ikudrin at accesssoftek.com>
Date: 2026-06-20 (Sat, 20 Jun 2026)
Changed paths:
M .github/workflows/new-prs.yml
M clang-tools-extra/clangd/CompileCommands.cpp
M clang/docs/LanguageExtensions.rst
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Basic/Builtins.td
M clang/lib/AST/ByteCode/Compiler.cpp
M clang/lib/AST/ByteCode/InterpBuiltin.cpp
M clang/lib/AST/ExprConstant.cpp
M clang/lib/CodeGen/CGBuiltin.cpp
M clang/lib/Format/UnwrappedLineParser.cpp
M clang/lib/Format/UnwrappedLineParser.h
M clang/lib/Sema/SemaChecking.cpp
M clang/test/AST/ByteCode/builtin-functions.cpp
M clang/test/CMakeLists.txt
M clang/test/CodeGen/builtins-elementwise-math.c
M clang/test/Sema/builtins-elementwise-math.c
M clang/unittests/Format/FormatTest.cpp
A libcxx/test/std/language.support/support.types/byte.compile.pass.cpp
R libcxx/test/std/language.support/support.types/byte.pass.cpp
M libcxx/test/std/language.support/support.types/byteops/and.assign.pass.cpp
M libcxx/test/std/language.support/support.types/byteops/and.pass.cpp
R libcxx/test/std/language.support/support.types/byteops/enum_direct_init.pass.cpp
R libcxx/test/std/language.support/support.types/byteops/lshift.assign.compile.fail.cpp
M libcxx/test/std/language.support/support.types/byteops/lshift.assign.pass.cpp
R libcxx/test/std/language.support/support.types/byteops/lshift.compile.fail.cpp
M libcxx/test/std/language.support/support.types/byteops/lshift.pass.cpp
M libcxx/test/std/language.support/support.types/byteops/not.pass.cpp
M libcxx/test/std/language.support/support.types/byteops/or.assign.pass.cpp
M libcxx/test/std/language.support/support.types/byteops/or.pass.cpp
R libcxx/test/std/language.support/support.types/byteops/rshift.assign.compile.fail.cpp
M libcxx/test/std/language.support/support.types/byteops/rshift.assign.pass.cpp
R libcxx/test/std/language.support/support.types/byteops/rshift.compile.fail.cpp
M libcxx/test/std/language.support/support.types/byteops/rshift.pass.cpp
R libcxx/test/std/language.support/support.types/byteops/to_integer.compile.fail.cpp
M libcxx/test/std/language.support/support.types/byteops/to_integer.pass.cpp
M libcxx/test/std/language.support/support.types/byteops/xor.assign.pass.cpp
M libcxx/test/std/language.support/support.types/byteops/xor.pass.cpp
M llvm/include/llvm/Analysis/LoopCacheAnalysis.h
M llvm/lib/Analysis/LoopCacheAnalysis.cpp
M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
M llvm/lib/IR/Instructions.cpp
M llvm/lib/IR/Verifier.cpp
M llvm/lib/ObjCopy/MachO/MachOLayoutBuilder.cpp
M llvm/lib/ObjCopy/MachO/MachOLayoutBuilder.h
M llvm/lib/ObjCopy/MachO/MachOObjcopy.cpp
M llvm/lib/ObjCopy/MachO/MachOWriter.cpp
M llvm/lib/Passes/PassRegistry.def
M llvm/lib/Target/AMDGPU/AMDGPUBarrierLatency.cpp
M llvm/lib/Target/AMDGPU/GCNVOPDUtils.cpp
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
M llvm/lib/Transforms/InstCombine/InstCombineCasts.cpp
M llvm/lib/Transforms/Scalar/Reassociate.cpp
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/lib/Transforms/Vectorize/VPlanUtils.cpp
M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
M llvm/test/Analysis/BasicAA/phi-aa.ll
M llvm/test/Analysis/BasicAA/phi-and-select.ll
M llvm/test/Analysis/BasicAA/recphi.ll
M llvm/test/Analysis/LoopCacheAnalysis/PowerPC/LoopnestFixedSize.ll
M llvm/test/Analysis/LoopCacheAnalysis/PowerPC/compute-cost-m32.ll
M llvm/test/Analysis/LoopCacheAnalysis/PowerPC/compute-cost.ll
M llvm/test/Analysis/LoopCacheAnalysis/PowerPC/loads-store.ll
M llvm/test/Analysis/LoopCacheAnalysis/PowerPC/matmul.ll
M llvm/test/Analysis/LoopCacheAnalysis/PowerPC/matvecmul.ll
M llvm/test/Analysis/LoopCacheAnalysis/PowerPC/multi-store.ll
M llvm/test/Analysis/LoopCacheAnalysis/PowerPC/single-store.ll
M llvm/test/Analysis/LoopCacheAnalysis/PowerPC/stencil.ll
M llvm/test/Analysis/LoopCacheAnalysis/compute-cost.ll
M llvm/test/Analysis/LoopCacheAnalysis/interchange-cost-beneficial.ll
M llvm/test/Analysis/LoopCacheAnalysis/interchange-refcost-overflow.ll
M llvm/test/Analysis/LoopCacheAnalysis/partially-perfect-nest.ll
M llvm/test/CodeGen/AArch64/lower-range-metadata-func-call.ll
A llvm/test/CodeGen/AMDGPU/fence-barrier-latency.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.update.dpp.ll
M llvm/test/CodeGen/AMDGPU/schedule-barrier-latency-gfx9.mir
M llvm/test/CodeGen/X86/atomic-load-store.ll
M llvm/test/CodeGen/X86/legalize-vec-assertzext.ll
M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-i16.ll
M llvm/test/Transforms/InstCombine/add.ll
M llvm/test/Transforms/InstCombine/alloca-big.ll
M llvm/test/Transforms/InstCombine/and-or-icmps.ll
M llvm/test/Transforms/InstCombine/or.ll
M llvm/test/Transforms/InstCombine/scmp.ll
M llvm/test/Transforms/InstCombine/select-to-cmp.ll
M llvm/test/Transforms/InstCombine/set.ll
M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-fma.ll
M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-maximum.ll
M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-maximumnum.ll
M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-maxnum.ll
M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-minimum.ll
M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-minimumnum.ll
M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-minnum.ll
M llvm/test/Transforms/InstCombine/ucmp.ll
M llvm/test/Transforms/InstCombine/zext.ll
M llvm/test/Transforms/LoopVectorize/AArch64/transform-narrow-interleave-to-widen-memory-with-wide-ops-and-casts.ll
M llvm/test/Transforms/LoopVectorize/AArch64/transform-narrow-interleave-to-widen-memory-with-wide-ops.ll
A llvm/test/Transforms/LoopVectorize/VPlan/AArch64/vplan-memory-op-decisions.ll
A llvm/test/Transforms/LoopVectorize/shl-shift-amount-out-of-range-scev.ll
M llvm/test/Transforms/PhaseOrdering/X86/madd.ll
M llvm/test/Transforms/PhaseOrdering/X86/sad.ll
M llvm/test/Transforms/PhaseOrdering/X86/vector-reductions.ll
A llvm/test/Transforms/Reassociate/reassociate-distribute.ll
A llvm/test/Transforms/SLPVectorizer/X86/insertvalue-reordered-operands.ll
M llvm/test/Transforms/VectorCombine/AArch64/load-extractelement-scalarization.ll
M llvm/test/Transforms/VectorCombine/AArch64/partial-reduce-crash.ll
M llvm/test/Transforms/VectorCombine/X86/extract-binop-inseltpoison.ll
M llvm/test/Transforms/VectorCombine/X86/extract-binop.ll
A llvm/test/Transforms/VectorCombine/X86/shuffle-chain-reduction-subvector.ll
M llvm/test/Transforms/VectorCombine/X86/shuffle-chain-reduction-umin.ll
M llvm/test/Transforms/VectorCombine/fold-shuffle-chains-to-reduce.ll
M llvm/test/Verifier/nofpclass-metadata.ll
A llvm/test/Verifier/nonnull-metadata.ll
R llvm/test/Verifier/nonnull_metadata.ll
A llvm/test/Verifier/noundef-metadata.ll
R llvm/test/Verifier/range-1.ll
A llvm/test/Verifier/range-metadata.ll
M llvm/test/tools/llubi/metadata.ll
A llvm/test/tools/llvm-objcopy/MachO/linkedit-alignment.test
M llvm/test/tools/llvm-objcopy/MachO/linkedit-order-1.test
M llvm/test/tools/llvm-objcopy/MachO/linkedit-order-2.test
M llvm/test/tools/llvm-objcopy/MachO/symbol-table.test
M llvm/utils/UpdateTestChecks/common.py
M orc-rt/include/orc-rt/Session.h
M orc-rt/lib/executor/Session.cpp
Log Message:
-----------
Merge branch 'main' into users/ikudrin/clang-findallocationfunction-simplify
Commit: 7376a706150289cf60fb3648e75e909ab6e86f68
https://github.com/llvm/llvm-project/commit/7376a706150289cf60fb3648e75e909ab6e86f68
Author: Tamir Duberstein <tamird at gmail.com>
Date: 2026-06-20 (Sat, 20 Jun 2026)
Changed paths:
M compiler-rt/lib/tsan/rtl/tsan_platform.h
Log Message:
-----------
[tsan] fit Go/s390x mapping under QEMU (#204503)
QEMU linux-user first tries guest_base=0. In that identity-mapped mode,
fixed guest mappings use the same host addresses. On an x86-64 host
with four-level page tables, the Go/s390x meta shadow starts at
144 TiB, beyond the 128 TiB userspace limit, and its mmap fails with
ENOMEM during TSan initialization.
Move the meta shadow down by 32 TiB to
[0x700000000000, 0x780000000000), restoring the 16 TiB gap after the
shadow and placing all Go/s390x TSan regions below 2^47. Correct the
mapping comment's shadow size and ratio.
Failure report and native s390x comparison:
https://github.com/golang/go/issues/67881
QEMU identity guest-base selection:
https://github.com/qemu/qemu/blob/v10.2.3/linux-user/elfload.c#L1036-L1042
QEMU guest-to-host address translation:
https://github.com/qemu/qemu/blob/v10.2.3/include/user/guest-host.h#L46-L50
QEMU fixed-mapping implementation:
https://github.com/qemu/qemu/blob/v10.2.3/linux-user/mmap.c#L600-L628
x86-64 four-level paging documentation:
https://docs.kernel.org/arch/x86/x86_64/5level-paging.html
Commit: f42072ed8de552ce25b7a978c052acca6ab13246
https://github.com/llvm/llvm-project/commit/f42072ed8de552ce25b7a978c052acca6ab13246
Author: Jan Schultke <me at eisenwave.net>
Date: 2026-06-21 (Sun, 21 Jun 2026)
Changed paths:
M llvm/include/llvm/Support/KnownBits.h
M llvm/lib/Analysis/ValueTracking.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
M llvm/lib/Support/KnownBits.cpp
A llvm/test/Analysis/ValueTracking/knownbits-pdep.ll
A llvm/test/Analysis/ValueTracking/knownbits-pext.ll
M llvm/unittests/Support/KnownBitsTest.cpp
Log Message:
-----------
[Analysis] Add `KnownBits` optimization for `pdep` and `pext` (#204223)
Fixes #204136
Commit: 8947e494f92e37d036ec22b79464368292eae177
https://github.com/llvm/llvm-project/commit/8947e494f92e37d036ec22b79464368292eae177
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2026-06-21 (Sun, 21 Jun 2026)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
M llvm/test/Transforms/InstCombine/assume.ll
Log Message:
-----------
[InstCombine] Move alignment assumptions to the base of constant offset GEPs (#204602)
Commit: 71c2feb30426af725dd93297b9dccc18f8210a0e
https://github.com/llvm/llvm-project/commit/71c2feb30426af725dd93297b9dccc18f8210a0e
Author: shivaramaarao <58245296+shivaramaarao at users.noreply.github.com>
Date: 2026-06-21 (Sun, 21 Jun 2026)
Changed paths:
M flang/test/Integration/split-lto-unit-2.f90
Log Message:
-----------
Support for -fsplit-lto-unit option in flang driver (#204904)
Fix for buildbot failures in #202858
This commit fixes a regression introduced in commit
12aefe26cedd9a8f94546cc1f2be285cfddcc861 (Support for -fsplit-lto-unit
option in flang driver). When the compiler is built only for aarch64 one
of the testcase failed.
Added explicit check %if x86-registered-target for this testcase to
resolve the issue.
Commit: 441725611d0e166a144ac85665bf0ac3611851de
https://github.com/llvm/llvm-project/commit/441725611d0e166a144ac85665bf0ac3611851de
Author: Florian Hahn <flo at fhahn.com>
Date: 2026-06-21 (Sun, 21 Jun 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorizationPlanner.cpp
A llvm/test/Transforms/LoopVectorize/AArch64/vplan-native-outer-loop-wide-type.ll
Log Message:
-----------
[LV] Avoid zero-width VF in computeVPlanOuterloopVF. (#204918)
RegSize / WidestType may be 0 for types wider than the vector register
size. Clamp VF to at least 1 (scalar), to avoid a crash. This matches
inner loop behavior.
Commit: 9b36e4fbc789201228ca9b40524996e13959505a
https://github.com/llvm/llvm-project/commit/9b36e4fbc789201228ca9b40524996e13959505a
Author: Lang Hames <lhames at gmail.com>
Date: 2026-06-21 (Sun, 21 Jun 2026)
Changed paths:
M orc-rt/include/CMakeLists.txt
A orc-rt/include/orc-rt/QueueingRunner.h
R orc-rt/include/orc-rt/QueueingTaskDispatcher.h
M orc-rt/include/orc-rt/Session.h
R orc-rt/include/orc-rt/TaskDispatcher.h
A orc-rt/include/orc-rt/ThreadPoolRunner.h
R orc-rt/include/orc-rt/ThreadPoolTaskDispatcher.h
M orc-rt/lib/executor/CMakeLists.txt
R orc-rt/lib/executor/QueueingTaskDispatcher.cpp
M orc-rt/lib/executor/Session.cpp
R orc-rt/lib/executor/TaskDispatcher.cpp
A orc-rt/lib/executor/ThreadPoolRunner.cpp
R orc-rt/lib/executor/ThreadPoolTaskDispatcher.cpp
M orc-rt/unittests/BootstrapInfoTest.cpp
M orc-rt/unittests/CMakeLists.txt
M orc-rt/unittests/CommonTestUtils.h
M orc-rt/unittests/NativeDylibManagerSPSCITest.cpp
M orc-rt/unittests/NativeDylibManagerTest.cpp
A orc-rt/unittests/QueueingRunnerTest.cpp
R orc-rt/unittests/QueueingTaskDispatcherTest.cpp
M orc-rt/unittests/SessionTest.cpp
M orc-rt/unittests/SimpleNativeMemoryMapSPSCITest.cpp
M orc-rt/unittests/SimpleNativeMemoryMapTest.cpp
A orc-rt/unittests/ThreadPoolRunnerTest.cpp
R orc-rt/unittests/ThreadPoolTaskDispatcherTest.cpp
Log Message:
-----------
[orc-rt] Replace TaskDispatcher with Session-supplied wrapper-runner. (#204965)
TaskDispatcher was only used to run wrapper-function calls that
originated from the controller. Replace it with a callable type:
Session::RunWrapperCall = move_only_function<void(
orc_rt_SessionRef, uint64_t, orc_rt_WrapperFunctionReturn,
orc_rt_WrapperFunction, WrapperFunctionBuffer)>
Each call carries an outstanding ManagedCodeTaskGroup token; the runner
must eventually invoke Fn (which calls Return) or call Return directly
to bail out, otherwise Session shutdown blocks indefinitely.
Clients can supply any callable that satisfies the contract above. The
new QueueingRunner and ThreadPoolRunner classes (replacing
QueueingTaskDispatcher and ThreadPoolTaskDispatcher, respectively) are
provided as off-the-shelf options.
Commit: a12b7af17a70f810ac3abe906b42930307efdaf0
https://github.com/llvm/llvm-project/commit/a12b7af17a70f810ac3abe906b42930307efdaf0
Author: Harishankar.1 <88716735+Harishankar14 at users.noreply.github.com>
Date: 2026-06-21 (Sun, 21 Jun 2026)
Changed paths:
M llvm/lib/Target/X86/X86InstrMisc.td
M llvm/test/CodeGen/X86/bmi.ll
Log Message:
-----------
[X86] Select BLSI for i8 operands (#202344) (#204746)
Adds a tablegen pattern to select BLSI 32 for `and (neg x), x` at i8.
Fixes #202344
Commit: e0cc08dc1121126392df2b832ee060a60cca6dc3
https://github.com/llvm/llvm-project/commit/e0cc08dc1121126392df2b832ee060a60cca6dc3
Author: Akash Deo <AkashDeo2025 at u.Northwestern.edu>
Date: 2026-06-21 (Sun, 21 Jun 2026)
Changed paths:
M clang/include/clang/Basic/BuiltinsX86.td
M clang/lib/AST/ByteCode/InterpBuiltin.cpp
M clang/lib/AST/ExprConstant.cpp
M clang/lib/Headers/avx512vlvnniintrin.h
M clang/lib/Headers/avx512vnniintrin.h
M clang/lib/Headers/avxvnniintrin.h
M clang/test/CodeGen/X86/avx512vlvnni-builtins.c
M clang/test/CodeGen/X86/avx512vnni-builtins.c
M clang/test/CodeGen/X86/avxvnni-builtins.c
Log Message:
-----------
[clang][x86] Add constexpr support for VNNI intrinsics (#190549)
Fixes #161340.
It adds constexpr support for VNNI
intrinsics by modifying their header files, their TableGen definitions,
how they're interpreted in InterpBuiltin.cpp and ExprConstant.cpp, and
adds unit tests in the headers' corresponding unit test files.
Commit: 4f3eb803343711c69e287da8a3272ab9449b53a9
https://github.com/llvm/llvm-project/commit/4f3eb803343711c69e287da8a3272ab9449b53a9
Author: Kern Handa <kernhanda at users.noreply.github.com>
Date: 2026-06-21 (Sun, 21 Jun 2026)
Changed paths:
M llvm/lib/Target/Xtensa/MCTargetDesc/XtensaInstPrinter.cpp
M llvm/lib/Target/Xtensa/MCTargetDesc/XtensaMCCodeEmitter.cpp
Log Message:
-----------
[Xtensa] Call isUInt<8> in range-check asserts (#204731)
`printOffset8m8_AsmOperand` and `getSelect_256OpValue` assert on
`isUInt<8>` without calling it, so the expression takes the function's
address and the range check never runs. This also trips
`-Werror,-Wpointer-bool-conversion` in builds with assertions enabled.
Pass the operand value so the bound is actually checked.
Commit: 3b46feb29499a3a43a166b36ce59bb6d49ec6682
https://github.com/llvm/llvm-project/commit/3b46feb29499a3a43a166b36ce59bb6d49ec6682
Author: Florian Hahn <flo at fhahn.com>
Date: 2026-06-21 (Sun, 21 Jun 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlanVerifier.cpp
A llvm/test/Transforms/LoopVectorize/vector-loop-backedge-elimination-tail-folding.ll
Log Message:
-----------
[VPlan] Allow plain active lane mask in LastActiveLane verifier. (#204982)
Active lane masks are prefix masks. After simplifying the backedge, we
may end up with an active-lane-mask operand of LastActiveLane that does
not match the header mask predicate.
This fixes a verifier failure for the new test.
Commit: d6d4921b71e66540bcf582e41b202d533fbfe762
https://github.com/llvm/llvm-project/commit/d6d4921b71e66540bcf582e41b202d533fbfe762
Author: Nico Weber <thakis at chromium.org>
Date: 2026-06-21 (Sun, 21 Jun 2026)
Changed paths:
M llvm/utils/gn/build/write_cmake_config.gni
M llvm/utils/gn/secondary/llvm/lib/Transforms/IPO/BUILD.gn
Log Message:
-----------
[gn] Fix missing dependency (#204991)
This fixes an oversight in 27d344d36ecac364.
Commit: 6542d6dec0110452ede41f58938b4225f2d92a98
https://github.com/llvm/llvm-project/commit/6542d6dec0110452ede41f58938b4225f2d92a98
Author: David Green <david.green at arm.com>
Date: 2026-06-21 (Sun, 21 Jun 2026)
Changed paths:
M llvm/lib/Target/ARM/ARMExpandPseudoInsts.cpp
M llvm/test/CodeGen/Thumb2/cmpxchg.mir
Log Message:
-----------
[ARM] Use lo tCMPr opcode when expanding CMP_SWAP (#204567)
We were always generating the tCMPhir even when the registers were both
low, which is an unpredictable instruction. Generating tCMPr instead
when both the registers are low.
Fixes #204519.
Commit: 48c0a2a551bc0116298a28e67c368b052469641d
https://github.com/llvm/llvm-project/commit/48c0a2a551bc0116298a28e67c368b052469641d
Author: AZero13 <gfunni234 at gmail.com>
Date: 2026-06-21 (Sun, 21 Jun 2026)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
M llvm/lib/Target/PowerPC/PPCISelLowering.cpp
M llvm/test/CodeGen/PowerPC/ucmp.ll
Log Message:
-----------
Revert "[Legalizer] Add support for promoting integers for s/ucmp (#198554) (#204978)
This reverts commit 91edd87a801fc5c9d12c7f5c6863edd50327cef8.
It was causing CI failures for Linux.
Commit: 47fd9ed9e958bf6df1d2fdaa50f70501271f27af
https://github.com/llvm/llvm-project/commit/47fd9ed9e958bf6df1d2fdaa50f70501271f27af
Author: Nico Weber <thakis at chromium.org>
Date: 2026-06-21 (Sun, 21 Jun 2026)
Changed paths:
M llvm/utils/gn/secondary/llvm/lib/Target/AArch64/BUILD.gn
Log Message:
-----------
[gn build] Port 60a2d437bd04 (#204996)
Commit: d3b48ccccb3a826515e8bc0def3c9fa3b24880a2
https://github.com/llvm/llvm-project/commit/d3b48ccccb3a826515e8bc0def3c9fa3b24880a2
Author: Nico Weber <thakis at chromium.org>
Date: 2026-06-21 (Sun, 21 Jun 2026)
Changed paths:
M llvm/utils/gn/secondary/llvm/lib/Transforms/Utils/BUILD.gn
Log Message:
-----------
[gn build] Port a64928f267f3 (#204997)
Commit: a3230900a8809a45ac3952af186cf03d87183cfb
https://github.com/llvm/llvm-project/commit/a3230900a8809a45ac3952af186cf03d87183cfb
Author: Florian Hahn <flo at fhahn.com>
Date: 2026-06-21 (Sun, 21 Jun 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlan.h
M llvm/lib/Transforms/Vectorize/VPlanPatternMatch.h
M llvm/lib/Transforms/Vectorize/VPlanUtils.h
Log Message:
-----------
[VPlan] Add VPReplicateRecipe::getNumOperandsWithoutMask (NFC) (#205004)
Add a getNumOperandsWithoutMask helper to VPReplicateRecipe, mirroring
the existing VPInstruction::getNumOperandsWithoutMask, and use it to
replace some hand-rolled code.
Commit: 5bb5410d5b6d289a0a402ed4de052eb86e8bce5f
https://github.com/llvm/llvm-project/commit/5bb5410d5b6d289a0a402ed4de052eb86e8bce5f
Author: Florian Hahn <flo at fhahn.com>
Date: 2026-06-21 (Sun, 21 Jun 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlanPatternMatch.h
M llvm/lib/Transforms/Vectorize/VPlanUtils.cpp
Log Message:
-----------
[VPlan] Use pattern matching in isUsedByLoadStoreAddress (NFC) (#205008)
Replace the hand-written check for a VPReplicateRecipe load/store using
the value as its address with VPlan pattern matching via
m_Unary/m_Binary, which also handle masked recipes uniformly.
Commit: d1744cf76fbea0c407c5e793a380ffca4e5829be
https://github.com/llvm/llvm-project/commit/d1744cf76fbea0c407c5e793a380ffca4e5829be
Author: Lang Hames <lhames at gmail.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M orc-rt/include/CMakeLists.txt
A orc-rt/include/orc-rt/InProcessControllerAccess.h
M orc-rt/lib/executor/CMakeLists.txt
A orc-rt/lib/executor/InProcessControllerAccess.cpp
M orc-rt/unittests/CMakeLists.txt
A orc-rt/unittests/InProcessControllerAccessTest.cpp
Log Message:
-----------
[orc-rt] Add InProcessControllerAccess class. (#204976)
Adds a Session::ControllerAccess implementation for in-process JIT
setups, where the controller (LLVM-side) and the executor (orc-rt) live
in the same address space.
The two sides communicate through a refcounted C-ABI struct (Connection)
of function pointers. The C-only interface avoids assuming a common C++
ABI between the two sides and supports symmetric, graceful disconnect:
when either side calls Connection::Disconnect, in-flight cross-calls are
drained and pending continuations are surfaced as out-of-band errors,
after which further cross-calls fail cleanly.
This is intended to be paired with a new ExecutorProcessControl
implementation (llvm::orc::InProcessEPC) on the LLVM side, landing in a
follow-up commit. Unit tests are included covering construction without
connect, attach via Session, OnConnect-failure detach, successful and
out-of-band-error call cases, and the disconnect-drains-pending
behavior.
Commit: 2e87cf8c2b8ec6453ccfa7e448d5b33f1d71a2ca
https://github.com/llvm/llvm-project/commit/2e87cf8c2b8ec6453ccfa7e448d5b33f1d71a2ca
Author: jofrn <jo7frn1 at gmail.com>
Date: 2026-06-21 (Sun, 21 Jun 2026)
Changed paths:
M llvm/lib/CodeGen/AtomicExpandPass.cpp
M llvm/test/CodeGen/ARM/atomic-load-store.ll
M llvm/test/CodeGen/X86/atomic-load-store.ll
M llvm/test/Transforms/AtomicExpand/X86/expand-atomic-non-integer.ll
Log Message:
-----------
[AtomicExpand] Add bitcasts when expanding store atomic vector (#197862)
AtomicExpand fails for aligned `store atomic <n x T>` because it
does not find a compatible library call. This change adds appropriate
ptrtoint + bitcast so that the call can be lowered, mirroring the
load-side handling.
Store-side counterpart to #148900. Stacked on top of
https://github.com/llvm/llvm-project/pull/201566.
Commit: bc047d40eb3a17451af586a973d6a0e5e4f0fd5c
https://github.com/llvm/llvm-project/commit/bc047d40eb3a17451af586a973d6a0e5e4f0fd5c
Author: Lang Hames <lhames at gmail.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M orc-rt/include/orc-rt/ScopeExit.h
M orc-rt/lib/executor/AllocAction.cpp
M orc-rt/unittests/ScopeExitTest.cpp
Log Message:
-----------
[orc-rt]R Align scope-exit with LLVM (rename to scope_exit, use CTAD) (#205020)
This renames the orc_rt::detail::ScopeExitRunner class to
orc_rt::scope_exit and adds a class template argument deduction guide.
Commit: 75fbd791638e583eb5bf483906fb5a75b7ab18b0
https://github.com/llvm/llvm-project/commit/75fbd791638e583eb5bf483906fb5a75b7ab18b0
Author: Zhaoxuan Jiang <jiangzhaoxuan94 at gmail.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M lld/MachO/ICF.cpp
A lld/test/MachO/icf-safe-data-addrsig.s
Log Message:
-----------
[lld-macho] Relax safe ICF's keepUnique for ld64-coalesced data sections (#193125)
#188400 regressed data-section folding under --icf=safe{,_thunks}:
no-addrsig fallback, and over-broad compiler-emitted addrsig entries
covering data symbols, both caused markSymAsAddrSig to set keepUnique on
data sections, after which foldIdenticalSections refused to fold them.
ld64 coalesces __cfstring, __objc_classrefs and __objc_selrefs
unconditionally regardless of addrsig, so ignore keepUnique for them as
a workaround for the imprecise addrsig payload.
Commit: fc7bcd0ce864c631b7429f795249ea8cef6634a7
https://github.com/llvm/llvm-project/commit/fc7bcd0ce864c631b7429f795249ea8cef6634a7
Author: Brandon Wu <brandon.wu at sifive.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M clang/lib/CodeGen/Targets/RISCV.cpp
M clang/test/CodeGen/RISCV/riscv-vector-callingconv-llvm-ir.c
M clang/test/CodeGen/RISCV/riscv-vector-callingconv-llvm-ir.cpp
Log Message:
-----------
[clang][RISCV] Handle VLS CC on unsupported primitive type in aggregate type (#203898)
We handled this for pure vector type before but missed the aggregate
types, this patch try to apply same mechanism on them where unsupported
vector types are converted to same size i8 vector types.
Commit: f571abab7c49a57cbb0fbaa6e5a0d65c39ab0c03
https://github.com/llvm/llvm-project/commit/f571abab7c49a57cbb0fbaa6e5a0d65c39ab0c03
Author: Brandon Wu <brandon.wu at sifive.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M clang/include/clang/Basic/riscv_sifive_vector.td
M clang/include/clang/Basic/riscv_vector_common.td
M clang/include/clang/Support/RISCVVIntrinsicUtils.h
M clang/lib/Support/RISCVVIntrinsicUtils.cpp
M clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/non-overloaded/sf_mm_e4m3_e4m3.c
M clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/non-overloaded/sf_mm_e4m3_e5m2.c
M clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/non-overloaded/sf_mm_e5m2_e4m3.c
M clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/non-overloaded/sf_mm_e5m2_e5m2.c
M clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/overloaded/sf_mm_e4m3_e4m3.c
M clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/overloaded/sf_mm_e4m3_e5m2.c
M clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/overloaded/sf_mm_e5m2_e4m3.c
M clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/overloaded/sf_mm_e5m2_e5m2.c
M clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/overloaded/sf_mm_f_f.c
M clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/overloaded/sf_mm_s_s.c
M clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/overloaded/sf_mm_s_u.c
M clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/overloaded/sf_mm_u_s.c
M clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/overloaded/sf_mm_u_u.c
M clang/test/Sema/sifive-xsfmm.c
Log Message:
-----------
[llvm][RISCV] Revise xsfmm intrinsic interface. (#201527)
This patch does 2 things:
1. Change matmul interface to use newly defined OFP8 RVV types.
2. change all of matmul overloaded interfaces to only keep only widen
information and eliminate types information.
Commit: b68b8232ff72535ca1bb43832029cbb480bcbf3f
https://github.com/llvm/llvm-project/commit/b68b8232ff72535ca1bb43832029cbb480bcbf3f
Author: yingopq <115543042+yingopq at users.noreply.github.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M llvm/lib/Target/Mips/AsmParser/MipsAsmParser.cpp
M llvm/lib/Target/Mips/MipsInstrInfo.td
M llvm/test/MC/Mips/mips64r6/invalid.s
Log Message:
-----------
[Mips] Fix Clang crashes when assembling MIPS64r6 LDPC with non-8-byte-aligned offset (#204320)
Fix #184959.
Commit: 72b891b75f85cd8be4ac125f36f1bc9a97c8e185
https://github.com/llvm/llvm-project/commit/72b891b75f85cd8be4ac125f36f1bc9a97c8e185
Author: Fan Mo <w007878 at hotmail.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Sema/SemaTemplate.cpp
M clang/test/SemaTemplate/instantiate-member-template.cpp
Log Message:
-----------
[clang] Avoid assertion on invalid member template specialization (#201506)
fixes #201490
It would be possible to have `PrevClassTemplate == false` when `SS` was
invalid.
Since it is already invalid, it would be safe to skip
`setMemberSpecialization` for `NewTemplate`. When the qualified scope
specifier is invalid, Sema may have already diagnosed the declaration
and marked it invalid. In that case there may be no previous class
template declaration, so the assertion is too strong. Avoid marking the
new declaration as a member specialization unless the previous class
template exists.
Commit: 6f98573ebdd8fa826aa841f48e6ed7e671900ecc
https://github.com/llvm/llvm-project/commit/6f98573ebdd8fa826aa841f48e6ed7e671900ecc
Author: Lang Hames <lhames at gmail.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M orc-rt/include/CMakeLists.txt
R orc-rt/include/orc-rt/ScopeExit.h
A orc-rt/include/orc-rt/scope_exit.h
M orc-rt/lib/executor/AllocAction.cpp
M orc-rt/unittests/CMakeLists.txt
R orc-rt/unittests/ScopeExitTest.cpp
A orc-rt/unittests/scope_exit-test.cpp
Log Message:
-----------
[orc-rt] Rename scope_exit header, add nodiscard attribute. (#205030)
The rename brings the scope_exit type's header name into alignment with
other ORC runtime snake_case types.
The [[nodiscard]] attribute should help to prevent accidental misuse of
the type.
Commit: 6a2128a933cbeaccfbff2b81cd9ee2ed80e6071d
https://github.com/llvm/llvm-project/commit/6a2128a933cbeaccfbff2b81cd9ee2ed80e6071d
Author: Kazu Hirata <kazu at google.com>
Date: 2026-06-21 (Sun, 21 Jun 2026)
Changed paths:
M llvm/include/llvm/ProfileData/SampleProfReader.h
M llvm/lib/ProfileData/SampleProfReader.cpp
Log Message:
-----------
[ProfileData] Lazy-load fixed-length MD5 name table (#202014)
When reading extensible binary format profiles with fixed-length MD5
name tables, the reader eagerly allocates and populates a
std::vector<FunctionId> to store the name table. This eager loading
is particularly wasteful when ProfileIsCS is false, as we populate the
entire name table just to support lookups during profile ingestion,
even though we may only use a subset of the profile. Since FunctionId
is 16 bytes on 64-bit systems, a name table containing 10 million MD5
hash values would consume 160MB of heap memory.
This patch implements lazy loading for the name table in extensible
binary format profiles when the fixed-length MD5 layout is used.
Specifically, this patch introduces SampleProfileNameTable to
encapsulate the name table representation, supporting both lazy
loading (pointing directly to the memory-mapped buffer) and eager
loading (using a vector). Eager loading is retained as a fallback for
layouts that do not support O(1) random access (such as
variable-length string tables).
The reader transitions between these modes using setLazy and
resetToEager. The getNameTable interface is updated to return an
iterator_range of SampleProfileNameTable::iterator, which reads the
MD5 values directly from the buffer on-demand when lazy-loaded.
- Heap consumption: Saves 16 bytes of heap memory for each name table
entry by avoiding the std::vector allocation.
- Compilation performance: Saves about 4% on ThinLTO pre-link and 10%
on ThinLTO backend on shared and non-shared profiles.
Commit: 1092b2bad2edf9ee11a9d8e641a22f5b46922a4c
https://github.com/llvm/llvm-project/commit/1092b2bad2edf9ee11a9d8e641a22f5b46922a4c
Author: Sameer Sahasrabuddhe <sameer.sahasrabuddhe at amd.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M llvm/docs/AMDGPUAsyncOperations.rst
Log Message:
-----------
[AMDGPU] Improve the description of asyncmark semantics (#202579)
- The semantics of asyncmarks is now defined purely in terms of
sequences, without referring to the implementation.
- The examples incorrectly used (post)dominance. Fixed that with wording
in terms of asyncmark sequences.
Commit: 9f0b22c61153e8390e3eed74e4a9cf1160bd71fe
https://github.com/llvm/llvm-project/commit/9f0b22c61153e8390e3eed74e4a9cf1160bd71fe
Author: lrzlin <linrunze at loongson.cn>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
M llvm/lib/Target/LoongArch/LoongArchISelLowering.h
M llvm/test/CodeGen/LoongArch/ir-instruction/double-convert.ll
M llvm/test/CodeGen/LoongArch/ir-instruction/float-convert.ll
Log Message:
-----------
[LoongArch] Custom scalar UINT_TO_FP and FP_TO_UINT with LSX instructions (#200901)
Using `vftintrz.lu.d` for converting scalar double/float values to
unsigned 64-bit integers, and `vffint.d.lu` vice versa.
Commit: de045d579791d978cce109f9348d20560e112d74
https://github.com/llvm/llvm-project/commit/de045d579791d978cce109f9348d20560e112d74
Author: Lang Hames <lhames at gmail.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M orc-rt/include/orc-rt/SimplePackedSerialization.h
Log Message:
-----------
[orc-rt] Tidy up some SPS tag types. NFC. (#205038)
Replaces class definitions with decls for tag types that don't need a
body, and moves the SPSError tag down to just above it's
serialization-traits class.
Commit: 15a3238566e799e3dd0e473672307712be8528e6
https://github.com/llvm/llvm-project/commit/15a3238566e799e3dd0e473672307712be8528e6
Author: Weiwen He <60433849+he-weiwen at users.noreply.github.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
A llvm/test/CodeGen/AArch64/extend-bool-vector-load.ll
Log Message:
-----------
[AArch64] Lower extends of boolean vector loads via scalar load (#203394)
Replace a `load <N x i1>` under a sext/zext with a scalar load +
bitcast, so the `combineToExtendBoolVectorInReg` helper can apply,
avoiding scalarization.
Optimisation for the SVE case with a predicate load to be added in a
follow up.
Fixes #200325
Commit: 6d66cc1e0e953e996048e93a9fa3e1c6b9a27642
https://github.com/llvm/llvm-project/commit/6d66cc1e0e953e996048e93a9fa3e1c6b9a27642
Author: Lang Hames <lhames at gmail.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M orc-rt/include/orc-rt/SimplePackedSerialization.h
M orc-rt/unittests/SimplePackedSerializationTest.cpp
Log Message:
-----------
[orc-rt] Add SPS serialization for ExecutorAddrRange. (#205041)
Allows SPS serialization to/from ExecutorAddrRange. This will be used in
upcoming patches for compact-unwind registration support.
Commit: 25e4057d49055a645dc6a51ae1f40ac647aaed5b
https://github.com/llvm/llvm-project/commit/25e4057d49055a645dc6a51ae1f40ac647aaed5b
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M clang/include/clang/Options/Options.td
M clang/lib/Driver/ToolChains/Clang.cpp
A clang/test/AST/ByteCode/command-line-options.cpp
Log Message:
-----------
[clang] Respect `CLANG_USE_EXPERIMENTAL_CONST_INTERP` (#200716)
Seems like https://github.com/llvm/llvm-project/pull/199396 had no
effect at all, even though the patch itself seems pretty obvious.
Change the semantics of the command-line option to support
`-fno-experimental-constant-interpreter` as well. This way, the cmake
option can be used to set the default and the `-f`/`-fno-` command-line
options can be used to override the default behavior.
Commit: 64ad10fcda6952b78b81075d93a31364337ef8f4
https://github.com/llvm/llvm-project/commit/64ad10fcda6952b78b81075d93a31364337ef8f4
Author: Pierre van Houtryve <pierre.vanhoutryve at amd.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M llvm/docs/AMDGPUExecutionSynchronization.rst
Log Message:
-----------
[AMDGPU][doc] Refactor Barrier Execution Model (#204566)
Remove everything that has to do with named barriers and put it in a
series of model extensions specific to /sbarrier/named-barriers.
I had to change a few things to make it fit, in summary:
Base Model:
- (~) Stylistic changes that make it easier to refer to specific rules.
Each rule is in a rubric instead of a bullet point.
- (-) No longer defines `barrier-mutually-exclusive`
- (-) No longer defines barrier `join` and any associated rule.
New named barrier extensions
- (+) Define "named barrier" as a sub-type of barrier objects. This
makes barrier-mutually-exclusive redundant.
- (+) Define barrier join as an op that can exclusively be done on
`named barrier objects`.
- (+) Define rules relating to join and its ordering with other barrier
operations
Following these changes, the target tables changed a bit as well.
Motive: Barrier _join_ + `barrier-mutually-exclusive` only ever makes
sense when considering named barriers in the ISA. They are an alien
concept to higher-level barrier abstractions.
_Join_ has especially been a pain to deal with and explain in the
general, high-level execution model. Kicking it down into an extension
allows to keep the base model much more concise. As the model extension
is defined w.r.t. the ISA, it's an appropriate place to surface
ISA-specific restrictions. For example we don't need to dance around the
concept of "each thread is a member of at most one named barrier" with
`barrier-mutually-exclusive`. We can just say it straight away when
describing the behavior of _join_ in the model extension.
Commit: ff0e4f0830f7913a3c66b28cafcc7dae2a6e10d6
https://github.com/llvm/llvm-project/commit/ff0e4f0830f7913a3c66b28cafcc7dae2a6e10d6
Author: Piotr Fusik <p.fusik at samsung.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
Log Message:
-----------
[AArch64][NFC] Refactor duplicate code into getCmpOrCmnOperandFoldingProfit (#198981)
Commit: 5492d06d4fb99795b3b7247be374cdcb47f5ac03
https://github.com/llvm/llvm-project/commit/5492d06d4fb99795b3b7247be374cdcb47f5ac03
Author: Ramkumar Ramachandra <artagnon at tenstorrent.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M llvm/include/llvm/Analysis/ConstantFolding.h
M llvm/include/llvm/Analysis/InstSimplifyFolder.h
M llvm/include/llvm/Analysis/InstructionSimplify.h
M llvm/include/llvm/Analysis/TargetFolder.h
M llvm/include/llvm/IR/ConstantFolder.h
M llvm/include/llvm/IR/IRBuilderFolder.h
M llvm/include/llvm/IR/NoFolder.h
M llvm/lib/Analysis/ConstantFolding.cpp
M llvm/lib/Analysis/InstructionSimplify.cpp
M llvm/lib/IR/IRBuilder.cpp
M llvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/test/CodeGen/VE/Scalar/atomic.ll
M llvm/test/CodeGen/VE/Scalar/atomic_cmp_swap.ll
M llvm/test/Transforms/IRCE/correct-loop-info.ll
M llvm/test/Transforms/IndVarSimplify/lcssa-preservation.ll
M llvm/test/Transforms/LoopUnroll/runtime-loop-multiexit-dom-verify.ll
M llvm/test/Transforms/LoopVectorize/X86/replicating-load-store-costs.ll
M llvm/test/Transforms/LoopVectorize/trip-count-expansion-may-introduce-ub.ll
M llvm/test/Transforms/LoopVectorize/version-mem-access.ll
M llvm/test/Transforms/VectorCombine/AArch64/shuffle-of-intrinsics.ll
M llvm/test/Transforms/VectorCombine/AArch64/shuffletoidentity.ll
M llvm/test/Transforms/VectorCombine/RISCV/shuffle-of-intrinsics.ll
M llvm/test/Transforms/VectorCombine/X86/shuffle-of-intrinsics.ll
M polly/test/CodeGen/scop_expander_insert_point.ll
Log Message:
-----------
[IRBuilder] (Target|InstSimplify)-fold intrinsics (#204967)
Includes changes to guard against a nullptr TLI and Call. TargetFold or
InstSimplify fold in IRBuilderBase::CreateIntrinsic, in the same way we
fold in Create(Unary|Binary)Intrinsic.
Commit: 5951daf0f0cf67a0c75ced322c88aef86c9349de
https://github.com/llvm/llvm-project/commit/5951daf0f0cf67a0c75ced322c88aef86c9349de
Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M llvm/include/llvm/Analysis/LoopAccessAnalysis.h
M llvm/lib/Analysis/LoopAccessAnalysis.cpp
M llvm/lib/Transforms/Vectorize/LoopVectorizationLegality.cpp
M llvm/lib/Transforms/Vectorize/LoopVectorizationPlanner.cpp
M llvm/test/Transforms/LoopVectorize/first-order-recurrence-scalable-vf1.ll
M llvm/test/Transforms/LoopVectorize/narrow-interleave-groups-scalable-vf.ll
M llvm/test/Transforms/LoopVectorize/narrow-to-single-scalar-widen-gep-scalable.ll
M llvm/test/Transforms/LoopVectorize/scalable-assume.ll
M llvm/test/Transforms/LoopVectorize/scalable-first-order-recurrence.ll
M llvm/test/Transforms/LoopVectorize/scalable-iv-outside-user.ll
M llvm/test/Transforms/LoopVectorize/scalable-lifetime.ll
M llvm/test/Transforms/LoopVectorize/scalable-loop-unpredicated-body-scalar-tail.ll
M llvm/test/Transforms/LoopVectorize/scalable-noalias-scope-decl.ll
M llvm/test/Transforms/LoopVectorize/scalable-reduction-inloop.ll
M llvm/test/Transforms/LoopVectorize/vector-freeze.ll
M llvm/test/Transforms/LoopVectorize/vscale-cost.ll
Log Message:
-----------
[LV] Allow scalable VFs in `-force-vector-width` (and use in tests) (#204953)
This updates `-force-vector-width=VF` to accept scalable VFs. If a
scalable width is specified it is assumed the target supports scalable
vectors.
So for example, `-force-vector-width="vscale x 4"` works as a shorthand
for `-scalable-vectorization=always -force-target-supports-scalable-vectors=true -force-vector-width=4`.
Commit: e4df7391e49f0d1188d544f22db265ba9c30da3e
https://github.com/llvm/llvm-project/commit/e4df7391e49f0d1188d544f22db265ba9c30da3e
Author: Jay Foad <jay.foad at amd.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.h
M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.h
M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.h
M llvm/lib/Target/AMDGPU/GCNSubtarget.cpp
M llvm/lib/Target/AMDGPU/R600ISelLowering.h
M llvm/lib/Target/AMDGPU/SIMachineScheduler.h
M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.h
Log Message:
-----------
[AMDGPU] Remove stale declarations. NFC. (#205047)
Remove declarations of functions that are never defined. Also remove
unused field AMDGPUInstructionSelector::TM.
Co-authored-by: Claude Opus 4.8 (1M context) <noreply at anthropic.com>
Commit: 0972d5c5c11a5dfd8c6a60ef018129157522e139
https://github.com/llvm/llvm-project/commit/0972d5c5c11a5dfd8c6a60ef018129157522e139
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M clang/include/clang/AST/Decl.h
Log Message:
-----------
[clang][NFC] Add LLVM_PREFERRED_TYPE to EvaluatedStmt bitfields (#205026)
Commit: 6be53ab5da701ca6939c818fbe8cdbb633ab2409
https://github.com/llvm/llvm-project/commit/6be53ab5da701ca6939c818fbe8cdbb633ab2409
Author: Nathan Corbyn <n_corbyn at apple.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M llvm/lib/Target/AArch64/GISel/AArch64InstructionSelector.cpp
A llvm/test/CodeGen/AArch64/GlobalISel/pr204118.mir
A llvm/test/CodeGen/AArch64/pr204118.ll
Log Message:
-----------
[AArch64][GISel] Remove hard-coded operand index from FCVT renderers (#204118)
Commit: 6daa02101815f4b2a6851fba8d8bedbfffd1e72c
https://github.com/llvm/llvm-project/commit/6daa02101815f4b2a6851fba8d8bedbfffd1e72c
Author: Luke Hutton <luke.hutton at arm.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M mlir/lib/Dialect/Tosa/IR/TosaOps.cpp
M mlir/test/Dialect/Tosa/verifier.mlir
Log Message:
-----------
[mlir][tosa] Check same input/output types in pooling ops verifier (#203565)
Adds a missing check to make sure the input and output types of pooling
ops have the same element type.
Commit: b0bf2c796915821d8bda7d136fe4eec62603454f
https://github.com/llvm/llvm-project/commit/b0bf2c796915821d8bda7d136fe4eec62603454f
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M clang/docs/ConstantInterpreter.rst
Log Message:
-----------
[clang][bytecode] Update high-level documentation (#202596)
Commit: 3aeb6c1f3322b57fe102b7c87d8fd17f87454195
https://github.com/llvm/llvm-project/commit/3aeb6c1f3322b57fe102b7c87d8fd17f87454195
Author: Dmitriy Smirnov <dmitriy.smirnov at arm.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVBase.td
M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVCompositeOps.td
M mlir/test/Dialect/SPIRV/IR/composite-ops.mlir
Log Message:
-----------
[mlir][spirv] Re-enable bf16/fp8 for vector composite ops (#204848)
Allow bf16 and fp8 vector element types in VectorExtractDynamic,
VectorInsertDynamic, and VectorShuffle.
Commit: b5dfea08588fc64b0ce5cea685b275ed3de400de
https://github.com/llvm/llvm-project/commit/b5dfea08588fc64b0ce5cea685b275ed3de400de
Author: Deepak Shirke <117824396+deepakshirkem at users.noreply.github.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M llvm/lib/Target/ARM/ARMBaseInstrInfo.cpp
M llvm/lib/Target/ARM/ARMRegisterInfo.td
A llvm/test/CodeGen/ARM/machine-outliner-thunk-tcgpr.mir
Log Message:
-----------
[ARM] Fix Machine Outliner crash when tBLXr uses non-tcGPR register (#200684)
When the Machine Outliner selects MachineOutlinerThunk mode for a
sequence ending in tBLXr/tBLXr_noip, it converts the indirect call to
tTAILJMPr in buildOutlinedFrame. However tTAILJMPr requires its operand
to be in tcGPR (R0-R3, R12), while tBLXr accepts any GPR.
If the register is callee-saved (e.g. r4), the Machine Verifier crashes
with 'Illegal physical register for instruction'.
Fixes #188076
Commit: 0b1fe74f079fd330e4d4d85ce33b7f5702da1be7
https://github.com/llvm/llvm-project/commit/0b1fe74f079fd330e4d4d85ce33b7f5702da1be7
Author: Andrei Golubev <andrey.golubev at intel.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M mlir/include/mlir/Dialect/Bufferization/IR/BufferizableOpInterface.h
M mlir/include/mlir/Dialect/Bufferization/IR/UnstructuredControlFlow.h
M mlir/lib/Dialect/Arith/Transforms/BufferizableOpInterfaceImpl.cpp
M mlir/lib/Dialect/Bufferization/IR/BufferizableOpInterface.cpp
M mlir/lib/Dialect/SCF/Transforms/BufferizableOpInterfaceImpl.cpp
M mlir/test/Dialect/Arith/one-shot-bufferize-memory-space-invalid.mlir
M mlir/test/Dialect/Bufferization/Transforms/test-one-shot-module-bufferize.mlir
M mlir/test/Dialect/ControlFlow/one-shot-bufferize-invalid.mlir
M mlir/test/Dialect/SCF/one-shot-bufferize-invalid.mlir
M mlir/test/lib/Dialect/Bufferization/TestOneShotModuleBufferize.cpp
M mlir/test/lib/Dialect/Test/TestOpDefs.cpp
M mlir/test/lib/Dialect/Test/TestOps.td
Log Message:
-----------
[mlir][bufferization] Introduce reconcileBufferTypeMismatchFn hook (#202667)
This PR is the first part of the work that aims to allow customizations
in resolving mismatching buffer types.
Add a new bufferization hook that lets downstream bufferization
implementations define how to handle buffer mismatches that appear
during type inference in various upstream scenarios.
The hook is used as a fallback mechanism in several upstream operations.
For example, when bufferizing block signatures (scf.execute_region), and
resolving "branch" conflicts (scf.if, scfl.index_switch, scf.for,
arith.select).
The hook returns a valid buffer type when reconciliation succeeded;
failure indicates reconciliation failure and should be treated as
bufferization failure. The caller of the hook is expected to use the
returned buffer type. By default, a memref with fully-dynamic layout map
is returned (for unranked case, buffers are assumed to match).
---------
Co-authored-by: Dmitrii Makarenko <dmitrii.makarenko at intel.com>
Commit: 75440ed24c4e656cef53f0d2419a885eb7c908f7
https://github.com/llvm/llvm-project/commit/75440ed24c4e656cef53f0d2419a885eb7c908f7
Author: Nashe Mncube <nashe.mncube at arm.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
A llvm/test/tools/llvm-mca/AArch64/Cortex/A55-in-order-bottleneck-analysis.s
A llvm/test/tools/llvm-mca/AArch64/Cortex/A57-direct-branch.s
A llvm/test/tools/llvm-mca/AArch64/Cortex/A57-forwarding.s
A llvm/test/tools/llvm-mca/AArch64/Cortex/A57-shifted-register.s
R llvm/test/tools/llvm-mca/AArch64/Cortex/direct-branch.s
R llvm/test/tools/llvm-mca/AArch64/Cortex/forwarding-A57.s
R llvm/test/tools/llvm-mca/AArch64/Cortex/in-order-bottleneck-analysis.s
R llvm/test/tools/llvm-mca/AArch64/Cortex/shifted-register.s
Log Message:
-----------
[NFC][AArch64][MCA] Rename A55/A57 mca tests (#204551)
Rename several llvm-mca tests for cortex-a55 and cortex-a57 to follow
the same pattern as the other testss
Commit: 9e8615f5268a4aa0298d615e6c79391174dcc8da
https://github.com/llvm/llvm-project/commit/9e8615f5268a4aa0298d615e6c79391174dcc8da
Author: Charles Zablit <c_zablit at apple.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M llvm/include/llvm/Support/ConvertUTF.h
M llvm/lib/Support/ConvertUTFWrapper.cpp
Log Message:
-----------
[NFC][llvm] simplify convertWideToUTF8 overloads (#204552)
Remove the C-String overload of `convertWideToUTF8` and convert the
`ArrayRef` one to use `std::wstring_view` in order to simplify the API.
Commit: 283514b070fd2ae647f56cf046ea74be15a887b1
https://github.com/llvm/llvm-project/commit/283514b070fd2ae647f56cf046ea74be15a887b1
Author: jpwang <jpwang at smail.nju.edu.cn>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M llvm/docs/ReleaseNotes.md
R llvm/test/tools/llvm-objcopy/ELF/compress-debug-sections-zstd-err.test
M llvm/test/tools/llvm-objcopy/ELF/compress-sections-within-segment.s
A llvm/test/tools/llvm-objcopy/ELF/compress-sections-zlib-unsupported.test
A llvm/test/tools/llvm-objcopy/ELF/compress-sections-zstd-unsupported.test
R llvm/test/tools/llvm-objcopy/ELF/decompress-debug-sections-unsupported-zlib.test
A llvm/test/tools/llvm-objcopy/ELF/decompress-sections-unsupported-zlib.test
A llvm/test/tools/llvm-objcopy/ELF/decompress-sections-unsupported-zstd.test
M llvm/tools/llvm-objcopy/ObjcopyOptions.cpp
Log Message:
-----------
[llvm-objcopy] Report unsupported formats before compression (#202357)
Fixes #197877.
`llvm-objcopy --compress-sections` now reports unavailable compression
support while parsing the option, matching the behavior of
`--compress-debug-sections`. This avoids reaching compression code with
an unavailable format.
Decompression (either via `--decompress-debug-sections` or
`--compress-sections` with a `none` format) is still checked when the
relevant compressed section is processed, because the required
compression format is determined from the section header rather than
from the command-line option.
The `compress-sections-within-segment` test now requires zlib because
`--compress-sections .text=zlib` is diagnosed during option parsing when
zlib support is unavailable, before the test can reach the intended
"section within a segment" diagnostic.
Commit: 00086d64086043269c3ed1c15dc08f5b6d517292
https://github.com/llvm/llvm-project/commit/00086d64086043269c3ed1c15dc08f5b6d517292
Author: sipher <110331483+sipher-01 at users.noreply.github.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M clang/include/clang/Basic/DiagnosticGroups.td
M clang/test/Sema/LifetimeSafety/dangling-global.cpp
Log Message:
-----------
[LifetimeSafety] Add `LifetimeSafetyDanglingGlobalMoved` to strict diagnostic group (#204891)
Fixes #204213
`-Wlifetime-safety-dangling-global-moved` was defined but not included
in any parent diagnostic group, meaning `-Wlifetime-safety-all` and
`-Wno-lifetime-safety-all` had no effect on it.
`LifetimeSafetyDanglingGlobal` (the non-moved variant) was already
correctly placed under `LifetimeSafetyPermissive`. Following the same
pattern as the other `-moved` sibling warnings
(`DanglingFieldMoved`, `ReturnStackAddrMoved`, `UseAfterScopeMoved`),
this patch adds `LifetimeSafetyDanglingGlobalMoved` to
`LifetimeSafetyStrict`, which is part of the `lifetime-safety-all`
hierarchy.
Assisted-by: Claude (Anthropic) — used for learning and understanding
the codebase, not for generating code directly.
Commit: 192ef559fbfeeba2f9cc43252db3da1303e8f00b
https://github.com/llvm/llvm-project/commit/192ef559fbfeeba2f9cc43252db3da1303e8f00b
Author: Petar Avramovic <Petar.Avramovic at amd.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
R llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-mui-salu-float.ll
R llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-mui.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.bitreplicate.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.wqm.vote.ll
M llvm/test/CodeGen/AMDGPU/maximumnum.ll
M llvm/test/CodeGen/AMDGPU/minimumnum.ll
M llvm/test/CodeGen/AMDGPU/packed-u64.ll
Log Message:
-----------
AMDGPU/GlobalISel: Use AMDGPURegBankSelect + AMDGPURegBankLegalize by default (#203928)
AMDGPU/GlobalISel: Use AMDGPURegBankSelect + AMDGPURegBankLegalize by default
Change AMDGPU's default -global-isel pipeline to use AMDGPURegBankSelect
and AMDGPURegBankLegalize (previously -global-isel -new-reg-bank-select)
by default instead of RegBankSelect which uses AMDGPURegisterBankInfo.
-global-isel pipeline that used RegBankSelect/AMDGPURegisterBankInfo is
now deprecated, since it could not generate functionally correct code in
some cases involving divergent control flow and phis.
-new-reg-bank-select option does nothing and will be removed in followup
patch.
Delete regbankselect-mui.ll and regbankselect-mui-salu-float.ll, which
existed to compare the -global-isel vs -global-isel -new-reg-bank-select.
Temporarily disable a couple of tests that are missing AMDGPURegBankLegalize
support.
Commit: a2289b7336a299c2a5d6c4fb8b6fc074297acf88
https://github.com/llvm/llvm-project/commit/a2289b7336a299c2a5d6c4fb8b6fc074297acf88
Author: Raphael Isemann <rise at apple.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
R lldb/test/API/macosx/deny-attach/Makefile
R lldb/test/API/macosx/deny-attach/TestDenyAttach.py
R lldb/test/API/macosx/deny-attach/main.c
M lldb/tools/debugserver/source/MacOSX/MachProcess.mm
Log Message:
-----------
Revert "[lldb] Survive ptrace(PT_DENY_ATTACH) when attaching" (#205075)
Reverts llvm/llvm-project#204688
This breaks green dragon where the error message is `error: attach
failed: this is a non-interactive debug session, cannot get permission
to debug processes.`
Commit: 05d84fd3f92355d7f4a0c90ac4fd4229f3e19133
https://github.com/llvm/llvm-project/commit/05d84fd3f92355d7f4a0c90ac4fd4229f3e19133
Author: Diana Picus <Diana-Magda.Picus at amd.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M llvm/test/CodeGen/AMDGPU/GlobalISel/dropped_debug_info_assert.ll
Log Message:
-----------
[AMDGPU] Run update script on test. NFC (#204570)
There's some bogus whitespace in the generated CHECKs that changes when
touching the test.
Commit: 2a1f306515b67036a44b16e569a9f26f57520c54
https://github.com/llvm/llvm-project/commit/2a1f306515b67036a44b16e569a9f26f57520c54
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M clang/lib/AST/ByteCode/Interp.cpp
M clang/test/AST/ByteCode/dynamic-cast.cpp
Log Message:
-----------
[clang][bytecode] Add more sanity checks for pointers used in `dynamic_cast` (#205070)
Make sure it's initialized and that it points to a record.
Commit: b95e1e890c025ab4eee3583b7b1e2497991145db
https://github.com/llvm/llvm-project/commit/b95e1e890c025ab4eee3583b7b1e2497991145db
Author: Fangrui Song <i at maskray.me>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M llvm/include/llvm/Support/Allocator.h
M llvm/unittests/Support/AllocatorTest.cpp
Log Message:
-----------
[Allocator] Keep bump pointer at a minimum alignment (#203718)
Add a `MinAlign` template parameter (default 8, sizeof(size_t) on 64-bit
platforms) so that the common case `Alignment <= MinAlign` can skip
realigning `CurPtr`.
This is achieved by rounding each allocation's size up to MinAlign, so
the bump pointer stays MinAlign-aligned between allocations.
SpecificBumpPtrAllocator::DestroyAll() walks objects at a fixed
sizeof(T) stride and needs tight packing, so it uses MinAlign=1. (alignof(T) would
pack just as tightly and reuse the default instantiation, but T may be
incomplete here, e.g. `SpecificBumpPtrAllocator<MCSectionELF>`.)
Its `Allocate` still skips the realign: the slab is max_align_t-aligned
and every size is a multiple of alignof(T), so the bump pointer stays
alignof(T)-aligned and we can just request alignment 1. Over-aligned
types (alignof(T) > alignof(max_align_t)) keep requesting alignof(T).
Also use `bit_ceil` instead of `NextPowerOf2` in the placement operator
new alignment heuristic. NextPowerOf2 is strictly greater, so an 8-byte
pointer-sized object asked for alignment 16 and missed the fast path;
bit_ceil(8) == 8 keeps it on the fast path.
Aided by Claude Opus 4.8
Commit: c56e892f5c520b4474158837d7968e5c8dc3e4c1
https://github.com/llvm/llvm-project/commit/c56e892f5c520b4474158837d7968e5c8dc3e4c1
Author: Petar Avramovic <Petar.Avramovic at amd.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
M llvm/test/CodeGen/AMDGPU/GlobalISel/add.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/add.v2i16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/add.vni16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/add_shl.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/addo.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/addsubu64.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/and.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/andn2.i1.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/andn2.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/artifact-combiner-asserts.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/ashr.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/assert-align.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/atomic_load_flat.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/atomic_load_global.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/atomic_load_local.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/atomic_load_local_2.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/atomic_optimizations_mul_one.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/atomic_store_local.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw-add-sub.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw-and.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw-fmin-fmax.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw-or.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw-xchg.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw-xor.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw_fmax.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw_fmin.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw_minmax.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw_udec_wrap.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw_uinc_wrap.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/bitcast_38_i16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/bool-legalization.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/br-constant-invalid-sgpr-copy.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/bswap.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/buffer-atomic-fadd.f32-no-rtn.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/buffer-atomic-fadd.f32-rtn.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/buffer-atomic-fadd.f64.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/buffer-atomic-fadd.v2f16-no-rtn.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/buffer-atomic-fadd.v2f16-rtn.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/buffer-load-byte-short.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/buffer-load-store-pointers.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/buffer-schedule.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/bug-legalization-artifact-combiner-dead-def.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/bug_shuffle_vector_to_scalar.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/call-outgoing-stack-args.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/clamp-fmed3-const-combine.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/clamp-minmax-const-combine.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-fma-add-ext-fma.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-fma-add-ext-mul.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-fma-add-fma-mul.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-fma-add-mul.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-fma-sub-ext-mul.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-fma-sub-ext-neg-mul.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-fma-sub-mul.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-fma-sub-neg-mul.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-rsq.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-shift-imm-chain.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-shift-of-shifted-logic.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-short-clamp.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/combiner-crash.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/constant-bus-restriction.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/crash-stack-address-O0.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/cvt_f32_ubyte.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/dereferenceable-declaration.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/divergence-divergent-i1-phis-no-lane-mask-merging.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/divergence-divergent-i1-used-outside-loop.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/divergence-structurizer.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/divergence-temporal-divergent-i1.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/divergence-temporal-divergent-reg.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/divergent-control-flow.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/dropped_debug_info_assert.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/dynamic-alloca-uniform.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/extractelement-stack-lower.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/extractelement.i128.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/extractelement.i16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/extractelement.i8.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/extractelement.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/fabs.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/fadd.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/fceil.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/fcmp.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/fdiv.f16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/fdiv.f32.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/fdiv.f64.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/ffloor.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/flat-atomic-fadd.f32.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/flat-atomic-fadd.f64.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/flat-atomic-fadd.v2f16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/flat-scratch-init.gfx.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/flat-scratch.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/floor.f64.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/fma.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/fmad.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/fmamix-constant-bus-violation.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/fmax_legacy.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/fmed3-min-max-const-combine.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/fmed3.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/fmin3-fmax3-combine.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/fmin_legacy.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/fmul.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/fmul.v2f16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/fneg.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/fp-atomics-gfx942.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/fp-int-conversions.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/fp64-atomics-gfx90a.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/fpext.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/fpow.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/fptrunc.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/frem.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/fshl.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/fshr-new-regbank-select.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/fshr.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/fsub.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/global-atomic-fadd.f32-no-rtn.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/global-atomic-fadd.f32-rtn.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/global-atomic-fadd.f64.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/global-atomic-fadd.v2f16-no-rtn.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/global-atomic-fadd.v2f16-rtn.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/global-value-addrspaces.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/global-value.illegal.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/hip.extern.shared.array.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/i1-copy.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/icmp.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/image-waterfall-loop-O0.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/implicit-kernarg-backend-usage-global-isel.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/insertelement-stack-lower.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/insertelement.i16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/insertelement.i8.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/insertelement.large.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/insertelement.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-copy-scc-vcc.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/intrinsic-trunc.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-atomicrmw.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/is-safe-to-sink-bug.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/lds-global-value.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/lds-misaligned-bug.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/lds-relocs.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/lds-zero-initializer.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.abs.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.ballot.i32.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.ballot.i64.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.dispatch.ptr.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.div.fmas.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.div.scale.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.end.cf.i32.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.end.cf.i64.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.fdot2.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.fmul.legacy.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.fract.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.frexp.mant.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.if.break.i32.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.if.break.i64.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.atomic.dim.a16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.atomic.dim.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.gather4.a16.dim.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.gather4.dim.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.gather4.o.dim.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.getresinfo.a16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.getresinfo.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.load.1d.d16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.load.1d.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.load.2d.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.load.2darraymsaa.a16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.load.2darraymsaa.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.load.3d.a16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.load.3d.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.sample.cd.g16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.sample.g16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.store.2d.d16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.store.2d.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.implicit.ptr.buffer.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.interp.inreg.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.interp.p1.f16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.intersect_ray.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.kernarg.segment.ptr.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.live.mask.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.make.buffer.rsrc.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.mfma.gfx90a.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.mov.dpp.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.mul24.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.queue.ptr.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.buffer.atomic.add.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.buffer.atomic.cmpswap.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.buffer.atomic.fadd-with-ret.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.buffer.atomic.fadd.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.buffer.atomic.integer-minmax.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.buffer.atomic.sub.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.buffer.atomic.swap.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.buffer.load.format.f16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.buffer.load.format.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.buffer.load.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.buffer.load.tfe.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.buffer.store.format.f16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.buffer.store.format.f32.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.buffer.store.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.ptr.buffer.atomic.add.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.ptr.buffer.atomic.cmpswap.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.ptr.buffer.atomic.fadd-with-ret.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.ptr.buffer.atomic.fadd.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.ptr.buffer.atomic.sub.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.ptr.buffer.atomic.swap.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.ptr.buffer.load.format.f16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.ptr.buffer.load.format.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.ptr.buffer.load.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.ptr.buffer.store.format.f16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.ptr.buffer.store.format.f32.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.ptr.buffer.store.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.ptr.tbuffer.load.f16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.ptr.tbuffer.load.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.ptr.tbuffer.store.f16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.ptr.tbuffer.store.i8.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.ptr.tbuffer.store.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.tbuffer.load.f16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.tbuffer.load.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.tbuffer.store.f16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.tbuffer.store.i8.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.tbuffer.store.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.rsq.clamp.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.s.buffer.load.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.s.setreg.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.s.sleep.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.sbfe.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.sdot2.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.sdot4.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.sdot8.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.set.inactive.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.softwqm.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.strictwqm.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.buffer.atomic.add.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.buffer.atomic.cmpswap.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.buffer.atomic.fadd-with-ret.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.buffer.atomic.fadd.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.buffer.atomic.sub.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.buffer.atomic.swap.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.buffer.load.format.f16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.buffer.load.format.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.buffer.load.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.buffer.load.tfe.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.buffer.store.format.f16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.buffer.store.format.f32.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.buffer.store.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.ptr.buffer.atomic.add.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.ptr.buffer.atomic.cmpswap.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.ptr.buffer.atomic.fadd-with-ret.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.ptr.buffer.atomic.fadd.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.ptr.buffer.atomic.sub.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.ptr.buffer.atomic.swap.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.ptr.buffer.load.format.f16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.ptr.buffer.load.format.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.ptr.buffer.load.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.ptr.buffer.store.format.f16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.ptr.buffer.store.format.f32.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.ptr.buffer.store.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.ptr.tbuffer.load.f16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.ptr.tbuffer.load.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.tbuffer.load.f16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.tbuffer.load.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.sudot4.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.sudot8.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.trig.preop.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.ubfe.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.udot2.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.udot4.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.udot8.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.update.dpp.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.wmma_32.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.wmma_64.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.workgroup.id.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.workitem.id.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.wqm.demote.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.wqm.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.writelane.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.wwm.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.atomic.cmpxchg.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.memcpy.inline.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.memcpy.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.memmove.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.memset.inline.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.memset.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.powi.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/load-constant.96.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/load-constant32bit.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/load-d16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/load-divergent.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/load-local.128.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/load-local.96.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/load-unaligned.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/load-uniform-in-vgpr.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/load-uniform.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/load-zero-and-sign-extending-divergent.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/load-zero-and-sign-extending-uniform-in-vgpr.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/load-zero-and-sign-extending-uniform.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/localizer.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/lshr.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/mad.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/madmix-constant-bus-violation.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/memory-legalizer-atomic-fence.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/merge-buffer-stores.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/minmaxabs-i64.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/minmaxabs.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/mmra.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/mubuf-global.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/mul-known-bits.i64.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/mul.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/mul.v2i16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/no-ctlz-from-umul-to-lshr-in-postlegalizer.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/non-entry-alloca.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/or.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/orn2.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/readanylane-combines.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbanklegalize-amdgcn.s.buffer.load.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbanklegalize-amdgcn.s.buffer.load.subdword.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-amdgcn.image.load.1d.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-amdgcn.image.sample.1d.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-amdgcn.raw.buffer.load.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-amdgcn.raw.ptr.buffer.load.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-amdgcn.readlane.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-amdgcn.s.buffer.load.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-amdgcn.struct.buffer.load.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-amdgcn.struct.buffer.store.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-amdgcn.struct.ptr.buffer.load.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-amdgcn.struct.ptr.buffer.store.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-call.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/saddsat.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/sbfx.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/sdiv.i32.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/sdiv.i64.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/sdivrem.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/select-to-fmin-fmax.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/sext_inreg.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/shader-epilogs.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/shl-ext-reduce.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/shl.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/shufflevector.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/smed3.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/smrd.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/smul.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/srem.i32.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/srem.i64.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/ssubsat.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/store-divergent-addr.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/store-local.128.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/store-local.96.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/store-uniform-addr.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/strict_fma.f16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/strict_fma.f32.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/strict_fma.f64.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/sub.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/sub.v2i16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/subo.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/true16-merge-values-s16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/trunc-brc.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/trunc.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/uaddsat.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/ubfx.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/udiv.i32.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/udiv.i64.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/udivrem.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/umed3.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/unmerge-sgpr-s16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/unsupported-load.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/unsupported-ptr-add.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/urem.i32.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/urem.i64.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/usubsat.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/v_bfe_i32.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/vni8-across-blocks.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/widen-i8-i16-scalar-loads.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/wmma-gfx12-w32-f16-f32-matrix-modifiers.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/wmma-gfx12-w32-imm.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/wmma-gfx12-w32-iu-modifiers.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/wmma-gfx12-w32-swmmac-index_key.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/wmma-gfx12-w32.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/wmma-gfx12-w64-f16-f32-matrix-modifiers.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/wmma-gfx12-w64-imm.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/wmma-gfx12-w64-iu-modifiers.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/wmma-gfx12-w64-swmmac-index_key.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/wmma-gfx12-w64.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/xnor.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/xor.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/zextload.ll
M llvm/test/CodeGen/AMDGPU/abi-attribute-hints-undefined-behavior.ll
M llvm/test/CodeGen/AMDGPU/add-max.ll
M llvm/test/CodeGen/AMDGPU/addrspacecast-gas.ll
M llvm/test/CodeGen/AMDGPU/addrspacecast-known-non-null.ll
M llvm/test/CodeGen/AMDGPU/addrspacecast.gfx6.ll
M llvm/test/CodeGen/AMDGPU/allow-check.ll
M llvm/test/CodeGen/AMDGPU/amd.endpgm.ll
M llvm/test/CodeGen/AMDGPU/amdgcn-call-whole-wave.ll
M llvm/test/CodeGen/AMDGPU/amdgcn-cs-chain-intrinsic-dyn-vgpr-w32.ll
M llvm/test/CodeGen/AMDGPU/amdgcn-sin-cos-f16-f32.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-codegenprepare-break-large-phis.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-cs-chain-cc.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-cs-chain-preserve-cc.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-reloc-const.ll
M llvm/test/CodeGen/AMDGPU/amdgpu.work-item-intrinsics.deprecated.ll
M llvm/test/CodeGen/AMDGPU/amdpal-callable.ll
M llvm/test/CodeGen/AMDGPU/async-buffer-loads.ll
M llvm/test/CodeGen/AMDGPU/asyncmark-gfx12plus.ll
M llvm/test/CodeGen/AMDGPU/asyncmark-max-pregfx12.ll
M llvm/test/CodeGen/AMDGPU/asyncmark-pregfx12.ll
M llvm/test/CodeGen/AMDGPU/atomicrmw_usub_cond.ll
M llvm/test/CodeGen/AMDGPU/atomicrmw_usub_sat.ll
M llvm/test/CodeGen/AMDGPU/atomics_cond_sub.ll
M llvm/test/CodeGen/AMDGPU/barrier-elimination-gfx12.ll
M llvm/test/CodeGen/AMDGPU/barrier-elimination.ll
M llvm/test/CodeGen/AMDGPU/bfi_int.ll
M llvm/test/CodeGen/AMDGPU/bitop3-shared-operand.ll
M llvm/test/CodeGen/AMDGPU/bitop3.ll
M llvm/test/CodeGen/AMDGPU/bitreverse.ll
M llvm/test/CodeGen/AMDGPU/buffer-fat-pointers-contents-legalization.ll
M llvm/test/CodeGen/AMDGPU/buffer-fat-pointers-memcpy.ll
M llvm/test/CodeGen/AMDGPU/buffer-rsrc-ptr-ops.ll
M llvm/test/CodeGen/AMDGPU/build-vector-packed-partial-undef.ll
M llvm/test/CodeGen/AMDGPU/call-args-inreg.ll
M llvm/test/CodeGen/AMDGPU/call-argument-types.ll
M llvm/test/CodeGen/AMDGPU/call-c-function.ll
M llvm/test/CodeGen/AMDGPU/call-constant.ll
M llvm/test/CodeGen/AMDGPU/call-constexpr.ll
M llvm/test/CodeGen/AMDGPU/call-defs-mode-register.ll
M llvm/test/CodeGen/AMDGPU/call-encoding.ll
M llvm/test/CodeGen/AMDGPU/call-graph-register-usage.ll
M llvm/test/CodeGen/AMDGPU/call-preserved-registers.ll
M llvm/test/CodeGen/AMDGPU/call-reqd-group-size.ll
M llvm/test/CodeGen/AMDGPU/call-return-types.ll
M llvm/test/CodeGen/AMDGPU/call-skip.ll
M llvm/test/CodeGen/AMDGPU/call-waitcnt.ll
M llvm/test/CodeGen/AMDGPU/callbr-intrinsics.ll
M llvm/test/CodeGen/AMDGPU/cc-inreg-sgpr0-3-mismatch.ll
M llvm/test/CodeGen/AMDGPU/check-subtarget-features.ll
M llvm/test/CodeGen/AMDGPU/cluster-dims.ll
M llvm/test/CodeGen/AMDGPU/codegen-prepare-addrspacecast-non-null.ll
M llvm/test/CodeGen/AMDGPU/commute-compares-scalar-float.ll
M llvm/test/CodeGen/AMDGPU/constrained-shift.ll
M llvm/test/CodeGen/AMDGPU/ctlz.ll
M llvm/test/CodeGen/AMDGPU/ctlz_zero_poison.ll
M llvm/test/CodeGen/AMDGPU/ctpop.ll
M llvm/test/CodeGen/AMDGPU/ctpop16.ll
M llvm/test/CodeGen/AMDGPU/ctpop64.ll
M llvm/test/CodeGen/AMDGPU/cttz.ll
M llvm/test/CodeGen/AMDGPU/cttz_zero_poison.ll
M llvm/test/CodeGen/AMDGPU/cube.ll
M llvm/test/CodeGen/AMDGPU/cvt_flr_i32_f32.ll
M llvm/test/CodeGen/AMDGPU/cvt_rpi_i32_f32.ll
M llvm/test/CodeGen/AMDGPU/div_i128.ll
M llvm/test/CodeGen/AMDGPU/div_v2i128.ll
M llvm/test/CodeGen/AMDGPU/diverge-interp-mov-lower.ll
M llvm/test/CodeGen/AMDGPU/ds-alignment.ll
M llvm/test/CodeGen/AMDGPU/dynamic_stackalloc.ll
M llvm/test/CodeGen/AMDGPU/fadd.f16.ll
M llvm/test/CodeGen/AMDGPU/fcanonicalize.ll
M llvm/test/CodeGen/AMDGPU/fdiv_flags.f32.ll
M llvm/test/CodeGen/AMDGPU/flat-saddr-atomics.ll
M llvm/test/CodeGen/AMDGPU/flat-saddr-load.ll
M llvm/test/CodeGen/AMDGPU/flat-saddr-store.ll
M llvm/test/CodeGen/AMDGPU/flat-scratch-svs.ll
M llvm/test/CodeGen/AMDGPU/float-sopc-vopc.ll
M llvm/test/CodeGen/AMDGPU/fma.f16.ll
M llvm/test/CodeGen/AMDGPU/fmaximum.ll
M llvm/test/CodeGen/AMDGPU/fmaximum3.v2f16.ll
M llvm/test/CodeGen/AMDGPU/fmaxnum.ll
M llvm/test/CodeGen/AMDGPU/fmed3-cast-combine.ll
M llvm/test/CodeGen/AMDGPU/fmed3.ll
M llvm/test/CodeGen/AMDGPU/fminimum.ll
M llvm/test/CodeGen/AMDGPU/fminimum3.v2f16.ll
M llvm/test/CodeGen/AMDGPU/fminnum.ll
M llvm/test/CodeGen/AMDGPU/fmul-to-ldexp.ll
M llvm/test/CodeGen/AMDGPU/fneg-combines-gfx1200.ll
M llvm/test/CodeGen/AMDGPU/fneg-fabs-v2f32.ll
M llvm/test/CodeGen/AMDGPU/fold-gep-offset.ll
M llvm/test/CodeGen/AMDGPU/fp-min-max-buffer-atomics.ll
M llvm/test/CodeGen/AMDGPU/fp-min-max-buffer-ptr-atomics.ll
M llvm/test/CodeGen/AMDGPU/fp-min-max-image-atomics.ll
M llvm/test/CodeGen/AMDGPU/fp-min-max-num-flat-atomics.ll
M llvm/test/CodeGen/AMDGPU/fp-min-max-num-global-atomics.ll
M llvm/test/CodeGen/AMDGPU/fp64-min-max-buffer-atomics.ll
M llvm/test/CodeGen/AMDGPU/fp64-min-max-buffer-ptr-atomics.ll
M llvm/test/CodeGen/AMDGPU/fp_to_sint.ll
M llvm/test/CodeGen/AMDGPU/fp_to_uint.ll
M llvm/test/CodeGen/AMDGPU/fpenv.ll
M llvm/test/CodeGen/AMDGPU/fptoi.i128.ll
M llvm/test/CodeGen/AMDGPU/fptosi-sat-scalar.ll
M llvm/test/CodeGen/AMDGPU/fptosi-sat-vector.ll
M llvm/test/CodeGen/AMDGPU/fptoui-sat-scalar.ll
M llvm/test/CodeGen/AMDGPU/fptoui-sat-vector.ll
M llvm/test/CodeGen/AMDGPU/fptrunc.f16.ll
M llvm/test/CodeGen/AMDGPU/fptrunc.ll
M llvm/test/CodeGen/AMDGPU/fptrunc.v2f16.no.fast.math.ll
M llvm/test/CodeGen/AMDGPU/freeze.ll
M llvm/test/CodeGen/AMDGPU/fsqrt.f32.ll
M llvm/test/CodeGen/AMDGPU/fsqrt.f64.ll
M llvm/test/CodeGen/AMDGPU/fsub-as-fneg-src-modifier.ll
M llvm/test/CodeGen/AMDGPU/gfx-call-non-gfx-func.ll
M llvm/test/CodeGen/AMDGPU/gfx11-user-sgpr-init16-bug.ll
M llvm/test/CodeGen/AMDGPU/gfx12_scalar_subword_loads.ll
M llvm/test/CodeGen/AMDGPU/global-address.ll
M llvm/test/CodeGen/AMDGPU/global-load-xcnt.ll
M llvm/test/CodeGen/AMDGPU/global-saddr-load.ll
M llvm/test/CodeGen/AMDGPU/gws_agpr.ll
M llvm/test/CodeGen/AMDGPU/indirect-call.ll
M llvm/test/CodeGen/AMDGPU/indirect-reg-read-imm-idx.ll
M llvm/test/CodeGen/AMDGPU/integer-mad-patterns.ll
M llvm/test/CodeGen/AMDGPU/intrinsic-amdgcn-s-alloc-vgpr.ll
M llvm/test/CodeGen/AMDGPU/invalid-addrspacecast.ll
M llvm/test/CodeGen/AMDGPU/invariant-image-load.ll
M llvm/test/CodeGen/AMDGPU/isel-amdgcn-cs-chain-intrinsic-w32.ll
M llvm/test/CodeGen/AMDGPU/isel-amdgcn-cs-chain-intrinsic-w64.ll
M llvm/test/CodeGen/AMDGPU/isel-amdgpu-cs-chain-intrinsic-dyn-vgpr-w32.ll
M llvm/test/CodeGen/AMDGPU/isel-amdgpu-cs-chain-preserve-cc.ll
M llvm/test/CodeGen/AMDGPU/isel-whole-wave-functions.ll
M llvm/test/CodeGen/AMDGPU/issue92561-restore-undef-scc-verifier-error.ll
M llvm/test/CodeGen/AMDGPU/itofp.i128.bf.ll
M llvm/test/CodeGen/AMDGPU/itofp.i128.ll
M llvm/test/CodeGen/AMDGPU/lds-barrier-memoperand.ll
M llvm/test/CodeGen/AMDGPU/lds-global-non-entry-func.ll
M llvm/test/CodeGen/AMDGPU/lds-size.ll
M llvm/test/CodeGen/AMDGPU/literal64.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.add.min.max.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.addrspacecast.nonnull.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.av.load.b128.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.av.store.b128.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.ballot.i64.wave32.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.bitop3.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.buffer.load-last-use.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.buffer.load.lds.err.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.bvh8_intersect_ray.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.class.f16.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.class.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cluster.id.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cluster.load.async.to.lds.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cluster.load.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cluster.workgroup.id.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cluster.workgroup.max.flat.id.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cluster.workgroup.max.id.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cooperative.atomic-agent.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cooperative.atomic-basic.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cooperative.atomic-singlethread.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cooperative.atomic-system.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cooperative.atomic-wavefront.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cooperative.atomic-workgroup.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cubeid.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cubema.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cubesc.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cubetc.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.f16.fp8.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.f32.fp8.err.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.fp8.e5m3.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.fp8.f16.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.fp8.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.off.f32.i4.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.pk.f16.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.pk.i16.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.pk.u16.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.pknorm.i16.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.pknorm.u16.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.pkrtz.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.sat.pk.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.scale.pk.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.scalef32.pk.gfx950.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.scalef32.pk.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.scalef32.pk16.gfx1250.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.scalef32.pk8.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.scalef32.sr.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.scalef32.sr.pk.gfx1250.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.scalef32.sr.pk.gfx950.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.scalef32.sr.pk.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.scalef32.sr.pk16.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.sr.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.dead.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.dispatch.id.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.div.fixup.f16.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.div.fixup.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.dot4.f32.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.ds.add.gs.reg.rtn.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.ds.append.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.ds.atomic.async.barrier.arrive.b64.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.ds.atomic.barrier.arrive.rtn.b64.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.ds.bpermute.fi.b32.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.ds.bpermute.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.ds.bvh.stack.push.pop.rtn.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.ds.bvh.stack.rtn.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.ds.consume.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.ds.gws.barrier-bundle.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.ds.gws.barrier.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.ds.gws.init.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.ds.gws.sema.br.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.ds.gws.sema.p.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.ds.gws.sema.release.all.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.ds.gws.sema.v.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.ds.ordered.add-errors.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.ds.ordered.add.gfx10.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.ds.ordered.add.gfx11.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.ds.ordered.add.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.ds.ordered.swap.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.ds.permute.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.ds.read.tr.gfx950.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.ds.sub.gs.reg.rtn.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.ds.swizzle.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.dual_intersect_ray.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.exp.compr.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.exp.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.exp.row.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.exp2.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.fcmp.w32.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.fcmp.w64.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.fdot2.f16.f16.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.flat.prefetch.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.fma.legacy.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.fmad.ftz.f16.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.fmad.ftz.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.frexp.exp.f16.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.frexp.exp.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.global.atomic.ordered.add.b64.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.global.load.async.to.lds.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.global.load.lds.err.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.global.load.lds.gfx950.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.global.load.lds.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.global.load.tr-w32.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.global.load.tr-w64.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.global.prefetch.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.global.store.async.from.lds.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.groupstaticsize.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.icmp.w32.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.icmp.w64.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.iglp.opt.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.image.atomic.flt.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.image.atomic.noret.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.image.dim.gfx90a.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.image.sample.dim.gfx90a.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.image.sample.g16.a16.dim.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.image.sample.noret.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.init.exec.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.init.exec.wave32.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.init.whole.wave-w32.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.init.whole.wave-w64.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.interp.f16.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.interp.inreg.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.interp.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.intersect_ray.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.inverse.ballot.i32.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.inverse.ballot.i64.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.is.private.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.is.shared.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.kill.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.lds.direct.load.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.lds.param.load.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.load.async.to.lds.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.load.monitor.gfx1250.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.load.to.lds.gfx950.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.load.to.lds.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.load.tr.gfx1250.w32.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.log.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mbcnt.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mfma.bf16.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mfma.gfx90a.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mfma.gfx942.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mfma.gfx950.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mfma.i8.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mfma.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mfma.scale.f32.16x16x128.f8f6f4.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mfma.scale.f32.32x32x64.f8f6f4.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mfma.xf32.gfx942.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mov.dpp.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mulhi.i24.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mulhi.u24.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.perm.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.perm.pk.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.permlane.bcast.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.permlane.down.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.permlane.idx.gen.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.permlane.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.permlane.up.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.permlane.xor.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.permlane16.swap.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.permlane16.var.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.permlane32.swap.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.permlane64.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.pops.exiting.wave.id.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.prng.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.ps.live.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.ptr.buffer.atomic.fadd_rtn_errors.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.quadmask.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.raw.atomic.buffer.load.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.raw.buffer.atomic.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.raw.buffer.load.lds.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.raw.buffer.load.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.raw.ptr.atomic.buffer.load.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.raw.ptr.buffer.atomic.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.raw.ptr.buffer.load.lds.gfx950.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.raw.ptr.buffer.load.lds.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.raw.ptr.buffer.store.nxv2i32.fail.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.raw.tbuffer.load.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.raw.tbuffer.store.d16.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.raw.tbuffer.store.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.readfirstlane.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.readfirstlane.m0.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.readfirstlane.ptr.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.readlane.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.add.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.and.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.fadd.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.fmax.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.fmin.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.fsub.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.max.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.min.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.or.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.sub.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.umax.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.umin.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.xor.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.rsq.clamp.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.rsq.f16.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.rsq.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.s.barrier.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.s.barrier.signal.isfirst.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.s.buffer.prefetch.data.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.s.get.waveid.in.workgroup.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.s.getreg.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.s.memrealtime.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.s.memtime.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.s.monitor.sleep.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.s.nop.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.s.prefetch.data.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.s.prefetch.inst.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.s.sethalt.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.s.setprio.inc.wg.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.s.setprio.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.s.sleep.var.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.s.ttracedata.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.s.wait.event.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.s.wait.gfx12.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.s.wait.gfx1250.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.s.waitcnt.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.sched.barrier.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.sched.group.barrier.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.sendmsg.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.sendmsg.rtn.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.set.inactive.chain.arg.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.sffbh.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.smfmac.gfx950.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.sqrt.f16.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.sqrt.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.struct.atomic.buffer.load.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.struct.buffer.atomic.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.struct.buffer.load.format.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.struct.buffer.load.lds.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.struct.ptr.atomic.buffer.load.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.struct.ptr.buffer.atomic.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.struct.ptr.buffer.load.lds.gfx950.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.struct.ptr.buffer.load.lds.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.struct.tbuffer.load.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.struct.tbuffer.store.d16.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.tensor.load.store.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.udot2.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.unreachable.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.wave.id.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.wave.shuffle.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.wmma.gfx1251.w32.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.wmma.imm.gfx1251.w32.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.wmma.imod.gfx1251.w32.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.workitem.id-unsupported-calling-convention.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.wqm.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.writelane.ll
M llvm/test/CodeGen/AMDGPU/llvm.exp.f64.ll
M llvm/test/CodeGen/AMDGPU/llvm.exp.ll
M llvm/test/CodeGen/AMDGPU/llvm.exp10.f64.ll
M llvm/test/CodeGen/AMDGPU/llvm.exp10.ll
M llvm/test/CodeGen/AMDGPU/llvm.exp2.f64.ll
M llvm/test/CodeGen/AMDGPU/llvm.exp2.ll
M llvm/test/CodeGen/AMDGPU/llvm.fptrunc.round.err.ll
M llvm/test/CodeGen/AMDGPU/llvm.fptrunc.round.ll
M llvm/test/CodeGen/AMDGPU/llvm.frexp.ll
M llvm/test/CodeGen/AMDGPU/llvm.is.fpclass.f16.ll
M llvm/test/CodeGen/AMDGPU/llvm.is.fpclass.ll
M llvm/test/CodeGen/AMDGPU/llvm.ldexp.ll
M llvm/test/CodeGen/AMDGPU/llvm.log.ll
M llvm/test/CodeGen/AMDGPU/llvm.log10.ll
M llvm/test/CodeGen/AMDGPU/llvm.log2.ll
M llvm/test/CodeGen/AMDGPU/llvm.modf.ll
M llvm/test/CodeGen/AMDGPU/llvm.prefetch.ll
M llvm/test/CodeGen/AMDGPU/llvm.sponentry.ll
M llvm/test/CodeGen/AMDGPU/llvm.sqrt.f16.ll
M llvm/test/CodeGen/AMDGPU/load-atomic-flat.ll
M llvm/test/CodeGen/AMDGPU/load-atomic-global.ll
M llvm/test/CodeGen/AMDGPU/load-atomic-local.ll
M llvm/test/CodeGen/AMDGPU/load-range-metadata-sign-bits.ll
M llvm/test/CodeGen/AMDGPU/load-saddr-offset-imm.ll
M llvm/test/CodeGen/AMDGPU/lower-buffer-fat-pointers-nontemporal-metadata.ll
M llvm/test/CodeGen/AMDGPU/lower-work-group-id-intrinsics-hsa.ll
M llvm/test/CodeGen/AMDGPU/lower-work-group-id-intrinsics-opt.ll
M llvm/test/CodeGen/AMDGPU/lower-work-group-id-intrinsics-pal.ll
M llvm/test/CodeGen/AMDGPU/lower-work-group-id-intrinsics.ll
M llvm/test/CodeGen/AMDGPU/lrint.ll
M llvm/test/CodeGen/AMDGPU/lround.ll
M llvm/test/CodeGen/AMDGPU/lshl-add-u64.ll
M llvm/test/CodeGen/AMDGPU/mad-mix-hi.ll
M llvm/test/CodeGen/AMDGPU/mad-mix-lo.ll
M llvm/test/CodeGen/AMDGPU/mad-mix.ll
M llvm/test/CodeGen/AMDGPU/make-buffer-rsrc-lds-fails.ll
M llvm/test/CodeGen/AMDGPU/maximumnum.ll
M llvm/test/CodeGen/AMDGPU/med3-knownbits.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-lds-dma-volatile-and-nontemporal.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-non-volatile.ll
M llvm/test/CodeGen/AMDGPU/memset-param-combinations.ll
M llvm/test/CodeGen/AMDGPU/memset-pattern.ll
M llvm/test/CodeGen/AMDGPU/mfma-bf16-vgpr-cd-select.ll
M llvm/test/CodeGen/AMDGPU/mfma-cd-select.ll
M llvm/test/CodeGen/AMDGPU/mfma-no-register-aliasing.ll
M llvm/test/CodeGen/AMDGPU/mfma-vgpr-cd-select-gfx942.ll
M llvm/test/CodeGen/AMDGPU/mfma-vgpr-cd-select.ll
M llvm/test/CodeGen/AMDGPU/minimummaximum.ll
M llvm/test/CodeGen/AMDGPU/minimumnum.ll
M llvm/test/CodeGen/AMDGPU/minmax.ll
M llvm/test/CodeGen/AMDGPU/mixed-vmem-types.ll
M llvm/test/CodeGen/AMDGPU/module-lds-false-sharing.ll
M llvm/test/CodeGen/AMDGPU/nor-divergent-lanemask.ll
M llvm/test/CodeGen/AMDGPU/offset-split-flat.ll
M llvm/test/CodeGen/AMDGPU/offset-split-global.ll
M llvm/test/CodeGen/AMDGPU/overlapping-tuple-copy-implicit-op-failure.ll
M llvm/test/CodeGen/AMDGPU/packed-fneg-fsub-fp16.ll
M llvm/test/CodeGen/AMDGPU/packed-fp32.ll
M llvm/test/CodeGen/AMDGPU/packed-fp64.ll
M llvm/test/CodeGen/AMDGPU/pal-simple-indirect-call.ll
M llvm/test/CodeGen/AMDGPU/permlane16_opsel.ll
M llvm/test/CodeGen/AMDGPU/ps-shader-arg-count.ll
M llvm/test/CodeGen/AMDGPU/pseudo-scalar-transcendental.ll
M llvm/test/CodeGen/AMDGPU/ptr-buffer-alias-scheduling.ll
M llvm/test/CodeGen/AMDGPU/read-register-invalid-register.ll
M llvm/test/CodeGen/AMDGPU/read_register.ll
M llvm/test/CodeGen/AMDGPU/readcyclecounter.ll
M llvm/test/CodeGen/AMDGPU/readsteadycounter.ll
M llvm/test/CodeGen/AMDGPU/remat-fp64-constants.ll
M llvm/test/CodeGen/AMDGPU/ret.ll
M llvm/test/CodeGen/AMDGPU/returnaddress.ll
M llvm/test/CodeGen/AMDGPU/roundeven.ll
M llvm/test/CodeGen/AMDGPU/rsq.f64.ll
M llvm/test/CodeGen/AMDGPU/s-barrier.ll
M llvm/test/CodeGen/AMDGPU/s-wakeup-barrier.ll
M llvm/test/CodeGen/AMDGPU/scalar-float-sop1.ll
M llvm/test/CodeGen/AMDGPU/scalar-float-sop2.ll
M llvm/test/CodeGen/AMDGPU/scale-offset-flat.ll
M llvm/test/CodeGen/AMDGPU/scale-offset-global.ll
M llvm/test/CodeGen/AMDGPU/scale-offset-scratch.ll
M llvm/test/CodeGen/AMDGPU/scale-offset-smem.ll
M llvm/test/CodeGen/AMDGPU/scratch-pointer-sink.ll
M llvm/test/CodeGen/AMDGPU/sgpr-count-graphics.ll
M llvm/test/CodeGen/AMDGPU/shlN_add.ll
M llvm/test/CodeGen/AMDGPU/shrink-add-sub-constant.ll
M llvm/test/CodeGen/AMDGPU/spill-vgpr-block.ll
M llvm/test/CodeGen/AMDGPU/stackguard.ll
M llvm/test/CodeGen/AMDGPU/stacksave_stackrestore.invalid.ll
M llvm/test/CodeGen/AMDGPU/store-atomic-flat.ll
M llvm/test/CodeGen/AMDGPU/store-atomic-global.ll
M llvm/test/CodeGen/AMDGPU/store-atomic-local.ll
M llvm/test/CodeGen/AMDGPU/strict_fadd.f16.ll
M llvm/test/CodeGen/AMDGPU/strict_fadd.f32.ll
M llvm/test/CodeGen/AMDGPU/strict_fadd.f64.ll
M llvm/test/CodeGen/AMDGPU/strict_fmul.f16.ll
M llvm/test/CodeGen/AMDGPU/strict_fmul.f32.ll
M llvm/test/CodeGen/AMDGPU/strict_fmul.f64.ll
M llvm/test/CodeGen/AMDGPU/strict_fsub.f16.ll
M llvm/test/CodeGen/AMDGPU/strict_fsub.f32.ll
M llvm/test/CodeGen/AMDGPU/strict_fsub.f64.ll
M llvm/test/CodeGen/AMDGPU/strict_ldexp.f16.ll
M llvm/test/CodeGen/AMDGPU/strict_ldexp.f32.ll
M llvm/test/CodeGen/AMDGPU/strict_ldexp.f64.ll
M llvm/test/CodeGen/AMDGPU/swizzle.bit.extract.ll
M llvm/test/CodeGen/AMDGPU/tail-call-amdgpu-gfx.ll
M llvm/test/CodeGen/AMDGPU/target-mem-intrinsic-metadata.ll
M llvm/test/CodeGen/AMDGPU/trap.ll
M llvm/test/CodeGen/AMDGPU/twoaddr-constrain.ll
M llvm/test/CodeGen/AMDGPU/unaligned-buffer.ll
M llvm/test/CodeGen/AMDGPU/unsupported-cs-chain.ll
M llvm/test/CodeGen/AMDGPU/unsupported-image-a16.ll
M llvm/test/CodeGen/AMDGPU/unsupported-image-g16.ll
M llvm/test/CodeGen/AMDGPU/v_pack.ll
M llvm/test/CodeGen/AMDGPU/v_sat_pk_u8_i16.ll
M llvm/test/CodeGen/AMDGPU/vector-reduce-add.ll
M llvm/test/CodeGen/AMDGPU/vector-reduce-and.ll
M llvm/test/CodeGen/AMDGPU/vector-reduce-fadd.ll
M llvm/test/CodeGen/AMDGPU/vector-reduce-fmax.ll
M llvm/test/CodeGen/AMDGPU/vector-reduce-fmin.ll
M llvm/test/CodeGen/AMDGPU/vector-reduce-fminimum.ll
M llvm/test/CodeGen/AMDGPU/vector-reduce-fmul.ll
M llvm/test/CodeGen/AMDGPU/vector-reduce-mul.ll
M llvm/test/CodeGen/AMDGPU/vector-reduce-or.ll
M llvm/test/CodeGen/AMDGPU/vector-reduce-smax.ll
M llvm/test/CodeGen/AMDGPU/vector-reduce-smin.ll
M llvm/test/CodeGen/AMDGPU/vector-reduce-umax.ll
M llvm/test/CodeGen/AMDGPU/vector-reduce-umin.ll
M llvm/test/CodeGen/AMDGPU/vector-reduce-xor.ll
M llvm/test/CodeGen/AMDGPU/wait-before-stores-with-scope_sys.ll
M llvm/test/CodeGen/AMDGPU/wave_dispatch_regs.ll
M llvm/test/CodeGen/AMDGPU/whole-wave-functions.ll
M llvm/test/CodeGen/AMDGPU/workgroup-id-in-arch-sgprs.ll
M llvm/test/CodeGen/AMDGPU/workitem-intrinsic-opts.ll
M llvm/test/CodeGen/AMDGPU/write-register-invalid-register.ll
M llvm/test/CodeGen/AMDGPU/write_register.ll
Log Message:
-----------
AMDGPU/GlobalISel: Remove -new-reg-bank-select option (#203929)
AMDGPU's -global-isel pipeline that uses AMDGPURegBankSelect and
AMDGPURegBankLegalize, previously -global-isel -new-reg-bank-select,
is now the default -global-isel pipeline.
Remove -new-reg-bank-select option from the compiler.
Remove -new-reg-bank-select from all llvm regression tests.
Edit a couple comments to reference RegBankLegalize instead of
-new-reg-bank-select.
Commit: f3fb6fe3099887ce1538c1dbbe3694f740f9f126
https://github.com/llvm/llvm-project/commit/f3fb6fe3099887ce1538c1dbbe3694f740f9f126
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M clang/lib/AST/ByteCode/Interp.cpp
M clang/test/AST/ByteCode/new-delete.cpp
Log Message:
-----------
[clang][bytecode] Check for block pointers in Free() (#205043)
We need a block pointer here for the following operations, and non-block
pointers aren't valid anyway.
Commit: 4fd464061536f1bb7d12ee9524712d202c2b4488
https://github.com/llvm/llvm-project/commit/4fd464061536f1bb7d12ee9524712d202c2b4488
Author: Ryotaro Kasuga <kasuga.ryotaro at fujitsu.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M llvm/lib/Analysis/DependenceAnalysis.cpp
A llvm/test/Analysis/DependenceAnalysis/find-gcd-overflow.ll
Log Message:
-----------
[DA] Add overflow check before calculating absolute value (#201964)
In findGCD, we call APInt::abs, which can overflow when the value is a
signed minimum one. Such overflow can lead miscompilation, so this patch
adds an overflow check for absolute value calculations and bail out
early if it actually overflows.
Fix #201559.
Commit: 8b723503336f094afb92f00cb73378321914f6cf
https://github.com/llvm/llvm-project/commit/8b723503336f094afb92f00cb73378321914f6cf
Author: Donát Nagy <donat.nagy at ericsson.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M clang/lib/StaticAnalyzer/Core/ExprEngine.cpp
Log Message:
-----------
[NFC][analyzer] Eliminate some simple node builders (#204187)
Replace four `NodeBuilder`s with direct use of the `makeNode` method
family. This is part of my commit series that simplifies the engine by
gradually eliminating the class `NodeBuilder`.
Commit: b6a0f6c79fee527a5ef2826e30949cd8f27db889
https://github.com/llvm/llvm-project/commit/b6a0f6c79fee527a5ef2826e30949cd8f27db889
Author: Jiaqi He <heturing at gmail.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M clang/lib/Analysis/LifetimeSafety/Checker.cpp
M clang/test/Sema/LifetimeSafety/lifetimebound-violation.cpp
Log Message:
-----------
[LifetimeSafety] resolved lifetimeBound violation in constructor (#204797)
Fix https://github.com/llvm/llvm-project/issues/203839.
Constructor body does not produce `ReturnEscapeFact`, but a constructor
parameter marked [[clang::lifetimebound]] may still be valid if it
escapes into a field of the constructed object.
Update the `LifetimeBound` logic to accept `FieldEscapeFact` for
constructors, and add a test case for this pattern.
Commit: b3022110d84dabf5ddbbecd7db4e943791d5320c
https://github.com/llvm/llvm-project/commit/b3022110d84dabf5ddbbecd7db4e943791d5320c
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M clang/lib/Driver/Driver.cpp
M clang/lib/Driver/ToolChains/AMDGPU.cpp
M clang/lib/Driver/ToolChains/CommonArgs.cpp
M clang/lib/Driver/ToolChains/HIPAMD.cpp
Log Message:
-----------
clang/AMDGPU: Use effective triple instead of raw toolchain triple (#205054)
Start using the effective triple instead of the raw toolchain triple.
For the moment this is NFC, but will change when new uses of the subarch
field are introduced.
Commit: c5f4abf97938cc1d4615baf1f45bef4e38e0dd91
https://github.com/llvm/llvm-project/commit/c5f4abf97938cc1d4615baf1f45bef4e38e0dd91
Author: Sushant Gokhale <sgokhale at nvidia.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
A llvm/test/Transforms/SLPVectorizer/X86/revec-ordered-reductions.ll
M llvm/test/Transforms/SLPVectorizer/revec.ll
Log Message:
-----------
[SLP][Revec] Fix SLP crash when trying to fold trailing scalars into the reduced value (#203477)
Cost modelling change introduced by commit SHA f15666d is enabling revec
of test shown in the above issue. This is introducing a crash as the
reduced value(a scalar) is being added to a vector tail value.
Patch tries to address this.
Fixes #203195
Commit: f8cb6be61b995fc64d696c42fdb3eb88d2ed3a9e
https://github.com/llvm/llvm-project/commit/f8cb6be61b995fc64d696c42fdb3eb88d2ed3a9e
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M clang/lib/Driver/ToolChains/Clang.cpp
Log Message:
-----------
clang: Use the effective triple string for offload jobs (#205065)
Track the future effective triple for the job, rather than
the toolchain's default triple. In the future this will
change the result when amdgpu starts adjusting the triples
to contain subarches.
Commit: 6019657c6a4528e92887bec4b52222f9c0fc6a8b
https://github.com/llvm/llvm-project/commit/6019657c6a4528e92887bec4b52222f9c0fc6a8b
Author: Joseph Huber <huberjn at outlook.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M offload/ci/openmp-offload-amdgpu-libc-runtime.py
Log Message:
-----------
Reapply "[AMDGPU] Add compiler-rt checks for the GPU runtime" (#204898)
The original issue should've been solved by
https://github.com/llvm/llvm-project/pull/204694
Reverts llvm/llvm-project#204370
Commit: 4f5c444227c76c41146b7a91c1a1cab460c74112
https://github.com/llvm/llvm-project/commit/4f5c444227c76c41146b7a91c1a1cab460c74112
Author: Lang Hames <lhames at gmail.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M orc-rt/include/orc-rt/QueueingRunner.h
M orc-rt/unittests/InProcessControllerAccessTest.cpp
M orc-rt/unittests/QueueingRunnerTest.cpp
M orc-rt/unittests/SessionTest.cpp
Log Message:
-----------
[orc-rt] Default QueueingRunner to a synchronized queue. (#205088)
Adds orc_rt::detail::SynchronizedDeque<T>, a mutex-protected deque whose
pop_front / pop_back return std::optional<T> (std::nullopt indicates the
queue is empty), and makes it QueueingRunner's default WorkQueue type.
Using a synchronized queue type allows QueueingRunner to be used in
multi-threaded contexts.
Updates SessionTest and InProcessControllerAccessTest to use the new
default, and extends QueueingRunnerTest to cover the new contract.
Commit: 8616fad2fa5c772b7ebc254335e7c6be858a5182
https://github.com/llvm/llvm-project/commit/8616fad2fa5c772b7ebc254335e7c6be858a5182
Author: Sergei Barannikov <barannikov88 at gmail.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M lldb/source/Target/Memory.cpp
Log Message:
-----------
[lldb] Avoid tautological copying of a newly created object (NFC) (#204998)
Commit: 27af208fe5cbd7d6b9ba24b22d75f1abba42c111
https://github.com/llvm/llvm-project/commit/27af208fe5cbd7d6b9ba24b22d75f1abba42c111
Author: Ivan Kosarev <ivan.kosarev at amd.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M llvm/test/MC/AMDGPU/gfx12_asm_vop3_dpp16.s
A llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3_dpp16-fake.txt
R llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3_dpp16.txt
Log Message:
-----------
[AMDGPU][NFC] Templatise and roundtrip gfx12_asm_vop3_dpp16.s (#203953)
This is effectively the changes between the non-template versions of
gfx11/12_asm_vop3_dpp16.s applied on top of the templatised
gfx11_asm_vop3_dpp16.s.
Commit: a7808183c742b88065e912dd0b98ab446b01b7c0
https://github.com/llvm/llvm-project/commit/a7808183c742b88065e912dd0b98ab446b01b7c0
Author: Ivan Kosarev <ivan.kosarev at amd.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M llvm/test/MC/AMDGPU/gfx13_asm_vop3_dpp16.s
Log Message:
-----------
[AMDGPU][NFC] Templatise and roundtrip gfx13_asm_vop3_dpp16.s (#204849)
Again, this is based on the templatised version of
gfx12_asm_vop3_dpp16.s with the GFX13-specific changes re-applied on top
of it.
gfx13_dasm_vop3_dpp16.txt was never upstreamed, so no changes for the
disassembler side.
Commit: 06dcba660904e041cca1d245e674f040bb04f454
https://github.com/llvm/llvm-project/commit/06dcba660904e041cca1d245e674f040bb04f454
Author: Tim <timothy.smith at hpe.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M flang/include/flang/Optimizer/Transforms/Passes.td
M flang/lib/Optimizer/Passes/Pipelines.cpp
M flang/lib/Optimizer/Transforms/AddDebugInfo.cpp
A flang/test/Transforms/debug-fake-use-multiple-dimensions.fir
A flang/test/Transforms/debug-fake-use-multiple-returns.fir
M flang/test/Transforms/debug-fake-use.fir
Log Message:
-----------
[flang][debug] Add fake use ops for dynamic array dimension variables (#200061)
In cases where the upper or lower bounds of a dynamic array are not
explicitly referenced in code, flang can optimize away the internal
variables that represent these values. This causes missing values to
appear in the debugger when examining the dynamic array's type. Adding
an llvm.fake.use op for each bound preserves it for use by a debugger,
similar to the fix for #185432.
Resolves #119474
Commit: b0c2017bcff5ae07fe44d3271a269e50e1c98cbd
https://github.com/llvm/llvm-project/commit/b0c2017bcff5ae07fe44d3271a269e50e1c98cbd
Author: Adam Siemieniuk <adam.siemieniuk at intel.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M mlir/lib/Dialect/X86/Transforms/VectorContractToAMXDotProduct.cpp
M mlir/test/Dialect/X86/AMX/vector-contract-to-tiled-dp.mlir
Log Message:
-----------
[mlir][x86] Fail on missing read source operation (#205077)
Adds an extra check to AMX lowering to fail gracefully when a source
operation for contraction input data is not found.
Commit: a7e3eda221412f798ae448c293217f49f4a5ebed
https://github.com/llvm/llvm-project/commit/a7e3eda221412f798ae448c293217f49f4a5ebed
Author: Alexis Engelke <engelke at in.tum.de>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M llvm/include/llvm/Support/Allocator.h
M llvm/unittests/Support/AllocatorTest.cpp
Log Message:
-----------
Revert "[Allocator] Keep bump pointer at a minimum alignment" (#205091)
Arithmetic on nullptr is UB and gets flagged by UBSan.
Reverts llvm/llvm-project#203718
Commit: d8657e1bb196d52892365da5cf917f8ed90932f8
https://github.com/llvm/llvm-project/commit/d8657e1bb196d52892365da5cf917f8ed90932f8
Author: Sean Perry <perry at ca.ibm.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M llvm/unittests/CMakeLists.txt
Log Message:
-----------
Don't test JIT's on z/OS (#196580)
The JIT's aren't supported on z/OS so no need to run the unit tests on
them.
Commit: 685af3ab083c71c32172fb7116176b55a6c26b25
https://github.com/llvm/llvm-project/commit/685af3ab083c71c32172fb7116176b55a6c26b25
Author: Akshay Kumar Dubey <123586645+akshaydubey05 at users.noreply.github.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M clang-tools-extra/clangd/tool/ClangdMain.cpp
Log Message:
-----------
[clangd] Log environment variables that influence compilation at startup (#204990)
When users face missing system include issues (especially on Windows),
it's difficult to diagnose whether the problem is caused by missing
environment variables like `INCLUDE`, `CPATH`, etc.
This patch logs the values of environment variables that influence how the
compiler finds headers and libraries, at startup alongside the existing
version/PID/argv logs. Only variables that are actually set are printed.
Variables logged:
- MSVC (set by vcvarsall.bat): `INCLUDE`, `LIB`, `LIBPATH`, `CL`, `_CL_`
- GCC/Clang: `CPATH`, `C_INCLUDE_PATH`, `CPLUS_INCLUDE_PATH`,
`OBJC_INCLUDE_PATH`, `LIBRARY_PATH`, `GCC_EXEC_PREFIX`
Fixes https://github.com/clangd/clangd/issues/2657
Commit: 079683b7e1d0cb39cbb2205d38425d56030d31b2
https://github.com/llvm/llvm-project/commit/079683b7e1d0cb39cbb2205d38425d56030d31b2
Author: Reinhard Stahn <rainij36 at proton.me>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M mlir/include/mlir/Dialect/SCF/IR/SCFOps.td
Log Message:
-----------
[mlir][scf] Tighten description of scf.for (#203713)
The previous description was vague in the case that the
one-past-the-last value for the induction variable is not representable
in the used integer type. Current passes implicitly exploit this by
implementing non-equivalent semantics (e.g. terminating vs
non-terminating loops).
We tighten the specification of `scf.for` by first stating the desired
ideal semantics, but deeming overflow undefined behavior. This fixes all
inconsistencies I am aware of.
Documentation only; no behavioral change.
Commit: 8062e6dc822b7832d8d988bd9cc70a04a327848a
https://github.com/llvm/llvm-project/commit/8062e6dc822b7832d8d988bd9cc70a04a327848a
Author: Jay Foad <jay.foad at amd.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp
M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp
M llvm/lib/Target/AMDGPU/R600ISelLowering.cpp
M llvm/lib/Target/AMDGPU/SOPInstructions.td
M llvm/lib/Target/AMDGPU/VOP2Instructions.td
M llvm/test/CodeGen/AMDGPU/amdgpu-codegenprepare-idiv.ll
M llvm/test/CodeGen/AMDGPU/bypass-div.ll
M llvm/test/CodeGen/AMDGPU/carryout-selection.ll
M llvm/test/CodeGen/AMDGPU/llvm.mulo.ll
M llvm/test/CodeGen/AMDGPU/sdiv64.ll
M llvm/test/CodeGen/AMDGPU/srem.ll
M llvm/test/CodeGen/AMDGPU/srem64.ll
M llvm/test/CodeGen/AMDGPU/udiv64.ll
M llvm/test/CodeGen/AMDGPU/urem64.ll
M llvm/test/CodeGen/AMDGPU/wave32.ll
Log Message:
-----------
[AMDGPU] Remove support for ADDC/ADDE/SUBC/SUBE DAG nodes (#205082)
Since #204694 we should be using UADDO/USUBO/UADDO_CARRY/USUBO_CARRY
instead.
Commit: 4661c0248ca5621b05808e25605b7adeb6c078a8
https://github.com/llvm/llvm-project/commit/4661c0248ca5621b05808e25605b7adeb6c078a8
Author: gretay-amd <Greta.Yorsh at amd.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPULaneMaskUtils.h
M llvm/lib/Target/AMDGPU/SIFixSGPRCopies.cpp
M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
M llvm/lib/Target/AMDGPU/SIInstructions.td
M llvm/lib/Target/AMDGPU/SIOptimizeExecMasking.cpp
M llvm/test/CodeGen/AMDGPU/buffer-fat-pointer-atomicrmw-fadd.ll
M llvm/test/CodeGen/AMDGPU/buffer-fat-pointer-atomicrmw-fmax.ll
M llvm/test/CodeGen/AMDGPU/buffer-fat-pointer-atomicrmw-fmin.ll
M llvm/test/CodeGen/AMDGPU/issue92561-restore-undef-scc-verifier-error.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.bvh8_intersect_ray.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.dual_intersect_ray.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.raw.ptr.buffer.atomic.fadd.v2bf16.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.struct.buffer.load.format.v3f16.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.struct.ptr.buffer.atomic.fadd.v2bf16.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.struct.ptr.buffer.atomic.fadd_nortn.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.struct.ptr.buffer.atomic.fadd_rtn.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.struct.ptr.buffer.atomic.fmax.f32.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.struct.ptr.buffer.atomic.fmin.f32.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.struct.ptr.buffer.load.format.v3f16.ll
M llvm/test/CodeGen/AMDGPU/move-to-valu-vimage-vsample.ll
M llvm/test/CodeGen/AMDGPU/mubuf-legalize-operands-non-ptr-intrinsics.ll
M llvm/test/CodeGen/AMDGPU/mubuf-legalize-operands.ll
M llvm/test/CodeGen/AMDGPU/mubuf-legalize-operands.mir
M llvm/test/CodeGen/AMDGPU/vgpr-descriptor-waterfall-loop-idom-update.ll
M llvm/test/CodeGen/AMDGPU/vgpr-liverange-ir.ll
M llvm/test/CodeGen/AMDGPU/vgpr-liverange.ll
Log Message:
-----------
[AMDGPU] Waterfall loop codegen improvement in SIInstrInfo (#192415)
When generating waterfall loops, use the instructions `v_cmpx_eq_*` and
`s_andn2_wrexec_*` as recommended for recent architectures, instead of
`v_cmp_eq_*` and `s_and saveexec`.
This PR only updates waterfall loop code generation in
`SIInstrInfo.cpp`. Other places that generated waterfall loops can be
handled separately.
- Add new lane mask constant for `s_andn2_wrexec`
- Set `isTerminator` for `v_cmpx_eq_{u32,u64}_e32`
- Fix test `mubuf-legalize-operands.mir` to track liveness needed for
verifying phi nodes
- Update .ll and .mir tests to accept the new instruction sequences
Assisted-by: Claude
Commit: bcae37f4a8e8d163e34080186b789a6cb0ae91d1
https://github.com/llvm/llvm-project/commit/bcae37f4a8e8d163e34080186b789a6cb0ae91d1
Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
A llvm/test/tools/llubi/reset_return_value_slot.ll
M llvm/tools/llubi/lib/Interpreter.cpp
Log Message:
-----------
[llubi] Reset retval when return type is void (#205107)
In `returnFromCallee`, the return value is moved out from
`CurrentFrame->RetVal`. So `visitReturnInst` is always responsible for
setting a valid value.
Closes https://github.com/llvm/llvm-project/issues/204992
Commit: fe5ad843d83aef5846862064551fb8e5fc8e9048
https://github.com/llvm/llvm-project/commit/fe5ad843d83aef5846862064551fb8e5fc8e9048
Author: lijinpei-amd <jinpli at amd.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M llvm/lib/Transforms/IPO/AttributorAttributes.cpp
A llvm/test/Transforms/Attributor/callbr.ll
Log Message:
-----------
[Attributor] Do not delete side-effect-free terminator (#205052)
Fixes: https://github.com/llvm/llvm-project/issues/192012
Commit: 4e6976b70b52f2f84b2b4f28c7badbfb401d302e
https://github.com/llvm/llvm-project/commit/4e6976b70b52f2f84b2b4f28c7badbfb401d302e
Author: Walter Lee <49250218+googlewalt at users.noreply.github.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M clang/test/AST/ByteCode/command-line-options.cpp
Log Message:
-----------
Fix test on read-only file systems (#205108)
Fixes 25e4057d49055a645dc6a51ae1f40ac647aaed5b.
Use the -fsyntax-only flag instead of -c. This performs the necessary
parsing and diagnostics verification (the actual intent of this test)
without attempting to emit an object file.
Commit: 6b59e09d1443b5c3905daa457d241487eb9bfc3f
https://github.com/llvm/llvm-project/commit/6b59e09d1443b5c3905daa457d241487eb9bfc3f
Author: Joseph Huber <huberjn at outlook.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M clang/lib/Driver/Driver.cpp
M clang/test/Driver/hip-binding.hip
M clang/test/Driver/hip-device-compile.hip
M clang/test/Driver/hip-phases.hip
M clang/test/Driver/hip-toolchain-no-rdc.hip
Log Message:
-----------
[HIP] Fix `--no-offload-new-driver` behavior after #201457 (#205094)
Summary:
https://github.com/llvm/llvm-project/pull/201457 changed the default for
all targets. Even though the old offload driver is getting removed soon
we shouldn't break it for the LLVM23 release. This simply reverts to the
original behavior, the old driver builds its jobs manually so we can
just turn off this one specific case unless the user forced it.
Commit: 5b687a501bd26cc46d6b52582aa926acc0d3564e
https://github.com/llvm/llvm-project/commit/5b687a501bd26cc46d6b52582aa926acc0d3564e
Author: Walter Lee <49250218+googlewalt at users.noreply.github.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M clang-tools-extra/clangd/test/did-change-configuration-params.test
Log Message:
-----------
Be more permissive on spaces in command line argument parsing (#205111)
Fixes c888371ff0a3e10f8472676dc992f4347fca58d9.
This change properly accommodates both presence and absence of extra
trailing arguments like -resource-dir.
Commit: c79333e16d4c567c4ebeccb878ac2fc40fed687d
https://github.com/llvm/llvm-project/commit/c79333e16d4c567c4ebeccb878ac2fc40fed687d
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M flang/lib/Semantics/check-omp-atomic.cpp
M flang/lib/Semantics/check-omp-loop.cpp
M flang/lib/Semantics/check-omp-structure.cpp
M flang/lib/Semantics/check-omp-structure.h
M flang/lib/Semantics/check-omp-variant.cpp
Log Message:
-----------
[flang][OpenMP] Centralize pushing/popping directive context (#204924)
Put calls to PushContextAndClauseSets to the Enter function for
OpenMPConstruct and OpenMPDeclarativeConstruct, and popping the context
to the corresponding Leave functions. This moves most of the context
handling to the top-level AST entries. This will allow more centralized
verification of common clause properties in the future.
Commit: 6e4e181c83d076bb8e4c208ae28817f3900b23fa
https://github.com/llvm/llvm-project/commit/6e4e181c83d076bb8e4c208ae28817f3900b23fa
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M clang/cmake/modules/ClangConfig.cmake.in
A cmake/Modules/GetTripleCMakeSystemName.cmake
A cmake/Modules/NormalizeTriple.cmake
M llvm/cmake/modules/LLVMConfig.cmake.in
M llvm/cmake/modules/LLVMExternalProjectUtils.cmake
M llvm/runtimes/CMakeLists.txt
M runtimes/CMakeLists.txt
Log Message:
-----------
runtimes: Pass CMAKE_SYSTEM_NAME based on target triple (#203504)
Compute the cmake system name from the target triple, rather
than passing through the host's. This is primarily to stop
forwarding OSX specific cmake variables.
This fixes build failures when trying to build gpu libc on mac
hosts. Previously it would fail on several issues, starting with
an unused argument -mmacos-version-min error, followed by other
errors caused by passing -isysroot.
Secondarily, restrict the cmake imported targets when cross compiling.
Without this, the amdgpu build prints many cmake warnings about the
target not supporting shared libraries.
Claude did most of the actual work, though it required quite a few
rounds of prodding to get it into the right place. In particular it
took care of handling all of the cmake platform recognized names from
the triple.
Co-authored-by: Claude Opus 4.6 <noreply at anthropic.com>
Commit: 1ba7c9677649ed5072205c63532c1c2d5da38e13
https://github.com/llvm/llvm-project/commit/1ba7c9677649ed5072205c63532c1c2d5da38e13
Author: Koakuma <koachan at protonmail.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M llvm/lib/Target/Sparc/SparcISelDAGToDAG.cpp
M llvm/lib/Target/Sparc/SparcISelLowering.cpp
M llvm/lib/Target/Sparc/SparcISelLowering.h
M llvm/lib/Target/Sparc/SparcInstr64Bit.td
M llvm/lib/Target/Sparc/SparcInstrInfo.td
M llvm/test/CodeGen/SPARC/bswap.ll
Log Message:
-----------
[SPARC] Use hardware byteswapper when we have V9 (#191720)
On V9 processors we have endianness-adjusted memory operations, that can
be used to implement BSWAPs.
Use those instructions whenever possible to reduce code size.
Commit: e07c1e710ccf0be64140bd5774ba8dccce505bfd
https://github.com/llvm/llvm-project/commit/e07c1e710ccf0be64140bd5774ba8dccce505bfd
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M flang/lib/Semantics/check-omp-structure.cpp
M llvm/include/llvm/Frontend/OpenMP/OMP.td
Log Message:
-----------
[flang][OpenMP] Move unique clauses to allowedOnceClauses in OMP.td (#204995)
Many unique clauses were listed in "allowedClauses", which turned off
the single-occurrence check in flang. Move these clauses to the right
category to enable this check.
One exception to this is the IF clause: the IF clause is unique for all
non-compound directives, but is repeatable on compound ones with the
restriction that at most one IF clause can apply to any of the
constituents. This restriction is currently not enforced correctly in
flang, and so the IF clause was left unchanged.
Although this change is applied to a file shared between flang and
clang, clang does not use these categories for its checks, and hence is
not affected by this patch.
Commit: 237fbfd7cfbd2a2a4f0b171e493aa85b8506065a
https://github.com/llvm/llvm-project/commit/237fbfd7cfbd2a2a4f0b171e493aa85b8506065a
Author: Yaxun (Sam) Liu <yaxun.liu at amd.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M llvm/include/llvm/CodeGen/LiveInterval.h
M llvm/lib/CodeGen/LiveInterval.cpp
M llvm/lib/CodeGen/LiveIntervals.cpp
A llvm/test/CodeGen/AMDGPU/sched-handleMoveUp-dead-def-join.mir
Log Message:
-----------
[CodeGen] Join live range segments after dead def move (#204648)
Moving a dead def upward can retag a following live-range segment to the
same value as the previous segment. That leaves adjacent same-value
segments, which live range verification rejects.
Add a shared LiveRange helper for merging adjacent same-value segments.
Use it in the existing value-number merge code and after retagging later
segments for a moved dead def. Add an AMDGPU scheduler regression test.
Commit: 448b725bb78bc288c5f6e3ad27856c92902f6537
https://github.com/llvm/llvm-project/commit/448b725bb78bc288c5f6e3ad27856c92902f6537
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M clang/include/clang/Basic/OffloadArch.h
M clang/include/clang/Driver/Action.h
M clang/include/clang/Driver/Compilation.h
M clang/include/clang/Driver/Driver.h
M clang/include/clang/Driver/Job.h
M clang/include/clang/Driver/SanitizerArgs.h
M clang/include/clang/Driver/ToolChain.h
M clang/lib/Driver/Action.cpp
M clang/lib/Driver/Compilation.cpp
M clang/lib/Driver/Driver.cpp
M clang/lib/Driver/SanitizerArgs.cpp
M clang/lib/Driver/ToolChain.cpp
M clang/lib/Driver/ToolChains/AIX.cpp
M clang/lib/Driver/ToolChains/AIX.h
M clang/lib/Driver/ToolChains/AMDGPU.cpp
M clang/lib/Driver/ToolChains/AMDGPU.h
M clang/lib/Driver/ToolChains/AMDGPUOpenMP.cpp
M clang/lib/Driver/ToolChains/AMDGPUOpenMP.h
M clang/lib/Driver/ToolChains/AVR.cpp
M clang/lib/Driver/ToolChains/AVR.h
M clang/lib/Driver/ToolChains/BareMetal.cpp
M clang/lib/Driver/ToolChains/BareMetal.h
M clang/lib/Driver/ToolChains/CSKYToolChain.cpp
M clang/lib/Driver/ToolChains/CSKYToolChain.h
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/lib/Driver/ToolChains/CommonArgs.cpp
M clang/lib/Driver/ToolChains/CrossWindows.cpp
M clang/lib/Driver/ToolChains/CrossWindows.h
M clang/lib/Driver/ToolChains/Cuda.cpp
M clang/lib/Driver/ToolChains/Cuda.h
M clang/lib/Driver/ToolChains/Darwin.cpp
M clang/lib/Driver/ToolChains/Darwin.h
M clang/lib/Driver/ToolChains/Flang.cpp
M clang/lib/Driver/ToolChains/Flang.h
M clang/lib/Driver/ToolChains/FreeBSD.cpp
M clang/lib/Driver/ToolChains/FreeBSD.h
M clang/lib/Driver/ToolChains/Fuchsia.cpp
M clang/lib/Driver/ToolChains/Fuchsia.h
M clang/lib/Driver/ToolChains/Gnu.cpp
M clang/lib/Driver/ToolChains/Gnu.h
M clang/lib/Driver/ToolChains/HIPAMD.cpp
M clang/lib/Driver/ToolChains/HIPAMD.h
M clang/lib/Driver/ToolChains/HIPSPV.cpp
M clang/lib/Driver/ToolChains/HIPSPV.h
M clang/lib/Driver/ToolChains/HIPUtility.cpp
M clang/lib/Driver/ToolChains/HLSL.cpp
M clang/lib/Driver/ToolChains/HLSL.h
M clang/lib/Driver/ToolChains/Haiku.cpp
M clang/lib/Driver/ToolChains/Haiku.h
M clang/lib/Driver/ToolChains/Hexagon.cpp
M clang/lib/Driver/ToolChains/Hexagon.h
M clang/lib/Driver/ToolChains/Linux.cpp
M clang/lib/Driver/ToolChains/Linux.h
M clang/lib/Driver/ToolChains/MSP430.cpp
M clang/lib/Driver/ToolChains/MSP430.h
M clang/lib/Driver/ToolChains/MSVC.cpp
M clang/lib/Driver/ToolChains/MSVC.h
M clang/lib/Driver/ToolChains/Managarm.cpp
M clang/lib/Driver/ToolChains/Managarm.h
M clang/lib/Driver/ToolChains/MinGW.cpp
M clang/lib/Driver/ToolChains/MinGW.h
M clang/lib/Driver/ToolChains/NetBSD.cpp
M clang/lib/Driver/ToolChains/NetBSD.h
M clang/lib/Driver/ToolChains/OHOS.cpp
M clang/lib/Driver/ToolChains/OHOS.h
M clang/lib/Driver/ToolChains/OpenBSD.cpp
M clang/lib/Driver/ToolChains/OpenBSD.h
M clang/lib/Driver/ToolChains/PS4CPU.cpp
M clang/lib/Driver/ToolChains/PS4CPU.h
M clang/lib/Driver/ToolChains/SPIRVOpenMP.cpp
M clang/lib/Driver/ToolChains/SPIRVOpenMP.h
M clang/lib/Driver/ToolChains/SYCL.cpp
M clang/lib/Driver/ToolChains/SYCL.h
M clang/lib/Driver/ToolChains/Serenity.cpp
M clang/lib/Driver/ToolChains/Serenity.h
M clang/lib/Driver/ToolChains/Solaris.cpp
M clang/lib/Driver/ToolChains/Solaris.h
M clang/lib/Driver/ToolChains/VEToolchain.cpp
M clang/lib/Driver/ToolChains/VEToolchain.h
M clang/lib/Driver/ToolChains/WebAssembly.cpp
M clang/lib/Driver/ToolChains/WebAssembly.h
M clang/lib/Driver/ToolChains/XCore.cpp
M clang/lib/Driver/ToolChains/XCore.h
M clang/lib/Driver/ToolChains/ZOS.cpp
M clang/lib/Driver/ToolChains/ZOS.h
M clang/test/Driver/hip-link-bundle-archive.hip
M clang/test/Driver/hip-phases.hip
M clang/test/Driver/hip-target-id.hip
M clang/test/Driver/hip-toolchain-no-rdc.hip
M clang/unittests/Driver/DXCModeTest.cpp
Log Message:
-----------
clang/Driver: Use struct type for BoundArch instead of StringRef (#204748)
Change BoundArch arguments in the clang driver from StringRef (or
sometimes const char*) to a dedicated struct type that contains both
the architecture string and a parsed OffloadArch enum field. In the
future it may be useful to contain other feature bits here.
Co-Authored-By: Claude Opus 4.6 <noreply at anthropic.com>
Commit: e57068a5bd9fd9be5a265b83552689ff49f8fcb4
https://github.com/llvm/llvm-project/commit/e57068a5bd9fd9be5a265b83552689ff49f8fcb4
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M llvm/include/llvm/IR/BundleAttributes.h
M llvm/lib/Analysis/ValueTracking.cpp
M llvm/lib/IR/BundleAttributes.cpp
M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
M llvm/test/Transforms/InstCombine/assume.ll
Log Message:
-----------
[InstCombine] Try folding align assumes with unkown offset (#204962)
There are a few folds which don't depend on the offset of the alignment,
but are nevertheless guarded on whether the offset is known. Run these
folds unconditionally instead.
Commit: d9d2f3221b9e499f183acb1d3bece3c1d8f1462a
https://github.com/llvm/llvm-project/commit/d9d2f3221b9e499f183acb1d3bece3c1d8f1462a
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M flang/lib/Semantics/check-omp-structure.cpp
M flang/lib/Semantics/check-omp-structure.h
M flang/test/Semantics/OpenMP/clause-validity01.f90
M flang/test/Semantics/OpenMP/single03.f90
M flang/test/Semantics/OpenMP/single04.f90
Log Message:
-----------
[flang][OpenMP] Refactor semantic check of SINGLE construct (#204339)
Extract it into a separate function and simplify the code. Avoid making
the distinction between a clause appearing on the "begin" and the "end"
directives for the purposes of emitting diagnostic messages.
One change in behavior is that using the same list item multiple times
in COPYPRIVATE clause(s) is an error regardless of the placement of the
clauses. Previously in some cases it was treated as a warning.
Part of the motivation is the goal of eliminating explicit definitions
of end-directives for directives that are not delimited, e.g. "end
single", but not "end declare_variant".
Commit: 421ae3759e92132f066c77764d6da31e8a74e47c
https://github.com/llvm/llvm-project/commit/421ae3759e92132f066c77764d6da31e8a74e47c
Author: earnol <earnol at users.noreply.github.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M clang-tools-extra/clang-tidy/bugprone/MisplacedWideningCastCheck.cpp
M clang-tools-extra/docs/ReleaseNotes.rst
A clang-tools-extra/test/clang-tidy/checkers/bugprone/misplaced-widening-cast-bitfield.cpp
Log Message:
-----------
[clang-tidy] Fix bugprone-misplaced-widening-cast false positive on bitfield assignments (#197554)
When CheckImplicitCasts=true, the checker used the declared type of a
bitfield insread of the actual bitfield width to determine if widening
occurs. This caused false positives when assigning to a bitfield whose
declared type is wider than the source, but whose bitfield width
actually matches the source type. This behavior is fixed.
This PR fixes https://github.com/llvm/llvm-project/issues/197261 issue.
Co-authored-by: Vladislav Aranov <vladislav.aranov at ericsson.com>
Commit: 132e019c1f8f485c764b22670b5ea7ff2d8556a8
https://github.com/llvm/llvm-project/commit/132e019c1f8f485c764b22670b5ea7ff2d8556a8
Author: Robert Imschweiler <robert.imschweiler at amd.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M clang/include/clang/Basic/LangOptions.def
M clang/include/clang/Options/Options.td
M clang/lib/CodeGen/CGOpenMPRuntimeGPU.cpp
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/lib/Frontend/CompilerInvocation.cpp
M clang/test/Driver/openmp-offload-gpu.c
M clang/test/OpenMP/bug60602.cpp
M clang/test/OpenMP/declare_target_local_codegen.cpp
M clang/test/OpenMP/distribute_codegen.cpp
M clang/test/OpenMP/distribute_firstprivate_codegen.cpp
M clang/test/OpenMP/distribute_lastprivate_codegen.cpp
M clang/test/OpenMP/distribute_parallel_for_codegen.cpp
M clang/test/OpenMP/distribute_parallel_for_firstprivate_codegen.cpp
M clang/test/OpenMP/distribute_parallel_for_if_codegen.cpp
M clang/test/OpenMP/distribute_parallel_for_lastprivate_codegen.cpp
M clang/test/OpenMP/distribute_parallel_for_num_threads_codegen.cpp
M clang/test/OpenMP/distribute_parallel_for_private_codegen.cpp
M clang/test/OpenMP/distribute_parallel_for_proc_bind_codegen.cpp
M clang/test/OpenMP/distribute_parallel_for_simd_codegen.cpp
M clang/test/OpenMP/distribute_parallel_for_simd_firstprivate_codegen.cpp
M clang/test/OpenMP/distribute_parallel_for_simd_if_codegen.cpp
M clang/test/OpenMP/distribute_parallel_for_simd_lastprivate_codegen.cpp
M clang/test/OpenMP/distribute_parallel_for_simd_num_threads_codegen.cpp
M clang/test/OpenMP/distribute_parallel_for_simd_private_codegen.cpp
M clang/test/OpenMP/distribute_parallel_for_simd_proc_bind_codegen.cpp
M clang/test/OpenMP/distribute_private_codegen.cpp
M clang/test/OpenMP/distribute_simd_codegen.cpp
M clang/test/OpenMP/distribute_simd_firstprivate_codegen.cpp
M clang/test/OpenMP/distribute_simd_lastprivate_codegen.cpp
M clang/test/OpenMP/distribute_simd_private_codegen.cpp
M clang/test/OpenMP/distribute_simd_reduction_codegen.cpp
M clang/test/OpenMP/map_struct_ordering.cpp
M clang/test/OpenMP/nvptx_lambda_capturing.cpp
R clang/test/OpenMP/nvptx_teams_reduction_codegen.cpp
M clang/test/OpenMP/reduction_implicit_map.cpp
M clang/test/OpenMP/spirv_target_teams_reduction_addrspace.c
M clang/test/OpenMP/target_codegen_global_capture.cpp
M clang/test/OpenMP/target_default_codegen.cpp
M clang/test/OpenMP/target_defaultmap_codegen_03.cpp
M clang/test/OpenMP/target_dyn_groupprivate_codegen.cpp
M clang/test/OpenMP/target_firstprivate_codegen.cpp
M clang/test/OpenMP/target_has_device_addr_codegen.cpp
M clang/test/OpenMP/target_has_device_addr_codegen_01.cpp
M clang/test/OpenMP/target_is_device_ptr_codegen.cpp
M clang/test/OpenMP/target_map_array_of_structs_with_nested_mapper_codegen.cpp
M clang/test/OpenMP/target_map_array_section_no_length_codegen.cpp
M clang/test/OpenMP/target_map_array_section_of_structs_with_nested_mapper_codegen.cpp
M clang/test/OpenMP/target_map_codegen_03.cpp
M clang/test/OpenMP/target_map_codegen_hold.cpp
M clang/test/OpenMP/target_map_deref_array_codegen.cpp
M clang/test/OpenMP/target_map_member_expr_codegen.cpp
M clang/test/OpenMP/target_offload_mandatory_codegen.cpp
M clang/test/OpenMP/target_ompx_dyn_cgroup_mem_codegen.cpp
M clang/test/OpenMP/target_parallel_codegen.cpp
M clang/test/OpenMP/target_parallel_for_codegen.cpp
M clang/test/OpenMP/target_parallel_for_simd_codegen.cpp
M clang/test/OpenMP/target_parallel_generic_loop_codegen-1.cpp
M clang/test/OpenMP/target_parallel_generic_loop_codegen-2.cpp
M clang/test/OpenMP/target_parallel_generic_loop_uses_allocators_codegen.cpp
M clang/test/OpenMP/target_parallel_if_codegen.cpp
M clang/test/OpenMP/target_parallel_num_threads_codegen.cpp
M clang/test/OpenMP/target_parallel_num_threads_strict_codegen.cpp
M clang/test/OpenMP/target_task_affinity_codegen.cpp
M clang/test/OpenMP/target_teams_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_collapse_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_dist_schedule_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_firstprivate_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_lastprivate_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_collapse_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_dist_schedule_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_firstprivate_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_if_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_lastprivate_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_order_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_private_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_proc_bind_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_reduction_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_schedule_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_collapse_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_dist_schedule_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_firstprivate_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_if_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_lastprivate_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_private_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_proc_bind_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_reduction_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_schedule_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_private_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_reduction_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_simd_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_simd_collapse_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_simd_dist_schedule_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_simd_firstprivate_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_simd_lastprivate_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_simd_private_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_simd_reduction_codegen.cpp
M clang/test/OpenMP/target_teams_generic_loop_codegen-1.cpp
M clang/test/OpenMP/target_teams_generic_loop_codegen.cpp
M clang/test/OpenMP/target_teams_generic_loop_collapse_codegen.cpp
M clang/test/OpenMP/target_teams_generic_loop_if_codegen.cpp
M clang/test/OpenMP/target_teams_generic_loop_order_codegen.cpp
M clang/test/OpenMP/target_teams_generic_loop_private_codegen.cpp
M clang/test/OpenMP/target_teams_generic_loop_reduction_codegen.cpp
M clang/test/OpenMP/target_teams_generic_loop_uses_allocators_codegen.cpp
M clang/test/OpenMP/target_teams_map_codegen.cpp
M clang/test/OpenMP/target_teams_num_teams_codegen.cpp
A clang/test/OpenMP/target_teams_reduction_codegen.cpp
M clang/test/OpenMP/target_teams_thread_limit_codegen.cpp
M clang/test/OpenMP/teams_codegen.cpp
M clang/test/OpenMP/teams_distribute_codegen.cpp
M clang/test/OpenMP/teams_distribute_collapse_codegen.cpp
M clang/test/OpenMP/teams_distribute_dist_schedule_codegen.cpp
M clang/test/OpenMP/teams_distribute_firstprivate_codegen.cpp
M clang/test/OpenMP/teams_distribute_lastprivate_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_collapse_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_copyin_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_dist_schedule_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_firstprivate_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_if_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_lastprivate_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_num_threads_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_private_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_proc_bind_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_reduction_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_schedule_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_simd_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_simd_collapse_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_simd_dist_schedule_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_simd_firstprivate_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_simd_if_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_simd_lastprivate_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_simd_num_threads_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_simd_private_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_simd_proc_bind_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_simd_reduction_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_simd_schedule_codegen.cpp
M clang/test/OpenMP/teams_distribute_private_codegen.cpp
M clang/test/OpenMP/teams_distribute_reduction_codegen.cpp
M clang/test/OpenMP/teams_distribute_simd_codegen.cpp
M clang/test/OpenMP/teams_distribute_simd_collapse_codegen.cpp
M clang/test/OpenMP/teams_distribute_simd_dist_schedule_codegen.cpp
M clang/test/OpenMP/teams_distribute_simd_firstprivate_codegen.cpp
M clang/test/OpenMP/teams_distribute_simd_lastprivate_codegen.cpp
M clang/test/OpenMP/teams_distribute_simd_private_codegen.cpp
M clang/test/OpenMP/teams_distribute_simd_reduction_codegen.cpp
M clang/test/OpenMP/teams_firstprivate_codegen.cpp
M clang/test/OpenMP/teams_generic_loop_codegen-1.cpp
M clang/test/OpenMP/teams_generic_loop_collapse_codegen.cpp
M clang/test/OpenMP/teams_generic_loop_private_codegen.cpp
M clang/test/OpenMP/teams_generic_loop_reduction_codegen.cpp
M clang/test/OpenMP/teams_private_codegen.cpp
M llvm/include/llvm/Frontend/OpenMP/OMPConstants.h
M llvm/include/llvm/Frontend/OpenMP/OMPIRBuilder.h
M llvm/include/llvm/Frontend/OpenMP/OMPKinds.def
M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
M llvm/lib/Transforms/IPO/OpenMPOpt.cpp
M llvm/test/Transforms/OpenMP/add_attributes.ll
M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
M mlir/test/Target/LLVMIR/allocatable_gpu_reduction_teams.mlir
M mlir/test/Target/LLVMIR/omptarget-multi-reduction.mlir
M mlir/test/Target/LLVMIR/omptarget-region-device-llvm.mlir
M mlir/test/Target/LLVMIR/omptarget-teams-distribute-reduction-array-descriptor.mlir
M mlir/test/Target/LLVMIR/omptarget-teams-distribute-reduction.mlir
M mlir/test/Target/LLVMIR/omptarget-teams-reduction.mlir
M mlir/test/Target/LLVMIR/openmp-target-launch-device.mlir
M offload/include/Shared/Environment.h
M offload/plugins-nextgen/common/include/PluginInterface.h
M offload/plugins-nextgen/common/src/PluginInterface.cpp
M openmp/device/include/Interface.h
M openmp/device/src/Reduction.cpp
Log Message:
-----------
Reapply "[OpenMP][offload] Cross-team reductions with variable number of teams" (#204914) (#205071)
Together with the fix for
https://github.com/llvm/llvm-project/pull/195102#issuecomment-4756584289
Commit: b9940aa6cf3c30ae8eb3c2059c0869ed95bb42aa
https://github.com/llvm/llvm-project/commit/b9940aa6cf3c30ae8eb3c2059c0869ed95bb42aa
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
M llvm/test/Transforms/InstCombine/assume-loop-align.ll
M llvm/test/Transforms/InstCombine/assume.ll
M llvm/test/Transforms/PhaseOrdering/AArch64/std-find.ll
Log Message:
-----------
[InstCombine] Merge consecutive assumes (#204983)
This should make assumes a bit more efficient, since it removes a few
instructions. This should also help with optimizations that are limited
in how many instructions they step through.
Commit: 1a4e2d2f0a7b60083f19e68abff80dc14702a579
https://github.com/llvm/llvm-project/commit/1a4e2d2f0a7b60083f19e68abff80dc14702a579
Author: Petar Avramovic <Petar.Avramovic at amd.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeRules.cpp
M llvm/test/CodeGen/AMDGPU/packed-u64.ll
Log Message:
-----------
AMDGPU/GlobalISel: RegBankLegalize rules for pk_u64 add and sub (#205079)
Commit: 97fe69eaec8920e84308f80ade9e641aa424267b
https://github.com/llvm/llvm-project/commit/97fe69eaec8920e84308f80ade9e641aa424267b
Author: Jay Foad <jay.foad at amd.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M llvm/test/CodeGen/AMDGPU/sign_extend.ll
Log Message:
-----------
[AMDGPU] Add a test for sext i1 feeding into icmp (#205121)
This is a precommit of a test case that causes problems for #204238.
Commit: 63862a2d80759a88e0b7408e555bb8f2292c5d40
https://github.com/llvm/llvm-project/commit/63862a2d80759a88e0b7408e555bb8f2292c5d40
Author: Zorojuro <sawantsukumar at gmail.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M libc/config/baremetal/riscv/entrypoints.txt
M libc/config/freebsd/x86_64/entrypoints.txt
Log Message:
-----------
[libc][math] Add missing freebsd entrypoint for cbrtf16 (#205011)
Adds missing freebsd entrypoint in
[5429667](https://github.com/llvm/llvm-project/pull/205011/commits/5429667e053398d39e180f084e0dd5c4c416aa27)
and fixes the wrong entry point for `crbtf1` in
[cdc394f](https://github.com/llvm/llvm-project/pull/205011/commits/cdc394f8ba7dffb9f49563d601def7cf31561d6f),
which was `cbrtf` in `baremetal/riscv`
Commit: a92039c3e44e102f90751c8e8b2ab70a077016b7
https://github.com/llvm/llvm-project/commit/a92039c3e44e102f90751c8e8b2ab70a077016b7
Author: Michael Kruse <llvm-project at meinersbur.de>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M flang-rt/lib/runtime/CMakeLists.txt
M openmp/module/CMakeLists.txt
Log Message:
-----------
[flang-rt][openmp] Add file-level dependencies for builtin mod files (#204260)
CMake currently intentionally ignores intrinsic dependencies. flang-rt
already had a workaround using target-level dependencies, but it does
not know about dependencies between .mod files created within the same
add_library that CMake ignores. As a result, as reported in #203549,
updating a .mod did not trigger rebuilding the .mod files that depend on
it. Specifically, .mod files store the checksum of used .mod files which
need to be updated and therefore require transitive rebuidling.
As mentioned, CMake already adds this file-level dependency itself for
non-intrinsic modules dependencies. In this PR we are injecting the
additional dependencies that CMake does not add via OBJECT_DEPENDS.
Three caveats:
1. Using OBJECT_DEPENDS for dependencies between modules of the same
OBJECT library makes Ninja complain about circular dependencies. To
avoid, split __fortran_builtins.f90 and __cuda_builtins.f90 into their
own OBJECT libraries each.
2. The dependency cannot be on the .mod files. Because of how CMake's
dependency mechanism works, the dependency scanning runs only after
ensuring that the OBJECT_DEPENDS files exist. So if they don't exist
yet, we get a missing dependency error. To avoid, we depend on the .o
file instead.
3. Generator expressions do not work in OBJECT_DEPENDS. That is, we
cannot use `$<TARGET_FILES:flang_rt.mod.fortran.builtins>`, but
fortunately we can use OBJECT_OUTPUTS to make the location predictable.
At some point in the future,
https://gitlab.kitware.com/cmake/cmake/-/issues/26803 should be resolved
and become the minimum required version to build LLVM, in which case
these workarounds can be removed.
Commit: f63cb33699f4ab593328c15ee99650514bc0ab2c
https://github.com/llvm/llvm-project/commit/f63cb33699f4ab593328c15ee99650514bc0ab2c
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M .gitignore
Log Message:
-----------
gitignore: Add emacs lock files (#205055)
Commit: bd89ac741dff1a6edec15821b719a34ab5646f3f
https://github.com/llvm/llvm-project/commit/bd89ac741dff1a6edec15821b719a34ab5646f3f
Author: Charles Zablit <c_zablit at apple.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
M lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.h
Log Message:
-----------
[lldb][Windows] Remember server's primary stop thread on gdb-remote stops (#203525)
The client kept the previously-selected thread across stops, ignoring
the primary tid from the server in `T<sig>thread:<tid>`.
On Windows, lldb-server halts the inferior by injecting a thread called
`DbgUiRemoteBreakin` whose only job is to execute an int 3. After an
interrupt, the process has `N+1` threads and the new one is what caused
the stop. The server reports that thread as primary, but the client
ignored it and stayed on whichever thread was selected before. In
`TestExpressionInSyscall` that thread is main, paused just past
`NtDelayExecution`'s syscall with a garbage value in the RSI register.
Evaluating an expression there crashes the JIT trampoline.
This patch makes `ProcessGDBRemote::RefreshStateAfterStop` record the
primary tid from the most recent T-packet's `thread:<tid>` and select it
after applying per thread stop infos.
Fixes `TestBreakpointSetRestart` and `TestExpressionInSyscall` with
LLDB_USE_LLDB_SERVER=1.
rdar://180307914
Commit: d4ae086789debfaa1065b97dfd2cf78b44544eba
https://github.com/llvm/llvm-project/commit/d4ae086789debfaa1065b97dfd2cf78b44544eba
Author: Stanislav Mekhanoshin <Stanislav.Mekhanoshin at amd.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/SIFoldOperands.cpp
A llvm/test/CodeGen/AMDGPU/fold-imm-pk64.mir
Log Message:
-----------
[AMDGPU] Prevent folding of immediates larger than 64 bit (#204434)
Commit: f4927c95fa74247304af703d4dae4396dcbc5a2f
https://github.com/llvm/llvm-project/commit/f4927c95fa74247304af703d4dae4396dcbc5a2f
Author: Stanislav Mekhanoshin <Stanislav.Mekhanoshin at amd.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
M llvm/test/CodeGen/AMDGPU/packed-fp64.ll
M llvm/test/CodeGen/AMDGPU/packed-u64.ll
M llvm/test/CodeGen/AMDGPU/pk-lshl-add-u64.ll
M llvm/test/CodeGen/AMDGPU/shl.v2i64.ll
Log Message:
-----------
[AMDGPU] Make v2x64 BUILD_VECTOR legal on gfx1251 (#204470)
Commit: 08c728e8528c9584bc1fe0f46bbdd657e368be91
https://github.com/llvm/llvm-project/commit/08c728e8528c9584bc1fe0f46bbdd657e368be91
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M clang/cmake/modules/ClangConfig.cmake.in
R cmake/Modules/GetTripleCMakeSystemName.cmake
R cmake/Modules/NormalizeTriple.cmake
M llvm/cmake/modules/LLVMConfig.cmake.in
M llvm/cmake/modules/LLVMExternalProjectUtils.cmake
M llvm/runtimes/CMakeLists.txt
M runtimes/CMakeLists.txt
Log Message:
-----------
Revert "runtimes: Pass CMAKE_SYSTEM_NAME based on target triple" (#205133)
Reverts llvm/llvm-project#203504
Breaks build pending #205130
Commit: 91e344bd26bf18badeaf5bd8e5cf41f1f7e1cca4
https://github.com/llvm/llvm-project/commit/91e344bd26bf18badeaf5bd8e5cf41f1f7e1cca4
Author: youngd007 <davidayoung at meta.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M utils/bazel/llvm-project-overlay/lldb/BUILD.bazel
M utils/bazel/llvm-project-overlay/lldb/source/Plugins/BUILD.bazel
Log Message:
-----------
[lldb][bazel] Add the Windows process plugin to the bazel build (#203146)
Add a cc_library for the native Windows process plugin
(ProcessWindowsCommon),
gated to @platforms//os:windows, and register it via the dedicated
@LLDB_PROCESS_WINDOWS_PLUGIN@ slot in the generated Plugins.def. This
mirrors the
CMake build, which special-cases ProcessWindowsCommon into that slot so
it is
initialized after all other process plugins but before ProcessGDBRemote.
With the help of claude.
Tested internally at Meta by converting Bazel -> BUCK and confirming
matches working BUCK contents for windows lldb build.
Commit: 6e562169fd026e26124fe4e2e435d3a4c522ffe2
https://github.com/llvm/llvm-project/commit/6e562169fd026e26124fe4e2e435d3a4c522ffe2
Author: Sungbin Jo <goranmoomin at daum.net>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M llvm/lib/ObjectYAML/MachOEmitter.cpp
A llvm/test/ObjectYAML/MachO/endianness.yaml
Log Message:
-----------
[yaml2obj][MachO] Fix byte order of the indirect symbol table (#205044)
This is a follow-up of PR #203680 that added the test case
`linkedit-alignment.test`, which currently fails on big-endian buildbots
(see: https://lab.llvm.org/buildbot/#/builders/98/builds/3084 and
https://lab.llvm.org/buildbot/#/builders/114/builds/906).
The failure seems to be on `yaml2obj`, where `writeDynamicSymbolTable`
emits an indirect symbol table in host byte order rather than the
specified object's byte order (i.e. the `IsLittleEndian` field value).
This PR adds the missing swap and a regression test that round-trips all
endian-sensitive fields with both endianness values.
Commit: 1a63fca933a0e8a3cb807d462ef50901a90f83d2
https://github.com/llvm/llvm-project/commit/1a63fca933a0e8a3cb807d462ef50901a90f83d2
Author: Keith Smiley <keithbsmiley at gmail.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M utils/bazel/llvm-project-overlay/lldb/source/Plugins/BUILD.bazel
Log Message:
-----------
[bazel] Disable buildkite for PluginProcessWindowsCommon (#205141)
Commit: 08d766ba6d1ffdeb894c0c935465f7134aef6dfc
https://github.com/llvm/llvm-project/commit/08d766ba6d1ffdeb894c0c935465f7134aef6dfc
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M libcxx/utils/ci/lnt/README.md
M libcxx/utils/ci/lnt/run-benchbot
M libcxx/utils/ci/lnt/run-benchmarks
Log Message:
-----------
[libc++][lnt] Allow retaining build artifacts in run-benchbot (#205146)
Also, as a drive-by, introduce `--results-dir` to specify where to put
the JSON results instead of using `--build-dir` for that.
Assisted by Claude
Commit: a88b88bdd346282a71b2f01b1513936280c20a93
https://github.com/llvm/llvm-project/commit/a88b88bdd346282a71b2f01b1513936280c20a93
Author: Yihan Wang <yronglin777 at gmail.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M libcxx/docs/FeatureTestMacroTable.rst
M libcxx/docs/ReleaseNotes/23.rst
M libcxx/docs/Status/Cxx29Papers.csv
M libcxx/include/__utility/constant_wrapper.h
M libcxx/include/utility
M libcxx/include/version
M libcxx/test/std/language.support/support.limits/support.limits.general/utility.version.compile.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/version.version.compile.pass.cpp
M libcxx/test/std/utilities/const.wrap.class/convert.pass.cpp
R libcxx/test/std/utilities/const.wrap.class/ctad.compile.pass.cpp
M libcxx/test/std/utilities/const.wrap.class/cw.pass.cpp
R libcxx/test/std/utilities/const.wrap.class/cw_fixed.array.ctor.pass.cpp
R libcxx/test/std/utilities/const.wrap.class/cw_fixed.ctor.pass.cpp
M libcxx/test/std/utilities/const.wrap.class/subscript.pass.cpp
A libcxx/test/std/utilities/const.wrap.class/template.verify.cpp
M libcxx/test/std/utilities/const.wrap.class/types.compile.pass.cpp
M libcxx/test/std/utilities/const.wrap.class/unary_ops.pass.cpp
M libcxx/utils/generate_feature_test_macro_components.py
Log Message:
-----------
[libc++] Implement P4206R0 Revert string support in std::constant_wrapper (#203338)
Fixes https://github.com/llvm/llvm-project/issues/203336
---------
Signed-off-by: yronglin <yronglin777 at gmail.com>
Co-authored-by: A. Jiang <de34 at live.cn>
Commit: 20cf19f0c34579273382e20947ea8e6373949796
https://github.com/llvm/llvm-project/commit/20cf19f0c34579273382e20947ea8e6373949796
Author: Xavier Roche <roche at httrack.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M libcxx/include/__math/abs.h
M libcxx/test/std/numerics/c.math/abs.pass.cpp
Log Message:
-----------
[libc++] std::abs support for _BitInt(N) and __int128 (#196532)
`std::abs` does not accept `__int128` or signed `_BitInt(N)`: the call
is ambiguous and fails to compile (#204212).
This adds an explicit `abs(__int128_t)` overload and an
`abs(_BitInt(N))` overload that deduces the width, so every signed
`_BitInt` gets a same-type result. `_BitInt` does not integer-promote,
so without this overload a narrow signed `_BitInt` would be an ambiguous
call against `abs(int/long/long long)` instead of promoting the way
`signed char` and `short` do. Standard narrow types are unchanged: they
still go through `abs(int)`.
Part of the [_BitInt(N) libc++
effort](https://discourse.llvm.org/t/bitint-n-support-in-libc-investigations-possible-improvements-looking-for-guidance/90063).
Fixes #204212
Assisted-by: Claude (Anthropic)
---------
Co-authored-by: Claude Opus 4.6 <noreply at anthropic.com>
Commit: 86f2e71cb8d165b59ad31a442b2391e23826133e
https://github.com/llvm/llvm-project/commit/86f2e71cb8d165b59ad31a442b2391e23826133e
Author: John Paul Jepko <john.jepko at ericsson.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/lib/Sema/SemaChecking.cpp
M clang/test/AST/ByteCode/builtin-functions.cpp
M clang/test/Analysis/bstring.c
M clang/test/Analysis/malloc.c
M clang/test/Analysis/pr22954.c
M clang/test/Sema/builtin-memcpy.c
M clang/test/Sema/builtin-object-size.c
M clang/test/Sema/warn-fortify-source.c
A clang/test/Sema/warn-stringop-overread.c
M compiler-rt/test/asan/TestCases/Windows/issue64990.cpp
Log Message:
-----------
[Clang][Sema] Add -Wstringop-overread warning for source buffer overreads (#183004)
This PR adds a new `-Wstringop-overread` warning that diagnoses calls to
memory functions where the specified size exceeds the size of the source
buffer, increasing parity with GCC's `-Wstringop-overread`.
The warning is emitted when the read size is a compile-time constant
that is greater than the size of the source buffer (when known
statically).
This check applies to the following functions:
- `memcpy`, `memmove`, `mempcpy` (and `__builtin_` / `__builtin___*_chk`
variants)
- `memchr`
- `memcmp`, `bcmp`
Some of the existing code for `-Wfortify-source` was refactored into a
helper class to make its lambdas accessible to other functions.
Fixes #83728
Assisted-by: claude-opus-4.6
---------
Co-authored-by: Erich Keane <ekeane at nvidia.com>
Commit: 1f20833fa42ddec64e170b2738e5cdbc007bb5de
https://github.com/llvm/llvm-project/commit/1f20833fa42ddec64e170b2738e5cdbc007bb5de
Author: Ramkumar Ramachandra <artagnon at tenstorrent.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M llvm/lib/Analysis/ConstantFolding.cpp
M llvm/lib/Analysis/ValueTracking.cpp
M llvm/test/Transforms/InstSimplify/ConstProp/active-lane-mask.ll
Log Message:
-----------
[ValueTracking] Mark frexp, ALM propagates poison (#205139)
Commit: 582a20269e2cc190ce73151f51e99c9e14ffc202
https://github.com/llvm/llvm-project/commit/582a20269e2cc190ce73151f51e99c9e14ffc202
Author: Sam Elliott <aelliott at qti.qualcomm.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M llvm/lib/Target/RISCV/CMakeLists.txt
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVBaseInfo.h
M llvm/lib/Target/RISCV/RISCV.h
M llvm/lib/Target/RISCV/RISCVAsmPrinter.cpp
M llvm/lib/Target/RISCV/RISCVInstrInfo.cpp
M llvm/lib/Target/RISCV/RISCVInstrPredicates.td
A llvm/lib/Target/RISCV/RISCVQCRelaxMarking.cpp
M llvm/lib/Target/RISCV/RISCVTargetMachine.cpp
M llvm/test/CodeGen/RISCV/O3-pipeline.ll
A llvm/test/CodeGen/RISCV/qc-access-marking.ll
Log Message:
-----------
[RISCV] Add a Pass for adding %qc.access specifiers (#201938)
Qualcomm's ABI has Access Relocation Markers, which are used to enable
more linker relaxations. This change implements a pass which will
annotate loads and stores (accesses) which are the single user of a
`qc.e.li`-materialized address with these markers so they can be relaxed
in the linker.
This is a follow-up to #188671.
Commit: 93b1f81e03ef4c717a9d222b46f78c38bcff0a3f
https://github.com/llvm/llvm-project/commit/93b1f81e03ef4c717a9d222b46f78c38bcff0a3f
Author: Hristo Hristov <hghristov.rmm at gmail.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M libcxx/include/__random/bernoulli_distribution.h
M libcxx/include/__random/binomial_distribution.h
M libcxx/include/__random/cauchy_distribution.h
M libcxx/include/__random/chi_squared_distribution.h
M libcxx/include/__random/discard_block_engine.h
M libcxx/include/__random/discrete_distribution.h
M libcxx/include/__random/exponential_distribution.h
M libcxx/include/__random/extreme_value_distribution.h
M libcxx/include/__random/fisher_f_distribution.h
M libcxx/include/__random/gamma_distribution.h
M libcxx/include/__random/generate_canonical.h
M libcxx/include/__random/geometric_distribution.h
M libcxx/include/__random/independent_bits_engine.h
M libcxx/include/__random/linear_congruential_engine.h
M libcxx/include/__random/lognormal_distribution.h
M libcxx/include/__random/mersenne_twister_engine.h
M libcxx/include/__random/negative_binomial_distribution.h
M libcxx/include/__random/normal_distribution.h
M libcxx/include/__random/piecewise_constant_distribution.h
M libcxx/include/__random/piecewise_linear_distribution.h
M libcxx/include/__random/poisson_distribution.h
M libcxx/include/__random/random_device.h
M libcxx/include/__random/seed_seq.h
M libcxx/include/__random/shuffle_order_engine.h
M libcxx/include/__random/student_t_distribution.h
M libcxx/include/__random/subtract_with_carry_engine.h
M libcxx/include/__random/uniform_int_distribution.h
M libcxx/include/__random/uniform_real_distribution.h
M libcxx/include/__random/weibull_distribution.h
A libcxx/test/libcxx/numerics/rand/nodiscard.verify.cpp
M libcxx/test/libcxx/numerics/rand/rand.dist/rand.dist.bern/rand.dist.bern.bernoulli/bad_engine.verify.cpp
M libcxx/test/libcxx/numerics/rand/rand.dist/rand.dist.bern/rand.dist.bern.bin/bad_engine.verify.cpp
M libcxx/test/libcxx/numerics/rand/rand.dist/rand.dist.bern/rand.dist.bern.geo/bad_engine.verify.cpp
M libcxx/test/libcxx/numerics/rand/rand.dist/rand.dist.bern/rand.dist.bern.negbin/bad_engine.verify.cpp
M libcxx/test/libcxx/numerics/rand/rand.dist/rand.dist.norm/rand.dist.norm.cauchy/bad_engine.verify.cpp
M libcxx/test/libcxx/numerics/rand/rand.dist/rand.dist.norm/rand.dist.norm.chisq/bad_engine.verify.cpp
M libcxx/test/libcxx/numerics/rand/rand.dist/rand.dist.norm/rand.dist.norm.f/bad_engine.verify.cpp
M libcxx/test/libcxx/numerics/rand/rand.dist/rand.dist.norm/rand.dist.norm.lognormal/bad_engine.verify.cpp
M libcxx/test/libcxx/numerics/rand/rand.dist/rand.dist.norm/rand.dist.norm.normal/bad_engine.verify.cpp
M libcxx/test/libcxx/numerics/rand/rand.dist/rand.dist.norm/rand.dist.norm.t/bad_engine.verify.cpp
M libcxx/test/libcxx/numerics/rand/rand.dist/rand.dist.pois/rand.dist.pois.exp/bad_engine.verify.cpp
M libcxx/test/libcxx/numerics/rand/rand.dist/rand.dist.pois/rand.dist.pois.extreme/bad_engine.verify.cpp
M libcxx/test/libcxx/numerics/rand/rand.dist/rand.dist.pois/rand.dist.pois.gamma/bad_engine.verify.cpp
M libcxx/test/libcxx/numerics/rand/rand.dist/rand.dist.pois/rand.dist.pois.poisson/bad_engine.verify.cpp
M libcxx/test/libcxx/numerics/rand/rand.dist/rand.dist.pois/rand.dist.pois.weibull/bad_engine.verify.cpp
M libcxx/test/libcxx/numerics/rand/rand.dist/rand.dist.samp/rand.dist.samp.discrete/bad_engine.verify.cpp
M libcxx/test/libcxx/numerics/rand/rand.dist/rand.dist.samp/rand.dist.samp.pconst/bad_engine.verify.cpp
M libcxx/test/libcxx/numerics/rand/rand.dist/rand.dist.samp/rand.dist.samp.plinear/bad_engine.verify.cpp
M libcxx/test/libcxx/numerics/rand/rand.dist/rand.dist.uni/rand.dist.uni.int/bad_engine.verify.cpp
M libcxx/test/libcxx/numerics/rand/rand.dist/rand.dist.uni/rand.dist.uni.real/bad_engine.verify.cpp
Log Message:
-----------
[libc++][random] Applied `[[nodiscard]]` to `<random>` (#204970)
Towards: #172124
-
https://libcxx.llvm.org/CodingGuidelines.html#apply-nodiscard-where-relevant
- https://wg21.link/rand
Co-authored-by: Hristo Hristov <zingam at outlook.com>
Commit: ef22d07c2c4fc3209cc14de2734fbb336ddf42b4
https://github.com/llvm/llvm-project/commit/ef22d07c2c4fc3209cc14de2734fbb336ddf42b4
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M flang/lib/Semantics/check-omp-structure.cpp
Log Message:
-----------
[flang][OpenMP] Use early exit to unindent some code, NFC (#205150)
Commit: 2bb8a56e7dfc6e0a90c0464d9b65640f0252883d
https://github.com/llvm/llvm-project/commit/2bb8a56e7dfc6e0a90c0464d9b65640f0252883d
Author: Fangrui Song <i at maskray.me>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M bolt/lib/Core/BinaryEmitter.cpp
M llvm/include/llvm/MC/MCObjectStreamer.h
M llvm/include/llvm/MC/MCStreamer.h
M llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
M llvm/lib/MC/MCAsmStreamer.cpp
M llvm/lib/MC/MCELFStreamer.cpp
M llvm/lib/MC/MCObjectStreamer.cpp
M llvm/lib/MC/MCParser/AsmParser.cpp
M llvm/lib/MC/MCParser/MasmParser.cpp
M llvm/lib/MC/MCStreamer.cpp
M llvm/lib/MC/MCWinCOFFStreamer.cpp
M llvm/lib/Target/AArch64/AArch64AsmPrinter.cpp
M llvm/lib/Target/ARM/ARMAsmPrinter.cpp
M llvm/lib/Target/ARM/ARMMCInstLower.cpp
M llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
M llvm/lib/Target/CSKY/MCTargetDesc/CSKYTargetStreamer.cpp
M llvm/lib/Target/Hexagon/AsmParser/HexagonAsmParser.cpp
M llvm/lib/Target/Hexagon/HexagonAsmPrinter.cpp
M llvm/lib/Target/LoongArch/LoongArchAsmPrinter.cpp
M llvm/lib/Target/Mips/MCTargetDesc/MipsTargetStreamer.cpp
M llvm/lib/Target/Mips/MipsAsmPrinter.cpp
M llvm/lib/Target/PowerPC/MCTargetDesc/PPCELFStreamer.cpp
M llvm/lib/Target/PowerPC/MCTargetDesc/PPCXCOFFStreamer.cpp
M llvm/lib/Target/PowerPC/PPCAsmPrinter.cpp
M llvm/lib/Target/RISCV/RISCVAsmPrinter.cpp
M llvm/lib/Target/Sparc/SparcAsmPrinter.cpp
M llvm/lib/Target/SystemZ/MCTargetDesc/SystemZHLASMAsmStreamer.cpp
M llvm/lib/Target/SystemZ/MCTargetDesc/SystemZHLASMAsmStreamer.h
M llvm/lib/Target/X86/AsmParser/X86AsmParser.cpp
M llvm/lib/Target/X86/X86MCInstLower.cpp
Log Message:
-----------
[MC] emitCodeAlignment: take MCSubtargetInfo by reference. NFC (#205140)
The fragment member cannot be null, and the sibling streamer hooks
(emitInstruction, initSections, emitPrefAlign) already take it by
reference.
Commit: 1d8a54f7cf233be64ffce08a3c5697ea8f1cccb5
https://github.com/llvm/llvm-project/commit/1d8a54f7cf233be64ffce08a3c5697ea8f1cccb5
Author: Andy Kaylor <akaylor at nvidia.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M clang/include/clang/CIR/LoweringHelpers.h
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
M clang/lib/CIR/Lowering/LoweringHelpers.cpp
M clang/test/CIR/Lowering/const-array-bulk-lowering-fallbacks.cir
M clang/test/CIR/Lowering/const-array-of-pointers.cir
Log Message:
-----------
[CIR] Lower const arrays as a single llvm.mlir.constant (#203590)
When compiling the blender benchmark for SPEC CPU2017, we hit a case
where a very large array (more than 400k elements) is initialized with
constant values. However, because it contains trailing zeros, CIR
generates a constant record initializer (an array of elements, plus a
zero-initialized trailing array). We were lowering this to the LLVM
dialect using a global initializer function with a huge number of calls
to insertelement. The subsequent lowering to LLVM IR constant folded
back to a constant initializer, but it took about 40 minutes to compile.
The recent fix to avoid calling insertelement for the array
initialization didn't fix this case because it handled only arrays, not
records.
This change updates the lowering to the LLVM dialect to lower constant
array attributes to a single llvm.mlir.const value rather than
attempting to build a chain of insertvalue ops whenever possible.
Commit: 8140495ed285468512e8b0c0fc576234750bd15f
https://github.com/llvm/llvm-project/commit/8140495ed285468512e8b0c0fc576234750bd15f
Author: Bidhan <bidhan619 at gmail.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M llvm/lib/Target/BPF/BPFFrameLowering.cpp
M llvm/lib/Target/BPF/BPFFrameLowering.h
A llvm/test/DebugInfo/BPF/dbg-location-fbreg.ll
Log Message:
-----------
[BPF] override getFrameIndexReference for frame object offsets (#204722)
### Summary
The BPF backend currently does not override `getFrameIndexReference()`.
Since BPF uses a fixed frame pointer (R10), frame object offsets are
already expressed relative to the frame pointer. The generic
`TargetFrameLowering::getFrameIndexReference()` implementation adjusts
offsets using the stack size, which is not appropriate for BPF.
This PR overrides `getFrameIndexReference()` to return the correct frame
object offsets for the BPF frame model, resulting in accurate debug
locations for stack variables. For example, the stack variable `local`
in the reproducer below previously received:
```
DW_AT_location (DW_OP_fbreg +0)
```
and now correctly receives:
```
DW_AT_location (DW_OP_fbreg -32)
```
which matches the actual location of the stack object relative to the
frame pointer.
-----
**Rust code snippet**
```
#[repr(C)]
#[derive(Copy, Clone)]
pub struct S {
pub a: u64,
pub b: u64,
pub c: u64,
}
#[unsafe(no_mangle)]
pub extern "C" fn entry(x: u64) -> u64 {
let mut local = S { a: x, b: x + 1, c: x + 2 };
let ptr_to_b = &mut local.a as *mut u64;
let ptr_to_b = core::hint::black_box(ptr_to_b);
unsafe {
core::ptr::write_volatile(ptr_to_b, x + 42);
}
unsafe { core::ptr::read_volatile(ptr_to_b) }
}
```
**Build commands**
```
> rustc +nightly repro.rs --emit=llvm-ir -g -O --crate-type=lib -o repro.l
> ./build/bin/lc repro.l -march=bpfel -O2 -filetype=obj -o repro.o
> ./build/bin/lvm-dwarfdump --debug-info --debug-loc --debug-loclists repro.o > repro.debug
```
**DW_TAG_variable info for variable "local"**
Before patch:
```
0x00000114: DW_TAG_variable
DW_AT_location (DW_OP_fbreg +0)
DW_AT_name ("local")
DW_AT_alignment (8)
DW_AT_decl_file ("/home/LLVM/llvm-project/repro.rs")
DW_AT_decl_line (11)
DW_AT_type (0x000001b8 "repro::S")
```
After patch:
```
0x00000114: DW_TAG_variable
DW_AT_location (DW_OP_fbreg -32)
DW_AT_name ("local")
DW_AT_alignment (8)
DW_AT_decl_file ("/home/LLVM/llvm-project/repro.rs")
DW_AT_decl_line (11)
DW_AT_type (0x000001bc "repro::S")
```
Commit: 46995fb32b999c6332fbd1bdfb84d79cad47195f
https://github.com/llvm/llvm-project/commit/46995fb32b999c6332fbd1bdfb84d79cad47195f
Author: Akhil Goel <akhil.goel at intel.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M mlir/include/mlir/Conversion/MathToXeVM/MathToXeVM.h
M mlir/include/mlir/Conversion/Passes.td
M mlir/lib/Conversion/GPUCommon/OpToFuncCallLowering.h
M mlir/lib/Conversion/MathToXeVM/CMakeLists.txt
M mlir/lib/Conversion/MathToXeVM/MathToXeVM.cpp
A mlir/test/Conversion/MathToXeVM/math-to-ocl.mlir
Log Message:
-----------
[mlir][Math][XeVM] Add Math to OCL conversion patterns (#198370)
This PR adds conversion patterns to convert supported math ops to SPIR-V
OpenCL builtin calls. These lowerings correspond to `OpExtInst` calls
into the OpenCL SPIR-V extended instruction set via mangled
`__spirv_ocl_` entry points for f32/f64 variants.
Commit: 49a0e107e9f0d244d41eb766c67d02900eff8ee3
https://github.com/llvm/llvm-project/commit/49a0e107e9f0d244d41eb766c67d02900eff8ee3
Author: Shilei Tian <i at tianshilei.me>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M llvm/lib/IR/CMakeLists.txt
M llvm/lib/IR/Verifier.cpp
A llvm/lib/IR/VerifierAMDGPU.cpp
A llvm/lib/IR/VerifierInternal.h
M llvm/test/Verifier/callbr-intrinsic.ll
M llvm/utils/gn/secondary/llvm/lib/IR/BUILD.gn
Log Message:
-----------
[RFC][NFCI][IR] Extract AMDGPU-specific verification logic into `VerifierAMDGPU.cpp` (#204284)
`Verifier.cpp` is large and already mixes generic IR verification with
target-specific checks. We also have a growing amount of AMDGPU verifier
logic downstream, which would all end up in the same file if we don't
address this, and that is not ideal.
This patch extracts AMDGPU-specific verification logic into a separate
`VerifierAMDGPU.cpp` file, with shared infrastructure
(`VerifierSupport`) moved into `VerifierInternal.h`.
This is purely a code organization change, not a target-dependent IR
verifier. All checks remain compiled and linked into `LLVMCore`
regardless of the target triple. The extracted functions are called
unconditionally at well-defined extension points in `Verifier.cpp`, and
each function internally gates on target-specific conditions (for
example, triple checks or intrinsic IDs) as needed. The file is strictly
limited to AMDGPU-specific IR constructs (amdgcn intrinsics, AMDGPU
module flags, etc.), and does not contain generic IR rules that vary by
target.
This PR deliberately avoided introducing polymorphism, since this is not
a target-dependent verification framework. Instead, this follows a
pattern similar to TargetParser (for example `AMDGPUTargetParser.cpp`):
flat file layout, free functions, no registration, and unconditional
compilation.
Other targets that want similar separation can follow the same pattern.
Open to suggestions on whether there is a better long-term way to
structure this.
Commit: 39f5357397ef97aa2143360f3613decef981d02b
https://github.com/llvm/llvm-project/commit/39f5357397ef97aa2143360f3613decef981d02b
Author: Zhen Wang <zhenw at nvidia.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M flang/lib/Semantics/resolve-names.cpp
M flang/test/Lower/CUDA/cuda-gpu-managed.cuf
Log Message:
-----------
[flang][cuda] Apply implicit managed attribute to pointer variables under -gpu=mem:managed (#204634)
When -gpu=mem:managed is active with CUDA Fortran enabled, only
allocatable variables were implicitly given the managed CUDA data
attribute. Pointer variables were left without it, causing their
allocations to use host memory instead of cudaMallocManaged.
This patch extends the implicit managed attribute in
FinishSpecificationPart to also cover pointer symbols. A
LanguageFeature::CUDA guard is added so the attribute is only applied
when CUDA Fortran semantics are active. The implicit pinned attribute
(-gpu=mem:pinned) remains allocatable-only.
Commit: 04baf7ed88bc833a599d20bafb07fbceccade4a7
https://github.com/llvm/llvm-project/commit/04baf7ed88bc833a599d20bafb07fbceccade4a7
Author: Min-Yih Hsu <min.hsu at sifive.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/LegalizeTypes.h
M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
M llvm/test/CodeGen/RISCV/rvv/vector-deinterleave-fixed.ll
M llvm/test/CodeGen/RISCV/rvv/vector-deinterleave.ll
Log Message:
-----------
[SDAG][LegalizeType] Implement result vector widening for VECTOR_DEINTERLEAVE (#203105)
I accidentally found that we haven't implemented result vector widening
for `ISD::VECTOR_DEINTERLEAVE`. This patch implements such type
legalization.
---------
Co-authored-by: Simon Pilgrim <git at redking.me.uk>
Co-authored-by: Craig Topper <craig.topper at sifive.com>
Commit: 738fecbc68e2e3ca04efd26db648eff57f2456ff
https://github.com/llvm/llvm-project/commit/738fecbc68e2e3ca04efd26db648eff57f2456ff
Author: Kunal Pathak <kunalspathak.github at gmail.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
A llvm/test/tools/llvm-profgen/aarch64-disassemble-all-features.test
M llvm/tools/llvm-profgen/ProfiledBinary.cpp
Log Message:
-----------
[llvm-profgen] Enable all AArch64 instructions for disassembly (#204619)
llvm-profgen builds its MCSubtargetInfo from
`ObjectFile::getFeatures()`. For AArch64 ELF objects this often produces
an empty feature set, so the disassembler falls back to the baseline
Armv8.0-A ISA and rejects valid feature-gated instructions such as LSE
atomics and RCPC loads.
`llvm-objdump` already handles this by [adding +all for AArch64
disassembly](https://github.com/llvm/llvm-project/blob/1e2d1bbc12f6a5f5931c77d39894ee1b8679f5f8/llvm/tools/llvm-objdump/llvm-objdump.cpp#L2823-L2824)
when neither -mattr nor -mcpu is specified. Match that behavior in
`llvm-profgen` so valid AArch64 instructions are not reported as invalid
and their addresses are preserved in profgen's code and branch maps.
Add a regression test covering an AArch64 binary containing `ldaddal`
and `ldapr` without object-level feature metadata.
---------
Co-authored-by: Kunal Pathak <kupathak at fb.com>
Commit: 56434aaf66507e567317655a05dd7da918f90d81
https://github.com/llvm/llvm-project/commit/56434aaf66507e567317655a05dd7da918f90d81
Author: Scott Linder <scott.linder at amd.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M llvm/CMakeLists.txt
Log Message:
-----------
Bump minimum required sphinx Python to 3.8 (#203963)
There seems to be de-facto use of at least 3.6 in docs, namely:
* Use of pathlib (3.4) in various places
* Format f-strings (3.6) and used in clang/docs/ghlinks.py
I don't see a strong reason to maintain the divide in minimum version
between test/docs, especially considering the "FIXME" indicating
the 3.0 lower bound was just a guess to begin with.
Change-Id: I11e00295ae0a13ec0f1c5cefbb2fdd2db272b152
Commit: bf3652b1e7eb0633c13afcc23bbc238f5e7f9ec8
https://github.com/llvm/llvm-project/commit/bf3652b1e7eb0633c13afcc23bbc238f5e7f9ec8
Author: Iñaki Amatria Barral <140811900+inaki-amatria at users.noreply.github.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
A llvm/test/tools/llvm-cov/show-colors-uninit.test
M llvm/tools/llvm-cov/CodeCoverage.cpp
Log Message:
-----------
[llvm-cov] Init `ViewOpts.Colors` before `error()` (#205001)
The `commandLineParser` lambda calls `error()` at several points before
`ViewOpts.Colors` is set. `error()` uses `ViewOpts.colored_ostream()`
which reads `Colors`, triggering undefined behavior (load of
uninitialized `bool`).
Fix by moving the `Colors` initialization block to just after
`ParseCommandLineOptions`, before any `error()` call in the lambda. This
ensures error messages are always rendered with properly initialized
color settings.
Commit: a60ad3e35514a733f19e6f2ac6bb7fe558c04441
https://github.com/llvm/llvm-project/commit/a60ad3e35514a733f19e6f2ac6bb7fe558c04441
Author: forking-google-bazel-bot[bot] <265904573+forking-google-bazel-bot[bot]@users.noreply.github.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
Log Message:
-----------
[Bazel] Fixes 46995fb (#205155)
This fixes 46995fb32b999c6332fbd1bdfb84d79cad47195f.
Co-authored-by: Google Bazel Bot <google-bazel-bot at google.com>
Commit: 55d7f777d958a64ed5ef31be269c3005ddd6c7a6
https://github.com/llvm/llvm-project/commit/55d7f777d958a64ed5ef31be269c3005ddd6c7a6
Author: Larry Meadows <Lawrence.Meadows at amd.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M compiler-rt/lib/profile/CMakeLists.txt
M compiler-rt/lib/profile/InstrProfilingPlatformROCm.cpp
A compiler-rt/lib/profile/InstrProfilingPlatformROCmHSA.cpp
A compiler-rt/lib/profile/InstrProfilingPlatformROCmHSADefs.h
A compiler-rt/lib/profile/InstrProfilingPlatformROCmInternal.h
A compiler-rt/test/profile/AMDGPU/device-basic.hip
A compiler-rt/test/profile/AMDGPU/device-early-collect.hip
A compiler-rt/test/profile/AMDGPU/device-no-kernel.hip
A compiler-rt/test/profile/AMDGPU/device-symbols.hip
A compiler-rt/test/profile/AMDGPU/lit.local.cfg.py
A compiler-rt/test/profile/GPU/instrprof-hip-basic.hip
A compiler-rt/test/profile/GPU/instrprof-hip-collect-after.hip
A compiler-rt/test/profile/GPU/instrprof-hip-counter-correctness.hip
A compiler-rt/test/profile/GPU/instrprof-hip-coverage.hip
A compiler-rt/test/profile/GPU/instrprof-hip-device-branching.hip
A compiler-rt/test/profile/GPU/instrprof-hip-fork-safety.hip
A compiler-rt/test/profile/GPU/instrprof-hip-multi-gpu.hip
A compiler-rt/test/profile/GPU/instrprof-hip-multi-process-merge.hip
A compiler-rt/test/profile/GPU/instrprof-hip-multiple-kernels.hip
A compiler-rt/test/profile/GPU/instrprof-hip-nondefault-device.hip
A compiler-rt/test/profile/GPU/instrprof-hip-pgo-use.hip
A compiler-rt/test/profile/GPU/lit.local.cfg.py
A compiler-rt/test/profile/instrprof-rocm-bounds-dedup.cpp
A compiler-rt/test/profile/instrprof-rocm-grow-array.cpp
M compiler-rt/test/profile/lit.cfg.py
M utils/bazel/llvm-project-overlay/compiler-rt/BUILD.bazel
Log Message:
-----------
[PGO][HIP] HSA-introspection device profile drain + GPU PGO tests (#203056)
## Summary
Follow-up to #202095 (now landed). #202095's host-shadow device-profile
drain can
only collect device counters for kernels that registered a host-side
shadow via
`__hipRegisterVar`. Device-linked programs (e.g. RCCL), whose
instrumented code
objects are linked directly into the device image with no host shadow,
are never
drained.
This adds a **supplemental, Linux-only HSA-introspection drain** that
runs after
the host-shadow drain: it walks each GPU agent, enumerates only the code
objects
actually resident there, reads each one's `__llvm_profile_sections`
table on the
device, and routes them through the existing `processDeviceOffloadPrf()`
path so
the emitted `.profraw` layout is identical. A content-dedup set keyed on
the
`(data, counters, names)` device-pointer triple ensures a section
already drained
by the host-shadow pass is not drained twice, so the two passes compose
without
double-counting.
It is purely additive — it does not modify #202095's host-shadow drain
or its
launch-tracking. Highlights:
- `compiler-rt/lib/profile/InstrProfilingPlatformROCmHSA.cpp`: HSA
agent/segment/
symbol walk + dedup; record drained bounds after each host-shadow drain;
lazy
HSA init (no library constructor, for fork-safety).
- Because the HSA walk only touches resident code objects, it lets us
avoid the
host-shadow drain's collect-all fallback on Linux. When **no** kernel
launch was
tracked (program never launches, collects before its first launch, or
launches
only via an untracked API), the host-shadow pass is skipped and the HSA
drain
covers it safely — instead of faulting/hanging reading a non-resident
device on
a multi-GPU host. This also closes the silent-data-loss gap for
untracked launch
APIs (`hipExtLaunchKernel`, cooperative/graph launches).
- `clang/lib/Driver/ToolChains/Clang.cpp` / `HIPAMD.cpp`: link the
device profile
runtime on both the new-offload-driver (`LinkerWrapper::ConstructJob`)
and
traditional (`lld`) link paths, guarded by `needsProfileRT` + VFS
existence.
- New GPU/AMDGPU HIP device-PGO lit tests, gated by `hip`/`amdgpu`
features
(auto-detected from the toolchain + a visible GPU) so they report
UNSUPPORTED
rather than fail when no GPU is present. Plus GPU-free host unit tests
for the
device-profile host helpers that run everywhere, including upstream CI.
## Test plan
- 4x gfx90a (`gfx90a:sramecc+:xnack-`), ROCm 7.1.
- GPU device tests run through standard lit:
`llvm-lit -sv <build>/.../compiler-rt/test/profile/Profile-x86_64` over
the
`GPU/` and `AMDGPU/` subdirectories. The profile `lit.cfg.py`
auto-detects a
visible GPU (`amdgpu-arch`) and the HIP runtime (`libamdhip64`) and
exposes the
`hip`/`amdgpu`/`multi-device` features and the `%amdgpu_arch` /
`%hip_lib_path`
substitutions; both are overridable via `--param amdgpu_arch=… /
hip_lib_path=…`.
- **15 device tests passed, 0 failed.** Covers: basic/coverage/pgo-use,
multiple-kernels, device-branching, multi-gpu and non-default-device
drain,
early-collect / no-kernel edges, RDC vs non-RDC
`__llvm_profile_sections`,
dedup (host-shadow drains the used device, HSA finds it and dedups), and
fork-safety (the RCCL parent-no-HIP / kernel-in-forked-child pattern).
- On a host without a GPU + ROCm/HIP (e.g. upstream CI) those device
tests report
UNSUPPORTED instead of failing, and the GPU subdirectories serialize via
a
size-1 `gpu` lit parallelism group when they do run.
- GPU-free host unit tests run anywhere the profile suite runs
(including upstream
CI): `instrprof-rocm-grow-array.cpp` (the dynamic-array helper) and
`instrprof-rocm-bounds-dedup.cpp` (the `(data, counters, names)` dedup
table
that backs the "drain each counter set once" guarantee).
- Build is warning-clean and `clang-format` clean.
---------
Co-authored-by: Cursor <cursoragent at cursor.com>
Commit: 42d6d5b44d6170cceeacd2ae1b83335f72f0fcba
https://github.com/llvm/llvm-project/commit/42d6d5b44d6170cceeacd2ae1b83335f72f0fcba
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
M llvm/lib/Target/AMDGPU/Disassembler/CMakeLists.txt
M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp
M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.h
M llvm/lib/TargetParser/AMDGPUTargetParser.cpp
M llvm/test/CodeGen/AMDGPU/directive-amdgcn-target.ll
M llvm/test/CodeGen/AMDGPU/elf-notes.ll
M llvm/test/CodeGen/AMDGPU/gfx902-without-xnack.ll
M llvm/test/CodeGen/AMDGPU/hsa-default-device.ll
M llvm/test/CodeGen/AMDGPU/hsa-func.ll
M llvm/test/CodeGen/AMDGPU/hsa-note-no-func.ll
M llvm/test/CodeGen/AMDGPU/hsa.ll
M llvm/test/CodeGen/AMDGPU/target-id-xnack-always-on.ll
M llvm/test/CodeGen/AMDGPU/tid-mul-func-xnack-all-any.ll
M llvm/test/CodeGen/AMDGPU/tid-mul-func-xnack-all-not-supported.ll
M llvm/test/CodeGen/AMDGPU/tid-mul-func-xnack-all-off.ll
M llvm/test/CodeGen/AMDGPU/tid-mul-func-xnack-all-on.ll
M llvm/test/CodeGen/AMDGPU/tid-mul-func-xnack-any-off-1.ll
M llvm/test/CodeGen/AMDGPU/tid-mul-func-xnack-any-off-2.ll
M llvm/test/CodeGen/AMDGPU/tid-mul-func-xnack-any-on-1.ll
M llvm/test/CodeGen/AMDGPU/tid-mul-func-xnack-any-on-2.ll
M llvm/test/CodeGen/AMDGPU/tid-one-func-xnack-any.ll
M llvm/test/CodeGen/AMDGPU/tid-one-func-xnack-not-supported.ll
M llvm/test/CodeGen/AMDGPU/tid-one-func-xnack-off.ll
M llvm/test/CodeGen/AMDGPU/tid-one-func-xnack-on.ll
A llvm/test/MC/AMDGPU/amd-amdgpu-isa-malformed-target-id.s
A llvm/test/MC/AMDGPU/amdgcn-target-directive-triple-env.s
A llvm/test/MC/AMDGPU/amdgcn-target-malformed-target-id.s
M llvm/test/MC/AMDGPU/buffer-op-swz-operand.s
M llvm/test/MC/AMDGPU/hsa-diag-v4.s
M llvm/test/MC/AMDGPU/hsa-exp.s
M llvm/test/MC/AMDGPU/hsa-gfx12-v4.s
M llvm/test/MC/AMDGPU/hsa-gfx1250-v4.s
M llvm/test/MC/AMDGPU/hsa-gfx1251-v4.s
M llvm/test/MC/AMDGPU/hsa-gfx13-v4.s
M llvm/test/MC/AMDGPU/hsa-tg-split.s
M llvm/test/MC/AMDGPU/hsa-v4.s
M llvm/test/MC/AMDGPU/hsa-v5-uses-dynamic-stack.s
M llvm/test/MC/AMDGPU/isa-version-hsa.s
M llvm/test/MC/AMDGPU/isa-version-pal.s
M llvm/test/MC/AMDGPU/isa-version-unk.s
M llvm/test/MC/AMDGPU/user-sgpr-count.s
Log Message:
-----------
AMDGPU: Refactor AMDGPUTargetID to not store MCSubtargetInfo (#204315)
Store the triple string and GPUKind instead. The dependence
on checking AMDHSA seems like an anti-feature, but maintain the
behavior of not printing the modifiers for other OSes. Start
parsing the target ID instead of performing a direct string
comparison. Also improve test coverage for the treatment of the
environment component of the triple. The main behavioral change
is this will now produce normalized triples in the output and
diagnostics. Practially, this means all of the places that
currently emit "--" will be expanded into "-unknown-".
Co-Authored-By: Claude Opus 4.6 <noreply at anthropic.com>
Commit: 9b1b03ef26a936efc51b11c1955ff270e80d87e9
https://github.com/llvm/llvm-project/commit/9b1b03ef26a936efc51b11c1955ff270e80d87e9
Author: Changpeng Fang <changpeng.fang at amd.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.cpp
M llvm/test/Analysis/CostModel/AMDGPU/maximumnum.ll
M llvm/test/Analysis/CostModel/AMDGPU/minimumnum.ll
Log Message:
-----------
[AMDGPU] Update packed FP32 intrinsic cost model (#205145)
Intrinsics will not have packed vector benefit if they don't have
the corresponding packed instructions.
Commit: 81638b092dd0c0a0c299081a6accd2f59e3f6a7c
https://github.com/llvm/llvm-project/commit/81638b092dd0c0a0c299081a6accd2f59e3f6a7c
Author: Changpeng Fang <changpeng.fang at amd.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/VOP1Instructions.td
M llvm/test/MC/AMDGPU/gfx1250_asm_vop1_err.s
M llvm/test/MC/AMDGPU/gfx1250_asm_vop3_from_vop1-fake16.s
M llvm/test/MC/AMDGPU/gfx1250_asm_vop3_from_vop1.s
M llvm/test/MC/Disassembler/AMDGPU/gfx1250_dasm_vop3_from_vop1.txt
Log Message:
-----------
[AMDGPU] Add MC omod support for bf16 trans instructions (#205144)
Based on recent gfx1250 sp3 update. Refer to DEGFXSP3-664
Commit: cd89a8675cfef4e1efca258a89fae9ae903e3e3c
https://github.com/llvm/llvm-project/commit/cd89a8675cfef4e1efca258a89fae9ae903e3e3c
Author: Henry Jiang <henry_jiang2 at apple.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
A llvm/test/Transforms/SimplifyCFG/fold-branch-to-common-dest-pseudoprobe.ll
A llvm/test/Transforms/SimplifyCFG/hoist-common-skip-pseudoprobe.ll
Log Message:
-----------
[SimplifyCFG] Allow hoisting in the presence of pseudoprobes (#199753)
Fix regressions in the presence of pseudoprobes that prevents
SimplifyCFG from hoisting instructions into the predecessor. Teach
`hoistCommonCodeFromSuccessors` and `foldBranchToCommonDest` to ignore
pseudo probes and drop them when the BB is eliminated.
The minor loss of profile quality for these cases are justified, as not
performing these hoists degrades performance more and blocks downstream
passes like loop-vectorize (can be upto 30% in 526.blender_r and
525.x264_r).
Commit: dc520fcd90527d196a676795d20539440de9442b
https://github.com/llvm/llvm-project/commit/dc520fcd90527d196a676795d20539440de9442b
Author: Ingo Müller <ingomueller at google.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M lldb/test/API/functionalities/rerun_and_expr_dylib/TestRerunAndExprDylib.py
Log Message:
-----------
[lldb][tests] Fix FS timing issue in `TestRerunAndExprDylib`. (#205116)
This PR fixes a timing issue that made `TestRerunAndExprDylib` fail with
a small probability. The test rebuilds a library; however, the build and
the re-build may fall into the same timestamp if the underlying
filesystem only has second granularity such that LLDB doesn't reload the
rebuilt library for the second execution.
The fix consists in artifically aging the library file from the first
build, i.e., setting its timestamp 10 seconds into the past. This not
only guarantees that LLDB reloads the file but also also that it is
rebuilt, so the explicit removing is now unnecessary and removed.
This issue exists for at least six months, possible since the tests
exists; I was not able to test older versions. However, we have recently
seen frequent failures, probably due to some change in our underlying
testing infrastructure.
Signed-off-by: Ingo Müller <ingomueller at google.com>
Commit: e6199d8f36263f018b47ba8fd1fd2f77e477b0ac
https://github.com/llvm/llvm-project/commit/e6199d8f36263f018b47ba8fd1fd2f77e477b0ac
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/Disassembler/CMakeLists.txt
Log Message:
-----------
AMDGPU: Temporarily restore disassembler's dependency on TargetParser (#205175)
Reverts part of #204315
Commit: c046d4b47cd5c8c75efa8b93d0c1fbfff54c2559
https://github.com/llvm/llvm-project/commit/c046d4b47cd5c8c75efa8b93d0c1fbfff54c2559
Author: Walter Lee <49250218+googlewalt at users.noreply.github.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M .github/CODEOWNERS
Log Message:
-----------
[GitHub] Add googlewalt to Bazel codeowners (#205174)
Commit: 63692a910c10abb0a6ae67f99da7ffc8a1f3f964
https://github.com/llvm/llvm-project/commit/63692a910c10abb0a6ae67f99da7ffc8a1f3f964
Author: newgre <jannewger at gmail.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M llvm/include/llvm/ProfileData/MemProf.h
M llvm/lib/ProfileData/MemProfReader.cpp
Log Message:
-----------
[ProfileData] Avoid unnecessary copies. (#204875)
Make `Frame` moveable and avoid some unnecessary copies in `RawMemProfReader`. Unnecessary copies fixed in this PR were found by the CSan prototype described in the RFC [1] CopySanitizer (CSan): Detecting unneccessary object copies at runtime.
[1] https://discourse.llvm.org/t/rfc-copysanitizer-csan-detecting-unneccessary-object-copies-at-runtime/91038
Co-authored-by: Jan Newger <jannewger at google.com>
Commit: 223bdef73f761f22353744eeea46663ed0941926
https://github.com/llvm/llvm-project/commit/223bdef73f761f22353744eeea46663ed0941926
Author: Mohammed Ashraf <125150223+Holo-xy at users.noreply.github.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M clang/include/clang/Parse/Parser.h
M clang/lib/Parse/ParseCXXInlineMethods.cpp
M clang/lib/Parse/ParseDecl.cpp
Log Message:
-----------
[BoundsSafety] unify ParseLexedAttribute (#186033)
Resolves #93263
Commit: a1cfa786c96fee1ce63d034674d7aeb4cc9cc5d9
https://github.com/llvm/llvm-project/commit/a1cfa786c96fee1ce63d034674d7aeb4cc9cc5d9
Author: Greg Clayton <gclayton at fb.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M lldb/include/lldb/Core/Section.h
M lldb/source/Core/Section.cpp
M lldb/source/Plugins/ObjectFile/ELF/ObjectFileELF.cpp
M lldb/source/Plugins/SymbolVendor/ELF/SymbolVendorELF.cpp
M lldb/source/Plugins/SymbolVendor/PECOFF/SymbolVendorPECOFF.cpp
M lldb/source/Plugins/SymbolVendor/wasm/SymbolVendorWasm.cpp
A lldb/test/Shell/ObjectFile/ELF/build-id-case-debug-only.yaml
Log Message:
-----------
Fix SectionList::ReplaceSection to not replace incorrect section. (#204677)
We use SectionList::ReplaceSection to check for some sections in the
main object file and in separate debug info files. It was relying on
section IDs being consistent between different individual section lists
in different object files which does not work. I fixed this by not using
a section ID when replacing a section, but using the section shared
pointer so there can be no errors.
Commit: 982646f33d1ac7872832c2f3969dc83a762eab5d
https://github.com/llvm/llvm-project/commit/982646f33d1ac7872832c2f3969dc83a762eab5d
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp
A llvm/test/Transforms/LoopStrengthReduce/X86/lcssa-preservation-regression.ll
Log Message:
-----------
[LSR] Preserve LCSSA in SCEVRewriter
This is necessery to fix some regressions when switching to the NewPM
and seems to improve optimization quality in some cases due to LSR
currently not understanding loop nests (usage of getSCEV vs
getSCEVScoped). This patch just enables LCSSA
preservation for SCEVRewriter and updates all the relevant tests. There
are some further fixes that are needed to get this fully working that
will be included in follow up patches. This patch also only changes
behavior in the NewPM path to get that unblocked while more work is done
on ensuring LCSSA preservation/requirements do not regress LSR.
Similar to #185373 (although without follow up fixes and a regression
test).
Regression test added for the specific NewPM case noticed is in
Transforms/LoopStrengthReduce/X86/lcssa-preservation-regression.ll
(does not reproduce without the target triple).
Reviewers: arsenm, Meinersbur, fhahn, nikic, vikramRH
Pull Request: https://github.com/llvm/llvm-project/pull/191665
Commit: 5b0cb22661a9a256fee7af77a79960d435ce8582
https://github.com/llvm/llvm-project/commit/5b0cb22661a9a256fee7af77a79960d435ce8582
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp
M llvm/test/Transforms/LoopStrengthReduce/X86/lcssa-preservation-regression.ll
M llvm/test/Transforms/LoopStrengthReduce/preserve-lcssa.ll
Log Message:
-----------
[LSR] Preserve LCSSA in critical edge splitting
This was another case where LSR failed to preserve LCSSA, which will
trigger an assertion under the NewPM. This is currently only enabled
under the NewPM to avoid pessimizing any optimizations while unblocking
work on the NewPM.
Reviewers: fhahn, vikramRH, nikic, arsenm
Pull Request: https://github.com/llvm/llvm-project/pull/192371
Commit: 871990a01ea72cb2090e73e52b0e66605a770f34
https://github.com/llvm/llvm-project/commit/871990a01ea72cb2090e73e52b0e66605a770f34
Author: Florian Hahn <flo at fhahn.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M llvm/include/llvm/Analysis/LoopAccessAnalysis.h
M llvm/include/llvm/Analysis/ScalarEvolution.h
M llvm/lib/Analysis/LoopAccessAnalysis.cpp
M llvm/lib/Analysis/ScalarEvolution.cpp
M llvm/test/Analysis/LoopAccessAnalysis/retry-runtime-checks-after-dependence-analysis.ll
Log Message:
-----------
[LAA] Collect no-wrap predicates separately in getPtrStride/isNoWrap. (#203787)
Add an overload of getPtrStride and update isNoWrap to collect no-wrap
SCEV predicates in a vector, and have the caller add them to PSE if
needed.
This also requires to explicitly build the wrap predicate via
ScalarEvolution::getWrapPredicate (clearing statically implied flags)
rather than going through PredicatedScalarEvolution::setNoOverflow,
which can now be removed together with the flags map.
This also requires generalizing SCEVUnionPredicate::implies so a wrap
predicate can be recognized as implied by an existing wrap predicate
after applying equal predicates, avoiding redundant predicates when the
collected predicates are committed.
The only functional changes is re-ordering of runtime check groups in a
single test case; no functional IR changes across a large IR corpus (32k
modules)
To be used to avoid adding unnecessary wrap predicates during interleave
group analysis: https://github.com/llvm/llvm-project/pull/200807
PR: https://github.com/llvm/llvm-project/pull/203787
Commit: 3f0ef1efb26206c3f5d5621d86d740c7f466c67b
https://github.com/llvm/llvm-project/commit/3f0ef1efb26206c3f5d5621d86d740c7f466c67b
Author: Thurston Dang <thurston at google.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
M llvm/test/Transforms/InstCombine/assume-loop-align.ll
M llvm/test/Transforms/InstCombine/assume.ll
M llvm/test/Transforms/PhaseOrdering/AArch64/std-find.ll
Log Message:
-----------
Revert "[InstCombine] Merge consecutive assumes" (#205177)
Reverts llvm/llvm-project#204983 due to buildbot breakage (see
discussion in
https://github.com/llvm/llvm-project/pull/204983#issuecomment-4771424564)
Commit: fe4ea7b81cad9c76d304370b3b4395df43cba9ec
https://github.com/llvm/llvm-project/commit/fe4ea7b81cad9c76d304370b3b4395df43cba9ec
Author: adams381 <adams at nvidia.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenRecordLayoutBuilder.cpp
M clang/test/CIR/CodeGen/no-unique-address.cpp
Log Message:
-----------
[CIR] Compute union base subobject for tail-padding reuse (#201428)
A [[no_unique_address]] field whose type is a union with reusable tail
padding made CIRGen trip the insertPadding "offset >= size" assertion in
CIRGenRecordLayoutBuilder. CIR sized the union member at its full size, so a
following field that the ABI places in the union's tail padding overlapped the
union and insertPadding asserted.
CIR already computed a distinct, smaller base subobject type for structs and
classes whose tail padding can be reused, but not for unions. A union has
reusable tail padding when one of its members is itself a [[no_unique_address]]
field with tail padding, which makes the union's data size smaller than its
size.
computeRecordLayout now builds that base type for unions too, sized from
getDataSize(), and lowerUnion emits the storage type plus trailing padding as
ordinary struct fields so the reusable padding is exposed, mirroring classic
CodeGen. The base-type gate also no longer skips records marked final, which
classic CodeGen never skipped and which otherwise hit the same assertion for a
final union with reusable tail padding.
This unblocks libcxx's std::expected tests, which lean on [[no_unique_address]]
over unions.
Commit: 7ce49b34caa760403784fe2d541bf9feca4743a2
https://github.com/llvm/llvm-project/commit/7ce49b34caa760403784fe2d541bf9feca4743a2
Author: David Zbarsky <dzbarsky at gmail.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M utils/bazel/llvm-project-overlay/bolt/BUILD.bazel
Log Message:
-----------
[BOLT][Bazel] Configure Rewrite target backends (#205179)
`RewriteInstance.cpp` only creates target-specific `MCPlusBuilder`
instances when `X86_AVAILABLE` or `AARCH64_AVAILABLE` is defined. The
Bazel `Rewrite` target defines neither macro and hard-codes `TargetX86`,
so `createMCPlusBuilder()` returns null for both target backends defined
by the Bazel overlay. Derive the definitions and dependencies from the
generated `bolt_targets` list, restricted to the `TargetAArch64` and
`TargetX86` rules defined in this BUILD file, and use the same target
dependencies for `llvm-bolt`.
Validation: `buildifier -mode=check -lint=warn
utils/bazel/llvm-project-overlay/bolt/BUILD.bazel`; an equivalent
overlay change built and executed BOLT for Linux x86_64 and Linux
AArch64 in [hermetic-llvm's remote `//prebuilt/llvm:all`
build](https://app.buildbuddy.io/invocation/7943a005-c159-4cb9-af0e-00ffbaa40bb5).
AI tool disclosure: Co-authored with OpenAI Codex.
Commit: faaec33ab9eadf3433ffe720d19028464f2c265d
https://github.com/llvm/llvm-project/commit/faaec33ab9eadf3433ffe720d19028464f2c265d
Author: Harald van Dijk <hdijk at accesssoftek.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M clang/include/clang/AST/RecursiveASTVisitor.h
A clang/test/AST/pr198903.cpp
A clang/test/Analysis/pr169302.cpp
Log Message:
-----------
[Clang][RAV] Simplify TraverseTemplateArgumentLocsHelper (#199131)
We were checking the result of getTemplateArgsAsWritten() to skip over
implicit instantiations, with an assert to ensure that it has the
desired effect, before checking getTemplateSpecializationKind() ==
TSK_ExplicitSpecialization which would skip over implicit instantiations
anyway. As the included tests show, the invariant that we were relying
on did not hold, but we no longer have any need to rely on that, we can
now just check the result of getTemplateSpecializationKind() directly.
Fixes: #198903
Fixes: #169302
Commit: 162d84f0955b8e10fd6d84ba7443c2eb596582ef
https://github.com/llvm/llvm-project/commit/162d84f0955b8e10fd6d84ba7443c2eb596582ef
Author: Florian Hahn <flo at fhahn.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlanUnroll.cpp
A llvm/test/Transforms/LoopVectorize/X86/predicated-replicate-feeding-cast.ll
Log Message:
-----------
[VPlan] Handle single-scalar casts in replicateByVF. (#205181)
Fixes a crash after https://github.com/llvm/llvm-project/pull/203057.
Commit: e67b31a00e72ebb1b3a782c6bfcad9b51f173521
https://github.com/llvm/llvm-project/commit/e67b31a00e72ebb1b3a782c6bfcad9b51f173521
Author: Jon Roelofs <jonathan_roelofs at apple.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M libunwind/src/UnwindRegistersSave.S
Log Message:
-----------
[libunwind] Fix an uninitialized read of __ra_sign_state (#205152)
The Arm DWARF spec defines UNW_AARCH64_RA_SIGN_STATE as being zeroed
until the first .cfi_negate_ra_state / .cfi_set_ra_state [1]. The GPRs
struct containing __ra_sign_state is memcpy'd directly from the
unw_context_t, which in turn is initialized by __unw_getcontext. Since
it is a pseudo register, there is no corresponding state to restore in
__unw_resume.
https://github.com/ARM-software/abi-aa/blob/main/aadwarf64/aadwarf64.rst#44call-frame-instructions
Commit: 8f249a7bd3bca35a5114aab85b5ce58ba4ca6461
https://github.com/llvm/llvm-project/commit/8f249a7bd3bca35a5114aab85b5ce58ba4ca6461
Author: Alex Langford <alangford at apple.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M lldb/include/lldb/Utility/FileSpec.h
M lldb/source/Core/ModuleList.cpp
M lldb/source/Core/PluginManager.cpp
M lldb/source/Plugins/Platform/MacOSX/PlatformDarwinKernel.cpp
M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
M lldb/source/Target/Platform.cpp
M lldb/source/Utility/FileSpec.cpp
Log Message:
-----------
[lldb][NFC] FileSpec::GetFileNameStrippingExtension should return a StringRef (#205178)
No need to create a ConstString of a filename without its file
extension.
Commit: 60b48545638f63669fde6c832e0689f78310f6ec
https://github.com/llvm/llvm-project/commit/60b48545638f63669fde6c832e0689f78310f6ec
Author: Ziqing Luo <ziqing_luo at apple.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M clang/lib/ScalableStaticAnalysisFramework/Analyses/PointerFlow/PointerFlowExtractor.cpp
M clang/lib/ScalableStaticAnalysisFramework/Analyses/SSAFAnalysesCommon.cpp
M clang/lib/ScalableStaticAnalysisFramework/Analyses/UnsafeBufferUsage/UnsafeBufferUsageExtractor.cpp
M clang/unittests/ScalableStaticAnalysisFramework/Analyses/PointerFlow/PointerFlowTest.cpp
M clang/unittests/ScalableStaticAnalysisFramework/Analyses/UnsafeBufferUsage/UnsafeBufferUsageTest.cpp
M clang/unittests/ScalableStaticAnalysisFramework/FindDecl.h
Log Message:
-----------
[SSAF] Let UnsafeBufferUsageExtractor & PointerFlowExtractor ignore templates (#198927)
Templates are ignored for two reasons:
- Template instantiations are still handled. Template facts can be
inferred from their instantiations.
- Templates are inherently difficult to reason about. Their ASTs can
contain dependent expression types (such as ParenListExpr) that
complicate analysis.
Commit: 1f3d8cba700c2340bb223770932ebc054ce0b767
https://github.com/llvm/llvm-project/commit/1f3d8cba700c2340bb223770932ebc054ce0b767
Author: YongKang Zhu <yongzhu at fb.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M bolt/include/bolt/Core/BinaryContext.h
M bolt/include/bolt/Utils/CommandLineOpts.h
M bolt/lib/Core/BinaryEmitter.cpp
M bolt/lib/Core/BinaryFunction.cpp
M bolt/lib/Passes/Aligner.cpp
M bolt/lib/Passes/LongJmp.cpp
M bolt/lib/Rewrite/MachORewriteInstance.cpp
M bolt/lib/Rewrite/RewriteInstance.cpp
M bolt/lib/Utils/CommandLineOpts.cpp
Log Message:
-----------
[BOLT] Route alignment options through BinaryContext (NFC) (#204902)
Consolidate all alignment-related `cl::opt` definitions into
`CommandLineOpts.cpp`, expose matching public members on `BinaryContext`,
and populate them from `RewriteInstance::adjustCommandLineOptions` (and
mirrored in `MachORewriteInstance`). Switch all readers in Aligner,
BinaryEmitter, LongJmp, BinaryFunction and the use-old-text logs to
`BC.*` instead of `opts::*`.
Commit: bb8f468d260f3c063b9cf23f387ec4b27bc1b146
https://github.com/llvm/llvm-project/commit/bb8f468d260f3c063b9cf23f387ec4b27bc1b146
Author: David Green <david.green at arm.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M llvm/test/CodeGen/AArch64/GlobalISel/legalize-and.mir
M llvm/test/CodeGen/AArch64/GlobalISel/legalize-or.mir
M llvm/test/CodeGen/AArch64/GlobalISel/legalize-xor.mir
Log Message:
-----------
[AArch64][GlobalISel] Update some scalar types to integer in tests. NFC (#205190)
Commit: 33e8502336c76591172fbae37209d31c1e90c7c6
https://github.com/llvm/llvm-project/commit/33e8502336c76591172fbae37209d31c1e90c7c6
Author: Bhavesh M <85327930+beamandala at users.noreply.github.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M mlir/include/mlir/Dialect/EmitC/Transforms/Passes.td
M mlir/include/mlir/Dialect/EmitC/Transforms/Transforms.h
M mlir/lib/Dialect/EmitC/Transforms/WrapFuncInClass.cpp
M mlir/test/Dialect/EmitC/wrap-func-in-class.mlir
Log Message:
-----------
[mlir][EmitC] Make `GlobalOps` `FieldOps` in wrap-emitc-func-in-class pass (#203641)
Update the `WrapFuncInClassPass` pass so that `GlobalOp`s are moved into
the `ClassOp` as `FieldOps`. This respects MLIR's behavior of resolving
references to the closest parent operation that defines a symbol table
which is the `ClassOp` that we are creating in this pass.
Without this change, references to a `GlobalOp` in `GetGlobalOp` are
failing to resolve.
Details:
- Identify `GlobalOp`s
- Create a `FieldOp` within the `ClassOp` for each `GlobalOp`
- Delete the `GlobalOp`s after all functions have been wrapped in a
class. Doing this after every function can cause an error when multiple
functions refer to the same `GlobalOp`(s) which would be deleted after
the first function is wrapped in a class.
Also renamed `fName` parameter in `populateWrapFuncInClass` to
`funcName` to match naming in `WrapFuncInClass`.
Based on PR #153452. Key differences:
- No size is set for the `globalsToMove` `SmallVector` type because I'm
not sure if the number of global variables is consistent across
different models.
- `GlobalOp`s are deleted after all functions have been processed.
- Instead of directly cloning the `GlobalOp`, an equivalent `FieldOp` is
created
- `GetGlobalOp`s are translated to `GetFieldOp`s
Co-authored-by: [Jaddyen](https://github.com/Jaddyen)
Commit: ef752a0780be31ac94be5f459ff60629136f4087
https://github.com/llvm/llvm-project/commit/ef752a0780be31ac94be5f459ff60629136f4087
Author: Daniel Hill <daniel.hill at mongodb.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M bolt/lib/Rewrite/RewriteInstance.cpp
M bolt/test/eh-frame-hdr.test
Log Message:
-----------
[BOLT] Emit .eh_frame_hdr before .eh_frame to prevent table scans from libdw (#201917)
resolves https://github.com/llvm/llvm-project/issues/201701 by moving
the `.eh_frame_hdr` section-header entry before `.eh_frame` before
assigning final section indices.
This lets BOLT binaries work with existing [libdw library logic
expecting the index before the
table](https://github.com/sourceware-org/elfutils/blob/67199e1c974db37f2bd200dcca7d7103f42ed06e/libdw/dwarf_getcfi_elf.c#L301),
preventing linear `.eh_frame` scanning.
Commit: 7781a0c196acda252a1db67936b76e96e9971f4c
https://github.com/llvm/llvm-project/commit/7781a0c196acda252a1db67936b76e96e9971f4c
Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M flang/include/flang/Evaluate/tools.h
M flang/lib/Evaluate/tools.cpp
M flang/test/Lower/CUDA/cuda-data-transfer.cuf
Log Message:
-----------
[flang][cuda] Do not emit data transfer for constant read on the rhs (#205185)
Commit: c97eb542a7c3202957da66758568230289b70697
https://github.com/llvm/llvm-project/commit/c97eb542a7c3202957da66758568230289b70697
Author: Eugene Epshteyn <eepshteyn at nvidia.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M flang/lib/Semantics/check-call.cpp
M flang/lib/Semantics/check-call.h
M flang/lib/Semantics/expression.cpp
M flang/test/Semantics/call47.f90
Log Message:
-----------
[flang][Semantics] Do not require explicit interface checks for statement functions (#205023)
https://github.com/llvm/llvm-project/pull/198610 caused a regression,
where the
code path for explicit interface checks was also used for the statement
functions arg check. Refactor the code to avoid explicit interface
checks.
Fixes #203500
Assisted-by: AI
Commit: 211ca98dd0a58600461f4d33ca5bf2a626558487
https://github.com/llvm/llvm-project/commit/211ca98dd0a58600461f4d33ca5bf2a626558487
Author: adams381 <adams at nvidia.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M clang/include/clang/CIR/Dialect/IR/CIRAttrs.td
M clang/lib/CIR/CodeGen/CIRGenBuilder.h
M clang/lib/CIR/CodeGen/CIRGenExprConstant.cpp
M clang/lib/CIR/CodeGen/CIRGenModule.cpp
M clang/lib/CIR/CodeGen/CIRGenModule.h
M clang/lib/CIR/Dialect/IR/CIRAttrs.cpp
M clang/lib/CIR/Dialect/Transforms/TargetLowering/LowerItaniumCXXABI.cpp
M clang/test/CIR/CodeGen/nonzeroinit-struct.cpp
M clang/test/CIR/CodeGen/pointer-to-data-member.cpp
M clang/test/CIR/IR/invalid-data-member.cir
Log Message:
-----------
[CIR] DataMemberAttr: replace flat index with GEP-style path (#200854)
`DataMemberAttr` stored a single field index relative to the immediately containing class, which broke when the member is inherited: `int Derived::*p = &Derived::x` with `x` in Base produced a spurious `errorNYI` because Derived's CIR record doesn't directly hold `x`.
The attribute now stores a GEP-style `member_path` — a sequence of CIR field indices stepping from the pointer's class type down to the member, one level per inheritance hop. `lowerDataMemberConstant` walks the path accumulating element offsets to produce the Itanium ABI byte value.
`buildMemberPath` searches the `destClass` record tree for the target field (`findFieldMemberPath`). `CK_BaseToDerivedMemberPointer` and `CK_DerivedToBaseMemberPointer` return `{}` in ConstExprEmitter, delegating to the APValue path which builds the correct path via `buildMemberPath`. Virtual bases are not yet handled.
`CK_ReinterpretMemberPointer` remains `errorNYI` on this branch; a follow-up PR will add that separately.
Commit: 201cf31b84acbc80bf4a6d09197bc7e9df9bb4a5
https://github.com/llvm/llvm-project/commit/201cf31b84acbc80bf4a6d09197bc7e9df9bb4a5
Author: Slava Zakharin <szakharin at nvidia.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M flang/include/flang/Optimizer/Analysis/AliasAnalysis.h
M flang/lib/Optimizer/Analysis/AliasAnalysis.cpp
M flang/test/Analysis/AliasAnalysis/alias-analysis-host-assoc.fir
M flang/test/Analysis/AliasAnalysis/alias-analysis-scoped-origins.fir
Log Message:
-----------
[flang] Reduce FIR AA overhead for functions with one scope. (#204009)
Avoid overheads of collectScopedOrigins and
getDeclarationScope/DominanceInfo
when the values passed to FIR AA belong to a function with a single
dummy scope.
Commit: fa016f67531e2274f7a7e38d11461ef5efcc5827
https://github.com/llvm/llvm-project/commit/fa016f67531e2274f7a7e38d11461ef5efcc5827
Author: Reid Kleckner <rkleckner at nvidia.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M llvm/test/tools/llvm-cas/validation.test
Log Message:
-----------
[llvm-cas] Fix validation test on Ubuntu / uutils v0.2.2, NFC (#205199)
Work around uutils/coreutils#9128 by implementing the 40 byte truncation
in Python. Otherwise, this test fails out of the box on Ubuntu 25.10.
GNU coreutils supports -s=arg, but Mac truncate does not. Resorting to
Python seemed like the cleanest solution. The next best idea was to use
subshells or other techniques to calculate the file size and subtract
40, but that seemed excessive.
Commit: 5ad66bdcaff8bbcce63bb9aef317600ae253cfbf
https://github.com/llvm/llvm-project/commit/5ad66bdcaff8bbcce63bb9aef317600ae253cfbf
Author: Reid Kleckner <rkleckner at nvidia.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M llvm/docs/ProjectGovernance.rst
Log Message:
-----------
[docs] Minor edits to project governace docs (#203149)
s/non-private/public/
Pencil in the 2027 calendar year election dates, so they are posted well
in advance and we have a link anchor we can share.
Commit: cd3bfc1f992612aff5df2c5d6c73d1c08a185880
https://github.com/llvm/llvm-project/commit/cd3bfc1f992612aff5df2c5d6c73d1c08a185880
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M llvm/lib/Transforms/Utils/ScalarEvolutionExpander.cpp
M llvm/test/Transforms/LoopStrengthReduce/X86/lcssa-preservation-regression.ll
Log Message:
-----------
[SCEV] Preserve LCSSA when reusing dominating variable
This seems to just be a missing case in SCEV. This came up when looking
at making LSR preserve LCSSA for the NewPM. Regression test of that
nature has been added.
Reviewers: fhahn, nikic, arsenm
Pull Request: https://github.com/llvm/llvm-project/pull/192831
Commit: 64d386e642e5ee3f31a4d0ef45454bef10b4ea90
https://github.com/llvm/llvm-project/commit/64d386e642e5ee3f31a4d0ef45454bef10b4ea90
Author: Reid Kleckner <rkleckner at nvidia.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M llvm/README.txt
A llvm/docs/CMake.md
R llvm/docs/CMake.rst
A llvm/docs/CodeGenerator.md
R llvm/docs/CodeGenerator.rst
A llvm/docs/CodingStandards.md
R llvm/docs/CodingStandards.rst
A llvm/docs/CommandGuide/index.md
R llvm/docs/CommandGuide/index.rst
A llvm/docs/Contributing.md
R llvm/docs/Contributing.rst
A llvm/docs/DeveloperPolicy.md
R llvm/docs/DeveloperPolicy.rst
A llvm/docs/GettingInvolved.md
R llvm/docs/GettingInvolved.rst
A llvm/docs/GettingStarted.md
R llvm/docs/GettingStarted.rst
A llvm/docs/GettingStartedTutorials.md
R llvm/docs/GettingStartedTutorials.rst
A llvm/docs/GitHub.md
R llvm/docs/GitHub.rst
M llvm/docs/GitRepositoryPolicy.md
M llvm/docs/InstrRefDebugInfo.md
A llvm/docs/Passes.md
R llvm/docs/Passes.rst
A llvm/docs/ProgrammersManual.md
R llvm/docs/ProgrammersManual.rst
A llvm/docs/RFCProcess.md
R llvm/docs/RFCProcess.rst
A llvm/docs/Reference.md
R llvm/docs/Reference.rst
M llvm/docs/RemoveDIsDebugInfo.md
A llvm/docs/SourceLevelDebugging.md
R llvm/docs/SourceLevelDebugging.rst
M llvm/docs/SphinxQuickstartTemplate.md
A llvm/docs/TableGen/index.md
R llvm/docs/TableGen/index.rst
A llvm/docs/TestingGuide.md
R llvm/docs/TestingGuide.rst
A llvm/docs/UserGuides.md
R llvm/docs/UserGuides.rst
A llvm/docs/WritingAnLLVMBackend.md
R llvm/docs/WritingAnLLVMBackend.rst
A llvm/docs/WritingAnLLVMNewPMPass.md
R llvm/docs/WritingAnLLVMNewPMPass.rst
A llvm/docs/WritingAnLLVMPass.md
R llvm/docs/WritingAnLLVMPass.rst
M llvm/docs/conf.py
A llvm/docs/index.md
R llvm/docs/index.rst
M llvm/lib/DebugInfo/DWARF/DWARFAcceleratorTable.cpp
M llvm/lib/IR/DebugInfo.cpp
M llvm/tools/reduce-chunk-list/reduce-chunk-list.cpp
M llvm/utils/lit/tests/Inputs/shtest-define/examples/param-subst.txt
Log Message:
-----------
[docs] Rename 22 popular LLVM docs .rst -> .md (#201243)
Tracking issue: #201242
RFC: https://discourse.llvm.org/t/rfc-make-myst-markdown-the-llvm-docs-format-rip-rest/90840
Migration guide: https://llvm.org/docs/SphinxQuickstartTemplate.html#markdown-migration-guidelines
Update filename references, but leave the docs with reST syntax to
ensure rename detection works.
This intentionally breaks the documentation build, but I will immediately follow up by merging the PR that fixes it.
Commit: 3e414a36cd82651e9d904e21ab444d3ca265d254
https://github.com/llvm/llvm-project/commit/3e414a36cd82651e9d904e21ab444d3ca265d254
Author: Reid Kleckner <rkleckner at nvidia.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M llvm/docs/CMake.md
M llvm/docs/CodeGenerator.md
M llvm/docs/CodingStandards.md
M llvm/docs/CommandGuide/index.md
M llvm/docs/Contributing.md
M llvm/docs/DeveloperPolicy.md
M llvm/docs/GettingInvolved.md
M llvm/docs/GettingStarted.md
M llvm/docs/GettingStartedTutorials.md
M llvm/docs/GitHub.md
M llvm/docs/Passes.md
M llvm/docs/ProgrammersManual.md
M llvm/docs/RFCProcess.md
M llvm/docs/Reference.md
M llvm/docs/SourceLevelDebugging.md
M llvm/docs/TableGen/index.md
M llvm/docs/TestingGuide.md
M llvm/docs/UserGuides.md
M llvm/docs/WritingAnLLVMBackend.md
M llvm/docs/WritingAnLLVMNewPMPass.md
M llvm/docs/WritingAnLLVMPass.md
M llvm/docs/conf.py
M llvm/docs/index.md
Log Message:
-----------
[docs] Migrate 22 popular LLVM docs to MyST (#201244)
This was done with LLM assistance.
I rebuilt the LLVM docs, opened all 22 docs in a browser and scrolled
through them, and caught and fixed a few errors.
Tracking issue: #201242
Migration guide docs:
https://llvm.org/docs/SphinxQuickstartTemplate.html#markdown-migration-guidelines
RFC:
https://discourse.llvm.org/t/rfc-make-myst-markdown-the-llvm-docs-format-rip-rest/90840
Commit: d9a1ed0c32ac6729c45ea6998281a1cd53c44fb6
https://github.com/llvm/llvm-project/commit/d9a1ed0c32ac6729c45ea6998281a1cd53c44fb6
Author: Kevin Sala Penades <salapenades1 at llnl.gov>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M offload/test/CMakeLists.txt
Log Message:
-----------
[offload] Add kernel replay tool to tests' dependencies (#205209)
Commit: 9e80b89e9481a88333c83d1f48a4492cdb8a84aa
https://github.com/llvm/llvm-project/commit/9e80b89e9481a88333c83d1f48a4492cdb8a84aa
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M lldb/tools/debugserver/source/RNBRemote.cpp
Log Message:
-----------
[lldb] Use heuristics to extend rather than replace error message (#205196)
When an attach fails, HandlePacket_A tries to explain why. The last two
checks are heuristics that discard any error debugserver already
produced for this specific failure.
The guess can be wrong, for example the PT_DENY_ATTACH test case from
#204688 is incorrectly reported as failing due to it running in a
non-interactive debug session on the bots.
Include debugserver's real error into the heuristic message, instead of
replacing it, so the real reason is never lost.
Commit: e522c116b1e5180ac7a98f992895a296d3b75ef9
https://github.com/llvm/llvm-project/commit/e522c116b1e5180ac7a98f992895a296d3b75ef9
Author: Akshay K <iit.akshay at gmail.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
A clang/test/CIR/CodeGen/unary-expr-or-type-trait-32bit.cpp
Log Message:
-----------
[CIR] Use the AST result type for sizeof/alignof constants (#203942)
On targets where `size_t` is narrower than 64 bits (e.g. `i686`), CIR
codegen for `sizeof`/`alignof`/`__builtin_vectorelements` crashes with a
type/value bitwidth mismatch.
The result of these expressions is `size_t`, but the emitted integer
constant was built with a hardcoded 64-bit type. `EvaluateKnownConstInt`
returns an `APSInt` with the width of the AST result type (32 bits on
this target), so it no longer matches the `IntAttr`'s type and trips the
`IntAttr` verifier.
### How to Reproduce
```c++
using size_t = decltype(sizeof(int));
size_t size_of_int() { return sizeof(int); }
clang -cc1 -std=c++20 -triple i686-unknown-linux-gnu -fclangir \
-emit-cir test.cpp -o test.cir
error: type and value bitwidth mismatch: 64 != 32
clang: mlir/include/mlir/IR/StorageUniquerSupport.h:180:
... Assertion `succeeded(ConcreteT::verifyInvariants(...))' failed.
#11 cir::IntAttr::get(mlir::Type, llvm::APInt const&)
#12 ScalarExprEmitter::VisitUnaryExprOrTypeTraitExpr(...)
#13 CIRGenFunction::emitScalarExpr(...)
```
### Fix
Form the IntAttr using the converted AST result type (convertType(e->getType())) instead of a hardcoded 64-bit type, matching classic codegen. The same path covers the fixed-vector __builtin_vectorelements case.
Commit: a7263bea29efd710a1207afe5641fad54692284d
https://github.com/llvm/llvm-project/commit/a7263bea29efd710a1207afe5641fad54692284d
Author: Alex Langford <alangford at apple.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M lldb/include/lldb/Breakpoint/Breakpoint.h
M lldb/source/Breakpoint/Breakpoint.cpp
M lldb/source/Commands/CommandObjectBreakpoint.cpp
Log Message:
-----------
[lldb] Remove ConstString from Breakpoint::GetMatchingFileLine (#205210)
Commit: 2d0b2fb0e0d8fa198be51096923675de9a564f83
https://github.com/llvm/llvm-project/commit/2d0b2fb0e0d8fa198be51096923675de9a564f83
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
M lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.h
Log Message:
-----------
Revert "[lldb][Windows] Remember server's primary stop thread on gdb-remote stops" (#205220)
Reverts llvm/llvm-project#203525 because it breaks TestRealDefinition.py
Commit: a6986f0b929d575728d564cd41bb0f9a6b6fdea4
https://github.com/llvm/llvm-project/commit/a6986f0b929d575728d564cd41bb0f9a6b6fdea4
Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M flang/lib/Semantics/mod-file.cpp
A flang/test/Semantics/modfile84.f90
Log Message:
-----------
[flang][cuda][openacc] Emit an error when CUDA symbols are imported with CUDA disabled (#205207)
Commit: bc4aadb7bfc2d00487c5965bc4f12a510db181a9
https://github.com/llvm/llvm-project/commit/bc4aadb7bfc2d00487c5965bc4f12a510db181a9
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M lldb/source/Plugins/ScriptInterpreter/Lua/LuaState.cpp
Log Message:
-----------
[lldb] Fix LuaState after #205210 (#205219)
Commit: ff4bc6e5d96f1dabe2f82c289fa97889830fd08e
https://github.com/llvm/llvm-project/commit/ff4bc6e5d96f1dabe2f82c289fa97889830fd08e
Author: superdusty <superdusty at foxmail.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Sema/SemaExpr.cpp
M clang/test/SemaCXX/ext-int.cpp
Log Message:
-----------
[Clang] Fix crash when comparing fixed point type with BitInt (#199912)
Fixes #196948
Added checks in `handleFixedPointConversion`: reject fixed point/BitInt
comparisons
Now clang properly emits an error instead of crashing.
---------
Co-authored-by: cry <2091136672 at foxmail.com>
Commit: 38df8cbd328efd43326ef18fc26a9a881f76cec1
https://github.com/llvm/llvm-project/commit/38df8cbd328efd43326ef18fc26a9a881f76cec1
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
A lldb/test/API/macosx/deny-attach/Makefile
A lldb/test/API/macosx/deny-attach/TestDenyAttach.py
A lldb/test/API/macosx/deny-attach/main.c
M lldb/tools/debugserver/source/MacOSX/MachProcess.mm
Log Message:
-----------
[lldb] Survive ptrace(PT_DENY_ATTACH) when attaching (#204688) (#205198)
A process can opt out of being debugged with ptrace(PT_DENY_ATTACH). The
XNU kernel enforces this by delivering SIGSEGV to the *attaching*
process while it is still inside the ptrace(PT_ATTACHEXC) syscall. This
means debugserver gets killed before it can inspect the result. LLDB
only sees the dropped connection ("error: attach failed: lost
connection").
The condition can't be detected up front: the target's P_LNOATTACH flag
is not exposed to userspace. To work around this, install a temporary
SIGSEGV handler around the ptrace(PT_ATTACHEXC) call in AttachForDebug
and siglongjmp back out if it fires, turning the fatal signal into an
EPERM that propagates to lldb as a clear message:
```
error: attach failed: cannot attach to process N because it has
disabled debugging via ptrace(PT_DENY_ATTACH)
```
The handler only acts on a SIGSEGV that arrives on the attaching thread
while the guard is armed. Any other SIGSEGV restores the default handler
and re-raises. Genuine, unrelated, crashes still report normally.
rdar://44542907
Assisted-by: Claude
Commit: c7e815b189ea5c0f8261ba13eb677465c992c625
https://github.com/llvm/llvm-project/commit/c7e815b189ea5c0f8261ba13eb677465c992c625
Author: Alexandre Isoard <isoard at amd.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M clang/lib/CodeGen/CGExpr.cpp
A clang/test/CodeGenHLSL/BasicFeatures/OutArgLifetime.hlsl
Log Message:
-----------
[HLSL] Emit lifetime.start before copy-in for inout parameters (#191917)
For inout parameters, Clang was emitting lifetime.start after the
copy-in store that initializes the temporary. Per LLVM's lifetime
semantics, any access to memory outside its lifetime is undefined
behavior, so the copy-in store was technically UB and the value was
undefined after lifetime.start.
Move EmitLifetimeStart into EmitHLSLOutArgLValues so that it is emitted
before EmitInitializationToLValue, putting the copy-in store within the
lifetime of the temporary.
---------
Co-authored-by: Alexandre Isoard <alexandre.isoard at amd.com>
Co-authored-by: Deric C. <cheung.deric at gmail.com>
Commit: 52e00058960e90b1ccadd07b95ca05d13e1f1318
https://github.com/llvm/llvm-project/commit/52e00058960e90b1ccadd07b95ca05d13e1f1318
Author: Wenju He <wenju.he at intel.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/include/clang/Sema/SemaOpenCL.h
M clang/lib/Sema/SemaExpr.cpp
M clang/lib/Sema/SemaOpenCL.cpp
A clang/test/SemaOpenCL/read-image-integer-linear-filter.cl
Log Message:
-----------
[OpenCL] Warn if filter_mode is linear in read_image{i|ui} (#204086)
Per OpenCL spec:
The read_image{i|ui} calls support a nearest filter only. The
filter_mode specified in sampler must be set to CLK_FILTER_NEAREST;
otherwise the values returned are undefined.
Warn users when they apply a linear filter accidentally.
Address https://github.com/intel/compute-runtime/issues/379#issuecomment-4592083032
Assisted-by: Claude Sonnet 4.6
Commit: dfe8b229d3ec40e49250cc587009d5752b58b087
https://github.com/llvm/llvm-project/commit/dfe8b229d3ec40e49250cc587009d5752b58b087
Author: yonghong-song <yhs at fb.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M llvm/lib/Target/BPF/BPFSelectionDAGInfo.cpp
Log Message:
-----------
[BPF] Increase BPFMaxStoresPerMemFunc from 128 to 192 (#205222)
With commits [1] and [2], memory operations like memcpy/memmove lower to
a sequence of loads/stores whose width is the minimum of the source and
destination alignment, and the store count is bounded by
BPFMaxStoresPerMemFunc. For 1-byte alignment, the maximum copy length
that can be inlined is therefore 128 bytes.
This may regress cases that previously inlined. Consider a memcpy with
src alignment 8, dst alignment 1 and size 136. After [1]/[2], the store
width is the minimum alignment (1 byte), so the store count is 136,
which exceeds the 128 limit and the copy falls back. Before [1]/[2], the
store count was computed with a fixed 8-byte unit regardless of the
actual alignment (each unit expands to 8 one-byte stores when the
minimum alignment is 1), so the total count was only 17 (136/8 < 128)
and the copy was inlined.
Raise the limit from 128 to 192 to mitigate. Alternatively, users can
increase alignment to avoid the regression.
[1] https://github.com/llvm/llvm-project/pull/201119
[2] https://github.com/llvm/llvm-project/pull/204042
Commit: 899548615f41018113e08260817ddcfc23060937
https://github.com/llvm/llvm-project/commit/899548615f41018113e08260817ddcfc23060937
Author: SiHuaN <liyongtai at iscas.ac.cn>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M llvm/include/llvm/IR/IntrinsicsRISCV.td
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/lib/Target/RISCV/RISCVInstrInfoP.td
M llvm/test/CodeGen/RISCV/rvp-simd-32.ll
M llvm/test/CodeGen/RISCV/rvp-simd-64.ll
Log Message:
-----------
[RISCV][P-ext] packed exchanged add/sub codegen (#203473)
Wire up the already-defined exchanged add/sub instructions
pas/psa/psas/pssa/paas/pasa with llvm.riscv.* intrinsics and isel
patterns.
Commit: f519bd91d300238660914d9094b5e70090da1d85
https://github.com/llvm/llvm-project/commit/f519bd91d300238660914d9094b5e70090da1d85
Author: lijinpei-amd <jinpli at amd.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M llvm/lib/IR/Verifier.cpp
M llvm/test/Verifier/memprof-metadata-bad.ll
Log Message:
-----------
[Verifier] Require !callsite with !memprof metadata (#205053)
Fixes: https://github.com/llvm/llvm-project/issues/181237
Commit: d853c056e5db0f9e1779e351b02c98a141a95c8d
https://github.com/llvm/llvm-project/commit/d853c056e5db0f9e1779e351b02c98a141a95c8d
Author: Jianjian Guan <jacquesguan at me.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M clang/include/clang/CIR/Dialect/Builder/CIRBaseBuilder.h
M clang/include/clang/CIR/Dialect/IR/CIROps.td
M clang/include/clang/CIR/MissingFeatures.h
M clang/lib/CIR/CodeGen/CIRGenAtomic.cpp
M clang/lib/CIR/CodeGen/CIRGenBuilder.h
M clang/lib/CIR/CodeGen/CIRGenBuiltin.cpp
M clang/lib/CIR/CodeGen/CIRGenBuiltinNVPTX.cpp
M clang/lib/CIR/CodeGen/CIRGenExpr.cpp
M clang/lib/CIR/CodeGen/CIRGenFunction.h
M clang/lib/CIR/CodeGen/CIRGenValue.h
M clang/lib/CIR/Dialect/IR/CIRMemorySlot.cpp
M clang/lib/CIR/Dialect/Transforms/EHABILowering.cpp
M clang/lib/CIR/Dialect/Transforms/FlattenCFG.cpp
M clang/lib/CIR/Dialect/Transforms/TargetLowering/LowerItaniumCXXABI.cpp
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
A clang/test/CIR/CodeGenBuiltins/builtin-nontemporal.cpp
Log Message:
-----------
[CIR] Add support for __builtin_nontemporal_store and __builtin_nontemporal_load (#197872)
Add nontemporal attribute to cir.load and cir.store ops.
Commit: e2765f3e202cd0ed126fb72cd77a1f59ecaf739b
https://github.com/llvm/llvm-project/commit/e2765f3e202cd0ed126fb72cd77a1f59ecaf739b
Author: ZT Qin <xiaoyaoyou95 at hotmail.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M llvm/lib/Transforms/IPO/OpenMPOpt.cpp
M llvm/test/Transforms/Attributor/reduced/openmp_opt_constant_type_crash.ll
M llvm/test/Transforms/OpenMP/single_threaded_execution.ll
Log Message:
-----------
[OpenMPOpt][Attributor] Selectively seed deglobalization AAs (#198710)
This addresses a compile-time issue observed on a large generated C++
translation unit compiled with `-fopenmp`.
The source code is not OpenMP-heavy. It mainly consists of generated
function-registration wrappers, template instantiations, lambdas, and
small helper functions. However, because the TU is compiled with OpenMP
enabled, `OpenMPOptCGSCCPass` runs and drives Attributor on a module
with many functions.
`OpenMPOpt::registerAAsForFunction` currently eagerly creates the
deglobalization AAs for every function in OpenMP device modules:
* `AAHeapToShared`
* `AAHeapToStack`
Most generated wrapper/helper functions in the motivating workload do
not contain `__kmpc_alloc_shared`, removable allocations, or free-like
calls. In those cases, the deglobalization AAs have no useful candidates
but still contribute to Attributor initialization and fixed-point work.
This patch makes the deglobalization AA seeding more selective:
* only create `AAHeapToShared` for functions with non-empty
`__kmpc_alloc_shared` uses;
* only create `AAHeapToStack` for functions containing removable
allocation or free-like call candidates;
* make `AAHeapToShared` use the per-function runtime use vector instead
of scanning all users of the runtime declaration.
I also measured the previously attempted pieces independently. The
compile-time improvement comes from the selective seeding change. The
Attributor use-caching change and the `registerAAsForFunction`
registration cache did not show meaningful benefit on the motivating
workload, so they have been removed from this PR.
On the motivating TU, selective seeding reduced total compile time from
about 3473s to 271s, and `OpenMPOptCGSCCPass` time from about 3232s to
111s.
---------
Co-authored-by: jnudhf <jnudhf at users.noreply.github.com>
Co-authored-by: Shilei Tian <i at tianshilei.me>
Commit: c91c9fced2ff7266e566fad2963ab241bf6360b3
https://github.com/llvm/llvm-project/commit/c91c9fced2ff7266e566fad2963ab241bf6360b3
Author: Fangrui Song <i at maskray.me>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M llvm/include/llvm/Support/Allocator.h
M llvm/unittests/Support/AllocatorTest.cpp
Log Message:
-----------
Reland [Allocator] Keep bump pointer at a minimum alignment (#205240)
Reland #203718 (reverted in #205091) by making computation in integer
domain to avoid UB (nullptr + non-zero offset).
Add a `MinAlign` template parameter (default 8, sizeof(size_t) on 64-bit
platforms) so that the common case `Alignment <= MinAlign` can skip
realigning `CurPtr`.
This is achieved by rounding each allocation's size up to MinAlign, so
the bump pointer stays MinAlign-aligned between allocations.
SpecificBumpPtrAllocator::DestroyAll() walks objects at a fixed
sizeof(T) stride and needs tight packing, so it uses MinAlign=1.
(alignof(T) would
pack just as tightly and reuse the default instantiation, but T may be
incomplete here, e.g. `SpecificBumpPtrAllocator<MCSectionELF>`.)
Its `Allocate` still skips the realign: the slab is max_align_t-aligned
and every size is a multiple of alignof(T), so the bump pointer stays
alignof(T)-aligned and we can just request alignment 1. Over-aligned
types (alignof(T) > alignof(max_align_t)) keep requesting alignof(T).
Also use `bit_ceil` instead of `NextPowerOf2` in the placement operator
new alignment heuristic. NextPowerOf2 is strictly greater, so an 8-byte
pointer-sized object asked for alignment 16 and missed the fast path;
bit_ceil(8) == 8 keeps it on the fast path.
Aided by Claude Opus 4.8
Commit: de1effc8639273ea79f95e198133dec777ff8908
https://github.com/llvm/llvm-project/commit/de1effc8639273ea79f95e198133dec777ff8908
Author: Craig Topper <craig.topper at sifive.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfoP.td
M llvm/test/CodeGen/RISCV/rvp-simd-32.ll
M llvm/test/CodeGen/RISCV/rvp-simd-64.ll
M llvm/test/MC/RISCV/rv64p-aliases-valid.s
Log Message:
-----------
[RISCV][P-ext] Rename pwcvt/pncvt pseudoinstructions for RV64. (#205227)
We need to add a 'w' to the suffix to indicate it operates on a word and
not a register pair like on RV32. See https://github.com/riscv/riscv-p-spec/pull/303
Commit: 53fec04cc23de825ed6ae1c84dea5d45b746fba9
https://github.com/llvm/llvm-project/commit/53fec04cc23de825ed6ae1c84dea5d45b746fba9
Author: Anutosh Bhat <andersonbhat491 at gmail.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M mlir/lib/Dialect/Arith/Transforms/IntRangeOptimizations.cpp
M mlir/test/Dialect/Arith/int-range-opts-crash.mlir
Log Message:
-----------
[mlir][arith] Fix APInt bitwidth mismatch crash in int-range-optimizations (#205110)
Fixes https://github.com/llvm/llvm-project/issues/204909
When an op's `areTypesCompatible()` hook accepts integers of different
widths across a region boundary, the range analysis can propagate a
constant range whose APInt bitwidth does not match the IR type of the
destination value.
This caused `IntegerAttr::get` to `assert` in
`maybeReplaceWithConstant`.
Fix by bailing out in `maybeReplaceWithConstant` when the bitwidths
mismatch, and adding the same check to the needsReplacing lambda in
matchAndRewrite.
The second guard is necessary to mirror the existing isIntOrIndex()
guard — without it the pattern claims success without changing the IR,
causing the greedy rewrite driver to loop.
We should now see
```
anutosh491 at Anutoshs-MacBook-Air mlir-build % ./bin/mlir-opt -int-range-optimizations bin/a.mlir
module {
func.func @m0() -> i32 {
%c1_i64 = arith.constant 1 : i64
%c0_i32 = arith.constant 0 : i32
%0 = "test.region_types_compat"(%c0_i32) ({
^bb0(%arg0: i64):
test.types_compat_yield %c1_i64 : i64
}) : (i32) -> i32
return %0 : i32
}
}
```
Commit: cdfd1e081529447ecb56ae7a43a32d8b237b9c28
https://github.com/llvm/llvm-project/commit/cdfd1e081529447ecb56ae7a43a32d8b237b9c28
Author: Yonah Goldberg <ygoldberg at nvidia.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M llvm/lib/Passes/PassRegistry.def
M llvm/lib/Transforms/Scalar/SROA.cpp
M llvm/test/Transforms/SROA/struct-to-vector-subpartition.ll
Log Message:
-----------
Patch tryCanonicalizeStructToVector to handle split slice tails (#201434)
We choose a vector alloca over a struct alloca when all users of the
alloca are memory or lifetime intrinsics. But we only accounted for
slices that start in the corresponding partition. We have to also check
that all split slice tails overlapping the partition are memory or
lifetime intrinsics
I also updated the `PassRegistry.def` to include the new pass option
because we forgot to add that.
Commit: d147ad969aa97fa500e250c33fe8d0770117708b
https://github.com/llvm/llvm-project/commit/d147ad969aa97fa500e250c33fe8d0770117708b
Author: Sam Elliott <aelliott at qti.qualcomm.com>
Date: 2026-06-22 (Mon, 22 Jun 2026)
Changed paths:
M llvm/docs/ReleaseNotes.md
M llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
M llvm/lib/Target/RISCV/RISCVInstrInfoXqci.td
M llvm/test/MC/RISCV/xqcilo-pseudos-invalid.s
M llvm/test/MC/RISCV/xqcilo-pseudos-valid.s
Log Message:
-----------
[RISCV] Update Xqcilo Pseudos (#196422)
This changes the Xqcilo pseudos to instead emit a sequence of
`qc.e.li` followed by a standard load/store annotated with %qc.access.
The new sequence is easier for our linker to relax.
This Change was written with the assistance of AI.
Commit: f7ec732d50620ed5833c283558bf74fd446962e9
https://github.com/llvm/llvm-project/commit/f7ec732d50620ed5833c283558bf74fd446962e9
Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M flang/lib/Semantics/mod-file.cpp
R flang/test/Semantics/modfile84.f90
Log Message:
-----------
Revert "[flang][cuda][openacc] Emit an error when CUDA symbols are imported with CUDA disabled" (#205254)
Reverts llvm/llvm-project#205207
Commit: 3d8ca7e0544c4cca5367c83b1ccd4246bc3dea77
https://github.com/llvm/llvm-project/commit/3d8ca7e0544c4cca5367c83b1ccd4246bc3dea77
Author: Lang Hames <lhames at gmail.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M orc-rt/include/orc-rt/AllocAction.h
Log Message:
-----------
[orc-rt] Replace AAHandlerTraits with CallableArgInfo. NFCI. (#205257)
CallableArgInfo provides a superset of AAHandlerTraits functionality, so
we don't need the latter.
Commit: c492c7d5c2e49e576fce149706139f37f6aae934
https://github.com/llvm/llvm-project/commit/c492c7d5c2e49e576fce149706139f37f6aae934
Author: Craig Topper <craig.topper at sifive.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M llvm/lib/Target/RISCV/RISCVFrameLowering.cpp
Log Message:
-----------
[RISCV] Avoid implicit conversions from MCRegister to MCPhysReg. NFC (#205260)
Commit: 194da0f3e774426dfa646e9879a1ad109db06c6c
https://github.com/llvm/llvm-project/commit/194da0f3e774426dfa646e9879a1ad109db06c6c
Author: Balázs Benics <benicsbalazs at gmail.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M clang/include/clang/Frontend/CompilerInstance.h
M clang/include/clang/Frontend/CompilerInvocation.h
M clang/include/clang/Frontend/FrontendOptions.h
A clang/include/clang/Frontend/SSAFOptions.h
M clang/include/clang/Options/Options.td
M clang/lib/Frontend/CompilerInvocation.cpp
M clang/lib/FrontendTool/ExecuteCompilerInvocation.cpp
M clang/lib/ScalableStaticAnalysisFramework/Frontend/TUSummaryExtractorFrontendAction.cpp
M clang/unittests/ScalableStaticAnalysisFramework/Frontend/TUSummaryExtractorFrontendActionTest.cpp
Log Message:
-----------
Reland "[clang][ssaf][NFC] Move SSAF flags from FrontendOptions to a dedicated SSAFOptions" (#204798)
Second attempt of #204686
This class will help keeping SSAF options apart from generic
FrontendOptions. It is inspired by AnalyzerOptions.
This way all of these SSAF (and future) options will be at a
centralized place.
In preparation of rdar://179151023
Commit: 576584794d9124c7228f4599e757dc909a534f1c
https://github.com/llvm/llvm-project/commit/576584794d9124c7228f4599e757dc909a534f1c
Author: Lang Hames <lhames at gmail.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M orc-rt/include/orc-rt/AllocAction.h
M orc-rt/include/orc-rt/SPSAllocAction.h
M orc-rt/unittests/AllocActionTest.cpp
Log Message:
-----------
[orc-rt] Add return serialization to AllocActionFunction::handle. (#205271)
Add a Serializer template parameter to AllocActionFunction::handle and
apply it to the handler's return value before forwarding as the action
result. This lets handler authors return types other than
WrapperFunctionBuffer.
For SPS, AllocActionSPSSerializer is the default Serializer used by
SPSAllocActionFunction::handle. It accepts either:
- WrapperFunctionBuffer (identity pass-through, the existing behavior),
or
- Error (success → empty WFB; failure → out-of-band-error WFB carrying
toString(Err)).
Adds AllocActionTest coverage for both Error-return paths.
Commit: 639c5a014fad13c683b01c66a1474b7aa47ce7ee
https://github.com/llvm/llvm-project/commit/639c5a014fad13c683b01c66a1474b7aa47ce7ee
Author: Pavel Labath <pavel at labath.sk>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M libc/src/__support/OSUtil/linux/syscall_wrappers/CMakeLists.txt
A libc/src/__support/OSUtil/linux/syscall_wrappers/ioctl.h
M libc/src/sys/ioctl/linux/CMakeLists.txt
M libc/src/sys/ioctl/linux/ioctl.cpp
M libc/src/termios/linux/CMakeLists.txt
M libc/src/termios/linux/tcdrain.cpp
M libc/src/termios/linux/tcflow.cpp
M libc/src/termios/linux/tcflush.cpp
M libc/src/termios/linux/tcgetattr.cpp
M libc/src/termios/linux/tcgetsid.cpp
M libc/src/termios/linux/tcsendbreak.cpp
M libc/src/termios/linux/tcsetattr.cpp
M libc/src/unistd/linux/CMakeLists.txt
M libc/src/unistd/linux/isatty.cpp
Log Message:
-----------
[libc] Introduce the ioctl syscall wrapper and port all callers (#204640)
This patch adds an ioctl syscall wrapper in linux_syscalls namespace and
migrates all direct SYS_ioctl calls to use it.
To handle the polymorphic nature of ioctl arguments (where some commands
expect pointers, some expect scalar integers like queue_selector, and
some expect no argument at all), I use a helper struct IoctlArg with
implicit constructors. This avoids template bloat and overload
ambiguities (particularly around literal 0) while keeping call sites
clean.
Assisted by Gemini.
Commit: c1bc84866a5ada0ec12c810ca42b381b776d198a
https://github.com/llvm/llvm-project/commit/c1bc84866a5ada0ec12c810ca42b381b776d198a
Author: Nikita Popov <npopov at redhat.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M clang/lib/CodeGen/CGCall.cpp
Log Message:
-----------
[Clang][ABI] Validate consistency between ABI lowering implementation (#203281)
If the LLVM ABI library is used, and assertions are enabled, compute the
ABI both using Clang's implementation the the LLVM ABI library, and
verify that the results are the same.
Commit: ffeb9c1d2612cb5729889b6e82ade060192722dd
https://github.com/llvm/llvm-project/commit/ffeb9c1d2612cb5729889b6e82ade060192722dd
Author: Balázs Benics <benicsbalazs at gmail.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M clang/include/clang/ScalableStaticAnalysisFramework/Core/TUSummary/TUSummaryBuilder.h
M clang/include/clang/ScalableStaticAnalysisFramework/Core/TUSummary/TUSummaryExtractor.h
M clang/lib/ScalableStaticAnalysisFramework/Analyses/PointerFlow/PointerFlowExtractor.cpp
M clang/lib/ScalableStaticAnalysisFramework/Core/TUSummary/TUSummaryExtractor.cpp
M clang/lib/ScalableStaticAnalysisFramework/Frontend/TUSummaryExtractorFrontendAction.cpp
M clang/unittests/ScalableStaticAnalysisFramework/Analyses/CallGraph/CallGraphExtractorTest.cpp
M clang/unittests/ScalableStaticAnalysisFramework/Analyses/PointerFlow/PointerFlowTest.cpp
M clang/unittests/ScalableStaticAnalysisFramework/Analyses/UnsafeBufferUsage/UnsafeBufferUsageTest.cpp
M clang/unittests/ScalableStaticAnalysisFramework/Registries/SummaryExtractorRegistryTest.cpp
M clang/unittests/ScalableStaticAnalysisFramework/TUSummaryBuilderTest.cpp
Log Message:
-----------
[clang][ssaf][NFC] Make SSAFOptions available in Builders and Extractors (#204684)
Now that we have SSAFOptions, it would make it a lot more ergonomic if
it was accessible from builders and extractors.
This PR does exactly that.
Part of rdar://179151023
Co-authored-by: Jan Korous <jkorous at apple.com>
Co-authored-by: Claude Opus 4.7 <noreply at anthropic.com>
Commit: 50838f484bbf4d514386d0717a789600790f1a1f
https://github.com/llvm/llvm-project/commit/50838f484bbf4d514386d0717a789600790f1a1f
Author: Yuxuan Shui <yshuiv7 at gmail.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M llvm/docs/CommandGuide/llvm-symbolizer.rst
M llvm/include/llvm/DebugInfo/Symbolize/Symbolize.h
M llvm/lib/DebugInfo/Symbolize/Symbolize.cpp
M llvm/test/tools/llvm-symbolizer/pdb/pdb.test
M llvm/tools/llvm-symbolizer/Opts.td
M llvm/tools/llvm-symbolizer/llvm-symbolizer.cpp
Log Message:
-----------
[symbolizer] Add a --pdb option. (#171053)
Closes #142490
Commit: ebaee77528bb1e5b241c4466117772dd3954340e
https://github.com/llvm/llvm-project/commit/ebaee77528bb1e5b241c4466117772dd3954340e
Author: adalal-2441 <adalal at amd.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M llvm/lib/Target/X86/X86InstrAVX512.td
M llvm/test/CodeGen/X86/avx512-load-store.ll
Log Message:
-----------
[X86] Prevent folding of volatile scalar loads into masked loads in selects (#205103)
X86 select patterns were folding scalar FP loads into AVX-512 masked
loads. Since masked loads suppress memory access when the mask is 0,
this can incorrectly eliminate the observable access of volatile loads,
leading to miscompilation. Non-volatile loads are unaffected.
Multi-use loads already avoid folding, since folding consumes the load
into the instruction's memory operand and leaves no value for the other
users, forcing it to be materialized into a register. Single-use
volatile loads did not, and this must also be prevented, as volatile
loads are required to always perform their memory access.
Fix this by using the isSimple()-guarded simple_load pattern instead of
loadf32/loadf64, ensuring volatile loads are not folded.
Found via @jlebar's X86 LLVM bug hunt / FuzzX effort:
https://github.com/SemiAnalysisAI/FuzzX/blob/master/x86/bugs/093-avx512-vmovs-x86selects-load-fold-mask-suppress
Commit: 635cbc0ebb2851d4cb9d72dcd62f2ef2dd1c25c5
https://github.com/llvm/llvm-project/commit/635cbc0ebb2851d4cb9d72dcd62f2ef2dd1c25c5
Author: Pavel Labath <pavel at labath.sk>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M libc/src/__support/OSUtil/linux/syscall_wrappers/CMakeLists.txt
R libc/src/__support/OSUtil/linux/syscall_wrappers/ioctl.h
M libc/src/sys/ioctl/linux/CMakeLists.txt
M libc/src/sys/ioctl/linux/ioctl.cpp
M libc/src/termios/linux/CMakeLists.txt
M libc/src/termios/linux/tcdrain.cpp
M libc/src/termios/linux/tcflow.cpp
M libc/src/termios/linux/tcflush.cpp
M libc/src/termios/linux/tcgetattr.cpp
M libc/src/termios/linux/tcgetsid.cpp
M libc/src/termios/linux/tcsendbreak.cpp
M libc/src/termios/linux/tcsetattr.cpp
M libc/src/unistd/linux/CMakeLists.txt
M libc/src/unistd/linux/isatty.cpp
Log Message:
-----------
Revert "[libc] Introduce the ioctl syscall wrapper and port all callers" (#205277)
Reverts llvm/llvm-project#204640
Breaks libc-x86_64-debian-fullbuild. Reverting while I investigate.
Commit: 9e3fc52b6e15d9ca4c07d014e7ac41ddd462f353
https://github.com/llvm/llvm-project/commit/9e3fc52b6e15d9ca4c07d014e7ac41ddd462f353
Author: Stanislav Mekhanoshin <Stanislav.Mekhanoshin at amd.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/SIFoldOperands.cpp
M llvm/test/CodeGen/AMDGPU/fold-imm-pk64.mir
M llvm/test/CodeGen/AMDGPU/packed-fp64.ll
M llvm/test/CodeGen/AMDGPU/packed-u64.ll
M llvm/test/CodeGen/AMDGPU/pk-lshl-add-u64.ll
Log Message:
-----------
[AMDGPU] Fold v2{i|f}64 immediates (#205195)
Commit: 3e69ed4e8aeb3f3773e4551308141af1c91d78cb
https://github.com/llvm/llvm-project/commit/3e69ed4e8aeb3f3773e4551308141af1c91d78cb
Author: Balázs Benics <benicsbalazs at gmail.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M clang/include/clang/Frontend/CompilerInstance.h
M clang/include/clang/Frontend/CompilerInvocation.h
M clang/include/clang/Frontend/FrontendOptions.h
R clang/include/clang/Frontend/SSAFOptions.h
M clang/include/clang/Options/Options.td
M clang/include/clang/ScalableStaticAnalysisFramework/Core/TUSummary/TUSummaryBuilder.h
M clang/include/clang/ScalableStaticAnalysisFramework/Core/TUSummary/TUSummaryExtractor.h
M clang/lib/Frontend/CompilerInvocation.cpp
M clang/lib/FrontendTool/ExecuteCompilerInvocation.cpp
M clang/lib/ScalableStaticAnalysisFramework/Analyses/PointerFlow/PointerFlowExtractor.cpp
M clang/lib/ScalableStaticAnalysisFramework/Core/TUSummary/TUSummaryExtractor.cpp
M clang/lib/ScalableStaticAnalysisFramework/Frontend/TUSummaryExtractorFrontendAction.cpp
M clang/unittests/ScalableStaticAnalysisFramework/Analyses/CallGraph/CallGraphExtractorTest.cpp
M clang/unittests/ScalableStaticAnalysisFramework/Analyses/PointerFlow/PointerFlowTest.cpp
M clang/unittests/ScalableStaticAnalysisFramework/Analyses/UnsafeBufferUsage/UnsafeBufferUsageTest.cpp
M clang/unittests/ScalableStaticAnalysisFramework/Frontend/TUSummaryExtractorFrontendActionTest.cpp
M clang/unittests/ScalableStaticAnalysisFramework/Registries/SummaryExtractorRegistryTest.cpp
M clang/unittests/ScalableStaticAnalysisFramework/TUSummaryBuilderTest.cpp
Log Message:
-----------
Revert some SSAF patches (#205279)
I've started seeing some failures on Windows permissive bots.
I'll revert my patches for now until further investigation.
errors:
https://lab.llvm.org/buildbot/#/builders/107/builds/20548
```
C:\b\slave\sanitizer-windows\llvm-project\clang\lib\Frontend\CompilerInvocation.cpp
C:\b\slave\sanitizer-windows\build\tools\clang\include\clang/Options/Options.inc(9981): error C2065: 'SSAFOpts': undeclared identifier
C:\b\slave\sanitizer-windows\build\tools\clang\include\clang/Options/Options.inc(9982): note: see reference to function template instantiation 'auto GenerateSSAFArgs::<lambda_5f504a9e8792b8b03f1d39701f31dbec>::operator ()<T>(const T &) const' being compiled
with
[
T=std::vector<std::string,std::allocator<std::string>>
]
```
Revert "Reland "[clang][ssaf][NFC] Move SSAF flags from FrontendOptions
to a dedicated SSAFOptions" (#204798)"
This reverts commit 194da0f3e774426dfa646e9879a1ad109db06c6c.
Revert "[clang][ssaf][NFC] Make SSAFOptions available in Builders and
Extractors (#204684)"
This reverts commit ffeb9c1d2612cb5729889b6e82ade060192722dd.
Commit: 115c749cbdada7c2663d4a64c166bafccab5fcfa
https://github.com/llvm/llvm-project/commit/115c749cbdada7c2663d4a64c166bafccab5fcfa
Author: Stanislav Mekhanoshin <Stanislav.Mekhanoshin at amd.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp
M llvm/test/CodeGen/AMDGPU/packed-fp64.ll
Log Message:
-----------
[AMDGPU] Select fneg modifier for v2f64 instructions (#205194)
Commit: 9550cd76cadea9f25a5c0bf3ee06e9f7ce5631ed
https://github.com/llvm/llvm-project/commit/9550cd76cadea9f25a5c0bf3ee06e9f7ce5631ed
Author: Alexis Engelke <engelke at in.tum.de>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M llvm/include/llvm-c/Core.h
M llvm/include/llvm/IR/IRBuilder.h
M llvm/lib/CodeGen/AtomicExpandPass.cpp
M llvm/lib/IR/Core.cpp
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/lib/Transforms/Instrumentation/BoundsChecking.cpp
M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
Log Message:
-----------
[IR] Remove IRBuilder AddMetadataToInst (#202280)
This avoids an extra check for metadata on every instruction insertion,
makes constructing an IRBuilder cheaper, and therefore slightly improves
performance.
As the C API doesn't expose CollectMetadataToCopy or any other way to
add additional metadata to the IRBuilder, make LLVMAddMetadataToInst an
alias for LLVMSetInstDebugLocation and undeprecate the latter.
Commit: 876439fa00d7e04201f08418297bcdbd85400bb8
https://github.com/llvm/llvm-project/commit/876439fa00d7e04201f08418297bcdbd85400bb8
Author: Nikita Popov <npopov at redhat.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M llvm/lib/Target/X86/X86TargetTransformInfo.cpp
M llvm/test/Transforms/Inline/X86/call-abi-compatibility.ll
M llvm/test/Transforms/PhaseOrdering/X86/loop-vectorizer-noalias.ll
Log Message:
-----------
[X86][Inline] Make ABI compatibility check more precise (#205106)
When inlining a function that contains calls with vector arguments, we
have to be careful that inlining does not change the ABI of the call.
E.g. we generally can't inline a function without `+avx` into a
function with `+avx` if there are calls using vectors of size 256 or
larger, because they'd switch from passing in two xmm registers to
passing in a ymm register.
However, the current check is very crude and only allows inlining with
interior calls if the target features match *exactly* (via the base
areTypesABICompatible implementation). This is unnecessarily
conservative, as many target features do not affect the call ABI at all.
Make this check more precise by checking the result of
getRegisterTypeForCallingConv for the type between the TLI instances for
the caller and callee.
Commit: d39923c4df01fdeb10dae4da256c09fdf616157c
https://github.com/llvm/llvm-project/commit/d39923c4df01fdeb10dae4da256c09fdf616157c
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M clang/include/clang/Basic/TargetInfo.h
M clang/lib/Basic/Targets/AArch64.cpp
M clang/lib/Basic/Targets/AArch64.h
M clang/lib/Basic/Targets/AMDGPU.h
M clang/lib/Basic/Targets/ARM.cpp
M clang/lib/Basic/Targets/ARM.h
M clang/lib/Basic/Targets/AVR.cpp
M clang/lib/Basic/Targets/AVR.h
M clang/lib/Basic/Targets/BPF.h
M clang/lib/Basic/Targets/CSKY.cpp
M clang/lib/Basic/Targets/CSKY.h
M clang/lib/Basic/Targets/Hexagon.h
M clang/lib/Basic/Targets/Lanai.cpp
M clang/lib/Basic/Targets/Lanai.h
M clang/lib/Basic/Targets/LoongArch.h
M clang/lib/Basic/Targets/M68k.cpp
M clang/lib/Basic/Targets/M68k.h
M clang/lib/Basic/Targets/Mips.h
M clang/lib/Basic/Targets/NVPTX.h
M clang/lib/Basic/Targets/PPC.h
M clang/lib/Basic/Targets/RISCV.h
M clang/lib/Basic/Targets/Sparc.h
M clang/lib/Basic/Targets/SystemZ.h
M clang/lib/Basic/Targets/WebAssembly.h
M clang/lib/Basic/Targets/X86.h
M clang/lib/Basic/Targets/Xtensa.h
Log Message:
-----------
clang: Change TargetInfo::setCPU to take StringRef (#205278)
The related APIs all use StringRef, so use StringRef for
consistency.
Co-Authored-By: Claude (Opus 4.8) <noreply at anthropic.com>
Commit: 4057dfd091241ab4784d1355422892b48810edf6
https://github.com/llvm/llvm-project/commit/4057dfd091241ab4784d1355422892b48810edf6
Author: PushkarSingh <149073046+iitianpushkar at users.noreply.github.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/lib/Sema/SemaLifetimeSafety.h
M clang/test/Sema/LifetimeSafety/annotation-suggestions.cpp
M clang/test/Sema/LifetimeSafety/invalidations.cpp
M clang/test/Sema/LifetimeSafety/safety-c.c
M clang/test/Sema/LifetimeSafety/safety.cpp
Log Message:
-----------
[LifetimeSafety] Improve destroyed and invalidated diagnostic notes (#204900)
## Summary
Improve Lifetime Safety diagnostic notes by identifying the affected
storage in destruction and invalidation notes.
Examples:
```
{
int value;
ptr = &value;
}
```
Before:
```
note: destroyed here
```
After:
```
note: local variable 'value' is destroyed here
```
For temporaries:
```
note: temporary object is destroyed here
```
For invalidations:
```
note: local variable 'container' is invalidated here
```
For parameters:
```
note: parameter 'container' is invalidated here
```
For explicitly deallocated storage:
```
note: allocated object is freed here
```
## Implementation
The lifetime analysis already knows which object is responsible for a
warning. This change reuses that information when producing the
accompanying destruction, invalidation or deallocation note.
All affected regression tests have been updated to check the complete
diagnostic messages.
Addresses #200234
Commit: 8289d982fb4267d9a5e545276292170a9b0f6700
https://github.com/llvm/llvm-project/commit/8289d982fb4267d9a5e545276292170a9b0f6700
Author: Avhi <oss at avhi.in>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M llvm/lib/Transforms/Utils/FixIrreducible.cpp
A llvm/test/Transforms/FixIrreducible/unsupported-terminator.ll
Log Message:
-----------
[FixIrreducible] Use reportFatalUsageError for unsupported terminators (#205244)
`opt -passes=fix-irreducible` crashed via `llvm_unreachable` on a
`switch` terminator incident to an irreducible cycle header. Such
terminators must be lowered first (`lower-switch`); replace the
`llvm_unreachable` at both sites with `reportFatalUsageError` so the
pass fails gracefully instead of crashing.
Fixes #191978
Signed-off-by: AvhiMaz <avhimazumder5 at outlook.com>
Commit: bad300bda1b936f160f49111b6e67731605c95fb
https://github.com/llvm/llvm-project/commit/bad300bda1b936f160f49111b6e67731605c95fb
Author: Ches Burks <chesburks at gmail.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M llvm/include/llvm/ADT/STLExtras.h
M mlir/include/mlir/Query/Matcher/MatchersInternal.h
Log Message:
-----------
[MLIR][ADT] Improve matcher compatability with C++20 STL (#205255)
When building MLIR on C++20 in Visual Studio with clang-cl, there are
several related compiler errors, grouped by project:
MLIRQueryMatcher
```C
type '_Mybase' (aka 'typename conditional<conjunction_v<is_trivially_destructible<DynMatcher>, is_trivially_move_constructible<DynMatcher>, is_trivially_move_assignable<DynMatcher>>, typename conditional<conjunction_v<is_trivially_destructible<DynMatcher>, is_trivially_copy_constructible<DynMatcher>, is_trivially_copy_assignable<DynMatcher>>, _Non_trivial_move<_Optional_construct_base<DynMatcher>, DynMatcher>, _Non_trivial_copy_assign<_Optional_construct_base<DynMatcher>, DynMatcher>>::type, _Non_trivial_move_assign<_Optional_construct_base<DynMatcher>, DynMatcher>>::type') is not a direct or virtual base of 'std::optional<mlir::query::matcher::DynMatcher>'
no member named '_Value' in 'std::optional<mlir::query::matcher::DynMatcher>'
no member named '_Has_value' in 'std::optional<mlir::query::matcher::DynMatcher>'
no matching function for call to '_Destroy_range'
invalid application of 'sizeof' to an incomplete type 'mlir::query::matcher::DynMatcher'
invalid application of 'alignof' to an incomplete type 'mlir::query::matcher::DynMatcher'
```
MLIRQueryMatcher, MLIRQuery, MLIRQueryLib, and mlir-query
```C
no viable conversion from 'std::vector<DynMatcher>' to 'ArrayRef<DynMatcher>'
incomplete type 'mlir::query::matcher::DynMatcher' used in type trait expression
```
MLIRIR
```C
no matching constructor for initialization of 'llvm::detail::indexed_accessor_range_base<mlir::SuccessorRange, mlir::BlockOperand *, mlir::Block *, mlir::Block *, mlir::Block *>::iterator'
invalid operands to binary expression ('const std::reverse_iterator<llvm::detail::indexed_accessor_range_base<mlir::SuccessorRange, mlir::BlockOperand *, mlir::Block *, mlir::Block *, mlir::Block *>::iterator>' and 'const std::reverse_iterator<llvm::detail::indexed_accessor_range_base<mlir::SuccessorRange, mlir::BlockOperand *, mlir::Block *, mlir::Block *, mlir::Block *>::iterator>')
```
std::vector<T> operations require complete type T for pointer
arithmetic, std::optional<T> has a similar problem.
std::reverse_iterator requires a default constructor for iterator.
Adding a default constructor for iterator, and defining VariadicMatcher
functions after DynMatcher is defined, resolves the errors.
Commit: 70c54ff1d5662f5a9ad22b3f6eeb287cef10236f
https://github.com/llvm/llvm-project/commit/70c54ff1d5662f5a9ad22b3f6eeb287cef10236f
Author: SiHuaN <liyongtai at iscas.ac.cn>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M clang/include/clang/Basic/BuiltinsRISCV.td
M clang/lib/CodeGen/TargetBuiltins/RISCV.cpp
M clang/lib/Headers/riscv_packed_simd.h
M clang/test/CodeGen/RISCV/rvp-intrinsics.c
M cross-project-tests/intrinsic-header-tests/riscv_packed_simd.c
Log Message:
-----------
[Clang][RISCV] packed exchanged add/sub intrinsics (#205251)
Add the `__riscv_{pas,psa,psas,pssa,paas,pasa}_x_*` header wrappers over
new `__builtin_riscv_*` builtins.
Commit: 3f7eb27ad40516fc66139e2043b8fc08bfe66d76
https://github.com/llvm/llvm-project/commit/3f7eb27ad40516fc66139e2043b8fc08bfe66d76
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M llvm/test/CodeGen/X86/madd.ll
Log Message:
-----------
[X86] madd.ll - add SSE42 test coverage (#205299)
Commit: e85f1c1cf0f3b938803c1ce4763b096499a7f701
https://github.com/llvm/llvm-project/commit/e85f1c1cf0f3b938803c1ce4763b096499a7f701
Author: Raphael Isemann <rise at apple.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M lldb/test/API/functionalities/thread/concurrent_events/TestConcurrentManyBreakpoints.py
Log Message:
-----------
[lldb][test] Skip TestConcurrentManyBreakpoints (#205298)
Commit: fbdb644a8b066d9c615077da31f10330e8a2f3d6
https://github.com/llvm/llvm-project/commit/fbdb644a8b066d9c615077da31f10330e8a2f3d6
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M llvm/include/llvm/TargetParser/AMDGPUTargetParser.h
M llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.cpp
M llvm/lib/Target/AMDGPU/AMDGPUHSAMetadataStreamer.cpp
M llvm/lib/Target/AMDGPU/AMDGPUHSAMetadataStreamer.h
M llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
M llvm/lib/Target/AMDGPU/Disassembler/CMakeLists.txt
M llvm/lib/Target/AMDGPU/GCNSubtarget.cpp
M llvm/lib/Target/AMDGPU/GCNSubtarget.h
M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUTargetStreamer.cpp
M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUTargetStreamer.h
M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp
M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.h
M llvm/lib/TargetParser/AMDGPUTargetParser.cpp
Log Message:
-----------
AMDGPU: Move AMDGPUTargetID to AMDGPUTargetParser (#205268)
Commit: 11a928ec5cb21d4830fa8029160f33dc621ace5d
https://github.com/llvm/llvm-project/commit/11a928ec5cb21d4830fa8029160f33dc621ace5d
Author: John Brawn <john.brawn at arm.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp
M llvm/test/Transforms/LoopStrengthReduce/AArch64/use-outside-loop.ll
Log Message:
-----------
[LSR] Don't merge ICmpZero uses outside loop (#205131)
In NarrowSearchSpaceByMergingUsesOutsideLoop don't merge ICmpZero uses
outside the loop with uses inside the loop, as the resulting use will
have a kind that's not ICmpZero, which will mean the compare won't be
expanded correctly later.
Commit: 40dc2b25d8bf421d0194ccb248561d372d168c96
https://github.com/llvm/llvm-project/commit/40dc2b25d8bf421d0194ccb248561d372d168c96
Author: Jianjian Guan <jacquesguan at me.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M clang/lib/CIR/Dialect/Transforms/TargetLowering/CIRABIRewriteContext.cpp
Log Message:
-----------
[CIR] Fix LoadOp creation (#205294)
Commit: 649e3e0e23222418bfbd8a4247875823be71143b
https://github.com/llvm/llvm-project/commit/649e3e0e23222418bfbd8a4247875823be71143b
Author: Nikita Popov <npopov at redhat.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M llvm/lib/Target/X86/X86TargetTransformInfo.cpp
A llvm/test/Transforms/ArgumentPromotion/X86/struct-load.ll
Log Message:
-----------
[X86][TTI] Handle structs in areTypesABICompatible() (#205308)
Fixes a regression from #205106. getValueType() asserts on aggregate
types. Use CompuateValueVTs() to compute the de-aggregated VTs.
Performing argument promotion for struct types seems pretty
dubious to me, but it was previously allowed, so I'm retaining
that behavior. We may want to disable promotion of aggregates
in ArgPromotion entirely though.
Commit: 3bfec5dd4309a53c0df9f9a59dcfa8232746240d
https://github.com/llvm/llvm-project/commit/3bfec5dd4309a53c0df9f9a59dcfa8232746240d
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/Disassembler/CMakeLists.txt
Log Message:
-----------
AMDGPU: Temporarily restore disassembler's dependency on TargetParser, again (#205309)
Reverts part of #205268
Commit: 1e3018523042d1b610b6676cf8d056315f6e3bd7
https://github.com/llvm/llvm-project/commit/1e3018523042d1b610b6676cf8d056315f6e3bd7
Author: Jonas Paulsson <paulson1 at linux.ibm.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M llvm/lib/Target/SystemZ/SystemZInstrInfo.cpp
A llvm/test/CodeGen/SystemZ/target-flags.ll
Log Message:
-----------
[SystemZ] Add serialization strings for some MO target flags. (#203053)
These strings are needed for MIR textual representation: If one is
missing it doesn't work to do "-stop-before=XXX and then
-start-before=XXX".
Commit: 0d49a95036d2d4579d3da4cf7b72f6be0fe33bd5
https://github.com/llvm/llvm-project/commit/0d49a95036d2d4579d3da4cf7b72f6be0fe33bd5
Author: Balázs Benics <benicsbalazs at gmail.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M clang/include/clang/Frontend/CompilerInstance.h
M clang/include/clang/Frontend/CompilerInvocation.h
M clang/include/clang/Frontend/FrontendOptions.h
A clang/include/clang/Frontend/SSAFOptions.h
M clang/include/clang/Options/Options.td
M clang/lib/Frontend/CompilerInvocation.cpp
M clang/lib/FrontendTool/ExecuteCompilerInvocation.cpp
M clang/lib/ScalableStaticAnalysisFramework/Frontend/TUSummaryExtractorFrontendAction.cpp
M clang/unittests/ScalableStaticAnalysisFramework/Frontend/TUSummaryExtractorFrontendActionTest.cpp
Log Message:
-----------
Reland "[clang][ssaf][NFC] Move SSAF flags from FrontendOptions to a dedicated SSAFOptions" (#205312)
Third attempt of #204686
Previous attempt was: #204798
This was last reverted in #205279
This class will help keeping SSAF options apart from generic
FrontendOptions. It is inspired by AnalyzerOptions.
This way all of these SSAF (and future) options will be at a
centralized place.
In preparation of rdar://179151023
---
The previous attempt had issues on Windows with `/permissive` configs.
The issue was that `GENERATE_OPTION_WITH_MARSHALLING` had a generic
lambda capture and that does not constitute as an ODR-use of the
captured name - because that name was only used in an unevaluated context.
This meant that MSVC refused to find the function parameter.
My speculative solution is to follow the established pattern of passing
a pointer to the Opts structure instead of passing it directly as a
reference - similar to how `AnalyzerOptions` are passed around that macro.
Commit: 8b7e7fa49b6296eefe422da168a5595102c39870
https://github.com/llvm/llvm-project/commit/8b7e7fa49b6296eefe422da168a5595102c39870
Author: Julian Nagele <j.nagele at apple.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M llvm/utils/UnicodeData/UnicodeNameMappingGenerator.cpp
Log Message:
-----------
[NFC] UnicodeNameMappingGenerator: restore #include <unordered_map> (#205316)
#204303 removed this include while converting `unordered_map` uses to
`DenseMap`, but `loadDataFiles` still uses `unordered_multimap`.
See
https://ci.swift.org/job/llvm.org/job/clang-stage2-Rthinlto/job/main/360/
```
[2026-06-23T05:46:26.519Z] /Users/ec2-user/jenkins/workspace/m.org_clang-stage2-Rthinlto_main/llvm-project/llvm/utils/UnicodeData/UnicodeNameMappingGenerator.cpp:34:13: error: missing '#include <unordered_map>'; 'unordered_multimap' must be declared before it is used
[2026-06-23T05:46:26.519Z] 34 | static std::unordered_multimap<char32_t, std::string>
[2026-06-23T05:46:26.519Z] | ^
```
Commit: 18ce6f449e0bc913ffa0ffde48f4305187d86bc4
https://github.com/llvm/llvm-project/commit/18ce6f449e0bc913ffa0ffde48f4305187d86bc4
Author: DmitriiMartynov <31047826+DmitriiMartynov at users.noreply.github.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M bolt/include/bolt/Core/BinaryFunction.h
A bolt/test/AArch64/constant-island-reproducible.s
Log Message:
-----------
[BOLT][AArch64] reproducible output with constant islands (#204546)
Optimized binaries from subsequent llvm-bolt runs may sometimes differ
due to the unordered set (SmallPtrSet), even if the input binary and
parameters are the same. Usage of SetVector guarantees a deterministic
sequence of binary functions while keeping each function as a single
instance.
Below you can see two different main functions before the fix after two
llvm-bolt runs (same input binaries, same arguments).
```
0000000000210400 <main>:
210400: 10000140 adr x0, 0x210428 <main+0x28>
210404: f9400000 ldr x0, [x0]
210408: 10000140 adr x0, 0x210430 <main+0x30>
21040c: f9400000 ldr x0, [x0]
210410: 10000180 adr x0, 0x210440 <main+0x40>
210414: f9400000 ldr x0, [x0]
210418: 10000180 adr x0, 0x210448 <main+0x48>
21041c: f9400000 ldr x0, [x0]
210420: d65f03c0 ret
210424: d503201f nop
210428: 00000010 udf #0x10
21042c: 00000000 udf #0x0
210430: 00000020 udf #0x20
210434: 00000000 udf #0x0
210438: d503201f nop
21043c: d503201f nop
210440: 00000030 udf #0x30
210444: 00000000 udf #0x0
210448: 00000040 udf #0x40
21044c: 00000000 udf #0x0
210450: d503201f nop
210454: d503201f nop
0000000000210400 <main>:
210400: 100001c0 adr x0, 0x210438 <main+0x38>
210404: f9400000 ldr x0, [x0]
210408: 100001c0 adr x0, 0x210440 <main+0x40>
21040c: f9400000 ldr x0, [x0]
210410: 100000c0 adr x0, 0x210428 <main+0x28>
210414: f9400000 ldr x0, [x0]
210418: 100000c0 adr x0, 0x210430 <main+0x30>
21041c: f9400000 ldr x0, [x0]
210420: d65f03c0 ret
210424: d503201f nop
210428: 00000030 udf #0x30
21042c: 00000000 udf #0x0
210430: 00000040 udf #0x40
210434: 00000000 udf #0x0
210438: 00000010 udf #0x10
21043c: 00000000 udf #0x0
210440: 00000020 udf #0x20
210444: 00000000 udf #0x0
210448: d503201f nop
21044c: d503201f nop
```
Commit: 572cf32ce413f606162759da6c83b5409aa471da
https://github.com/llvm/llvm-project/commit/572cf32ce413f606162759da6c83b5409aa471da
Author: Lucas <lucasribeirolima974 at gmail.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M clang-tools-extra/docs/clang-tidy/checks/bugprone/assignment-in-selection-statement.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/bad-signal-to-kill-thread.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/copy-constructor-mutates-argument.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/default-operator-new-on-overaligned-type.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/exception-copy-constructor-throws.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/macro-parentheses.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/pointer-arithmetic-on-polymorphic-object.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/random-generator-seed.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/raw-memory-call-on-non-trivial-type.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/reserved-identifier.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/shared-ptr-array-mismatch.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/signal-handler.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/signed-char-misuse.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/sizeof-expression.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/spuriously-wake-up-functions.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/suspicious-memory-comparison.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/unhandled-self-assignment.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/unique-ptr-array-mismatch.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/unsafe-functions.rst
M clang-tools-extra/docs/clang-tidy/checks/cert/err33-c.rst
M clang-tools-extra/docs/clang-tidy/checks/cert/err60-cpp.rst
M clang-tools-extra/docs/clang-tidy/checks/cert/mem57-cpp.rst
M clang-tools-extra/docs/clang-tidy/checks/cert/msc30-c.rst
M clang-tools-extra/docs/clang-tidy/checks/cert/msc32-c.rst
M clang-tools-extra/docs/clang-tidy/checks/cert/msc50-cpp.rst
M clang-tools-extra/docs/clang-tidy/checks/cert/msc51-cpp.rst
M clang-tools-extra/docs/clang-tidy/checks/cert/oop57-cpp.rst
M clang-tools-extra/docs/clang-tidy/checks/concurrency/thread-canceltype-asynchronous.rst
M clang-tools-extra/docs/clang-tidy/checks/misc/anonymous-namespace-in-header.rst
M clang-tools-extra/docs/clang-tidy/checks/misc/no-recursion.rst
M clang-tools-extra/docs/clang-tidy/checks/misc/predictable-rand.rst
M clang-tools-extra/docs/clang-tidy/checks/misc/static-initialization-cycle.rst
M clang-tools-extra/docs/clang-tidy/checks/misc/throw-by-value-catch-by-reference.rst
M clang-tools-extra/docs/clang-tidy/checks/readability/enum-initial-value.rst
Log Message:
-----------
[clang-tidy][NFC] Update CERT wiki link across all clang-tidy docs (#205086)
This patch updates the outdated CMU wiki link in the clang-tidy
documentation.
The old link currently returns a `301 Moved Permanently` redirecting to
the new GitHub Pages location. This patch updates the source file to
point directly to the new destination to prevent future link rot.
Closes #200277
Commit: 3abbf06dd15df2288de06749f0bb8dddc4189294
https://github.com/llvm/llvm-project/commit/3abbf06dd15df2288de06749f0bb8dddc4189294
Author: Zeyi Xu <mitchell.xu2 at gmail.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M clang-tools-extra/clang-tidy/readability/RedundantParenthesesCheck.cpp
M clang-tools-extra/clangd/unittests/DiagnosticsTests.cpp
M clang-tools-extra/docs/ReleaseNotes.rst
Log Message:
-----------
[clang-tidy] Avoid token merging in redundant-parentheses fix-its (#202365)
The readability-redundant-parentheses check emitted fix-its that simply
removed both parentheses. Tools that apply those fix-its directly could
join adjacent tokens and produce invalid code, e.g. `return(0)` becoming
`return0`.
Replace the opening parenthesis with a space when removing it would
merge identifier characters across the removed token.
AI Usage: Test assisted by Codex.
Closes https://github.com/llvm/llvm-project/issues/185108
Commit: 7f567069a4009c651fcfa59d336f6f265ab31c8d
https://github.com/llvm/llvm-project/commit/7f567069a4009c651fcfa59d336f6f265ab31c8d
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M llvm/test/CodeGen/X86/phaddsub.ll
Log Message:
-----------
[X86] phaddsub.ll - update PR39921/PR39936 test case to a vector.reduce.v8i32 call (#205310)
Matches middle-end IR produced from the tests' C++ source since #199872
Commit: 516ab1ad34e2da9e03e3098ae2d731c597629853
https://github.com/llvm/llvm-project/commit/516ab1ad34e2da9e03e3098ae2d731c597629853
Author: Jonas Paulsson <paulson1 at linux.ibm.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M llvm/lib/Target/SystemZ/SystemZMachineScheduler.cpp
M llvm/lib/Target/SystemZ/SystemZMachineScheduler.h
M llvm/test/CodeGen/SystemZ/args-22.ll
M llvm/test/CodeGen/SystemZ/atomicrmw-ops-i128.ll
M llvm/test/CodeGen/SystemZ/bswap-09.ll
M llvm/test/CodeGen/SystemZ/bswap-10.ll
M llvm/test/CodeGen/SystemZ/call-zos-vec.ll
M llvm/test/CodeGen/SystemZ/canonicalize-vars.ll
M llvm/test/CodeGen/SystemZ/codegenprepare-sink-and-for-tm.ll
M llvm/test/CodeGen/SystemZ/dag-combine-05.ll
M llvm/test/CodeGen/SystemZ/dag-combine-07.ll
M llvm/test/CodeGen/SystemZ/fold-masked-merge.ll
M llvm/test/CodeGen/SystemZ/fp-copysign-03.ll
M llvm/test/CodeGen/SystemZ/fp-half-vector-binops.ll
M llvm/test/CodeGen/SystemZ/fp-half-vector-fcmp-select.ll
M llvm/test/CodeGen/SystemZ/inline-asm-fp-int-casting-explicit-regs-zEC12.ll
M llvm/test/CodeGen/SystemZ/inline-asm-fp-int-casting-zEC12.ll
M llvm/test/CodeGen/SystemZ/int-cmp-65.ll
M llvm/test/CodeGen/SystemZ/int-conv-14.ll
M llvm/test/CodeGen/SystemZ/int-conv-15.ll
M llvm/test/CodeGen/SystemZ/int-mul-12.ll
M llvm/test/CodeGen/SystemZ/int-mul-13.ll
M llvm/test/CodeGen/SystemZ/int-uadd-14.ll
M llvm/test/CodeGen/SystemZ/int-usub-13.ll
M llvm/test/CodeGen/SystemZ/machine-combiner-reassoc-fp.ll
M llvm/test/CodeGen/SystemZ/misched-prera-cmp-elim.mir
M llvm/test/CodeGen/SystemZ/misched-prera-latencies.mir
A llvm/test/CodeGen/SystemZ/misched-prera-loads.mir
A llvm/test/CodeGen/SystemZ/misched-prera-pdiffs.mir
M llvm/test/CodeGen/SystemZ/regcoal-subranges-update.mir
M llvm/test/CodeGen/SystemZ/regcoal_remat_empty_subrange.ll
M llvm/test/CodeGen/SystemZ/risbg-04.ll
M llvm/test/CodeGen/SystemZ/rot-03.ll
M llvm/test/CodeGen/SystemZ/shift-12.ll
M llvm/test/CodeGen/SystemZ/shift-13.ll
M llvm/test/CodeGen/SystemZ/shift-14.ll
M llvm/test/CodeGen/SystemZ/shift-15.ll
M llvm/test/CodeGen/SystemZ/shift-16.ll
M llvm/test/CodeGen/SystemZ/shift-17.ll
M llvm/test/CodeGen/SystemZ/soft-float-args.ll
M llvm/test/CodeGen/SystemZ/store_nonbytesized_vecs.ll
M llvm/test/CodeGen/SystemZ/vec-cmp-cmp-logic-select.ll
M llvm/test/CodeGen/SystemZ/vec-cmpsel-01.ll
M llvm/test/CodeGen/SystemZ/vec-eval.ll
M llvm/test/CodeGen/SystemZ/vec-move-23.ll
M llvm/test/CodeGen/SystemZ/vec-mul-07.ll
M llvm/test/CodeGen/SystemZ/vec-perm-12.ll
M llvm/test/CodeGen/SystemZ/vec-trunc-to-i16.ll
M llvm/test/CodeGen/SystemZ/vector-constrained-fp-intrinsics.ll
Log Message:
-----------
[SystemZ] Enable liveness reduction in pre-RA sched strategy. (#188823)
Add some handling of register pressure by scheduling an SU "low" if it closes a
live range (under certain conditions).
As this is checked before latency reduction, the "data-sequnces" check that was
used to selectively enable latency reduction can now be removed.
This gives good improvements on several benchmarks and is also a simplification
of the SystemZPreRASchedStrategy.
Commit: e9d162fabb3eec8af9aa8583e7385e64d9c2a914
https://github.com/llvm/llvm-project/commit/e9d162fabb3eec8af9aa8583e7385e64d9c2a914
Author: adream307 <adream307 at 163.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M clang/include/clang/Basic/BuiltinsX86.td
M clang/lib/AST/ByteCode/InterpBuiltin.cpp
M clang/lib/AST/ExprConstant.cpp
M clang/test/CodeGen/X86/avx2-builtins.c
M clang/test/CodeGen/X86/sse41-builtins.c
Log Message:
-----------
[clang][X86] Add constexpr support for mpsadbw128/256 intrinsics (#202257)
Enable constexpr evaluation for `_mm_mpsadbw_epu8` and
`_mm256_mpsadbw_epu8` (`__builtin_ia32_mpsadbw128`/`mpsadbw256`).
Fixes #157522.
Commit: ebd969f5ffb8f0abb31e8074c84aeea2766d75f5
https://github.com/llvm/llvm-project/commit/ebd969f5ffb8f0abb31e8074c84aeea2766d75f5
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M llvm/include/llvm/TargetParser/AMDGPUTargetParser.h
M llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.cpp
M llvm/lib/Target/AMDGPU/AMDGPUHSAMetadataStreamer.cpp
M llvm/lib/Target/AMDGPU/AMDGPUHSAMetadataStreamer.h
M llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
M llvm/lib/Target/AMDGPU/GCNSubtarget.h
M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUTargetStreamer.h
M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp
M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.h
M llvm/lib/TargetParser/AMDGPUTargetParser.cpp
Log Message:
-----------
AMDGPU: Rename AMDGPUTargetID to TargetID (#205269)
The AMDGPU prefix is redundant with the namespace.
Co-Authored-By: Claude <noreply at anthropic.com>
Commit: 9750a8d66da31ab5d5039a2b8acc90168417c244
https://github.com/llvm/llvm-project/commit/9750a8d66da31ab5d5039a2b8acc90168417c244
Author: Paul Walker <paul.walker at arm.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M clang/lib/AST/ByteCode/Floating.h
M llvm/include/llvm/ADT/APFloat.h
M llvm/include/llvm/CodeGen/SelectionDAGNodes.h
M llvm/include/llvm/IR/Constants.h
M llvm/lib/Analysis/ConstantFolding.cpp
M llvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
M llvm/lib/Target/AArch64/AArch64InstrFormats.td
M llvm/lib/Target/AMDGPU/AMDGPUCodeGenPrepare.cpp
M llvm/lib/Target/AMDGPU/AMDGPUInstructions.td
M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
M llvm/lib/Target/AMDGPU/AMDGPULibCalls.cpp
M llvm/lib/Target/AMDGPU/AMDGPURegBankCombiner.cpp
M llvm/lib/Target/AMDGPU/R600ISelLowering.cpp
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
M llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
M llvm/lib/Target/LoongArch/LoongArchInstrInfo.td
M llvm/lib/Target/NVPTX/NVPTXInstrInfo.td
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/lib/Target/SPIRV/SPIRVCombinerHelper.cpp
M llvm/lib/Target/X86/X86InstrFragments.td
M llvm/lib/Transforms/Scalar/Reassociate.cpp
M llvm/tools/llvm-reduce/deltas/ReduceOperands.cpp
M llvm/unittests/ADT/APFloatTest.cpp
M llvm/unittests/IR/MDBuilderTest.cpp
Log Message:
-----------
[LLVM][ConstantFP] Replace uses of isExactlyValue(+/-1.0) with isOne/isMinusOne. (#204333)
Commit: 7db130470447e9617fe1c169d90933c72254c3da
https://github.com/llvm/llvm-project/commit/7db130470447e9617fe1c169d90933c72254c3da
Author: Paul Walker <paul.walker at arm.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M llvm/test/CodeGen/AArch64/aarch64-bf16-ldst-intrinsics.ll
M llvm/test/CodeGen/AArch64/arm64-build-vector.ll
M llvm/test/CodeGen/AArch64/bf16-select.ll
M llvm/test/CodeGen/AArch64/bf16-shuffle.ll
M llvm/test/CodeGen/AArch64/bf16-vector-bitcast.ll
M llvm/test/CodeGen/AArch64/bf16-vector-shuffle.ll
M llvm/test/CodeGen/AArch64/bf16.ll
M llvm/test/CodeGen/AArch64/load-insert-undef.ll
M llvm/test/CodeGen/AArch64/load-insert-zero.ll
M llvm/test/CodeGen/AArch64/luti-with-sme2.ll
M llvm/test/CodeGen/AArch64/neon-luti.ll
M llvm/test/CodeGen/AArch64/spillfill-sve.ll
M llvm/test/CodeGen/AArch64/sve-extract-fixed-vector.ll
M llvm/test/CodeGen/AArch64/sve-extract-scalable-vector.ll
M llvm/test/CodeGen/AArch64/sve-insert-element.ll
M llvm/test/CodeGen/AArch64/sve-insert-vector.ll
M llvm/test/CodeGen/AArch64/sve-intrinsics-loads.ll
M llvm/test/CodeGen/AArch64/sve-ld1-addressing-mode-reg-reg.ll
M llvm/test/CodeGen/AArch64/sve-st1-addressing-mode-reg-reg.ll
M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-gather-loads-128bit-index.ll
M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-gather-loads-128bit-unscaled-offset.ll
M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-scatter-stores-128bit-index.ll
M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-scatter-stores-128bit-unscaled-offset.ll
M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-tblq.ll
M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-tbxq.ll
M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-uzpq1.ll
M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-uzpq2.ll
M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-zipq1.ll
M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-zipq2.ll
M llvm/test/CodeGen/AArch64/sve2p1-vector-shuffles.ll
M llvm/test/CodeGen/AArch64/vector-extract-last-active.ll
M llvm/test/CodeGen/AArch64/zeroing-forms-counts-not.ll
M llvm/test/CodeGen/ARM/bf16-create-get-set-dup.ll
M llvm/test/CodeGen/ARM/bf16-getlane-with-fp16.ll
M llvm/test/CodeGen/ARM/bf16-imm.ll
M llvm/test/CodeGen/ARM/bf16-intrinsics-ld-st.ll
M llvm/test/CodeGen/ARM/bf16-shuffle.ll
M llvm/test/CodeGen/ARM/bfloat.ll
Log Message:
-----------
[LLVM][CodeGen] Remove +bf16 for ARM/AArch64 tests that don't strictly need the feature flag. (#204199)
Tests that use bfloat purely as an opaque datatype should not use
instructions that require the bf16 feature.
Commit: d09868bc749f6bcbaa09bbbed7a140aa051aabf7
https://github.com/llvm/llvm-project/commit/d09868bc749f6bcbaa09bbbed7a140aa051aabf7
Author: Charles Zablit <c_zablit at apple.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M .ci/green-dragon/lldb-windows.groovy
Log Message:
-----------
[CI] switch to BuildTools variant of Visual Studio (#201335)
Follow up to:
- https://github.com/swiftlang/swift-docker/pull/566
- https://github.com/swiftlang/swift-docker/pull/565
It's no longer necessary to install packaging at runtime and the new
image will use `BuildTools`.
Commit: e3f6a42532749c55008e38e3e19186ef6b0c0d17
https://github.com/llvm/llvm-project/commit/e3f6a42532749c55008e38e3e19186ef6b0c0d17
Author: Lang Hames <lhames at gmail.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M orc-rt/unittests/AllocActionTest.cpp
M orc-rt/unittests/SPSAllocActionTest.cpp
Log Message:
-----------
[orc-rt] Split AllocAction tests by SPS dependency. (#205322)
Rewrites AllocActionTest.cpp's integration tests (RunBasicAction,
RunFinalize*) to drive AllocActionFunction::handle with a small local
IntPtrDeserializer / IdentitySerializer pair instead of going through
SPS, and moves the existing SPS-using AllocAction tests into
SPSAllocActionTest.cpp.
Also adds two new SPS tests covering previously-uncovered paths:
- RunActionWithSPSArgsAndWFBReturn — SPS argument deserialization plus
AllocActionSPSSerializer's identity (WrapperFunctionBuffer) overload.
- RunActionWithUndecodableArgs — the deserialization-failure path in
AllocActionFunction::handle.
After the split, an AllocActionTest failure indicates problems with the
AllocAction machinery, and an SPSAllocActionTest failure without a
corresponding AllocActionTest failure indicates an SPS encoding /
decoding issue for AllocAction.
Commit: 844136348ef4c03e84bed0a51d8557d53f466b0d
https://github.com/llvm/llvm-project/commit/844136348ef4c03e84bed0a51d8557d53f466b0d
Author: Aaron Ballman <aaron at aaronballman.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M clang/include/clang/Basic/Attr.td
M clang/include/clang/Basic/AttrDocs.td
M clang/test/AST/undocumented-attrs.cpp
Log Message:
-----------
Document the [[clang::annotate]] attribute (#203303)
The new documentation mirrors the existing docs for annotate_type.
Commit: 25f0443ddccf6a03d9b432c246ce97eb535cab52
https://github.com/llvm/llvm-project/commit/25f0443ddccf6a03d9b432c246ce97eb535cab52
Author: Aditya Medhane <sherlockedaditya at gmail.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M llvm/lib/Frontend/OpenMP/OMPContext.cpp
Log Message:
-----------
[OpenMP] Remove unused isStrictSubset template (NFC) (#202987)
The `isStrictSubset` `ArrayRef<T>` template has no callers, so it never
instantiates and trips `-Wunused-template`. The `VariantMatchInfo`
overload does the work that's actually used, and `isSubset` stays
untouched. Removing the dead template.
NFC.
Part of #202945.
Commit: 59c5c39a76e04fc8cd3af39748e256ca1e6fcda8
https://github.com/llvm/llvm-project/commit/59c5c39a76e04fc8cd3af39748e256ca1e6fcda8
Author: Aaron Ballman <aaron at aaronballman.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M clang/test/AST/undocumented-attrs.cpp
Log Message:
-----------
Fix test after 844136348ef4c03e84bed0a51d8557d53f466b0d (#205328)
Commit: 99c80fefdfac69a47773b66f35ae638d63ce5758
https://github.com/llvm/llvm-project/commit/99c80fefdfac69a47773b66f35ae638d63ce5758
Author: Raphael Isemann <rise at apple.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M lldb/test/API/macosx/thread_suspend/main.c
Log Message:
-----------
[lldb] Fix race/timeout in TestInternalThreadSuspension (#203202)
This test launches a thread and then waits for a signal from the
launched thread. Below is one possible interleaving, where the
`pthread_cond_signal` (2) wins the race and becomes a no-op while (3) is
locking until the test times out.
```
void *
suspend_func (void *unused) {
[...]
// 2. Created thread reaches this and signals.
pthread_cond_signal(&signal_cond);
[...]
}
int main() {
pthread_mutex_lock(&signal_mutex);
// 1. Thread is created
pthread_create(&suspend_thread, NULL, suspend_func, NULL);
// Enable this to make race reliable:
// sleep(1);
// 3. We start waiting on signal_cond, but 2. already executed.
pthread_cond_wait(&signal_cond, &signal_mutex);
```
This patch guards (2) with signal_mutex so it can only be executed after
pthread_cond_wait unlocks signal_mutex.
Commit: e9aec194f1e034f7b548240bd76b623d80bac034
https://github.com/llvm/llvm-project/commit/e9aec194f1e034f7b548240bd76b623d80bac034
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M llvm/include/llvm/IR/InstrTypes.h
M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
M llvm/test/Transforms/InstCombine/assume-loop-align.ll
M llvm/test/Transforms/InstCombine/assume.ll
M llvm/test/Transforms/PhaseOrdering/AArch64/std-find.ll
Log Message:
-----------
Reapply "[InstCombine] Merge consecutive assumes" (#205177) (#205324)
The crash was caused by using `getOperandBundle` for an assume, which
requires that the operand bundles are unique. This isn't guaranteed by
assume bundles. This patch adds `hasOperandBundle` instead, which
doesn't have the same constraint.
Original message:
This should make assumes a bit more efficient, since it removes a few
instructions. This should also help with optimizations that are
limited in how many instructions they step through.
This reverts commit 3f0ef1efb26206c3f5d5621d86d740c7f466c67b.
Commit: b713aaedb6eedd7d20f666038d945e50eafd4c27
https://github.com/llvm/llvm-project/commit/b713aaedb6eedd7d20f666038d945e50eafd4c27
Author: David Green <david.green at arm.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M llvm/test/CodeGen/ARM/vcombine.ll
Log Message:
-----------
[ARM] Regenerate vcombine.ll. NFC (#205335)
Commit: 0a991b71e78646322876c8db487084ec1840184a
https://github.com/llvm/llvm-project/commit/0a991b71e78646322876c8db487084ec1840184a
Author: Joseph Huber <huberjn at outlook.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M llvm/runtimes/CMakeLists.txt
Log Message:
-----------
[LLVM][Runtimes] Forward 'LLVM_LIBDIR_SUFFIX' to runtimes by default (#205182)
Summary:
This option controls the logical path of the installed libraries. The
runtimes obften reach into libraries, or want to install to the same
location as the main build. Previously you had to set this per-runtime,
but we should likely forward it by default.
Fixes: https://github.com/llvm/llvm-project/issues/159762
Commit: d2850baf0ad99c662e224bb522aebdeb09ff8e1b
https://github.com/llvm/llvm-project/commit/d2850baf0ad99c662e224bb522aebdeb09ff8e1b
Author: Joseph Huber <huberjn at outlook.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M clang/include/clang/Basic/Attr.td
M clang/test/CodeGen/convergent-functions.cpp
Log Message:
-----------
[Clang] Accept 'noconvergent' attributes outside of CUDA (#205247)
Summary:
There is no reason that `convergent` should be a generic attributes but
not `noconvergent`.
Commit: 9a5e3fdc79cb374550bbf0cac8ad02d8a4ce10ab
https://github.com/llvm/llvm-project/commit/9a5e3fdc79cb374550bbf0cac8ad02d8a4ce10ab
Author: Joseph Huber <huberjn at outlook.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M llvm/docs/CommandGuide/llvm-offload-binary.rst
A llvm/test/tools/llvm-offload-binary/member-extract.test
M llvm/tools/llvm-offload-binary/llvm-offload-binary.cpp
Log Message:
-----------
[llvm-offload-binary] Add `member` key to single out archive members (#205170)
Summary:
Currently, archives offer three approaches.
1. `--archive` which takes an archive and puts all the output in a new
archive
2. No filename, which outputs based on the member names
3. Filename, which just matches everything.
This has a gap for when people wnat a single file without relying on
implicit naming that dumps all the contents to the CWD.
This PR adds `member` which lets you specify the member names as you
would get from `ar t libfoo.a` for this.
Commit: a06ac5d5d555bf01b9ef4ad233a9d3d962b25c43
https://github.com/llvm/llvm-project/commit/a06ac5d5d555bf01b9ef4ad233a9d3d962b25c43
Author: CarolineConcatto <caroline.concatto at arm.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.h
M llvm/lib/Target/AArch64/AArch64InstrInfo.td
M llvm/test/CodeGen/AArch64/arm64-fpenv.ll
Log Message:
-----------
[AArch64] Add flag to conditionally write FPMR (#203911)
Add a AArch64 codegen flag to make llvm.aarch64.set.fpmr avoid writing
FPMR when it already contains the requested value.
By default, llvm.aarch64.set.fpmr continues to lower directly to an MSR
FPMR instruction. With -aarch64-conditional-fpmr-write, the backend
lowers the intrinsic to an MRS/MSR conditional branch sequence.
This is based on the initial implementation from:
https://github.com/llvm/llvm-project/pull/114248
However this PR keeps the conditional FPMR write sequence behind a
codegen flag. One reason to change the codegen lowering is because GCC
emits the conditional branch sequence unconditionally. LLVM preserves
the existing direct MSR lowering by default.
Commit: 592e9d3e6a82b13aeccfc755aa5025b41cbfc260
https://github.com/llvm/llvm-project/commit/592e9d3e6a82b13aeccfc755aa5025b41cbfc260
Author: Balázs Benics <benicsbalazs at gmail.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M clang/include/clang/ScalableStaticAnalysisFramework/Core/TUSummary/TUSummaryBuilder.h
M clang/include/clang/ScalableStaticAnalysisFramework/Core/TUSummary/TUSummaryExtractor.h
M clang/lib/ScalableStaticAnalysisFramework/Analyses/PointerFlow/PointerFlowExtractor.cpp
M clang/lib/ScalableStaticAnalysisFramework/Core/TUSummary/TUSummaryExtractor.cpp
M clang/lib/ScalableStaticAnalysisFramework/Frontend/TUSummaryExtractorFrontendAction.cpp
M clang/unittests/ScalableStaticAnalysisFramework/Analyses/CallGraph/CallGraphExtractorTest.cpp
M clang/unittests/ScalableStaticAnalysisFramework/Analyses/PointerFlow/PointerFlowTest.cpp
M clang/unittests/ScalableStaticAnalysisFramework/Analyses/UnsafeBufferUsage/UnsafeBufferUsageTest.cpp
M clang/unittests/ScalableStaticAnalysisFramework/Registries/SummaryExtractorRegistryTest.cpp
M clang/unittests/ScalableStaticAnalysisFramework/TUSummaryBuilderTest.cpp
Log Message:
-----------
Reland "[clang][ssaf][NFC] Make SSAFOptions available in Builders and Extractors" (#205334)
The original version of this was reverted part of #205279 because I
didn't know if this or the other patch caused the Windows build
failures. It turns out this patch is fine. I'm relating this now.
---
Now that we have SSAFOptions, it would make it a lot more ergonomic if
it was accessible from builders and extractors.
This PR does exactly that.
Part of rdar://179151023
Co-authored-by: Jan Korous <jkorous at apple.com>
Co-authored-by: Claude Opus 4.7 <noreply at anthropic.com>
Commit: 81f06366f805c4d60da39c1c9b2eaa4443ef27fc
https://github.com/llvm/llvm-project/commit/81f06366f805c4d60da39c1c9b2eaa4443ef27fc
Author: Lang Hames <lhames at gmail.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M orc-rt/include/CMakeLists.txt
A orc-rt/include/orc-rt/MacroUtils.h
M orc-rt/unittests/CMakeLists.txt
A orc-rt/unittests/MacroUtilsTest.cpp
Log Message:
-----------
[orc-rt] Add MacroUtils.h header for general purpose macros. (#205337)
For now just contains ORC_RT_DEPAREN, a macro for stripping parentheses
from its argument. This will be used in an upcoming commit.
Commit: 7a0829e41228513299c5108685b0bc127463c6a1
https://github.com/llvm/llvm-project/commit/7a0829e41228513299c5108685b0bc127463c6a1
Author: Mirko Brkušanin <Mirko.Brkusanin at amd.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M clang/include/clang/Basic/OffloadArch.h
M clang/lib/Basic/OffloadArch.cpp
M clang/lib/CodeGen/CGOpenMPRuntimeGPU.cpp
M clang/test/CodeGenOpenCL/builtins-amdgcn-gfx11.cl
M clang/test/Driver/amdgpu-macros.cl
M clang/test/Driver/amdgpu-mcpu.cl
M clang/test/Misc/target-invalid-cpu-note/amdgcn.c
M clang/test/Misc/target-invalid-cpu-note/nvptx.c
M llvm/docs/AMDGPUUsage.rst
M llvm/include/llvm/BinaryFormat/ELF.h
M llvm/include/llvm/TargetParser/AMDGPUTargetParser.def
M llvm/lib/Target/AMDGPU/AMDGPU.td
M llvm/lib/Target/AMDGPU/GCNProcessors.td
M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUTargetStreamer.cpp
M llvm/lib/TargetParser/AMDGPUTargetParser.cpp
M llvm/test/CodeGen/AMDGPU/directive-amdgcn-target.ll
M llvm/test/CodeGen/AMDGPU/elf-header-flags-mach.ll
M llvm/test/Object/AMDGPU/elf-header-flags-mach.yaml
M llvm/test/tools/llvm-objdump/ELF/AMDGPU/subtarget.ll
M llvm/test/tools/llvm-readobj/ELF/AMDGPU/elf-headers.test
Log Message:
-----------
[AMDGPU] Define new target gfx1154 (#204816)
Commit: f17453ef75fc4acb0bb8c149bfcc07409881676e
https://github.com/llvm/llvm-project/commit/f17453ef75fc4acb0bb8c149bfcc07409881676e
Author: Longsheng Mou <longshengmou at gmail.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M mlir/lib/Dialect/MemRef/Transforms/RuntimeOpVerification.cpp
M mlir/test/Dialect/MemRef/runtime-verification.mlir
Log Message:
-----------
[mlir][memref] Add SCFDialect dependency to RuntimeOpVerification (#205241)
Explicitly load SCFDialect as a dependent dialect in
RuntimeOpVerification to avoid unregistered dialect errors when
generating `scf.if`/`scf.yield` ops. Fixes #204295.
Commit: 1416b5f6de966f29e6b9c4f868c330e693ce8952
https://github.com/llvm/llvm-project/commit/1416b5f6de966f29e6b9c4f868c330e693ce8952
Author: Wooseok Lee <wolee at amd.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
M llvm/lib/Target/AMDGPU/SIISelLowering.h
M llvm/test/CodeGen/AMDGPU/uaddo.ll
M llvm/test/CodeGen/AMDGPU/usubo.ll
Log Message:
-----------
[AMDGPU][DAGCombiner] Fix UADDO/USUBO_CARRY carry-out miscompile and remove redundant AMDGPU combine (#204362)
performAddCarrySubCarryCombine in SIISelLowering folded:
uaddo_carry((x+y), 0, cc) -> uaddo_carry(x, y, cc)
usubo_carry((x-y), 0, cc) -> usubo_carry(x, y, cc)
Both produce the same value but differ in carry-out when x+y (or x-y)
wraps. The fold was missing a !N->hasAnyUseOfValue(1) guard, giving
wrong carry values to consumers. E.g. x=0xFFFFFFFF, y=1, cc=0:
original: ((x+y) mod 2^32 + cc) >= 2^32 = 0 (correct)
folded: (x+y+cc) >= 2^32 = 1 (wrong)
The generic visitUADDO_CARRY (DAGCombiner.cpp) already handles
the UADDO_CARRY/ADD fold with the correct guard. Since target combines
fire before generic ones, the AMDGPU ADD arm was a buggy duplicate.
The USUBO_CARRY/SUB arm is produced by AMDGPU's performAddCombine
which converts add(sub(v,a), sext(cmp)) -> usubo_carry(sub(v,a), 0,
cmp).
There was no generic equivalent for this pattern.
Fix by adding the symmetric fold to visitUSUBO_CARRY:
(usubo_carry (sub X, Y), 0, Carry) -> (usubo_carry X, Y, Carry)
with the same guard, then removing performAddCarrySubCarryCombine
from SIISelLowering entirely as it is now fully subsumed.
Tests: Add AMDGPU tests in uaddo.ll and usubo.ll covering the
carry-out-used (fold suppressed) and carry-out-unused (fold applied)
cases, autogenerated with update_llc_test_checks.py.
Commit: 45a65bb48b5925707f43d08e30df2263a5e4e268
https://github.com/llvm/llvm-project/commit/45a65bb48b5925707f43d08e30df2263a5e4e268
Author: Alex Kremer <godexsoft at gmail.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M libcxx/docs/FeatureTestMacroTable.rst
M libcxx/docs/ReleaseNotes/23.rst
M libcxx/docs/Status/Cxx29Papers.csv
M libcxx/include/__expected/expected.h
M libcxx/include/version
M libcxx/test/libcxx/utilities/expected/nodiscard.verify.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/expected.version.compile.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/version.version.compile.pass.cpp
A libcxx/test/std/utilities/expected/expected.expected/observers/has_error.pass.cpp
A libcxx/test/std/utilities/expected/expected.void/observers/has_error.pass.cpp
M libcxx/utils/generate_feature_test_macro_components.py
Log Message:
-----------
[libc++] P3798R1: The unexpected in std::expected (#204826)
Closes #204394
Implements P3798 and related tests.
Applies the paper as a Defect Report per https://wg21.link/P3798/github.
Commit: ab1ef459069d1dbf4ee9e5a802537ababe294b25
https://github.com/llvm/llvm-project/commit/ab1ef459069d1dbf4ee9e5a802537ababe294b25
Author: John Paul Jepko <john.jepko at ericsson.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M clang/test/SemaCXX/warn-memset-bad-sizeof.cpp
Log Message:
-----------
[Clang][Test] Fix warn-memset-bad-sizeof.cpp after #183004 (#205201)
The new `-Wstringop-overread` warning (added in #183004) fires on the
SemaCXX test warn-memset-bad-sizeof.cpp. This happens on targets where
unsigned matches size_t, such as 32-bit ARM, because clang will match
the declaration with the builtin prototype (specifically, argument
`unsigned n`).
Suppress the warning since this test is exercising
`-Wsizeof-pointer-memaccess`, not source buffer overreads.
Fixes:
- https://lab.llvm.org/buildbot/#/builders/154/builds/32985
- https://lab.llvm.org/buildbot/#/builders/135/builds/3888
- https://lab.llvm.org/buildbot/#/builders/38/builds/9363
Commit: 60b3b30897b3c9549d2083accbba26e1ca8bf44e
https://github.com/llvm/llvm-project/commit/60b3b30897b3c9549d2083accbba26e1ca8bf44e
Author: Jiahao Guo <eoonguo at gmail.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M clang/utils/TableGen/CIRLoweringEmitter.cpp
Log Message:
-----------
[CIR][NFC] Rename zero result flag variable (#205242)
###summary
This is a follow up of https://github.com/llvm/llvm-project/pull/202273
Just a light patch for renaming the zero result flag variable.
Commit: d957d2f2d8e718bd1101e7afad6be62901304cd1
https://github.com/llvm/llvm-project/commit/d957d2f2d8e718bd1101e7afad6be62901304cd1
Author: Balázs Benics <benicsbalazs at gmail.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/SVals.h
Log Message:
-----------
[analyzer] Allow SVals as llvm::Immutable{Map,Set} keys (#205319)
This will allow maps and sets being declared:
```
REGISTER_MAP_WITH_PROGRAMSTATE(MyMap, SVal, SVal)
REGISTER_SET_WITH_PROGRAMSTATE(MySet, SVal)
```
Commit: 86d380e54fdb637be039f750651421c5b812eae4
https://github.com/llvm/llvm-project/commit/86d380e54fdb637be039f750651421c5b812eae4
Author: Pavel Labath <pavel at labath.sk>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M libc/config/linux/aarch64/entrypoints.txt
M libc/config/linux/riscv/entrypoints.txt
M libc/config/linux/x86_64/entrypoints.txt
M libc/include/llvm-libc-macros/linux/sched-macros.h
M libc/include/sched.yaml
M libc/src/sched/CMakeLists.txt
M libc/src/sched/linux/CMakeLists.txt
A libc/src/sched/linux/sched_clrcpuset.cpp
A libc/src/sched/sched_clrcpuset.h
M libc/test/src/sched/CMakeLists.txt
M libc/test/src/sched/cpu_count_test.cpp
Log Message:
-----------
[libc] Add CPU_CLR(_S) macros (#204590)
This patch implements CPU_CLR and CPU_CLR_S macros following the
existing CPU_SET pattern. The macro just forwards to an internal entry
point.
Assisted by Gemini.
Commit: 8ea065becdeb47687ce9717adc2c50e68b939b87
https://github.com/llvm/llvm-project/commit/8ea065becdeb47687ce9717adc2c50e68b939b87
Author: Lang Hames <lhames at gmail.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M orc-rt/include/orc-rt/SPSAllocAction.h
M orc-rt/unittests/SPSAllocActionTest.cpp
Log Message:
-----------
[orc-rt] Add ORC_RT_SPS_ALLOC_ACTION helper macro. (#205339)
ORC_RT_SPS_ALLOC_ACTION(Name, SPSArgs, Handle) is shorthand for defining
an allocation-action wrapper function whose arguments are SPS-encoded.
It expands to:
static orc_rt_WrapperFunctionBuffer Name(const char *ArgData,
size_t ArgSize);
with a body that deserializes ArgData via
SPSAllocActionFunction<SPSArgs...> and forwards the decoded arguments to
Handle.
SPSArgs is given as a parenthesized comma-separated list of SPS argument
types — e.g. (int32_t, int32_t) — stripped at expansion time via
ORC_RT_DEPAREN.
Commit: 3f526756827fecd80111d1f065b879d292518480
https://github.com/llvm/llvm-project/commit/3f526756827fecd80111d1f065b879d292518480
Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M clang/test/CXX/drs/cwg5xx.cpp
M clang/www/cxx_dr_status.html
Log Message:
-----------
[clang] Update C++ DR status page (#205342)
The post-Brno draft will not be out for three more weeks, but Brno
updates for Core issues statuses are already trickling in.
Notably, [CWG507](https://cplusplus.github.io/CWG/issues/507.html)
"Ambiguity with built-in binary operator candidates for class object
convertible to built-in type", which used to be marked as a duplicate of
[CWG260](https://cplusplus.github.io/CWG/issues/260.html) "User-defined
conversions and built-in `operator=`", is open again, presumably because
it contains an example that goes beyond the scope of CWG260. Relatively
recent CWG thread that might be related (WG21 access required):
[link](https://lists.isocpp.org/core/2025/08/18478.php).
Commit: a4a59deb8dc50540c2e2f8b4c0b4addf30761a46
https://github.com/llvm/llvm-project/commit/a4a59deb8dc50540c2e2f8b4c0b4addf30761a46
Author: David Sherwood <david.sherwood at arm.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M llvm/test/Transforms/LoopVectorize/AArch64/interleave-with-gaps.ll
Log Message:
-----------
[LV][NFC] Add SVE tests for masked interleaved accesses with gaps (#205330)
Commit: 7337fe1b09309fedbbdff2eb34043a0821523109
https://github.com/llvm/llvm-project/commit/7337fe1b09309fedbbdff2eb34043a0821523109
Author: Cyndy Ishida <cyndy_ishida at apple.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M clang/lib/Basic/Builtins.cpp
A clang/test/AST/builtin-name-registration.c
Log Message:
-----------
[clang] Avoid per-builtin std::string allocation in initializeBuiltins (#205162)
`initializeBuiltins()` previously registered every builtin through an
allocated std::string every time a `CompilerInstance` initialized. This
was hot for module-heavy builds, where each built module re-registered
the full set.
Add `getBuiltinNameInto()`, which writes the name into a caller-provided
buffer and returns a `StringRef`, with no allocation when the shard has
no prefix (the common case). `Info::getName` now delegates to it so the
two cannot diverge. This change is output behavior-preserving.
Resolves: rdar://178672190
Commit: f8aa5f66209d69c2c1f033317a4b4be961f4a78c
https://github.com/llvm/llvm-project/commit/f8aa5f66209d69c2c1f033317a4b4be961f4a78c
Author: Brian Cain <brian.cain at oss.qualcomm.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M llvm/lib/Target/Hexagon/HexagonAsmPrinter.cpp
M llvm/lib/Target/Hexagon/HexagonAsmPrinter.h
M llvm/lib/Target/Hexagon/HexagonISelLowering.cpp
M llvm/lib/Target/Hexagon/HexagonISelLowering.h
M llvm/lib/Target/Hexagon/HexagonMCInstLower.cpp
M llvm/lib/Target/Hexagon/HexagonPseudo.td
M llvm/lib/Target/Hexagon/HexagonTargetMachine.cpp
A llvm/test/CodeGen/Hexagon/kcfi.ll
Log Message:
-----------
[Hexagon] Add KCFI support for forward-edge control flow integrity (#191746)
Add KCFI support for Hexagon. KCFI provides lightweight forward-edge CFI
for indirect calls by embedding a type hash before each function and
checking it before indirect calls, without requiring LTO.
Commit: 34b6e1c3b07d2d18b3112841992378b1057d87cc
https://github.com/llvm/llvm-project/commit/34b6e1c3b07d2d18b3112841992378b1057d87cc
Author: Chirag Wattamwar <119049661+ChiragSW at users.noreply.github.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M mlir/include/mlir/Dialect/Arith/IR/ArithOps.td
M mlir/lib/Dialect/Arith/IR/ArithOps.cpp
M mlir/test/Dialect/Arith/invalid.mlir
M mlir/test/Dialect/Tosa/tosa-arith-const-to-tosa-const.mlir
M mlir/test/Dialect/common_folders.mlir
M mlir/test/lib/Dialect/Test/TestOps.td
Log Message:
-----------
[mlir][arith] Reject signful integer element types in `arith.constant` (#204937)
Update arith.constant verification to reject integer constants with
signed and unsigned element types including shaped constants like
tensors and vectors, as the arith dialect does not support
signed/unsigned types.
This incidentally address cases where further lowering would crash (e.g.
SPIR-V constant lowering used IntegerAttr::getInt() on an unsigned
integer attribute from tensor<2xui8>)
Fixes #204911
Commit: dc658f1f11d3bf1da4243be9671dcdab597288b5
https://github.com/llvm/llvm-project/commit/dc658f1f11d3bf1da4243be9671dcdab597288b5
Author: Jeff Bailey <jbailey at raspberryginger.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M libc/config/linux/aarch64/entrypoints.txt
M libc/config/linux/arm/entrypoints.txt
M libc/config/linux/riscv/entrypoints.txt
M libc/config/linux/x86_64/entrypoints.txt
M libc/docs/CMakeLists.txt
M libc/docs/headers/index.rst
M libc/include/CMakeLists.txt
A libc/include/libgen.yaml
M libc/src/CMakeLists.txt
M libc/src/__support/CPP/string_view.h
A libc/src/libgen/CMakeLists.txt
A libc/src/libgen/basename.cpp
A libc/src/libgen/basename.h
A libc/src/libgen/dirname.cpp
A libc/src/libgen/dirname.h
M libc/test/src/CMakeLists.txt
A libc/test/src/libgen/CMakeLists.txt
A libc/test/src/libgen/basename_death_test.cpp
A libc/test/src/libgen/basename_test.cpp
A libc/test/src/libgen/dirname_death_test.cpp
A libc/test/src/libgen/dirname_test.cpp
A libc/utils/docgen/libgen.yaml
Log Message:
-----------
Reland "[libc] Implement basename and dirname in libgen.h #204554" (#205352)
Added the POSIX standard functions basename and dirname under a new libgen.h header. The implementations modify the input path in-place using cpp::string_view to determine boundaries safely.
Added find_last_not_of to cpp::string_view to support trailing slash removal.
Implemented:
libc/include/libgen.yaml, libgen.h.def: Public API definitions.
libc/src/libgen/basename.cpp, dirname.cpp: Generic implementations.
libc/test/src/libgen/: Unit and hermetic tests.
Registered the new entrypoints for all active Linux targets (x86_64, aarch64, arm, riscv) and added docgen configuration.
The tests are skipped when using ASan because death tests do not currently work with them.
Assisted-by: Automated tooling, human reviewed.
Commit: 7befba8a76f3ba54b584cbb4b673d749f34054af
https://github.com/llvm/llvm-project/commit/7befba8a76f3ba54b584cbb4b673d749f34054af
Author: Aaron Ballman <aaron at aaronballman.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
Log Message:
-----------
Silence conversion warning; NFC (#205357)
This was triggering a conversion warning in MSVC.
Commit: 820314fae19408e906ef8144573fca292b411613
https://github.com/llvm/llvm-project/commit/820314fae19408e906ef8144573fca292b411613
Author: Qiongsi Wu <qiongsiwu at gmail.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M clang/lib/Tooling/DependencyScanningTool.cpp
M clang/test/ClangScanDeps/modules-full-by-mult-mod-names-diagnostics.c
Log Message:
-----------
[clang][Dependency Scanning] Fix the Input File for By-Name Lookup's Input CC1 Command Line (#205214)
When the command line is a CC1 command, the scanner does not append the
fake input file to the command line when initializing the compiler
instance. This PR fixes that by passing the compiler instance
initialization the correct modified command line. Without specifying the
fake input file, clang picks up `-` as its input.
An observable behavior is that the diagnostics are pointing to incorrect
files for cc1 commands, hence a test is added to check the diagnostics
messages contain the correct file name.
Commit: 0ce76c77c9e0ee15905d76500bfa0235c2ac3741
https://github.com/llvm/llvm-project/commit/0ce76c77c9e0ee15905d76500bfa0235c2ac3741
Author: owenca <owenpiano at gmail.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M clang/lib/Format/CMakeLists.txt
Log Message:
-----------
[clang-format] Don't check the format if diff is unavailable (#205036)
Commit: fdb70dfca31d80ed3a5231819aaab8c54b12b658
https://github.com/llvm/llvm-project/commit/fdb70dfca31d80ed3a5231819aaab8c54b12b658
Author: Craig Topper <craig.topper at sifive.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfo.cpp
M llvm/lib/Target/RISCV/RISCVInstrInfoP.td
M llvm/lib/Target/RISCV/RISCVMoveMerger.cpp
M llvm/test/CodeGen/RISCV/calling-conv-p-ext-vector.ll
M llvm/test/CodeGen/RISCV/make-compressible-zilsd.mir
M llvm/test/CodeGen/RISCV/rv32-merge-non-arg-reg.mir
M llvm/test/CodeGen/RISCV/rv32-move-merge-crash.ll
M llvm/test/CodeGen/RISCV/rv32-move-merge.ll
M llvm/test/CodeGen/RISCV/rv32p.ll
M llvm/test/CodeGen/RISCV/rvp-simd-64.ll
M llvm/test/MC/RISCV/rv32p-aliases-valid.s
Log Message:
-----------
[RISCV][P-ext] Add mvd alias for padd.dw rd, zero, rs. Use for copy idiom. (#205223)
See https://github.com/riscv/riscv-p-spec/pull/304
I've refactored the MoveMerge code to use copyPhysReg to avoid duplication.
Commit: 62c9839e109fa53c0cd52cddb4f28d415a5e7f74
https://github.com/llvm/llvm-project/commit/62c9839e109fa53c0cd52cddb4f28d415a5e7f74
Author: Craig Topper <craig.topper at sifive.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
M llvm/test/CodeGen/RISCV/rvv/vp-splice-mask-vectors.ll
M llvm/test/CodeGen/RISCV/rvv/vp-splice.ll
Log Message:
-----------
[LegalizeTypes] Fix incorrect EVL1 clip in SplitVecRes_VP_SPLICE. (#205021)
We were incorrectly clipping EVL1 to be a valid index for the VT, in the
range [0, VT.getNumVectorElements() - 1]. It is legal for EVL1 to be
equal to VT.getNumVectorElements() here so that was incorrect.
In case it isn't clear, the clip is necessary to prevent turning poison
into UB by accessing outside the temporary stack object.
Commit: 83528bad5c9b9722280d284a7c35b06d560003bc
https://github.com/llvm/llvm-project/commit/83528bad5c9b9722280d284a7c35b06d560003bc
Author: Yihan Wang <yronglin777 at gmail.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M clang-tools-extra/clangd/unittests/CodeCompleteTests.cpp
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Lex/Preprocessor.h
M clang/lib/Lex/PPCaching.cpp
M clang/lib/Lex/PPLexerChange.cpp
M clang/lib/Lex/Preprocessor.cpp
Log Message:
-----------
[clangd] fix preprocessor caching-lexer state tracking (#203716)
Fix `recomputeCurLexerKind` to avoid default fallback to
`CurLexerCallback = CLK_CachingLexer;`.
This prevents code-completion EOF handling from accidentally restoring
CLK_CachingLexer while a tentative parse is still active, which could
trigger a caching lexer re-entry assertion in clangd signature help.
Fixes https://github.com/llvm/llvm-project/issues/200677
---------
Signed-off-by: yronglin <yronglin777 at gmail.com>
Commit: db31a66571857ac2991e0ade1165a0fa81c4fbd1
https://github.com/llvm/llvm-project/commit/db31a66571857ac2991e0ade1165a0fa81c4fbd1
Author: Felipe Novais <felipenovais at users.noreply.github.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M llvm/docs/Docker.rst
Log Message:
-----------
[docs] Fix typo in Docker.rst (#205346)
Small typo fix in the Docker documentation: Debian8 -> Debian12.
Signed-off-by: Felipe Novais <contact at felipenovais.com>
Commit: b31886a2af71590b00d13a082b80e7a4a347c1c4
https://github.com/llvm/llvm-project/commit/b31886a2af71590b00d13a082b80e7a4a347c1c4
Author: Hristo Hristov <hghristov.rmm at gmail.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M libcxx/docs/Status/Cxx23Papers.csv
M libcxx/include/__config
M libcxx/include/__ranges/drop_view.h
M libcxx/include/__ranges/drop_while_view.h
M libcxx/include/__ranges/filter_view.h
M libcxx/include/__ranges/iota_view.h
M libcxx/include/__ranges/lazy_split_view.h
M libcxx/include/__ranges/split_view.h
M libcxx/include/__ranges/take_view.h
M libcxx/include/__ranges/take_while_view.h
M libcxx/include/__ranges/transform_view.h
M libcxx/test/std/ranges/range.adaptors/range.drop.while/ctor.view.pass.cpp
M libcxx/test/std/ranges/range.adaptors/range.drop/ctor.view.pass.cpp
M libcxx/test/std/ranges/range.adaptors/range.filter/ctor.view_pred.pass.cpp
M libcxx/test/std/ranges/range.adaptors/range.lazy.split/ctor.range.pass.cpp
M libcxx/test/std/ranges/range.adaptors/range.lazy.split/ctor.view.pass.cpp
M libcxx/test/std/ranges/range.adaptors/range.split/ctor.range.pass.cpp
M libcxx/test/std/ranges/range.adaptors/range.split/ctor.view.pass.cpp
M libcxx/test/std/ranges/range.adaptors/range.take.while/ctor.view.pass.cpp
M libcxx/test/std/ranges/range.adaptors/range.take/ctor.view_count.pass.cpp
M libcxx/test/std/ranges/range.adaptors/range.transform/ctor.view_function.pass.cpp
M libcxx/test/std/ranges/range.factories/range.iota.view/ctor.first.last.pass.cpp
M libcxx/test/std/ranges/range.factories/range.iota.view/ctor.value.bound.pass.cpp
Log Message:
-----------
[libc++][ranges] Backport P2711R1: Making multi-param constructors of views explicit (#190513)
As discussed in https://gcc.gnu.org/PR114298 - GCC and MSVC STL
implemented P2711R1 as a DR. This PR does the same for libc++.
Co-authored-by: A. Jiang <de34 at live.cn>
Commit: a91e271481cc99ee0ab01aa0affc7ac352963844
https://github.com/llvm/llvm-project/commit/a91e271481cc99ee0ab01aa0affc7ac352963844
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M llvm/test/CodeGen/X86/madd.ll
Log Message:
-----------
[X86] madd.ll - add additional tests for matchPMADDWD folds that fail with larger source types (#205362)
matchPMADDWD handles sext/shl cases as well which don't fold either on SSE/AVX512 targets
Commit: 9acc93f96af24fd3b3598f3cc51520aaff6e688c
https://github.com/llvm/llvm-project/commit/9acc93f96af24fd3b3598f3cc51520aaff6e688c
Author: adams381 <adams at nvidia.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenBuiltin.cpp
A clang/test/CIR/CodeGenBuiltins/builtins-elementwise-bool-nyi.c
M clang/test/CIR/CodeGenBuiltins/builtins-elementwise.c
Log Message:
-----------
[CIR] Lower elementwise saturating add/sub builtins (#203112)
`__builtin_elementwise_add_sat` and `__builtin_elementwise_sub_sat` were
still in the `errorBuiltinNYI` batch in `emitBuiltinExpr`, so any use
hit "unimplemented builtin call". That blocks C++26
`std::add_sat`/`std::sub_sat` (libc++
`<__numeric/saturation_arithmetic.h>`), which lower directly onto these
builtins.
This lowers them the way classic CodeGen does in `CGBuiltin.cpp`: select
the signed or unsigned saturating intrinsic from the operand's element
type (`sadd.sat`/`uadd.sat` for add, `ssub.sat`/`usub.sat` for sub).
Test coverage in `builtins-elementwise.c` exercises signed and unsigned,
scalar and vector, at i32 and i16 widths, checking the CIR
`cir.call_llvm_intrinsic` and the lowered `@llvm.{s,u}{add,sub}.sat`
calls on both the CIR and classic `-emit-llvm` paths.
Commit: 7054171f229e2a9d55ed742dcf89782727579926
https://github.com/llvm/llvm-project/commit/7054171f229e2a9d55ed742dcf89782727579926
Author: Aaron Ballman <aaron at aaronballman.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M clang/test/C/C23/n3037.c
Log Message:
-----------
Additional test coverage for WG14 N3037 (#202674)
There was a request for additional test coverage in:
https://github.com/llvm/llvm-project/pull/201650#discussion_r3376475306
Commit: 650a05947d5bd0393914b8dfe15a5c50b193dfc9
https://github.com/llvm/llvm-project/commit/650a05947d5bd0393914b8dfe15a5c50b193dfc9
Author: Jan Leyonberg <jan_sjodin at yahoo.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M clang/include/clang/CIR/Dialect/Builder/CIRBaseBuilder.h
M clang/include/clang/CIR/Dialect/IR/CIROps.td
M clang/lib/CIR/CodeGen/CIRGenOpenACC.cpp
M clang/lib/CIR/CodeGen/CIRGenOpenACCRecipe.cpp
M clang/lib/CIR/CodeGen/CIRGenStmtOpenACC.cpp
M clang/lib/CIR/Dialect/IR/CIRDialect.cpp
M clang/lib/CIR/Dialect/Transforms/CIRCanonicalize.cpp
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
M clang/test/CIR/CodeGenOpenACC/cache.c
M clang/test/CIR/CodeGenOpenACC/combined-copy.c
M clang/test/CIR/CodeGenOpenACC/combined-copy.cpp
M clang/test/CIR/CodeGenOpenACC/combined-firstprivate-clause.cpp
M clang/test/CIR/CodeGenOpenACC/combined-private-clause.cpp
M clang/test/CIR/CodeGenOpenACC/combined-reduction-clause-default-ops.cpp
M clang/test/CIR/CodeGenOpenACC/combined-reduction-clause-float.cpp
M clang/test/CIR/CodeGenOpenACC/combined-reduction-clause-inline-ops.cpp
M clang/test/CIR/CodeGenOpenACC/combined-reduction-clause-int.cpp
M clang/test/CIR/CodeGenOpenACC/combined-reduction-clause-outline-ops.cpp
M clang/test/CIR/CodeGenOpenACC/combined.cpp
M clang/test/CIR/CodeGenOpenACC/compute-copy.c
M clang/test/CIR/CodeGenOpenACC/compute-copy.cpp
M clang/test/CIR/CodeGenOpenACC/compute-firstprivate-clause.c
M clang/test/CIR/CodeGenOpenACC/compute-firstprivate-clause.cpp
M clang/test/CIR/CodeGenOpenACC/compute-private-clause.c
M clang/test/CIR/CodeGenOpenACC/compute-private-clause.cpp
M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-default-ops.c
M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-default-ops.cpp
M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-float.c
M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-float.cpp
M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-inline-ops.cpp
M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-int.c
M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-int.cpp
M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-outline-ops.cpp
M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-unsigned-int.c
M clang/test/CIR/CodeGenOpenACC/data.c
M clang/test/CIR/CodeGenOpenACC/declare-copy.cpp
M clang/test/CIR/CodeGenOpenACC/declare-copyin.cpp
M clang/test/CIR/CodeGenOpenACC/declare-copyout.cpp
M clang/test/CIR/CodeGenOpenACC/declare-create.cpp
M clang/test/CIR/CodeGenOpenACC/declare-deviceresident.cpp
M clang/test/CIR/CodeGenOpenACC/declare-link.cpp
M clang/test/CIR/CodeGenOpenACC/declare-present.cpp
M clang/test/CIR/CodeGenOpenACC/enter-data.c
M clang/test/CIR/CodeGenOpenACC/exit-data.c
M clang/test/CIR/CodeGenOpenACC/firstprivate-clause-recipes.cpp
M clang/test/CIR/CodeGenOpenACC/host_data.c
M clang/test/CIR/CodeGenOpenACC/init.c
M clang/test/CIR/CodeGenOpenACC/kernels.c
M clang/test/CIR/CodeGenOpenACC/loop-private-clause.cpp
M clang/test/CIR/CodeGenOpenACC/loop-reduction-clause-default-ops.cpp
M clang/test/CIR/CodeGenOpenACC/loop-reduction-clause-float.cpp
M clang/test/CIR/CodeGenOpenACC/loop-reduction-clause-inline-ops.cpp
M clang/test/CIR/CodeGenOpenACC/loop-reduction-clause-int.cpp
M clang/test/CIR/CodeGenOpenACC/loop-reduction-clause-outline-ops.cpp
M clang/test/CIR/CodeGenOpenACC/loop.cpp
M clang/test/CIR/CodeGenOpenACC/parallel.c
M clang/test/CIR/CodeGenOpenACC/private-clause-array-recipes-CtorDtor.cpp
M clang/test/CIR/CodeGenOpenACC/private-clause-array-recipes-NoOps.cpp
M clang/test/CIR/CodeGenOpenACC/private-clause-pointer-array-recipes-CtorDtor.cpp
M clang/test/CIR/CodeGenOpenACC/private-clause-pointer-array-recipes-NoOps.cpp
M clang/test/CIR/CodeGenOpenACC/private-clause-pointer-array-recipes-int.cpp
M clang/test/CIR/CodeGenOpenACC/private-clause-pointer-recipes-CtorDtor.cpp
M clang/test/CIR/CodeGenOpenACC/private-clause-pointer-recipes-NoOps.cpp
M clang/test/CIR/CodeGenOpenACC/private-clause-pointer-recipes-int.cpp
M clang/test/CIR/CodeGenOpenACC/reduction-clause-recipes.cpp
M clang/test/CIR/CodeGenOpenACC/serial.c
M clang/test/CIR/CodeGenOpenACC/set.c
M clang/test/CIR/CodeGenOpenACC/shutdown.c
M clang/test/CIR/CodeGenOpenACC/update.c
M clang/test/CIR/CodeGenOpenACC/wait.c
A clang/test/CIR/IR/builtin-int-cast.cir
A clang/test/CIR/IR/invalid-builtin-int-cast.cir
A clang/test/CIR/Lowering/builtin-int-cast.cir
A clang/test/CIR/Transforms/builtin-int-cast-fold.cir
Log Message:
-----------
[CIR] Add cir.builtin_int_cast operation to replace uses of builtin.unrealized_conversion_cast (#201592)
This patch adds a new operation builtin_int_cast to handle casting
between CIR integer types and builtin integer types. This will replace
the current use of the builtin.unrealized_conversion_cast since this
operation is only intended to be used temporarily when doing
transformations.
Assisted-by: Cursor/Claude Opus 4.8 High
Commit: a05357175d053b86e6d00df13e39416fb9a18cd7
https://github.com/llvm/llvm-project/commit/a05357175d053b86e6d00df13e39416fb9a18cd7
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
A llvm/test/Transforms/SLPVectorizer/X86/copyable-phi-scheduled-non-copyable.ll
Log Message:
-----------
[SLP]Fix dominance crash for scheduled copyable PHI-operand bundles
Extend the copyable/non-copyable PHI conflict bail-out in
tryScheduleBundle to the scheduled path, not just the non-schedulable
one.
Fixes #205327
Reviewers:
Pull Request: https://github.com/llvm/llvm-project/pull/205372
Commit: 759191045115d966dffc99901e9086289767ff5c
https://github.com/llvm/llvm-project/commit/759191045115d966dffc99901e9086289767ff5c
Author: Pavel Labath <pavel at labath.sk>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M libc/src/__support/OSUtil/linux/syscall_wrappers/CMakeLists.txt
A libc/src/__support/OSUtil/linux/syscall_wrappers/ioctl.h
M libc/src/sys/ioctl/linux/CMakeLists.txt
M libc/src/sys/ioctl/linux/ioctl.cpp
M libc/src/termios/linux/CMakeLists.txt
M libc/src/termios/linux/tcdrain.cpp
M libc/src/termios/linux/tcflow.cpp
M libc/src/termios/linux/tcflush.cpp
M libc/src/termios/linux/tcgetattr.cpp
M libc/src/termios/linux/tcgetsid.cpp
M libc/src/termios/linux/tcsendbreak.cpp
M libc/src/termios/linux/tcsetattr.cpp
M libc/src/unistd/linux/CMakeLists.txt
M libc/src/unistd/linux/isatty.cpp
Log Message:
-----------
Recommit "[libc] Introduce the ioctl syscall wrapper and port all callers (#204640)" (#205317)
This patch reapplies #204640 (reverted in #205277), due to (-Werror)
build failure with gcc. Gcc warned about passing an uninitialized
structure through a `const void *` argument. This isn't a problem
because the ioctls in question write to that argument. The
fix/workaround is to provide a `void *` overload.
The original commit message was:
This patch adds an ioctl syscall wrapper in linux_syscalls namespace and
migrates all direct SYS_ioctl calls to use it.
To handle the polymorphic nature of ioctl arguments (where some commands
expect pointers, some expect scalar integers like queue_selector, and
some expect no argument at all), I use a helper struct IoctlArg with
implicit constructors. This avoids template bloat and overload
ambiguities (particularly around literal 0) while keeping call sites
clean.
Assisted by Gemini.
Commit: 5274b7ffac47a891a932dcc630e6130cc72359ef
https://github.com/llvm/llvm-project/commit/5274b7ffac47a891a932dcc630e6130cc72359ef
Author: Gábor Horváth <xazax.hun at gmail.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M clang/lib/Analysis/LifetimeSafety/FactsGenerator.cpp
M clang/test/Sema/LifetimeSafety/safety.cpp
Log Message:
-----------
[LifetimeSafety] Model pointer-to-data-member access in the fact generator (#204612)
VisitBinaryOperator had no case for `obj.*pm` (BO_PtrMemD) /
`objptr->*pm` (BO_PtrMemI), so a borrow of the accessed member
(`&(obj.*pm)`) dropped the object's loan to an empty origin and a
use-after-scope was missed. Flow the object operand's origin into the
result, mirroring a member access: for `.*` the object is the LHS, for
`->*` it is the LHS pointer's pointee.
Assisted-by: Claude Opus 4.8
Co-authored-by: Gabor Horvath <gaborh at apple.com>
Commit: 0914d20f2f8fc3c85e956d93b643a54f683638c3
https://github.com/llvm/llvm-project/commit/0914d20f2f8fc3c85e956d93b643a54f683638c3
Author: Jeff Bailey <jbailey at raspberryginger.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M libc/include/CMakeLists.txt
M libc/include/llvm-libc-types/CMakeLists.txt
A libc/include/llvm-libc-types/linux/CMakeLists.txt
A libc/include/llvm-libc-types/linux/loff_t.h
A libc/include/llvm-libc-types/loff_t.h
M libc/include/sys/types.yaml
Log Message:
-----------
[libc] Add loff_t type (#204641)
Added loff_t type definition. This is a Linux extension required for
large file offsets.
* llvm-libc-types/loff_t.h: Include linux/loff_t.h on Linux.
* llvm-libc-types/linux/loff_t.h: Added Linux definition using
__kernel_loff_t.
* llvm-libc-types/CMakeLists.txt: Include linux subdirectory and add
dependency for loff_t.
* llvm-libc-types/linux/CMakeLists.txt: Registered loff_t.
* sys/types.yaml: Added loff_t to sys/types.
* libc/include/CMakeLists.txt: Added dependency to sys_types target.
Assisted-by: Automated tooling, human reviewed.
Commit: 9928eab6b57b9791e648abc6cac2ac28870f6dbe
https://github.com/llvm/llvm-project/commit/9928eab6b57b9791e648abc6cac2ac28870f6dbe
Author: Sirui Mu <msrlancern at gmail.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenAtomic.cpp
M clang/lib/CIR/CodeGen/CIRGenCall.cpp
M clang/lib/CIR/CodeGen/CIRGenTypes.h
A clang/test/CIR/CodeGen/atomic-libcall.c
Log Message:
-----------
[CIR] Atomic load and store via library call (#202671)
This patch adds support for atomic load/store operations that go through
calls to the `__atomic_load` and `__atomic_store` library functions.
This could happen when the size of the atomic type is too large or is
not a power of 2.
Assisted-by: Codex / gpt-5.5 xhigh
Commit: 8d2a578b2130742c8790f3dba5fb414962eafcd5
https://github.com/llvm/llvm-project/commit/8d2a578b2130742c8790f3dba5fb414962eafcd5
Author: Utkarsh Saxena <usx at google.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M clang/lib/Analysis/LifetimeSafety/FactsGenerator.cpp
M clang/lib/Analysis/LifetimeSafety/LiveOrigins.cpp
M clang/test/Sema/LifetimeSafety/invalidations.cpp
Log Message:
-----------
[LifetimeSafety] Fix liveness propagation for all origin flows (#205323)
Previously, the `transfer` function for `OriginFlowFact` only handled
killing the destination origin. It did not propagate liveness backwards
from destination to source, meaning that if an origin flowed into
another, the source was not marked live even when the destination was.
The `transfer` function now propagates liveness from destination to
source: if the destination origin is live, the source origin is also
marked live with the same `LivenessInfo`, before optionally killing the
destination.
Additionally, `handleMovedArgsInCall` now skips rvalue reference
parameters annotated with `[[clang::lifetimebound]]`, since such
parameters should not be treated as moved-from.
This introduces some false positives for invalidations as container
modifications are not considered self-invalidating. The updated test
expectations reflect this, along with `FIXME` comments explaining that
they are false positives stemming from the lack of distinction between
owner-borrows and content-borrows, which will require more precise
`AccessPath` reasoning to resolve.
Commit: 14670fd9a949958eb4f157a58c34d6179b4bab77
https://github.com/llvm/llvm-project/commit/14670fd9a949958eb4f157a58c34d6179b4bab77
Author: David Blaikie <dblaikie at gmail.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M clang/include/clang/CodeGen/ModuleBuilder.h
M clang/lib/CodeGen/ModuleBuilder.cpp
M clang/unittests/CodeGen/CodeGenExternalTest.cpp
Log Message:
-----------
Add limited vtable address querying to `clang::CodeGenerator` (#202807)
This is being used in Carbon (
https://github.com/carbon-language/carbon-lang/pull/7323 ) to implement
cross-language overriding.
I realize this isn't the fully general feature needed for virtual bases,
etc - but this limited functionality is already wrapped up for, if I
understand it correctly, constexpr use cases and some others. So
hopefully it's still something folks feel is general enough to be
worthwhile exporting. For now Carbon doesn't support deriving from a
type with virtual bases, so the extra complexity isn't needed.
Commit: 053d75c1d580e0c394f4cfb0688bafd05c187b0f
https://github.com/llvm/llvm-project/commit/053d75c1d580e0c394f4cfb0688bafd05c187b0f
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M llvm/include/llvm/IR/InstrTypes.h
M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
M llvm/test/Transforms/InstCombine/assume-loop-align.ll
M llvm/test/Transforms/InstCombine/assume.ll
M llvm/test/Transforms/PhaseOrdering/AArch64/std-find.ll
Log Message:
-----------
Revert "Reapply "[InstCombine] Merge consecutive assumes" (#205177)" (#205380)
This surfaces a bug likely fixed by
https://github.com/llvm/llvm-project/pull/205275. Once that lands this
patch can be landed again.
Reverts llvm/llvm-project#205324
Commit: e8b663ba31d4eed75a6cbc758dbc9f56589c9239
https://github.com/llvm/llvm-project/commit/e8b663ba31d4eed75a6cbc758dbc9f56589c9239
Author: Ehsan Amiri <ehsan.amiri at huawei.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M llvm/lib/Transforms/Scalar/SimpleLoopUnswitch.cpp
M llvm/test/Transforms/PhaseOrdering/AArch64/loopflatten.ll
M llvm/test/Transforms/PhaseOrdering/AArch64/matrix-extract-insert.ll
M llvm/test/Transforms/PhaseOrdering/X86/hoist-load-of-baseptr.ll
M llvm/test/Transforms/PhaseOrdering/unswitch-cold-func.ll
A llvm/test/Transforms/PhaseOrdering/unswitch-nontrivial-cold-func.ll
M llvm/test/Transforms/SimpleLoopUnswitch/AMDGPU/uniform-unswitch.ll
M llvm/test/Transforms/SimpleLoopUnswitch/PGO-nontrivial-unswitch2.ll
M llvm/test/Transforms/SimpleLoopUnswitch/PGO-nontrivial-unswitch3.ll
A llvm/test/Transforms/SimpleLoopUnswitch/trivial-unswitch-loop-guard.ll
A llvm/test/Transforms/SimpleLoopUnswitch/update-dt.ll
M polly/test/Support/pipelineposition.ll
Log Message:
-----------
[SimpleLoopUnswitch] Reland "Generalize the notion of trivial unswitching" (#204934)
In the original PR for this feature, the third parameter of
`MemorySSAUpdater::applyUpdates` was not set to `true`. This
caused `DT` to be invalid, resulting in the failures. This PR fixes the
issue and provides an additional testcase.
Also in the original commit had three asserts to confirm
`!ModifiedBranch ` when we bail out. One of these is redundant because
it is enclosed in an `if` statement checking the same condition. This PR removes
the redundant `assert` too.
Commit: 2a362bf5a546d9ac6da47412b6f594de58cce722
https://github.com/llvm/llvm-project/commit/2a362bf5a546d9ac6da47412b6f594de58cce722
Author: Nicholas Bishop <nbishop at nbishop.net>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M clang/include/clang/Sema/MultiplexExternalSemaSource.h
M clang/lib/Sema/MultiplexExternalSemaSource.cpp
Log Message:
-----------
Add no-arg constructor and EraseIf method to MultiplexExternalSemaSource (#204458)
The no-arg constructor makes MultiplexExternalSemaSource usable in
situations where two child sources are not immediately available, or
where conditional logic makes it easier to call AddSource rather than
immediately pass child sources to the constructor.
The EraseIf method allows sources to be removed later if they are no
longer needed.
Co-authored-by: Nicholas Bishop <nicholsabishop at google.com>
Commit: c0214621a7492d950d0863501fe178c4e74a70f5
https://github.com/llvm/llvm-project/commit/c0214621a7492d950d0863501fe178c4e74a70f5
Author: AZero13 <gfunni234 at gmail.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
M llvm/test/Transforms/InstCombine/select-ctlz-to-cttz.ll
Log Message:
-----------
[InstCombine] Fold (bw-1) - ctlz(x&-x) to cttz (#205383)
Works for non-powers of 2.
Alive2: https://alive2.llvm.org/ce/z/-cbxFz
Commit: 87789e236d9de4b8d688a0d7291c7390fc2c58b4
https://github.com/llvm/llvm-project/commit/87789e236d9de4b8d688a0d7291c7390fc2c58b4
Author: adams381 <adams at nvidia.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenFunction.cpp
A clang/test/CIR/CodeGen/member-pointer-null-init.cpp
Log Message:
-----------
[CIR] Handle non-zero-initializable types in emitNullInitialization (#201654)
Value-initializing an aggregate containing a pointer-to-data-member
(e.g. `new Inner()` where `Inner` has an `int Inner::*` field) crashed
with "type is not zero initializable" because `emitNullInitialization`
unconditionally called `errorNYI` for types where `isZeroInitializable`
returns false.
Member pointers use -1 as the null sentinel, so a plain zero store is
incorrect. Replace the `errorNYI` with `emitNullConstant`, which already
builds the correct per-field pattern (-1 for member-pointer fields, zero
elsewhere), and store the result. Types with virtual bases are still
guarded with `errorNYI` since `emitNullConstant` does not yet handle
them.
Commit: db078760b01d8b533c5d8d2e1017516823ae9a3d
https://github.com/llvm/llvm-project/commit/db078760b01d8b533c5d8d2e1017516823ae9a3d
Author: Craig Topper <craig.topper at sifive.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfo.td
Log Message:
-----------
[RISCV] Remove isCodeGenOnly=0 from PseudoLA_TLSDESC. (#205366)
The default for a Pseudo is isCodeGenOnly=1. With isCodeGenOnly=0 the
'la.tlsdesc' is a valid mnemonic for the assembly parser, but crashes in
the encoder.
I don't think this was meant to be a valid assembly mnemonic so remove
it.
Commit: 05f4625e7282294d556653ca11fc4ccb8f2aedca
https://github.com/llvm/llvm-project/commit/05f4625e7282294d556653ca11fc4ccb8f2aedca
Author: Yao Qi <yao_qi at apple.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M lldb/test/API/lang/objc/hidden-ivars/Makefile
Log Message:
-----------
[lldb][test] Fix TestHiddenIvars rebuild failures in hidden-ivars Makefile (#205114)
Two rebuild-state bugs surfaced when running `./bin/lldb-dotest -p
TestHiddenIvars.py`:
```
FAILED (errors=6, skipped=7, expected failures=2)
```
1. `mkdir: stripped: File exists`, mkdir failed on the second build
because the directory already existed. Switch to `mkdir -p`.
2. `cp -r a.out.dSYM stripped/a.out.dSYM` recurses *into* the existing
destination on rebuild, producing a nested `stripped/a.out.dSYM/
a.out.dSYM/`. The outer dSYM keeps its stale UUID, so lldb cannot
match it to the freshly relinked stripped binary (which gets a new
UUID per link via -Wl,-random_uuid), causing source breakpoints to
fail to resolve. Remove the destination before copying.
Commit: e09eee295e86bd3e01de5a9ef3eb3d6b9446578b
https://github.com/llvm/llvm-project/commit/e09eee295e86bd3e01de5a9ef3eb3d6b9446578b
Author: Ethan Luis McDonough <ethanluismcdonough at gmail.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M llvm/include/llvm/Transforms/IPO/Instrumentor.h
M llvm/include/llvm/Transforms/IPO/InstrumentorRuntimeHelper.h
M llvm/lib/Transforms/IPO/Instrumentor.cpp
A llvm/test/Instrumentation/Instrumentor/compare.ll
A llvm/test/Instrumentation/Instrumentor/compare_config.json
M llvm/test/Instrumentation/Instrumentor/default_config.json
M llvm/test/Instrumentation/Instrumentor/default_rt.h
Log Message:
-----------
[Instrumentor] Add comparison instrumentation opportunity (#204069)
This patch adds an instrumentation opportunity for comparison
instructions (`icmp` and `fcmp`).
Commit: 044f0a53e3a011739572037d9880cb71eb988dcd
https://github.com/llvm/llvm-project/commit/044f0a53e3a011739572037d9880cb71eb988dcd
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M llvm/test/TableGen/directive1.td
M llvm/test/TableGen/directive2.td
M llvm/utils/TableGen/Basic/DirectiveEmitter.cpp
Log Message:
-----------
[TableGen] Use llvm_unreachable in switch guard for all except gcc 8- (#205385)
Follow-up to https://github.com/llvm/llvm-project/pull/194728.
For gccs older than v9 use abort. That seems to make everybody happy.
Commit: 5d4296c10053158c8193748994f7a49ae88c626b
https://github.com/llvm/llvm-project/commit/5d4296c10053158c8193748994f7a49ae88c626b
Author: adams381 <adams at nvidia.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenBuiltin.cpp
M clang/lib/CIR/CodeGen/CIRGenFunction.h
A clang/test/CIR/CodeGenBuiltins/builtin-reduce-bitwise.c
M clang/test/CIR/CodeGenBuiltins/builtin-undef-rvalue.cpp
Log Message:
-----------
[CIR] Lower bitwise vector reduce builtins
`__builtin_reduce_or`, `__builtin_reduce_and`, and `__builtin_reduce_xor` were caught by the batch `errorBuiltinNYI` switch in CIRGen and rejected with an NYI diagnostic. They now lower to the matching `llvm.vector.reduce.{or,and,xor}` intrinsics on the vector element type, mirroring classic CodeGen in `CGBuiltin.cpp`.
The emission routes through `emitBuiltinWithOneOverloadedType`, extended with an optional result type: a vector reduction returns the element type, and CIR has no intrinsic registry to derive it the way classic's `getIntrinsic(ID, argTy)` does, so the element type is supplied explicitly (the default keeps the existing callers unchanged). The intrinsic name is passed without the `llvm.` prefix, which `LowerToLLVM` prepends, producing LLVM output byte-identical to OGCG.
The `builtin-undef-rvalue` regression test previously pinned `reduce_or` as NYI; it is retargeted to `reduce_add`, which is still NYI, so the undef-rvalue path stays covered.
Commit: 88eaad84c9832a2eaa335d90505b33870cc4b2e8
https://github.com/llvm/llvm-project/commit/88eaad84c9832a2eaa335d90505b33870cc4b2e8
Author: Jan Svoboda <jan_svoboda at apple.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M clang/docs/InternalsManual.rst
M clang/lib/Frontend/CompilerInvocation.cpp
M llvm/include/llvm/Option/OptParser.td
M llvm/unittests/Option/OptionMarshallingTest.cpp
M llvm/utils/TableGen/OptionParserEmitter.cpp
Log Message:
-----------
[llvm][option] Remove bitfield marshalling (#203051)
Marshaling of bitfield options is adding some extra complexity in the
form of extractors and mergers, but is now unused. This PR removes that
feature.
Commit: 289e243d2b481ceb604c798f239350108bcd9585
https://github.com/llvm/llvm-project/commit/289e243d2b481ceb604c798f239350108bcd9585
Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M flang/include/flang/Evaluate/tools.h
M flang/lib/Evaluate/tools.cpp
M flang/test/Lower/CUDA/cuda-data-transfer.cuf
Log Message:
-----------
Revert "[flang][cuda] Do not emit data transfer for constant read on the rhs" (#205394)
Reverts llvm/llvm-project#205185
this is making couple of downstream tests failing. Another approach is
needed
Commit: c70d01a0a6b76e8b34a470cf9ef57a68cfa7cc0d
https://github.com/llvm/llvm-project/commit/c70d01a0a6b76e8b34a470cf9ef57a68cfa7cc0d
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M lldb/include/lldb/Core/Module.h
M lldb/source/Core/Module.cpp
M lldb/unittests/Core/ModuleTest.cpp
Log Message:
-----------
[lldb] Fix data race in Module::GetSectionList (#205226)
Module::GetSectionList built the section list (m_sections_up) without a
lock, so parallel module loading (e.g. crashlog.py's thread pool) could
race two builders on the unique_ptr and the SectionList vector, crashing
in AppleObjCRuntime::GetObjCVersion.
Build through ObjectFile::GetSectionList instead of locking the module
mutex and calling CreateSections directly: that path locks the object
file's section mutex before the module mutex, and the build can re-enter
it, so holding the module mutex across the build would invert the order
and risk a deadlock. The Module-level counterpart to a0176fd9dfc5.
rdar://180308581
Commit: e0359327d544d593f4bbf6af9479eb55ddf342d0
https://github.com/llvm/llvm-project/commit/e0359327d544d593f4bbf6af9479eb55ddf342d0
Author: forking-google-bazel-bot[bot] <265904573+forking-google-bazel-bot[bot]@users.noreply.github.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
Log Message:
-----------
[Bazel] Fixes 7591910 (#205377)
This fixes 759191045115d966dffc99901e9086289767ff5c.
Co-authored-by: Google Bazel Bot <google-bazel-bot at google.com>
Commit: dd1685d5a9f4f0af759ec29dc7f39951e262467c
https://github.com/llvm/llvm-project/commit/dd1685d5a9f4f0af759ec29dc7f39951e262467c
Author: Ryan Buchner <rbuchner at qti.qualcomm.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/test/Transforms/SLPVectorizer/RISCV/rotated-strided-loads.ll
Log Message:
-----------
[SLP] Don't recognize rotated widened strided stores in analyzeRtStrideCandidate() (#204013)
These cases which are nearly strided stores are being incorrectly
recognized as strided stores. Fixes #204011
Commit: 361f3b24f2a8703eb7a32c1ae081f490888238f3
https://github.com/llvm/llvm-project/commit/361f3b24f2a8703eb7a32c1ae081f490888238f3
Author: Gábor Horváth <xazax.hun at gmail.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M clang/include/clang/Analysis/Analyses/LifetimeSafety/FactsGenerator.h
M clang/lib/Analysis/LifetimeSafety/FactsGenerator.cpp
M clang/test/Sema/LifetimeSafety/safety.cpp
Log Message:
-----------
[LifetimeSafety] Model GNU statement expressions (#204841)
Commit: 3f48c6728c06f270f3126394ef8e6e65ef9d7174
https://github.com/llvm/llvm-project/commit/3f48c6728c06f270f3126394ef8e6e65ef9d7174
Author: Kelvin Li <kli at ca.ibm.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M llvm/test/tools/dsymutil/X86/bundle-mtime.test
Log Message:
-----------
[dsymutil] Use more portable way to compare timestamp (NFC) (#204680)
`find` on AIX does not support `-maxpath` option. This patch is
to use python to compare the `mtime` of the file/directory.
Commit: 95decf7ce8bdcee2ab3f2b6932d951bd70babf91
https://github.com/llvm/llvm-project/commit/95decf7ce8bdcee2ab3f2b6932d951bd70babf91
Author: Florian Hahn <flo at fhahn.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M llvm/lib/Analysis/BasicAliasAnalysis.cpp
M llvm/test/Analysis/BasicAA/phi-aa.ll
M llvm/test/Analysis/BasicAA/phi-and-select.ll
M llvm/test/Analysis/BasicAA/recphi.ll
M llvm/test/Transforms/LoopVectorize/AArch64/transform-narrow-interleave-to-widen-memory-derived-ivs.ll
M llvm/test/Transforms/LoopVectorize/ARM/pointer_iv.ll
M llvm/test/Transforms/LoopVectorize/RISCV/pointer-induction.ll
M llvm/test/Transforms/LoopVectorize/X86/gather_scatter.ll
M llvm/test/Transforms/LoopVersioning/exit-block-dominates-rt-check-block.ll
Log Message:
-----------
[BasicAA] Allow some more recursion across GEPs/phis. (#205010)
Allow recursive base-object analysis for some GEPs. The new version
still retains some bail-outs to avoid some redundant work.
This has a notable impact across a large IR corpus (32k modules from
large set of C/C++ workloads).
Some of the highlights include:
aa.NumNoAlias +1.52%
aa.NumMayAlias −0.10%
licm.NumMovedLoads +20.47%
licm.NumHoisted +2.03%
early-cse.NumCSELoad +1.59%
SLP.NumVectorInstructions +0.86%
loop-vectorize.LoopsVectorized +0.21%
instcount.TotalInsts −0.05%
instcount.NumLoadInst −0.10%
basicaa.SearchTimes +0.98%
basicaa.SearchLimitReached +14.39%
LV runtime alias check −1.3%
Compile-time has 2 notable changes
stage1-ReleaseThinLTO: +0.04%
stage1-ReleaseLTO-g: +0.18%
https://llvm-compile-time-tracker.com/compare.php?from=26ed0c17c0de84add0513a0e9699479f8c88b8fe&to=476e7466c5f543ac74c86bad728d79892f668f73&stat=instructions:u
The stage1-ReleaseLTO-g regression in particular is almost exclusively
due to tramp3d-v4, for which we also generate +1.18% more code, so the
majority of the increase is coming from additional transforms/codegen,
not the analysis itself.
PR: https://github.com/llvm/llvm-project/pull/205010
Commit: dcec4dda91608ddeee72cf2f503b3cb56e427fcb
https://github.com/llvm/llvm-project/commit/dcec4dda91608ddeee72cf2f503b3cb56e427fcb
Author: yueshe <yueshe at google.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M llvm/test/CodeGen/SystemZ/misched-prera-loads.mir
M llvm/test/CodeGen/SystemZ/misched-prera-pdiffs.mir
Log Message:
-----------
[SystemZ] Add missing asserts requirement for pre-RA sched mir tests (#205403)
This is based off https://github.com/llvm/llvm-project/pull/188823 and
is needed because tests are failing in release (non-asserts) builds
Commit: 7a4dfab07d1f76e5609be940213495060cecb078
https://github.com/llvm/llvm-project/commit/7a4dfab07d1f76e5609be940213495060cecb078
Author: Keith Smiley <keithbsmiley at gmail.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M clang/include/clang/Basic/SourceManager.h
M clang/lib/Basic/SourceManager.cpp
M clang/test/DebugInfo/Generic/macro.c
A clang/test/Preprocessor/hardlink-include-names.c
M clang/unittests/Basic/SourceManagerTest.cpp
Log Message:
-----------
[clang] Fix incorrect filenames for hardlinks (#189475)
Previously hardlinked files would be discovered based on their inode,
leading to incorrect filepaths printed in some cases.
Fixes https://github.com/llvm/llvm-project/issues/26953
Fixes https://github.com/llvm/llvm-project/issues/58726
Related https://reviews.llvm.org/D137304
Assisted-by: codex
Commit: 0628d3586aee3f880a75934e4f7c314bf5c221f2
https://github.com/llvm/llvm-project/commit/0628d3586aee3f880a75934e4f7c314bf5c221f2
Author: Andy Kaylor <akaylor at nvidia.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M clang/include/clang/CIR/Dialect/IR/CIRAttrs.td
M clang/include/clang/CIR/Dialect/IR/CIROps.td
M clang/lib/CIR/CodeGen/CIRGenExprConstant.cpp
M clang/lib/CIR/CodeGen/CIRGenStmt.cpp
M clang/lib/CIR/Dialect/IR/CIRDialect.cpp
M clang/lib/CIR/Dialect/Transforms/CXXABILowering.cpp
M clang/lib/CIR/Dialect/Transforms/GotoSolver.cpp
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.h
A clang/test/CIR/CodeGen/const-label-addr.c
Log Message:
-----------
[CIR] Implement support for emitting label address constants (#203644)
The evalloop.c test in the llvm-test-suite single source tests contains
a static array that is initialized with the address of labels within the
enclosing function. This wasn't implemented in CIR.
This change adds an implementation. The constant emitter change was
trivial. We just needed to create a #cir.block_addr_info attribute.
However, using that attribute as an initializer for a global requires
some additional handling and special lowering for the initializer.
The goto solver also needed to be updated to consider uses of labels in
global initializers.
The test case here was copied over directly from classic codegen. The
original test has an additional test case for the difference between two
label addresses. Support for that case will be added in a future change.
Assisted-by: Cursor / claude-opus-4.8
Commit: 5ab7ad96b05277467b2bab27f510affd337fa3be
https://github.com/llvm/llvm-project/commit/5ab7ad96b05277467b2bab27f510affd337fa3be
Author: vitbur <vittorioburani at gmail.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfoXCV.td
Log Message:
-----------
[RISCV][XCV] Add missing IsRV32 predicate to the XCVmac block (#205095)
The XCVmac instruction block was missing the `IsRV32` predicate that
every other XCV block already carries. `HasVendorXCVmac` on its own does
not require RV32, so `-mtriple=riscv64 -mattr=+xcvmac` could select
these RV32-only vendor instructions on RV64. Add `IsRV32` to the XCVmac
block to match the other XCV extensions and prevent selecting invalid
instructions on RV64.
Split out of #204879 at review request (one fix per PR).
Part of a CORE-V (XCV) series; see RFC:
https://discourse.llvm.org/t/rfc-core-v-xcv-support-for-cv32e40p-clang-builtins-xcvsimd-intrinsics-and-generic-auto-selection/91111
Commit: 6709bcde07752b38038bafda35eac3f16c38c4ba
https://github.com/llvm/llvm-project/commit/6709bcde07752b38038bafda35eac3f16c38c4ba
Author: Thurston Dang <thurston at google.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M llvm/unittests/Support/GlobPatternTest.cpp
Log Message:
-----------
Revert "[NFC][Support] Add test for inverted slash-agnostic matching" (#205397)
Reverts llvm/llvm-project#203290 as part of the process of reverting
https://github.com/llvm/llvm-project/pull/202854 due to downstream
breakage (see discussion in
https://github.com/llvm/llvm-project/pull/202854#issuecomment-4746579478)
Commit: 0b5c006208cf7b0fee3709f468152e7de81607ef
https://github.com/llvm/llvm-project/commit/0b5c006208cf7b0fee3709f468152e7de81607ef
Author: Thurston Dang <thurston at google.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/docs/SanitizerSpecialCaseList.rst
M clang/unittests/Basic/DiagnosticTest.cpp
M llvm/lib/Support/SpecialCaseList.cpp
M llvm/unittests/Support/SpecialCaseListTest.cpp
Log Message:
-----------
Revert "Make sanitizer special case list slash-agnostic" (#205399)
Reverts llvm/llvm-project#149886 as part of the process of reverting
https://github.com/llvm/llvm-project/pull/202854 due to downstream
breakage (see discussion in
https://github.com/llvm/llvm-project/pull/202854#issuecomment-4746579478)
Commit: 92f058a8b351def1c10cb3f37d05adf813fb9638
https://github.com/llvm/llvm-project/commit/92f058a8b351def1c10cb3f37d05adf813fb9638
Author: Nerixyz <nerixdev at outlook.de>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M llvm/lib/DebugInfo/PDB/Native/TpiStream.cpp
A llvm/test/tools/llvm-pdbutil/forward-cxx-to-c-odr.test
A llvm/test/tools/llvm-pdbutil/forward-cxx-to-c.test
Log Message:
-----------
[DebugInfo][CodeView] Resolve forward references to types without unique name (#203781)
In the following code:
```cpp
// header.h
typedef struct lua_State lua_State;
lua_State *getState();
// source.c
#include "header.h"
struct lua_State { int field; };
lua_State *getState() {
static lua_State state = {.field=42}; // make sure the type is emitted
return &state;
}
// main.cpp
extern "C" {
#include "header.h"
}
int main() { return getState() != 0; }
```
We'll get two forward references for `lua_State` when compiling with
clang-cl. One with a unique name (from C++) and one without (from C).
There's one complete definition for the type (from `source.c`). Since
this is from C, it doesn't have a unique name. Before, we could only
resolve the forward reference from C, not from C++.
With this PR, we can resolve both references. I also tested that the VS
debugger resolves the reference correctly.
I'm not sure if this is a clang bug, because when compiling with MSVC,
the C type also has a unique name. Clang omits the unique name, because
C doesn't have ODR like C++.
Commit: f9db256c63b5ecc802183f6e58fda039e36816c4
https://github.com/llvm/llvm-project/commit/f9db256c63b5ecc802183f6e58fda039e36816c4
Author: Reid Kleckner <rkleckner at nvidia.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M llvm/lib/Target/X86/GISel/X86InstructionSelector.cpp
M llvm/lib/Target/X86/X86FastISel.cpp
M llvm/lib/Target/X86/X86FrameLowering.cpp
M llvm/lib/Target/X86/X86InstrInfo.cpp
M llvm/lib/Target/X86/X86InstrInfo.h
Log Message:
-----------
[X86] Hoist getMOVriOpcode to X86InstrInfo.h and share it, NFC (#205187)
The x86 backend often needs to materialize potentially 64-bit immediates
into registers, and the logic to pick between the available opcodes
exists in 3 places at least. Move this to X86InstrInfo.h so we can share
it over the x86 backend without copying it.
An LLM did the refactoring.
Commit: 4c02baa7db33dcebd6b9eb51837b176869c8d327
https://github.com/llvm/llvm-project/commit/4c02baa7db33dcebd6b9eb51837b176869c8d327
Author: Sergei Barannikov <barannikov88 at gmail.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M lldb/source/Plugins/Process/elf-core/CMakeLists.txt
Log Message:
-----------
[lldb] Add missing dependency on lldbPluginObjectFilePlaceholder (#204831)
Fixes shared library build after 882d0251.
Commit: 094c10f9c6a7ff039c682fd2c5d90f92e2579f1e
https://github.com/llvm/llvm-project/commit/094c10f9c6a7ff039c682fd2c5d90f92e2579f1e
Author: adams381 <adams at nvidia.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M clang/lib/CIR/Dialect/Transforms/TargetLowering/CIRABIRewriteContext.cpp
A clang/test/CIR/Transforms/abi-lowering/indirect-byval.cir
Log Message:
-----------
[CIR] Lower byval/byref args in CallConvLowering (#201717)
[CIR] Lower byval/byref args in CallConvLowering
ArgKind::Indirect arguments were hitting an errorNYI in
CIRABIRewriteContext. Add the lowering: in the callee the block argument
type changes to !cir.ptr<T>, a load is inserted at entry so the body sees
the original value type, and llvm.byval or llvm.byref is attached based on
ownership. At call sites, both byval and byref are lowered by allocating a
stack slot, copying the value in, and passing the pointer.
For byval, llvm.noalias and llvm.noundef are also added -- llvm.noalias
because the call-site rewrite always produces a fresh alloca+store
(equivalent to -fpass-by-value-is-noalias), and llvm.noundef because the
copy is always fully defined. byref carries only llvm.byref and llvm.align
since it does not assert exclusive ownership.
Commit: 594cce3cbcdbe46d6f9ac3c6a53f86ae63c5bc42
https://github.com/llvm/llvm-project/commit/594cce3cbcdbe46d6f9ac3c6a53f86ae63c5bc42
Author: Domenic Nutile <domenic.nutile at gmail.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/SIWholeQuadMode.cpp
A llvm/test/CodeGen/AMDGPU/uniform-intrin-combine-wqm-demote.ll
Log Message:
-----------
[AMDGPU] Change static NOP last terminator SI_DEMOTE_I1 to be replaced by S_BRANCH instead of assert (#204649)
This issue was first discovered in some testing downstream. A specific
chain of transformations on a ballot instruction with a constant
argument followed by an llvm.amgcn.wqm.demote call leads to an
instruction of `SI_DEMOTE_I1 -1, 0` being the last terminator of a block
with a single successor. This instruction is a NOP and can safely be
replaced with an S_BRANCH to the block's successor instead of asserting
failure.
The test added in this change is a very simplified recreation of the
pattern seen in the shader compilation in the downstream that lead to
assertion failure
Commit: 9757708126ff8defac247ed5a8a04b5daa8cd7c1
https://github.com/llvm/llvm-project/commit/9757708126ff8defac247ed5a8a04b5daa8cd7c1
Author: seantalts <me at seantalts.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
A llvm/test/Transforms/LoopVectorize/pred-inst-discount-vector-library-call.ll
Log Message:
-----------
[LoopVectorize] Don't assert in getVectorCallCost for vector library variants (#202085)
During loop vectorization, `computePredInstDiscount` queries the cost of
instructions at vector VF using `getInstructionCost`. A `CallInst` with
a vector library variant delegates to `getVectorCallCost`, which
asserted that such variants should not reach it.
A predicated call can however reach `getVectorCallCost` via
`computePredInstDiscount` — before its widening decision is made — when
a predicated user (e.g. a scatter store) is being considered for
scalarization. Remove the assert and fall through to the existing
scalarization cost, which is the cost relevant to that analysis.
Adds a regression test exercising that path.
Commit: ebf518b37a85a418ef887d77ff688d17d2bd8fa5
https://github.com/llvm/llvm-project/commit/ebf518b37a85a418ef887d77ff688d17d2bd8fa5
Author: Jianhui Li <jian.hui.li at intel.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M mlir/include/mlir/Dialect/XeGPU/Transforms/XeGPULayoutImpl.h
M mlir/include/mlir/Dialect/XeGPU/uArch/IntelGpuXe2.h
M mlir/include/mlir/Dialect/XeGPU/uArch/uArchBase.h
M mlir/lib/Dialect/XeGPU/IR/XeGPUDialect.cpp
M mlir/lib/Dialect/XeGPU/Transforms/XeGPULayoutImpl.cpp
M mlir/lib/Dialect/XeGPU/Transforms/XeGPUPropagateLayout.cpp
M mlir/lib/Dialect/XeGPU/Transforms/XeGPUUnroll.cpp
M mlir/test/Dialect/XeGPU/propagate-layout-inst-data.mlir
M mlir/test/Dialect/XeGPU/propagate-layout.mlir
M mlir/test/Dialect/XeGPU/resolve-layout-conflicts.mlir
Log Message:
-----------
[MLIR][XeGPU] Refactor XeGPU layout propagation: passing lane_layout/lane_data with inst_data (#203156)
**Motivation**
Enhance setup* rules in layout propagation to pass lane_layout, and
lane_data information during inst_data propagation, so that the
propagation can have lane level information when choosing an optimal
inst_data. This branch makes that relationship explicit and uniform
across all setup rules.
**Invariant**
All setup rules now produce layouts that satisfy:
Nd ops + dpas/dpas_mx: inst_data = k * (lane_layout * lane_data), k ≥ 1
Scatter/matrix ops + non-anchor ops: inst_data = lane_layout * lane_data
**Key changes in XeGPULayoutImpl**
- New per-op anchor setup rules: setupStoreNdAnchorLayout,
setupPrefetchNdAnchorLayout,
setupLoadNdAnchorLayout (replacing a generic block-IO path) — Nd ops
have rigid lane info
and fit inst_data to the lane factorization.
- New complete*LayoutFromInstData helpers: fill in lane info on
user-provided anchors that
specify only inst_data, by re-running the op's Lane-kind setup with
inst_data as the
destination shape. Covers scatter load/store, block store/load, DPAS,
and DPAS_MX.
- BlockIOInstructionInterface (new in uArchBase.h): shared abstraction
over the
load/store/prefetch 2D-block instructions; the three Xe2 instructions
now implement it.
- setupMultiReductionResultLayout reorganized so the InstData and Lane
branches share the
same lane-layout logic (computeReductionLaneLayoutAndData).
- createScaleLayout (dpas_mx): caps the scale lane_layout by inst_data
so the scale
operand's load_nd satisfies the multiple-of invariant.
- getValidLayouts → getSgLayoutCandidates: renamed and generalized from
2D to N-D
factorization.
- inferShapeCastSourceLayout preserves lane info through 1D↔ND
collapse-style casts.
- chunkSize → contiguousChunkSize parameter rename for the scatter
inst_data decision.
- ResolveLayoutConflicts: retargets an existing convert_layout instead
of chaining a second
one; UnrollConvertLayoutOp short-circuits when input == target.
- Sub-byte (4-bit) element support added to the block-load uArch table.
- Tests updated: propagate-layout-inst-data.mlir, propagate-layout.mlir,
resolve-layout-conflicts.mlir.
Assisted-by-claude
---------
Co-authored-by: Claude Opus 4.7 (1M context) <noreply at anthropic.com>
Commit: cf78c5484ae7d39464d7b46f9fb3769dd6f9a2b7
https://github.com/llvm/llvm-project/commit/cf78c5484ae7d39464d7b46f9fb3769dd6f9a2b7
Author: Johannes Doerfert <jdoerfert.llvm at gmail.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M llvm/include/llvm/Analysis/MemoryBuiltins.h
M llvm/lib/Analysis/MemoryBuiltins.cpp
Log Message:
-----------
[MemoryBuiltins][NFC] Clang format and fixed coding style (#205205)
Commit: 0fdfa2b597aa0dbe76bc89fa313e2aa00da04430
https://github.com/llvm/llvm-project/commit/0fdfa2b597aa0dbe76bc89fa313e2aa00da04430
Author: Craig Topper <craig.topper at sifive.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfo.td
Log Message:
-----------
[RISCV] Remove assembly string from PseudoLA_TLSDESC. NFC (#205406)
Commit: 7e510f6adca203c3e347a85dc0e5a9016cd645a5
https://github.com/llvm/llvm-project/commit/7e510f6adca203c3e347a85dc0e5a9016cd645a5
Author: Florian Hahn <flo at fhahn.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M llvm/include/llvm/Transforms/Vectorize/LoopVectorizationLegality.h
M llvm/lib/Transforms/Vectorize/LoopVectorizationLegality.cpp
Log Message:
-----------
[LV] Remove unused getInt/Fp/PointerInductionDescriptor accessors (NFC) (#205414)
getIntOrFpInductionDescriptor and getPointerInductionDescriptor are
unused, remove them.
Commit: 5794f4e183d2612bb3aa4cd529d0c5c8c0f267dd
https://github.com/llvm/llvm-project/commit/5794f4e183d2612bb3aa4cd529d0c5c8c0f267dd
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M llvm/include/llvm/Analysis/ProfileSummaryInfo.h
M llvm/lib/Analysis/ProfileSummaryInfo.cpp
Log Message:
-----------
[PSI] Drop AllowSynthetic parameter to getProfileCount
This was not set anywhere and synthetic profile counts are not
emitted/used anywhere, so remove it.
Reviewers: david-xl, mtrofin, teresajohnson
Pull Request: https://github.com/llvm/llvm-project/pull/204765
Commit: ee682b8b050a16dc7c2f6bcb6e3409b3241d4022
https://github.com/llvm/llvm-project/commit/ee682b8b050a16dc7c2f6bcb6e3409b3241d4022
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M llvm/include/llvm/Analysis/BlockFrequencyInfoImpl.h
M llvm/lib/Analysis/BlockFrequencyInfo.cpp
M llvm/lib/Analysis/BlockFrequencyInfoImpl.cpp
Log Message:
-----------
[BFI] Drop AllowSynthetic Parameter
This was never set anywhere to something other than the default outside
of the implementation and synthetic profile counts are slated for
removal.
Reviewers: teresajohnson, mtrofin, david-xl
Pull Request: https://github.com/llvm/llvm-project/pull/204767
Commit: e584691adce2c8c0949e28f56427db72ac765570
https://github.com/llvm/llvm-project/commit/e584691adce2c8c0949e28f56427db72ac765570
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M llvm/include/llvm/IR/Function.h
M llvm/lib/IR/Function.cpp
M llvm/lib/Transforms/IPO/WholeProgramDevirt.cpp
M llvm/lib/Transforms/Utils/ProfileVerify.cpp
M llvm/unittests/IR/MetadataTest.cpp
Log Message:
-----------
[IR] Remove Synthetic Profile Support from Function
Synthetic profiles are not generated anywhere and support is very
sporadic across the code base. They are slated to be removed, so remove
support for them from Function member functions.
A future PR will clean up the ProfileCount abstraction that is now no
longer necessary.
Reviewers: teresajohnson, david-xl, mtrofin
Pull Request: https://github.com/llvm/llvm-project/pull/204768
Commit: b74154ccda5f417de6be26fcc69cd41aed8eec57
https://github.com/llvm/llvm-project/commit/b74154ccda5f417de6be26fcc69cd41aed8eec57
Author: Sy Brand <sy.brand at fastly.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M clang/lib/Basic/Targets/WebAssembly.cpp
M clang/lib/Basic/Targets/WebAssembly.h
M clang/lib/Driver/ToolChains/WebAssembly.cpp
M clang/test/Driver/wasm-toolchain.c
A lld/test/wasm/cooperative-threading.s
M lld/test/wasm/stack-pointer-abi.s
M lld/test/wasm/thread-context-abi-mismatch.s
M lld/test/wasm/tls-libcall.s
M lld/wasm/Config.h
M lld/wasm/Driver.cpp
M lld/wasm/Options.td
M lld/wasm/Relocations.cpp
M lld/wasm/SyntheticSections.cpp
M lld/wasm/Writer.cpp
M llvm/lib/Target/WebAssembly/WebAssemblySubtarget.cpp
M llvm/lib/Target/WebAssembly/WebAssemblySubtarget.h
M llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp
A llvm/test/CodeGen/WebAssembly/cooperative-strip-tls.ll
Log Message:
-----------
[WebAssembly] Cooperative threading for WASIP3 (#200855)
This PR builds on the changes to allow libcall thread context from
https://github.com/llvm/llvm-project/pull/175800/changes and adds the
necessary changes to support cooperative multithreading in the WASIP3
target:
- Not marking memory as shared
- Allowing thread local accesses without atomics
- Only using passive segments for TLS segments
The linker changes are supported by a new flag called
`--cooperative-multithreading`. We talked about having two flags, one
for the `--libcall-thread-context` part and one for the cooperative
multithreading part. For now, I've simply replaced the
`--libcall-thread-context` flag with the `--cooperative-multithreading`
one and kept the internal configuration intact for simplicity.
Commit: 7e6d7003d805935036076b6d76ee698164e5b8aa
https://github.com/llvm/llvm-project/commit/7e6d7003d805935036076b6d76ee698164e5b8aa
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M llvm/include/llvm/Analysis/ProfileSummaryInfo.h
M llvm/lib/CodeGen/MachineFunction.cpp
Log Message:
-----------
[PSI] Return raw entry count values
Now that synthetic entry counts are being removed, stop using the
ProfileCount wrapper around entrycounts given it only exists to
distinguish between synthetic and real profile counts.
Reviewers: teresajohnson, david-xl, mtrofin
Pull Request: https://github.com/llvm/llvm-project/pull/204769
Commit: d6c03937349e8d3856b4e21f1737e860bf1c8e3f
https://github.com/llvm/llvm-project/commit/d6c03937349e8d3856b4e21f1737e860bf1c8e3f
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M lldb/cmake/modules/LLDBConfig.cmake
Log Message:
-----------
[lldb] Disable dynamic script interpreters by default under Xcode (#205423)
When LLDB_ENABLE_DYNAMIC_SCRIPTINTERPRETERS is set, liblldb's export
list is built by merging the undefined LLDB symbols extracted from each
script interpreter plugin's objects (119e57630281). Because the plugins
link liblldb, the generated file is wired into liblldb's link via
LINK_DEPENDS, a file-level dependency with no target-level edge.
The Xcode generator only has coarse target-level dependencies, so that
generated liblldb-script-interpreter.exports ends up attached to two
targets with no common dependency, which its "new build system" rejects
at generation time:
```
CMake Error in source/API/CMakeLists.txt:
.../source/API/liblldb-script-interpreter.exports
is attached to multiple targets ... but none of these is a common
dependency of the other(s). This is not allowed by the Xcode "new
build system".
```
Default the option to OFF under the Xcode generator. The script
interpreter plugins are then linked statically into liblldb and the
per-plugin export path is never taken.
rdar://180422686
Commit: 65a7ccf65602e5e77c13f7e88fe152f4f7cfaa17
https://github.com/llvm/llvm-project/commit/65a7ccf65602e5e77c13f7e88fe152f4f7cfaa17
Author: Delaram Talaashrafi <dtalaashrafi at nvidia.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M mlir/include/mlir/Dialect/OpenACC/Transforms/Passes.td
A mlir/lib/Dialect/OpenACC/Transforms/ACCEmitRemarksLoop.cpp
M mlir/lib/Dialect/OpenACC/Transforms/CMakeLists.txt
A mlir/test/Dialect/OpenACC/acc-emit-remarks-loop-pipeline.mlir
A mlir/test/Dialect/OpenACC/acc-emit-remarks-loop.mlir
Log Message:
-----------
[MLIR][OpenACC] Add acc-emit-remarks-loop pass (#205203)
Add a function-level pass that emits optimization remarks for loops in
`acc.compute_region`, describing their mapping to OpenACC parallel
levels (gang, worker, vector, sequential) and GPU dimensions (blockIdx,
threadIdx).
Commit: 37a71b650a9f4c4431fece85485023a048b0bb1d
https://github.com/llvm/llvm-project/commit/37a71b650a9f4c4431fece85485023a048b0bb1d
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M llvm/include/llvm/Analysis/ProfileSummaryInfo.h
M llvm/include/llvm/IR/Function.h
M llvm/include/llvm/Transforms/Utils/SampleProfileLoaderBaseImpl.h
M llvm/lib/Analysis/BlockFrequencyInfoImpl.cpp
M llvm/lib/Analysis/InlineCost.cpp
M llvm/lib/Analysis/ProfileSummaryInfo.cpp
M llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
M llvm/lib/CodeGen/MIRSampleProfile.cpp
M llvm/lib/CodeGen/MachineFunction.cpp
M llvm/lib/IR/Function.cpp
M llvm/lib/IR/ProfDataUtils.cpp
M llvm/lib/Transforms/AggressiveInstCombine/AggressiveInstCombine.cpp
M llvm/lib/Transforms/IPO/FunctionSpecialization.cpp
M llvm/lib/Transforms/IPO/PartialInlining.cpp
M llvm/lib/Transforms/IPO/SampleProfile.cpp
M llvm/lib/Transforms/IPO/WholeProgramDevirt.cpp
M llvm/lib/Transforms/Instrumentation/PGOInstrumentation.cpp
M llvm/lib/Transforms/Scalar/TailRecursionElimination.cpp
M llvm/lib/Transforms/Utils/CodeExtractor.cpp
M llvm/lib/Transforms/Utils/InlineFunction.cpp
M llvm/lib/Transforms/Utils/LowerMemIntrinsics.cpp
M llvm/lib/Transforms/Utils/ProfileVerify.cpp
M llvm/lib/Transforms/Vectorize/VPlan.cpp
M llvm/unittests/IR/MetadataTest.cpp
Log Message:
-----------
[IR] Remove ProfileCount Abstraction
This only exists to differentiate between real and synthetic profiles.
Remove the abstraction now that we plan to fully remove synthetic
profiles.
Reviewers: mtrofin, david-xl
Reviewed By: mtrofin
Pull Request: https://github.com/llvm/llvm-project/pull/204770
Commit: 1a997e2a2c370231b6add5884f6fdc7f195d5fe6
https://github.com/llvm/llvm-project/commit/1a997e2a2c370231b6add5884f6fdc7f195d5fe6
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M llvm/include/llvm/DWARFLinker/Classic/DWARFLinker.h
M llvm/include/llvm/DWARFLinker/DWARFLinkerBase.h
M llvm/lib/DWARFLinker/Parallel/DWARFLinkerImpl.cpp
M llvm/lib/DWARFLinker/Parallel/DWARFLinkerImpl.h
M llvm/tools/dsymutil/DwarfLinkerForBinary.cpp
M llvm/tools/dsymutil/DwarfLinkerForBinary.h
M llvm/tools/dsymutil/dsymutil.cpp
M llvm/tools/llvm-dwarfutil/DebugInfoLinker.cpp
Log Message:
-----------
[dsymutil] Reuse a single thread pool across architectures (#204691)
dsymutil links the architectures of a universal binary on a thread pool,
and the parallel linker's DWARFLinkerImpl::link() then created a second
pool to link each architecture's object files. With one such inner pool
per architecture, dsymutil spun up more worker threads than the machine
has cores.
Add DWARFLinkerBase::setThreadPool() so the caller provides the pool.
The parallel linker schedules the object files on it as a
ThreadPoolTaskGroup. dsymutil hands over the pool it already uses to
schedule the architectures, llvm-dwarfutil passes one sized by
--num-threads, and the classic linker ignores it and manages its own
threads (always 2 for the lockstep algorithm).
The per-compile-unit cloning still runs on the global llvm::parallel
executor, whose per-thread allocators are indexed by getThreadIndex(),
so it can't move onto this pool.
Commit: cf6527a49669c796bc4b5bacb7a7738fee13944b
https://github.com/llvm/llvm-project/commit/cf6527a49669c796bc4b5bacb7a7738fee13944b
Author: Arthur Eubanks <aeubanks at google.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M llvm/utils/gn/secondary/compiler-rt/lib/profile/BUILD.gn
M llvm/utils/gn/secondary/llvm/lib/Target/RISCV/BUILD.gn
Log Message:
-----------
[gn build] Port commits (#205428)
55d7f777d958
582a20269e2c
Commit: 0c6a0c4ccf234c5d9969294b454cb615277ede14
https://github.com/llvm/llvm-project/commit/0c6a0c4ccf234c5d9969294b454cb615277ede14
Author: Luke Hutton <luke.hutton at arm.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M mlir/include/mlir/Dialect/Tosa/IR/TosaComplianceData.h.inc
M mlir/include/mlir/Dialect/Tosa/IR/TosaOpBase.td
M mlir/include/mlir/Dialect/Tosa/IR/TosaOps.h
M mlir/include/mlir/Dialect/Tosa/IR/TosaOps.td
M mlir/lib/Dialect/Tosa/IR/TosaOps.cpp
M mlir/lib/Dialect/Tosa/Transforms/TosaDowngrade1p1To1p0.cpp
M mlir/lib/Dialect/Tosa/Transforms/TosaProfileCompliance.cpp
M mlir/lib/Dialect/Tosa/Transforms/TosaValidation.cpp
M mlir/test/Dialect/Tosa/dynamic_extension.mlir
M mlir/test/Dialect/Tosa/invalid_extension.mlir
M mlir/test/Dialect/Tosa/level_check.mlir
M mlir/test/Dialect/Tosa/ops.mlir
M mlir/test/Dialect/Tosa/profile_all_unsupported.mlir
M mlir/test/Dialect/Tosa/tosa-downgrade-1-1-to-1-0.mlir
M mlir/test/Dialect/Tosa/tosa-infer-shapes.mlir
M mlir/test/Dialect/Tosa/tosa-validation-version-1p0-invalid.mlir
M mlir/test/Dialect/Tosa/tosa-validation-version-1p1-valid.mlir
M mlir/test/Dialect/Tosa/verifier.mlir
Log Message:
-----------
[mlir][tosa] Add support for matmul_t (#203894)
Adds support for matmul_t added to the specification in
https://github.com/arm/tosa-specification/pull/50.
This includes:
- Operator definition
- Verification logic for the operator
- Output shape inference for the operator
- Validation checks to ensure compliance with the TOSA specification
including profile compliance and level checks.
- Support for matmul_t to matmul in the downgrade pass.
Note that MXFP support will be added in a follow-up commit.
Commit: 3b1927989a0831d731eb5e0b9eada6a5367c6bf5
https://github.com/llvm/llvm-project/commit/3b1927989a0831d731eb5e0b9eada6a5367c6bf5
Author: Zhen Wang <zhenw at nvidia.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M flang/lib/Semantics/expression.cpp
A flang/test/Semantics/cuf29.cuf
Log Message:
-----------
[flang][cuda] Prefer valid intrinsics over host-only generics in device code (#205376)
In CUDA device code, a host-only generic can shadow an intrinsic with
the same name and cause a valid call such as maxloc(a, 1) to be rejected
as non-device-callable. Retry intrinsic resolution for host-only generic
function calls in device context, preserving normal diagnostics when no
valid intrinsic matches.
Commit: 6c25981989b0b21e5fa95ae75badd94a1c5453f6
https://github.com/llvm/llvm-project/commit/6c25981989b0b21e5fa95ae75badd94a1c5453f6
Author: Thurston Dang <thurston at google.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M llvm/include/llvm/Support/GlobPattern.h
M llvm/lib/Support/GlobPattern.cpp
M llvm/unittests/Support/GlobPatternTest.cpp
Log Message:
-----------
Revert "[NFC][Support] Implement slash-agnostic path matching in GlobPattern" (#205409)
Reverts llvm/llvm-project#202854 due to downstream breakage (see
discussion in
https://github.com/llvm/llvm-project/pull/202854#issuecomment-4746579478)
Commit: 510ef079ffdd60a912ebf23911621944af757ac6
https://github.com/llvm/llvm-project/commit/510ef079ffdd60a912ebf23911621944af757ac6
Author: Maosu Zhao <maosu.zhao at intel.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M llvm/lib/Transforms/Instrumentation/NumericalStabilitySanitizer.cpp
M llvm/test/Instrumentation/NumericalStabilitySanitizer/non_float_store.ll
Log Message:
-----------
[NSan] Fix null-pointer crash on unsupported vector element sizes (#202270)
In propagateNonFTStore, BitcastTy is left null when a ConstantDataVector
has an element width other than 32/64/80 bits (e.g., f16, bf16, fp128).
Passing a null element type into VectorType::get crashes. Guard the
VectorType::get call so the unsupported case falls through to the "reset
shadow to unknown" path.
---------
Co-authored-by: Alexander Shaposhnikov <ashaposhnikov at google.com>
Commit: c179b4e55aaf7b13813fd662b0acc6cf0908a949
https://github.com/llvm/llvm-project/commit/c179b4e55aaf7b13813fd662b0acc6cf0908a949
Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M flang/lib/Lower/Bridge.cpp
M flang/test/Lower/CUDA/cuda-data-transfer.cuf
Log Message:
-----------
[flang][cuda] Materialize trivial computation to avoid data transfer error (#205422)
Avoid this error: `error: 'cuf.data_transfer' op expect src and dst to
be references or descriptors or src to be a constant: 'f32' -
'!fir.ref<f32>'`
Commit: 43b63b61c392920460e32339f2703d5f75a20218
https://github.com/llvm/llvm-project/commit/43b63b61c392920460e32339f2703d5f75a20218
Author: vporpo <vasileios.porpodas at amd.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Scheduler.h
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/VecUtils.h
M llvm/lib/Transforms/Vectorize/SandboxVectorizer/DependencyGraph.cpp
M llvm/lib/Transforms/Vectorize/SandboxVectorizer/Scheduler.cpp
M llvm/unittests/Transforms/Vectorize/SandboxVectorizer/SchedulerTest.cpp
M llvm/unittests/Transforms/Vectorize/SandboxVectorizer/VecUtilsTest.cpp
Log Message:
-----------
[SandboxVec][Scheduler] Implement direction (#205193)
DGNode::UnscheduledPreds was added in a previous patch, so this patch
makes use of it in the scheduler. Depending on Dir we can now schedule
BottomUp or TopDown.
Commit: bab165ecb0d64686849dfa14d1798589eee7b66e
https://github.com/llvm/llvm-project/commit/bab165ecb0d64686849dfa14d1798589eee7b66e
Author: Steven Wu <stevenwu at apple.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M llvm/tools/dsymutil/Options.td
Log Message:
-----------
[dsymutil] Fix help message after #200971 (#203337)
The default DWARF linker is parallel after #200971. Fix help message
which still suggests classic DWARF linker.
Commit: 614b0b4fe8cb418b7c409f504846fe7e4f158b6f
https://github.com/llvm/llvm-project/commit/614b0b4fe8cb418b7c409f504846fe7e4f158b6f
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M lldb/source/Host/macosx/objcxx/HostInfoMacOSX.mm
Log Message:
-----------
[lldb] Resolve dyld introspection SPIs with dlsym (NFC) (#205434)
HostInfoMacOSX's SharedCacheInfo used the dyld process-snapshot
introspection SPIs only when <mach-o/dyld_introspection.h> was present,
gating the calling code behind a compile-time macro.
To avoid bifurcating the behavior based on the SDK, rather than the
presence of the symbols, use dlsym to resolve them at runtime.
While here, fold the duplicate dlsym of dyld_image_segment_data_ into
the new, once-initialized, shared table.
Assisted-by: Claude
Commit: c997a13812c1250499d016867bf6f2f9197e384e
https://github.com/llvm/llvm-project/commit/c997a13812c1250499d016867bf6f2f9197e384e
Author: Brian Cain <brian.cain at oss.qualcomm.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M llvm/lib/Target/Hexagon/CMakeLists.txt
M llvm/lib/Target/Hexagon/Hexagon.h
A llvm/lib/Target/Hexagon/HexagonHVXSaveRemark.cpp
M llvm/lib/Target/Hexagon/HexagonTargetMachine.cpp
A llvm/test/CodeGen/Hexagon/hvx-save-remarks.ll
Log Message:
-----------
[Hexagon] Add HVX caller-save remark pass for call-site diagnostics (#189188)
Add a new MachineFunctionPass (HexagonHVXSaveRemark) that emits
optimization analysis remarks when HVX vector registers must be saved
and restored around function calls. All HVX registers are caller-saved
(Section 5.3 of the Hexagon ABI), so any HVX value live across a call
requires a save/restore pair on the stack. Each HVX vector is 64 or 128
bytes, making this overhead expensive.
The pass exits when remarks are not requested
(-Rpass-analysis=hexagon-hvx-save) or when HVX is not enabled. A byte
threshold (default 1024, tunable via -hexagon-hvx-save-threshold)
filters out functions with only a small number of saves. The remarks
help programmers identify call sites where inlining, hoisting, or
sinking could reduce the save/restore cost.
Commit: bdc00c2a051169caf0f3cff624f00e3d38d02a3c
https://github.com/llvm/llvm-project/commit/bdc00c2a051169caf0f3cff624f00e3d38d02a3c
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M .github/workflows/prune-unused-branches.py
Log Message:
-----------
[Github] Make prune-unused-branches only delete branches after 7 days
To hopefully prevent the last failure mode that led to the job being
disabled where the GitHub API failed to return results for >24 hours.
Reviewers: cmtice
Pull Request: https://github.com/llvm/llvm-project/pull/205438
Commit: c48e258f617c231c6be1bbf15d239dfdcdd8c30c
https://github.com/llvm/llvm-project/commit/c48e258f617c231c6be1bbf15d239dfdcdd8c30c
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M .github/workflows/prune-branches.yml
Log Message:
-----------
[Github] Reenable prune-unused-branches workflow
The Github API has recovered and the previous failure mode has been
rectified by ensuring that branches are ready for deletion for seven
days rather than 24 hours.
Reviewers: cmtice
Reviewed By: cmtice
Pull Request: https://github.com/llvm/llvm-project/pull/205439
Commit: f12b16713185fe244b7f21f9c0fa42f96fc066e8
https://github.com/llvm/llvm-project/commit/f12b16713185fe244b7f21f9c0fa42f96fc066e8
Author: Matt <MattPD at users.noreply.github.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M flang/include/flang/Lower/Support/ReductionProcessor.h
M flang/lib/Lower/OpenMP/OpenMP.cpp
M flang/lib/Lower/Support/ReductionProcessor.cpp
A flang/test/Lower/OpenMP/Todo/declare-reduction-operator-multiple-types.f90
A flang/test/Lower/OpenMP/Todo/declare-reduction-operator-use-assoc.f90
A flang/test/Lower/OpenMP/declare-reduction-operator-derived.f90
A flang/test/Lower/OpenMP/declare-reduction-operator.f90
Log Message:
-----------
[flang][OpenMP] Fix ICE lowering user-defined operator declare reduction
A REDUCTION clause naming a user-defined operator (e.g.,
reduction(.myop.:x)) crashed in lowering: ReductionProcessor assumed the
DefinedOperator clause variant always held an intrinsic operator and called
std::get<IntrinsicOperator> unconditionally, which aborts for the
DefinedOpName alternative.
Handle DefinedOpName in the reduction clause processor, adding the
clause-side counterpart to the directive handling from #190288. For a
locally declared user-defined operator reduction, resolve the operator to
its reduction symbol and reference the omp.declare_reduction op materialized
for the declare reduction directive. The op name is now module-scoped via
AbstractConverter::mangleName, on the directive and clause sides in
lockstep, so reductions with the same operator spelling in different modules
no longer collide.
Cases that are not yet supported (reductions imported by USE association,
renamed or merged operators, and declarations with multiple types) now emit
a clean "not yet implemented" diagnostic instead of crashing or silently
binding the wrong combiner. Support for the USE-associated and cross-module
cases is a follow-up that builds on the semantic fix in #200329.
Tests cover the issue's integer case and a derived-type case (both lower,
with a module-scoped op name), plus the USE-associated and multiple-type
cases (clean TODO).
Fixes #204299
Assisted-by: Claude Opus 4.8, GPT-5.5.
Commit: 4bb31d7c30933e42bc924536728178ba0051ab31
https://github.com/llvm/llvm-project/commit/4bb31d7c30933e42bc924536728178ba0051ab31
Author: Longsheng Mou <longshengmou at gmail.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M mlir/lib/Dialect/GPU/IR/GPUDialect.cpp
M mlir/test/Dialect/GPU/canonicalize.mlir
Log Message:
-----------
[mlir][gpu] Fix memref.dim folding with negative index (#205338)
Fixes #205073.
Commit: 719144a271dbefb8719ed9ecd4c142ff514b4f22
https://github.com/llvm/llvm-project/commit/719144a271dbefb8719ed9ecd4c142ff514b4f22
Author: Longsheng Mou <longshengmou at gmail.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M mlir/lib/Dialect/MemRef/IR/MemRefOps.cpp
M mlir/lib/Dialect/Tensor/IR/TensorOps.cpp
Log Message:
-----------
[mlir] Simplify DimOp::fold by using `getConstantIndex`(NFC) (#205343)
Refactor `DimOp::fold` in both memref and tensor dialects to use the
existing `getConstantIndex()` helper instead of manually extracting the
index via `IntegerAttr`.
Commit: 87c73ade608c60c7e5e9f3868556b1b572be94c7
https://github.com/llvm/llvm-project/commit/87c73ade608c60c7e5e9f3868556b1b572be94c7
Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
A llvm/test/tools/llubi/icmp_ptr.ll
M llvm/tools/llubi/lib/Interpreter.cpp
Log Message:
-----------
[llubi] Add basic support for pointer comparisons (#205410)
This patch was a part of
https://github.com/llvm/llvm-project/pull/201170. I split the `icmp ptr`
support from the original PR since I am worried it might not catch up
for the LLVM 23 release (#201170 is blocked by #200672 for curating
mixed provenance tests). I hope we can pick most of the low-hanging
fruit exposed by fuzzers before the release. The released version should
be able to run csmith-generated tests without obvious false positives or
crashes.
BTW, this patch doesn't respect the exact semantics of `icmp ptr` (i.e.,
truncating the address to the address width. The naming is a bit
confusing...). Currently, we don't model external state in non-address
bits of a pointer in llubi. So I think it is fine.
Commit: ca368598052824548c753faf227bcf1dfc443cfd
https://github.com/llvm/llvm-project/commit/ca368598052824548c753faf227bcf1dfc443cfd
Author: Phoebe Wang <phoebe.wang at intel.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/CodeGen/Targets/X86.cpp
M clang/test/CodeGen/X86/avx-cxx-record.cpp
Log Message:
-----------
[clang] Exclude EmptyRecord when calculating larger CXX records (#205040)
To match with GCC: https://godbolt.org/z/KPKGhhenK
Fixes: #203760
Assisted-by: Claude Sonnet 4.6
Commit: f41a6b7cd2b9e4d8c7c1c7f4c60ac3b8edebba28
https://github.com/llvm/llvm-project/commit/f41a6b7cd2b9e4d8c7c1c7f4c60ac3b8edebba28
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M .github/workflows/release-binaries.yml
Log Message:
-----------
[Github] Bump release-binaries python version (#179287)
This makes it more consistent with the rest of the repository.
Commit: be3ee6fe6beda79e653d81733ede396aa40c0d6e
https://github.com/llvm/llvm-project/commit/be3ee6fe6beda79e653d81733ede396aa40c0d6e
Author: AZero13 <gfunni234 at gmail.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M llvm/lib/Target/AArch64/AArch64InstrInfo.cpp
A llvm/test/CodeGen/AArch64/peephole-substitute-cmp-adcs.mir
Log Message:
-----------
[AArch64] Add final missing instructions to sForm (#167518)
Fix missing opcodes in table of flag-setting instructions.
Commit: 2cbaca8fe5f33069d764c6cada16ea4305a6efc5
https://github.com/llvm/llvm-project/commit/2cbaca8fe5f33069d764c6cada16ea4305a6efc5
Author: Jin Huang <jinhuang1102 at gmail.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M llvm/lib/Analysis/AliasAnalysis.cpp
R llvm/test/Transforms/DeadStoreElimination/atomic-todo.ll
M llvm/test/Transforms/DeadStoreElimination/atomic.ll
Log Message:
-----------
Reapply [AA] Improve precision for monotonic atomic load/stor… (#195015)
Reverts https://github.com/llvm/llvm-project/pull/173135 and and add two
new IR tests to demonstrate the impact of different atomic orderings on
Dead Store Elimination(DSE).
This reverts commit c8941df6a1e4ed5e1ba3287985a60e1d7512c250.
Co-authored-by: Aiden Grossman <aidengrossman at google.com>
Commit: 9ee7bdaaca232e18e4a47ca25ed088d144a5b7e6
https://github.com/llvm/llvm-project/commit/9ee7bdaaca232e18e4a47ca25ed088d144a5b7e6
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M clang-tools-extra/clang-tidy/altera/UnrollLoopsCheck.cpp
M clang/include/clang/AST/Decl.h
M clang/lib/AST/Decl.cpp
M clang/lib/AST/ExprConstant.cpp
M clang/lib/CodeGen/CGExprConstant.cpp
M clang/lib/Serialization/ASTWriter.cpp
Log Message:
-----------
[clang][AST] Refactor `EvaluatedStmt` accessors in `VarDecl` (#205033)
1) Return the evaluated APValue as a const pointer since it
may not be modified by callers.
2) Only return a non-nullptr from `getEvaluatedValue()` if
the APValue not absent.
Commit: d17d249e92bfe63f6ccc8a927caa4eb0316474a8
https://github.com/llvm/llvm-project/commit/d17d249e92bfe63f6ccc8a927caa4eb0316474a8
Author: jinge90 <ge.jin at intel.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M libc/utils/MPFRWrapper/MPCommon.cpp
Log Message:
-----------
[libc][NFC] Remove a compiler warning for MPCommon (#205264)
Local build on Linux platform reports a compiler warning:
llvm-project/libc/utils/MPFRWrapper/MPCommon.cpp:546:15: warning:
implicit conversion loses integer precision: 'long' to 'int'
[-Wshorten-64-to-32]
546 | int mod = mpfr_get_si(value_ret_exact.value, MPFR_RNDN);
| ~~~ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1 warning generated.
Signed-off-by: jinge90 <ge.jin at intel.com>
Commit: 7570d2daec569c691694daa0ce967b1119533dc2
https://github.com/llvm/llvm-project/commit/7570d2daec569c691694daa0ce967b1119533dc2
Author: Frederick Vu <100011202+FrederickVu at users.noreply.github.com>
Date: 2026-06-23 (Tue, 23 Jun 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
M llvm/test/CodeGen/AMDGPU/dpp_combine_gfx11.mir
A llvm/test/MachineVerifier/AMDGPU/dpp-imm-src1.mir
Log Message:
-----------
[AMDGPU] Reject src1 immediates with dpp when unsupported (#201494)
This fixes an oversight in #164241.
Commit: 51b0fc4f611adc420afefa40130185cca6a59553
https://github.com/llvm/llvm-project/commit/51b0fc4f611adc420afefa40130185cca6a59553
Author: flovent <flbven at protonmail.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M clang-tools-extra/clang-tidy/cppcoreguidelines/ProTypeMemberInitCheck.cpp
Log Message:
-----------
[clang-tidy][NFC] Remove a wrong comment in ProTypeMemberInitCheck (#205477)
`getAsCXXRecordDecl` will return nullptr for any dependent types.
It's introduced by #192786, see
https://github.com/llvm/llvm-project/pull/192786#issuecomment-4785223372
in original PR.
Commit: 81a8c66fdc96a7bf6927bf3f88d4b2e24a5c71e7
https://github.com/llvm/llvm-project/commit/81a8c66fdc96a7bf6927bf3f88d4b2e24a5c71e7
Author: Madhur Amilkanthwar <madhura at nvidia.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorizationLegality.cpp
M llvm/test/Transforms/LoopVectorize/early_exit_store_legality.ll
M llvm/test/Transforms/LoopVectorize/early_exit_with_stores.ll
Log Message:
-----------
[LV] Accept swapped operands in early-exit condition compare (#199989)
Use m_c_ICmp so the load can be on either side of the icmp.
Commit: c656cb11639b5e6bd43fc691b3dab91a5d42ce37
https://github.com/llvm/llvm-project/commit/c656cb11639b5e6bd43fc691b3dab91a5d42ce37
Author: Brian Cain <brian.cain at oss.qualcomm.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M llvm/lib/Target/Hexagon/HexagonAsmPrinter.cpp
Log Message:
-----------
[Hexagon] Fix unused variable in non-assert builds (KCFI) (#205491)
Without asserts, we see failures like so:
/repo/llvm/llvm/lib/Target/Hexagon/HexagonAsmPrinter.cpp:982:43: error:
unused variable 'NextI' [-Werror,-Wunused-variable]
982 | MachineBasicBlock::const_instr_iterator NextI =
std::next(MI.getIterator());
| ^~~~~
1 error generated.
Mark NextI `maybe_unused` to address the issue.
Fixes a regression introduced by f8aa5f66209d.
Commit: a12ce96dad720892ecf8e77a6f8184b44bdde9e2
https://github.com/llvm/llvm-project/commit/a12ce96dad720892ecf8e77a6f8184b44bdde9e2
Author: Zhige Chen <zhige_chen at outlook.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
A llvm/test/tools/llubi/intr_memory.ll
A llvm/test/tools/llubi/intr_memory_align_ub.ll
A llvm/test/tools/llubi/intr_memory_constant_ub.ll
A llvm/test/tools/llubi/intr_memory_len_ub.ll
A llvm/test/tools/llubi/intr_memory_ub.ll
M llvm/tools/llubi/lib/ExecutorBase.cpp
M llvm/tools/llubi/lib/Interpreter.cpp
Log Message:
-----------
[llubi] Implement memory manipulation intrinsics (#204932)
Implement `memset`, `memcpy`, `memmove` intrinsics and their
corresponding inline version. Note that the `isvolatile` argument is
ignored and left for future PRs.
Commit: 474b21aa99899756ede1e767abed2be63783c8ec
https://github.com/llvm/llvm-project/commit/474b21aa99899756ede1e767abed2be63783c8ec
Author: firmiana402 <firmiana402 at gmail.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M lldb/source/Expression/DWARFExpression.cpp
M lldb/unittests/Expression/DWARFExpressionTest.cpp
M llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
M llvm/lib/CodeGen/AsmPrinter/DwarfExpression.cpp
M llvm/lib/CodeGen/AsmPrinter/DwarfExpression.h
M llvm/test/DebugInfo/X86/constant-loclist.ll
Log Message:
-----------
[DebugInfo][LLDB] Fix generic DW_OP_const handling (#204353)
This PR fixes two related DWARF constant-handling bugs that were
blocking each other.
First, LLDB's DWARF expression evaluator in
[`DWARFExpression.cpp`](https://github.com/llvm/llvm-project/blob/main/lldb/source/Expression/DWARFExpression.cpp)
handled `DW_OP_constu` and `DW_OP_consts` without going through
`to_generic`. Under DWARF, these operators push a generic value: an
address-sized integral value with unspecified signedness. That means the
result should be truncated to the target address size (via
`to_generic`).
Second, LLVM already had a producer-side issue tracked as
[#47431](https://github.com/llvm/llvm-project/issues/47431): on 32-bit
targets, LLVM could emit `DW_OP_consts` / `DW_OP_constu` for source
integer constants wider than the target generic type. If LLDB were fixed
alone, those producer-emitted constants would become truncated as DWARF
requires, exposing incorrect debug info for wide source values.
This patch fixes both sides together.
## What Changed
On the LLDB consumer side:
- `DW_OP_constu` now uses `to_generic`.
- `DW_OP_consts` now uses `to_generic`.
- The corresponding LLDB DWARF expression tests were updated to expect
address-sized generic values.
On the LLVM producer side:
- Wide integer debug-location constants that cannot be represented by
the target generic type are emitted as `DW_OP_implicit_value` instead of
`DW_OP_const*`.
- This preserves the source value bytes instead of relying on an
address-sized DWARF generic constant.
- The producer-side change is limited to complete constant values, where
there are no remaining `DIExpression` operations.
## Validation
Locally verified with:
```text
build/tools/lldb/unittests/Expression/ExpressionTests --gtest_filter='DWARFExpression.*'
74 tests passed
build/bin/llvm-lit -sv llvm/test/DebugInfo/X86/constant-loclist.ll
1 test passed
ninja -C build check-lldb -j12
No unexpected failures
ninja -C build check-all -j12
Completed with one unrelated local failure in Clang Tools :: clang-doc/DR-141990.cpp, caused by host warning-option output. No DebugInfo, DWARF, LLDB expression, or AsmPrinter-related failures were observed.
```
Commit: d7414ff58979052ee6f9979c96e54b565870ca18
https://github.com/llvm/llvm-project/commit/d7414ff58979052ee6f9979c96e54b565870ca18
Author: Madhur Amilkanthwar <madhura at nvidia.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M llvm/lib/Transforms/Scalar/LoopFuse.cpp
Log Message:
-----------
[LoopFusion][NFC] Share fusion tail between guarded and unguarded paths (#205492)
`performFusion()` and `fuseGuardedLoops()` carried two
character-for-character identical tails: header-PHI migration plus latch
rewiring, and the SCEV-forget / block-merge / latch-merge finalization.
Extract them into `rewireFusedHeaderPHIsAndLatches()` and
`finalizeFusedLoop()` and call both from each path.
Commit: 82c5bce5233f964da4f8086b2341067314d841d7
https://github.com/llvm/llvm-project/commit/82c5bce5233f964da4f8086b2341067314d841d7
Author: Luke Lau <luke at igalia.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M llvm/test/CodeGen/RISCV/rvv/vp-combine-reverse-load.ll
Log Message:
-----------
[RISCV] Convert opaque pointers in vp-combine-reverse-load.ll. NFC (#205498)
Commit: 448c3d54df7bcd5e5be2b5d051832ad00b4cc89c
https://github.com/llvm/llvm-project/commit/448c3d54df7bcd5e5be2b5d051832ad00b4cc89c
Author: AZero13 <gfunni234 at gmail.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M llvm/lib/Target/AArch64/AArch64TargetMachine.cpp
M llvm/test/CodeGen/AArch64/O3-pipeline.ll
M llvm/test/CodeGen/AArch64/aarch64-neon-vector-insert-uaddlv.ll
M llvm/test/CodeGen/AArch64/fabs-fp128.ll
Log Message:
-----------
[AArch64] Run cleanup one final time after peephole (#199711)
It's a lightweight pass. Should always be the last SSA pass since
peephole can end up making some instructions dead.
Commit: da9252a9453603af579a9f56c3212cce04e831d2
https://github.com/llvm/llvm-project/commit/da9252a9453603af579a9f56c3212cce04e831d2
Author: Haohai Wen <haohai.wen at intel.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M llvm/lib/ObjectYAML/ELFEmitter.cpp
Log Message:
-----------
[ObjectYAML][NFC] Derive BBAddrMap section size from the CBA offset (#204056)
Add the CBA offset delta to sh_size once at the end instead of after
each write.
Commit: 25ae6ce4801f6f6addae5079323870d4191e7531
https://github.com/llvm/llvm-project/commit/25ae6ce4801f6f6addae5079323870d4191e7531
Author: Victor Campos <victor.campos at arm.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M libc/src/stdlib/qsort.cpp
M libc/src/stdlib/qsort_r.cpp
M libc/src/stdlib/qsort_util.h
M libc/test/src/stdlib/CMakeLists.txt
A libc/test/src/stdlib/QsortReentrantTest.h
M libc/test/src/stdlib/qsort_r_test.cpp
Log Message:
-----------
[libc] Refactor qsort code (#198781)
This patch makes the following changes:
- Refactor the internal sorting functions to reduce code duplication.
- Move the testing machinery done for the testing of `qsort_r` to a
shared place.
These changes are done in anticipation to the introduction of Annex K's
`qsort_s`. This function shares most of its semantics with `qsort_r`,
therefore most of the testing logic can be shared between the two.
Besides, `qsort`, `qsort_r` and `qsort_s` are all very similar, hence we
can attempt to reduce duplication a bit more.
Commit: 099b1f6aeec8058460598106ff0b68fab66b12dc
https://github.com/llvm/llvm-project/commit/099b1f6aeec8058460598106ff0b68fab66b12dc
Author: Simon Tatham <simon.tatham at arm.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M compiler-rt/lib/builtins/arm/divdf3.S
M compiler-rt/test/builtins/Unit/divdf3new_test.c
Log Message:
-----------
[compiler-rt][ARM] Fix underflow handling in new divdf3.S (#204784)
The code which calculates the 'errsign' parameter to pass to
`__compiler_rt_dunder` was wrong in two ways. It calculated the value
with the wrong sign, and also in the wrong register, r12 rather than r2!
In this code's original context, both of those things made sense (the
'dunder' function had a nonstandard ABI). Somehow none of the existing
test cases detected the problem.
We found this bug in a test case downstream that only failed big-endian
(because that changes which half of the denominator mantissa is left in
r2 to be accidentally used as errsign). However, the new test cases here
are designed to detect the failure in both endiannesses.
Commit: a71292356656e0c516019aa6b571baeb572a7624
https://github.com/llvm/llvm-project/commit/a71292356656e0c516019aa6b571baeb572a7624
Author: Pavel Labath <pavel at labath.sk>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M libc/hdr/types/CMakeLists.txt
A libc/hdr/types/struct_ip_mreq.h
A libc/hdr/types/struct_ip_mreq_source.h
A libc/hdr/types/struct_ip_mreqn.h
A libc/hdr/types/struct_ip_msfilter.h
A libc/hdr/types/struct_ip_opts.h
M libc/include/CMakeLists.txt
M libc/include/llvm-libc-types/CMakeLists.txt
A libc/include/llvm-libc-types/struct_ip_mreq.h
A libc/include/llvm-libc-types/struct_ip_mreq_source.h
A libc/include/llvm-libc-types/struct_ip_mreqn.h
A libc/include/llvm-libc-types/struct_ip_msfilter.h
A libc/include/llvm-libc-types/struct_ip_opts.h
M libc/include/netinet/in.yaml
M libc/test/src/netinet/CMakeLists.txt
M libc/test/src/netinet/in_test.cpp
Log Message:
-----------
[libc] Add IPv4 socket options and related structs (#204787)
This patch adds struct ip_mreq, ip_mreq_source, ip_mreqn, ip_opts, and
ip_msfilter to <netinet/in.h>, along with IP level socket option macros
(IP_TOS, IP_TTL, IP_ADD_MEMBERSHIP, etc.).
I add basic unit tests verifying the size and member offsets of the new
structures against standard layout expectations, mainly to make sure
that the files are used /somewhere/.
Assisted by Gemini.
Commit: a562f6a4833eb15d8d2fdbd54c27c595935ff275
https://github.com/llvm/llvm-project/commit/a562f6a4833eb15d8d2fdbd54c27c595935ff275
Author: jeanPerier <jperier at nvidia.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M flang/include/flang/Optimizer/Dialect/FIROps.td
M flang/lib/Optimizer/Dialect/FIROps.cpp
A flang/test/Fir/present-absent-if-fold.fir
Log Message:
-----------
[flang][FIR] add canonicalization pattern for fir.if returning OPTIONAL (#205353)
Lowering is generating patterns when forwarding OPTIONAL in calls that
looks like:
```
%present = fir.is_present %var : (T) -> i1
%if_result = fir.if %present -> (T) {
fir.result %var : T
} else {
%absent = fir.absent T
fir.result %absent : T
}
```
This specific pattern is a no-op and `%var` can be used directly. The
lowering logic that generates such patterns is inside non trivial
compiler code that has to deal with more complex scenarios where the
code inside the fir.if is more complex. Add a FIR pattern to
canonicalize such code to help with later analysis (like aliasing).
Commit: 35cfa14e389e72b1b852d15c7cfc87172a5d4e4b
https://github.com/llvm/llvm-project/commit/35cfa14e389e72b1b852d15c7cfc87172a5d4e4b
Author: Hristo Hristov <hghristov.rmm at gmail.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M libcxx/include/__ranges/reverse_view.h
R libcxx/test/libcxx/ranges/range.adaptors/range.reverse/adaptor.nodiscard.verify.cpp
A libcxx/test/libcxx/ranges/range.adaptors/range.reverse/nodiscard.verify.cpp
Log Message:
-----------
[libc++][ranges] Applied `[[nodiscard]]` to `reverse_view` (#205186)
Towards #172124
#References:
- https://wg21.link/range.reverse
-
https://libcxx.llvm.org/CodingGuidelines.html#apply-nodiscard-where-relevant
Commit: 34bdee76b8577302e2e04fe553ab03579e764069
https://github.com/llvm/llvm-project/commit/34bdee76b8577302e2e04fe553ab03579e764069
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M clang-tools-extra/clangd/IncludeFixer.cpp
M clang-tools-extra/modularize/PreprocessorTracker.cpp
M clang/lib/Driver/ToolChains/Hexagon.cpp
M clang/lib/StaticAnalyzer/Checkers/StdLibraryFunctionsChecker.cpp
M clang/unittests/AST/ASTImporterFixtures.cpp
M clang/unittests/Interpreter/CodeCompletionTest.cpp
M clang/unittests/Tooling/HeaderIncludesTest.cpp
M lldb/source/Commands/CommandObjectCommands.cpp
M lldb/source/Commands/CommandObjectHelp.cpp
M lldb/source/Interpreter/CommandInterpreter.cpp
M lldb/source/Plugins/DynamicLoader/Hexagon-DYLD/HexagonDYLDRendezvous.cpp
M lldb/source/Plugins/DynamicLoader/POSIX-DYLD/DYLDRendezvous.cpp
M lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerPlatform.cpp
M lldb/source/Plugins/Protocol/MCP/ProtocolServerMCP.cpp
M lldb/source/Target/StackFrameList.cpp
M lldb/tools/yaml2macho-core/yaml2macho.cpp
M llvm/include/llvm/ExecutionEngine/Orc/TargetProcess/SimpleRemoteEPCServer.h
M llvm/include/llvm/ExecutionEngine/Orc/TaskDispatch.h
M llvm/lib/DWARFCFIChecker/DWARFCFIState.cpp
M llvm/tools/llvm-libtool-darwin/llvm-libtool-darwin.cpp
M llvm/tools/llvm-rc/ResourceScriptParser.cpp
M llvm/tools/llvm-rc/ResourceScriptParser.h
M llvm/tools/sancov/sancov.cpp
M llvm/unittests/ADT/STLExtrasTest.cpp
M llvm/unittests/CodeGen/PassManagerTest.cpp
M llvm/unittests/TextAPI/TextStubV3Tests.cpp
M llvm/unittests/TextAPI/TextStubV4Tests.cpp
M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
M mlir/tools/mlir-tblgen/OpDefinitionsGen.cpp
Log Message:
-----------
Remove unused variables in the monorepo (#204994)
https://github.com/llvm/llvm-project/pull/203084 adds diagnostics about
unused variables to the libc++ containers. This patch is the fallout
from the projects I tried to build with it.
Commit: 86e2f0f502066a2624981d6272b0dd727edc78b7
https://github.com/llvm/llvm-project/commit/86e2f0f502066a2624981d6272b0dd727edc78b7
Author: Akimasa Watanuki <mencotton0410 at gmail.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenExprConstant.cpp
Log Message:
-----------
[CIR] Handle const evaluated variable values (#205512)
Match the `VarDecl::evaluateValue()` contract updated by #205033 in CIR
constant emission.
Commit: 20988f874dc241b8b7c21f5c0b1f4c032835c2d2
https://github.com/llvm/llvm-project/commit/20988f874dc241b8b7c21f5c0b1f4c032835c2d2
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M llvm/test/CodeGen/X86/madd.ll
Log Message:
-----------
[X86] madd.ll - add additional tests for matchPMADDWD folds that fail with irregular source types (#205514)
Ensure #205391 doesn't crash with non-pow2/illegal types
Commit: 08e389cc4a029fb6d659f3f1e277ab3bce461a38
https://github.com/llvm/llvm-project/commit/08e389cc4a029fb6d659f3f1e277ab3bce461a38
Author: Anonmiraj <ezzibrahimx at gmail.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M clang/include/clang/APINotes/APINotesManager.h
M clang/lib/APINotes/APINotesManager.cpp
M clang/lib/Sema/SemaAPINotes.cpp
Log Message:
-----------
[APINotes] Skip per-decl ProcessAPINotes work when no API notes are active (#203710)
Cache "any API notes active" and skip per-decl lookups.
| function | before #202727 | trunk (parent) | this PR |
| ------------------------ | ----------------- | ----------------- |
------------------- |
| `Sema::ProcessAPINotes` | 2,385,852 (0.21%) | 1,028,280 (0.09%) |
**365,310 (0.03%)** |
| `UnwindNamespaceContext` | 349,244 | gone | gone |
| `findAPINotes` | 448,140 | 473,550 | **gone** |
cc @egorzhdan @Xazax-hun @compnerd
Commit: d8b6b295ac3064c2ef0a2a44e6d25663802ce866
https://github.com/llvm/llvm-project/commit/d8b6b295ac3064c2ef0a2a44e6d25663802ce866
Author: CarolineConcatto <caroline.concatto at arm.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M llvm/include/llvm/IR/Intrinsics.td
M llvm/include/llvm/IR/IntrinsicsAArch64.td
Log Message:
-----------
[AArch64][TableGen] Define ZA, ZT0 and FPMR memory defvars (#154144)
Introduce TableGen defvars for the inaccessible memory effects used to
model accesses to ZA, ZT0 and FPMR in IntrinsicsAArch64.td.
This is a preparatory cleanup for a follow-up patch that will replace
these uses of InaccessibleMem with target-specific memory locations.
Other uses of inaccessible memory in the file are left unchanged because
they are unrelated to ZA, ZT0 or FPMR.
This preserves the existing memory effects. In particular, intrinsics
that currently access both argument memory and inaccessible memory keep
the same ArgMem/InaccessibleMem read/write modelling.
---------
Co-authored-by: Paul Walker <paul.walker at arm.com>
Commit: 910425f1a4ea52f5b6a04e7f55a5df812cd77424
https://github.com/llvm/llvm-project/commit/910425f1a4ea52f5b6a04e7f55a5df812cd77424
Author: Paul Walker <paul.walker at arm.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M clang/test/CodeGen/AArch64/fp8-intrinsics/acle_neon_fp8_reinterpret.c
M clang/test/CodeGen/AArch64/neon/bf16-getset.c
M clang/test/CodeGen/AArch64/sme2p3-intrinsics/acle_sme2p3_luti6.c
M clang/test/CodeGen/AArch64/sve2p3-intrinsics/acle_sve2p3_luti6.c
M clang/test/CodeGen/AArch64/sve2p3-intrinsics/acle_sve2p3_luti6_lane_x2.c
M clang/test/CodeGen/attr-arm-sve-vector-bits-bitcast.c
M clang/test/CodeGen/attr-arm-sve-vector-bits-codegen.c
M clang/test/CodeGen/attr-arm-sve-vector-bits-globals.c
M clang/test/CodeGen/attr-arm-sve-vector-bits-types.c
M clang/test/CodeGen/svboolx2_t.cpp
M clang/test/CodeGen/svboolx4_t.cpp
M clang/test/CodeGenCXX/aarch64-mangle-sve-fixed-vectors.cpp
M clang/test/CodeGenCXX/aarch64-mangle-sve-vectors.cpp
M clang/test/CodeGenCXX/aarch64-sve-fixedtypeinfo.cpp
M clang/test/CodeGenCXX/mangle-neon-vectors.cpp
M clang/test/Index/index-builtin-sve.cpp
M clang/test/Sema/aarch64-bf16-ldst-intrinsics.c
M clang/test/Sema/aarch64-incompat-sm-builtin-calls.cpp
M clang/test/Sema/aarch64-sme-func-attrs.c
M clang/test/Sema/aarch64-sme-streaming-nonstreaming-vl-checks.c
M clang/test/Sema/aarch64-sme2p1-diagnostics.c
M clang/test/Sema/aarch64-sme2p1-intrinsics/acle_sme2p1_imm.cpp
M clang/test/Sema/aarch64-sme2p3-intrinsics/acle_sme2p3_imm.c
M clang/test/Sema/attr-arm-sve-vector-bits.c
M clang/test/SemaCXX/attr-arm-sve-vector-bits.cpp
Log Message:
-----------
[NFC][Clang][Tests] Remove +bf16 from AArch64 tests that don't strictly need the feature flag. (#205336)
Commit: 14840af5d694f40dbc8b1733330da2db4000335c
https://github.com/llvm/llvm-project/commit/14840af5d694f40dbc8b1733330da2db4000335c
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M flang/lib/Semantics/check-omp-structure.cpp
M flang/lib/Semantics/check-omp-structure.h
M flang/test/Semantics/OpenMP/device-constructs.f90
A flang/test/Semantics/OpenMP/if-clause-45-suggestion.f90
M flang/test/Semantics/OpenMP/if-clause-45.f90
A flang/test/Semantics/OpenMP/if-clause-50-suggestion.f90
M flang/test/Semantics/OpenMP/if-clause-50.f90
A flang/test/Semantics/OpenMP/if-clause-60.f90
M flang/test/Semantics/OpenMP/if-clause.f90
M llvm/include/llvm/Frontend/OpenMP/OMP.td
Log Message:
-----------
[flang][OpenMP] Check that IF clause applies to at most one leaf (#205164)
This also allows placing the IF clause in the "allowedClauses" set for
all directives, instead of having it in "allowedOnceClauses" for some
directives and in "allowedClauses" for others.
The emitted diagnostic will show which constituent has multiple IF
clauses applying to it:
```
if.f90:4:35: error: At most one IF clause can apply to each directive constituent
!$omp & if(target teams: x > 0) if(teams distribute: y > 0)
^^^^^^^^^^^^^^^^^^^^^^^^^^^
if.f90:4:11: Previous IF clause applying to the TEAMS constituent
!$omp & if(target teams: x > 0) if(teams distribute: y > 0)
^^^^^^^^^^^^^^^^^^^^^^^
```
Commit: 34ed491f6375a39248f71a98eaab5810dfc1324e
https://github.com/llvm/llvm-project/commit/34ed491f6375a39248f71a98eaab5810dfc1324e
Author: Nikita Popov <npopov at redhat.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M llvm/include/llvm/Analysis/ScalarEvolution.h
M llvm/lib/Analysis/ScalarEvolution.cpp
M llvm/test/Analysis/Delinearization/global_array_bounds.ll
M llvm/test/Analysis/DependenceAnalysis/Banerjee.ll
M llvm/test/Analysis/DependenceAnalysis/BasePtrBug.ll
M llvm/test/Analysis/DependenceAnalysis/Constraints.ll
M llvm/test/Analysis/DependenceAnalysis/DifferentOffsets.ll
M llvm/test/Analysis/DependenceAnalysis/NonCanonicalizedSubscript.ll
M llvm/test/Analysis/DependenceAnalysis/Propagating.ll
M llvm/test/Analysis/LoopAccessAnalysis/clamped-access-pattern.ll
M llvm/test/Analysis/LoopAccessAnalysis/inbounds-gep-in-predicated-blocks.ll
M llvm/test/Analysis/LoopAccessAnalysis/nssw-predicate-implied.ll
M llvm/test/Analysis/LoopAccessAnalysis/symbolic-stride.ll
M llvm/test/Analysis/ScalarEvolution/addrec-computed-during-addrec-calculation.ll
M llvm/test/Analysis/ScalarEvolution/backedge-taken-count-guard-info.ll
M llvm/test/Analysis/ScalarEvolution/becount-invalidation.ll
M llvm/test/Analysis/ScalarEvolution/different-loops-recs.ll
M llvm/test/Analysis/ScalarEvolution/exit-count-non-strict.ll
M llvm/test/Analysis/ScalarEvolution/exit-count-select-safe.ll
M llvm/test/Analysis/ScalarEvolution/incorrect-exit-count.ll
M llvm/test/Analysis/ScalarEvolution/increasing-or-decreasing-iv.ll
M llvm/test/Analysis/ScalarEvolution/limit-depth.ll
M llvm/test/Analysis/ScalarEvolution/max-backedge-taken-count-guard-info-operand-order.ll
M llvm/test/Analysis/ScalarEvolution/max-backedge-taken-count-guard-info-rewrite-expressions.ll
M llvm/test/Analysis/ScalarEvolution/max-backedge-taken-count-guard-info.ll
M llvm/test/Analysis/ScalarEvolution/mul-udiv-folds.ll
M llvm/test/Analysis/ScalarEvolution/pr123550.ll
M llvm/test/Analysis/ScalarEvolution/pr22641.ll
M llvm/test/Analysis/ScalarEvolution/ptrtoint.ll
M llvm/test/Analysis/ScalarEvolution/sext-iv-2.ll
M llvm/test/Analysis/ScalarEvolution/sext-mul.ll
M llvm/test/Analysis/ScalarEvolution/trip-count-negative-stride.ll
M llvm/test/Analysis/ScalarEvolution/umin-umax-folds.ll
M llvm/test/CodeGen/PowerPC/mma-intrinsics.ll
M llvm/test/Transforms/IndVarSimplify/eliminate-exit-no-dl.ll
M llvm/test/Transforms/LoopInterchange/fixed-size-no-signed-wrap.ll
M llvm/test/Transforms/LoopVectorize/RISCV/masked_gather_scatter.ll
M llvm/test/Transforms/LoopVectorize/X86/cast-costs.ll
M llvm/test/Transforms/LoopVectorize/iv-select-cmp-no-wrap.ll
M llvm/test/Transforms/LoopVectorize/iv-select-cmp-trunc.ll
M polly/test/ScopInfo/NonAffine/non_affine_conditional_surrounding_non_affine_loop.ll
Log Message:
-----------
[SCEV] Infer addrec nowrap flags during range analysis (#202964)
When we're computing the range of the addrec, we already have to reason
about whether it wraps, so we may as well determine the nowrap flags at
the same time.
This is more precise than the previous logic that took the addrec range
and checked whether adding a step to it does not wrap. For example, an
`{0,+,1}` addrec with a full range can still be non-wrapping.
Note that I removed some assertions in the SCEV printed that predicated
exit counts actually have predicates. Due to SCEV's query order
dependence, this can happen, also prior to this change, see for example
https://llvm.godbolt.org/z/cWK1MMEqv. While this indicates suboptimal
results, it's not a bug, and we should not assert.
Fixes https://github.com/llvm/llvm-project/issues/200788.
Commit: 2b91b5b61a218c102e75806f5d1381a9861977d1
https://github.com/llvm/llvm-project/commit/2b91b5b61a218c102e75806f5d1381a9861977d1
Author: Tomas Matheson <Tomas.Matheson at arm.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td
M llvm/test/CodeGen/AArch64/sve-intrinsics-int-arith-undef.ll
A llvm/test/CodeGen/AArch64/sve-mul-imm-add-adr.ll
M llvm/test/CodeGen/AArch64/sve2-histcnt.ll
Log Message:
-----------
[AArch64][SVE] Use ADD/ADR instead of MUL/MLA for x*N (#198566)
Avoid `MUL`/`MLA` for all-active multiplies by small constants when
cheaper `ADD`/`ADR` sequences are available.
Vector multiplication (int32_t/uint32_t base types) by 2, 3, 5, 9 can be
done with ADD (for 2) ADR (for 3,5,9).
Similarly, operations of the form a + x * {1,2,4,8} can use ADR.
Commit: 36f12f975f395cab406f161086b6a808ea0440af
https://github.com/llvm/llvm-project/commit/36f12f975f395cab406f161086b6a808ea0440af
Author: Kareem Ergawy <kergawy at nvidia.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M flang/lib/Optimizer/Transforms/FIRToMemRef.cpp
M flang/test/Transforms/FIRToMemRef/slice-projected.mlir
Log Message:
-----------
[FIR] Route embox + projected complex slice through shapeVec (#205042)
When the array_coor base is a fir.embox with a projected complex %re/%im
slice, take the shapeVec path instead of the descriptor (fir.box_dims)
path. The descriptor path iterates source-rank dims while querying the
rank-reduced embox result box, which miscompiles slices that collapse
dims (e.g. complex(:,k)%re). For embox-derived boxes the underlying
storage is contiguous, so the shape-derived layout is both correct and
the natural place to encode that static shape is available. Non-embox
boxes (rebox, assumed-shape) still go through fir.box_dims.
Co-Authored-By: Claude Sonnet 4.6 <noreply at anthropic.com>
Co-authored-by: Claude Sonnet 4.6 <noreply at anthropic.com>
Commit: 98dc5c68a7672138e60e9869405aded6db10b31e
https://github.com/llvm/llvm-project/commit/98dc5c68a7672138e60e9869405aded6db10b31e
Author: Ramkumar Ramachandra <artagnon at tenstorrent.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlan.cpp
M llvm/lib/Transforms/Vectorize/VPlan.h
M llvm/lib/Transforms/Vectorize/VPlanAnalysis.cpp
M llvm/lib/Transforms/Vectorize/VPlanConstruction.cpp
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/lib/Transforms/Vectorize/VPlanUnroll.cpp
M llvm/lib/Transforms/Vectorize/VPlanValue.h
M llvm/unittests/Transforms/Vectorize/VPlanTest.cpp
Log Message:
-----------
[VPlan] Introduce VPValue::user_empty (NFC) (#203518)
Commit: e646fa6c1cebdddc4bdb81703c95ad5ef61c286d
https://github.com/llvm/llvm-project/commit/e646fa6c1cebdddc4bdb81703c95ad5ef61c286d
Author: Fangrui Song <i at maskray.me>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M llvm/include/llvm/Support/Allocator.h
Log Message:
-----------
[Allocator] Drop the fast-path null check via a sentinel End (#205485)
Follow-up to #203718. Store `End` as the slab end plus 1 (and 0 for an
empty or moved-from allocator). This removes one condition from the fast
path.
For lld/ELF SymbolTable.cpp (clang++ -O3), the inlined `make<T>()` fast
path loses its `test rax, rax; je` pair; the whole TU's .text shrinks
from 14037 to 13800 bytes.
Aided by Claude Opus 4.8
Commit: 846793e2a57a39c90a4e57a61ea940127bbabf1a
https://github.com/llvm/llvm-project/commit/846793e2a57a39c90a4e57a61ea940127bbabf1a
Author: Abid Qadeer <haqadeer at amd.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M flang/include/flang/Semantics/openmp-utils.h
M flang/lib/Lower/OpenMP/OpenMP.cpp
M flang/lib/Lower/OpenMP/Utils.cpp
M flang/lib/Lower/OpenMP/Utils.h
M flang/lib/Semantics/openmp-utils.cpp
Log Message:
-----------
[flang][OpenMP][NFC] Hoist variant match-info construction into Semantics (#204387)
Replace the lowering-only `makeVariantMatchInfo` helper with a single
shared `semantics::omp::MakeVariantMatchInfo`. It builds the
VariantMatchInfo from a parsed context selector and returns the optional
non-constant user condition (as before). Update metadirective lowering
to use it and drop the duplicated Lower/OpenMP copy.
Selector features that variant selection cannot yet honour
(target_device selectors, and clause/extension trait properties) are not
match-info concerns, so they are kept out of `MakeVariantMatchInfo`.
Detection lives in a separate, pure helper
`FindUnsupportedSelectorFeature`; the caller diagnoses the feature in
its own terms (metadirective lowering emits a TODO) before building the
match info. `MakeVariantMatchInfo` checks the precondition. NFC for
metadirective.
Co-authored-by: Cursor
---------
Co-authored-by: Cursor <cursoragent at cursor.com>
Commit: a62cd2c465310718736956f24cd4d0d5f6cb27b7
https://github.com/llvm/llvm-project/commit/a62cd2c465310718736956f24cd4d0d5f6cb27b7
Author: Balázs Benics <benicsbalazs at gmail.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M clang/include/clang/StaticAnalyzer/Core/BugReporter/BugReporter.h
M clang/lib/StaticAnalyzer/Checkers/CXXDeleteChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/MacOSKeychainAPIChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/NonNullParamChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/UndefCapturedBlockVarChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/UndefinedNewArraySizeChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/UnixAPIChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/VLASizeChecker.cpp
M clang/lib/StaticAnalyzer/Core/BugReporter.cpp
Log Message:
-----------
[analyzer][NFC] Take BugReport descriptions as Twine instead of StringRef (#205527)
The constructors of `BugReport`, `BasicBugReport`, and
`PathSensitiveBugReport` previously took the description (and short
description) as `StringRef`. The base class always copies into a
`std::string` member regardless, so taking `const llvm::Twine &` is
strictly more flexible at no storage cost: callers can keep passing
string literals, `StringRef`, `std::string`, `SmallString::str()`, or
`formatv(...).str()` exactly as before, and now they can also pass a
`Twine` concatenation directly without first materializing a temporary
through `SmallString` + `raw_svector_ostream` or `+`/`formatv`.
Assisted-By: claude
Commit: 09058457eeb62365e28e4ceb40654f2359569548
https://github.com/llvm/llvm-project/commit/09058457eeb62365e28e4ceb40654f2359569548
Author: forking-google-bazel-bot[bot] <265904573+forking-google-bazel-bot[bot]@users.noreply.github.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M utils/bazel/llvm-project-overlay/libc/test/src/stdlib/BUILD.bazel
Log Message:
-----------
[Bazel] Fixes 25ae6ce (#205501)
This fixes 25ae6ce4801f6f6addae5079323870d4191e7531.
Co-authored-by: Google Bazel Bot <google-bazel-bot at google.com>
Commit: 94819d04c317d7d17e26a6938208efa856a97d24
https://github.com/llvm/llvm-project/commit/94819d04c317d7d17e26a6938208efa856a97d24
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M libcxx/include/__config
M libcxx/include/__configuration/language.h
Log Message:
-----------
[libc++] Move constexpr/explicit macros to <__configuration/language.h> (#205535)
These macros are essentially a property of the language mode we're in,
so move them to `<__configuration/language.h>`.
Commit: 1ad2d369d18da9cb65a0d518f5a1b8bd98577d3e
https://github.com/llvm/llvm-project/commit/1ad2d369d18da9cb65a0d518f5a1b8bd98577d3e
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
Log Message:
-----------
[X86] combineAddOfPMADDWD - use MaskedVectorIsZero directly instead of MaskedValueIsZero. NFC. (#205534)
We're setting all demanded bits and just want to know that the high elements in each pair are zero.
Commit: 4de5455b77e177137c46876d6d4ae171d06b15fa
https://github.com/llvm/llvm-project/commit/4de5455b77e177137c46876d6d4ae171d06b15fa
Author: David CARLIER <devnexen at gmail.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M bolt/lib/Passes/CacheMetrics.cpp
M bolt/lib/Passes/TailDuplication.cpp
Log Message:
-----------
[NFC] use DenseMap/SmallPtrSet in CacheMetrics and TailDupli… (#205480)
…cation
Swap pointer-keyed std::unordered_map/std::set for their ADT equivalents
on hot paths.
Commit: 1cf4a0cb7909cb7b9e0bf15757fc77dc9b02c796
https://github.com/llvm/llvm-project/commit/1cf4a0cb7909cb7b9e0bf15757fc77dc9b02c796
Author: Sairudra More <sairudra60 at gmail.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M flang/lib/Lower/OpenMP/ClauseProcessor.cpp
R flang/test/Lower/OpenMP/Todo/reduction-task.f90
A flang/test/Lower/OpenMP/parallel-reduction-task.f90
M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
A mlir/test/Target/LLVMIR/openmp-reduction-task-modifier.mlir
M mlir/test/Target/LLVMIR/openmp-todo.mlir
Log Message:
-----------
[flang][OpenMP] Lower task reduction modifier (#205124)
Adds Flang lowering and MLIR-to-LLVM IR translation support for the
OpenMP `task` modifier on reduction clauses for `parallel`,
`do`/`wsloop`, and `sections`.
Unsupported forms remain diagnosed/TODO-gated rather than silently
lowered.
Fixes #205123.
Commit: bfac2845fefcfe829df7df4e32a3a3044ee101a5
https://github.com/llvm/llvm-project/commit/bfac2845fefcfe829df7df4e32a3a3044ee101a5
Author: Donát Nagy <donat.nagy at ericsson.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M clang/lib/StaticAnalyzer/Core/ExprEngine.cpp
Log Message:
-----------
[NFC][analyzer] Remove the NodeBuilder from VisitArrayInitLoopExpr (#204354)
Part of my commit series to eliminate the class `NodeBuilder`.
Commit: 30abd9ec2b8d8a5d95da18a0e190fff489604f27
https://github.com/llvm/llvm-project/commit/30abd9ec2b8d8a5d95da18a0e190fff489604f27
Author: Arda Serdar Pektezol <arda at pektezol.dev>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M llvm/docs/Passes.md
R llvm/include/llvm/Transforms/Utils/UnifyFunctionExitNodes.h
M llvm/lib/Passes/PassBuilder.cpp
M llvm/lib/Passes/PassRegistry.def
M llvm/lib/Transforms/Utils/CMakeLists.txt
R llvm/lib/Transforms/Utils/UnifyFunctionExitNodes.cpp
R llvm/test/Transforms/UnifyFunctionExitNodes/unreachable-blocks-status.ll
Log Message:
-----------
[UnifyFunctionExitNodes] Remove the pass (#205519)
The mergereturn pass is not used by anything, so we can go ahead and
delete it.
Related discussion:
https://github.com/llvm/llvm-project/pull/204651#issuecomment-4787636904
Commit: 977eb3f0ce6c89c0de7cdf82d6ff284cd5667dd5
https://github.com/llvm/llvm-project/commit/977eb3f0ce6c89c0de7cdf82d6ff284cd5667dd5
Author: Fady Farag <com.webkit.iidmsa at gmail.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M clang/test/Rewriter/objc-modern-getclass-proto.mm
Log Message:
-----------
[clang][test] Use `FileCheck` in `Rewriter/objc-modern-getclass-proto.mm` (#204272)
The test had `CHECK` directives that were never executed because no
`RUN` line invoked `FileCheck` on the output.
The test also used a fragile runtime, which invoked the fragile rewriter
instead of the modern one the test was written for.
Switch to a non-fragile runtime so the modern rewriter runs as the test
intended.
Commit: 83d97a53509b74a612148d7d366f8c3359237883
https://github.com/llvm/llvm-project/commit/83d97a53509b74a612148d7d366f8c3359237883
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M libcxx/include/__config
M libcxx/include/__configuration/utility.h
Log Message:
-----------
[libc++] Move _LIBCPP_CONCAT{,3} to <__configuration/utility.h> (#205533)
The macro is already used in `<__configuration/attributes.h>` and just
happens to work because we include both headers.
`<__configuration/utility.h>` seems like the obvious place to put the
macros.
Commit: fd1f64e915edcfa19a9e0f7f4ca4b6a4cc664e92
https://github.com/llvm/llvm-project/commit/fd1f64e915edcfa19a9e0f7f4ca4b6a4cc664e92
Author: Ivan R. Ivanov <iivanov at nvidia.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M offload/unittests/CMakeLists.txt
Log Message:
-----------
[offload][unittest] Set rpath to make sure tests use the correct lib (#205542)
Depending on system setup, the unit tests could not find the just built
libLLVMOffload.so. Set the BUILD_RPATH to make sure they correctly use
the library from the current build.
Commit: 432f9f8aeadb3819bead82ab26f32ca983f91084
https://github.com/llvm/llvm-project/commit/432f9f8aeadb3819bead82ab26f32ca983f91084
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M libcxx/include/__configuration/platform.h
Log Message:
-----------
[libc++] Move <features.h> include to <__configuration/platform.h> (#205548)
Including `<features.h>` is platform-specific configuration and should
therefore be in `<__configuration/platform.h>`.
Commit: 09939ace888b407dc984a7fc6c980fd6064a75c1
https://github.com/llvm/llvm-project/commit/09939ace888b407dc984a7fc6c980fd6064a75c1
Author: Donát Nagy <donat.nagy at ericsson.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M clang/lib/StaticAnalyzer/Core/ExprEngine.cpp
Log Message:
-----------
[NFC][analyzer] Remove the NodeBuilder from eagerly assume (#204371)
Part of my commit series to gradually eliminate the class `NodeBuilder`.
Admittedly this is one of the few places where the implementation with
the `NodeBuilder` is more concise than the new code.
This is caused by two factors:
1. This is an optional step in the analysis, so the "put source nodes in
destination unless we generate a child node from them" behavior of
`NodeBuilder` -- which is often completely useless -- was helpful on two
branches.
2. Making nodes with tags is very rare, so I intentionally did not
include support for tagging in `makeNodeWithBinding` -- but this is one
of the few places where tags are applied.
Commit: 6b349a9d00b366a90dc9b79e2b5543fc8774b019
https://github.com/llvm/llvm-project/commit/6b349a9d00b366a90dc9b79e2b5543fc8774b019
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M libcxx/include/__config
Log Message:
-----------
[libc++] Remove <features.h> include from <__config> (#205549)
The include was moved to `<__configuration/platform.h>` in #205548,
which was also supposed to remove the include in `<__config>`.
Commit: 5e165a4896ebde3233e32c6df423c884939f3bd9
https://github.com/llvm/llvm-project/commit/5e165a4896ebde3233e32c6df423c884939f3bd9
Author: Andrzej Warzyński <andrzej.warzynski at arm.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M clang/lib/CodeGen/TargetBuiltins/ARM.cpp
Log Message:
-----------
[clang][ARM] Delete dead-code (nfc) (#205404)
Removes dead code that I accidentally introduced in #195825/. Thank you
@shafik for pointing this out!
Commit: 4adb32bbca24fbcd247e0725992024d922a94303
https://github.com/llvm/llvm-project/commit/4adb32bbca24fbcd247e0725992024d922a94303
Author: Tony Guillot <tony.guillot at protonmail.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M clang/include/clang/Basic/AttrDocs.td
Log Message:
-----------
[Clang][Docs] Fixed typos of sentinel attribute (#205539)
I have previously documented the sentinel attribute but some typos have
been missed during the review process.
Commit: d089c9add10d5604a397e9af6359a139393420fe
https://github.com/llvm/llvm-project/commit/d089c9add10d5604a397e9af6359a139393420fe
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M llvm/test/CodeGen/X86/madd.ll
Log Message:
-----------
[X86] madd.ll - add additional load test for matchPMADDWD folds that fail with irregular source types (#205554)
Ensure #205391 doesn't crash with non-pow2/illegal types
Commit: e68e8d35c91b4fd3ba0ae3ef12d79b41d92580b2
https://github.com/llvm/llvm-project/commit/e68e8d35c91b4fd3ba0ae3ef12d79b41d92580b2
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M flang/include/flang/Parser/dump-parse-tree.h
M flang/include/flang/Parser/parse-tree.h
M flang/include/flang/Semantics/expression.h
M flang/include/flang/Semantics/symbol.h
M flang/lib/Lower/OpenMP/ClauseProcessor.cpp
M flang/lib/Lower/OpenMP/Clauses.cpp
M flang/lib/Parser/openmp-parsers.cpp
M flang/lib/Parser/openmp-utils.cpp
M flang/lib/Parser/unparse.cpp
M flang/lib/Semantics/check-omp-loop.cpp
M flang/lib/Semantics/check-omp-structure.cpp
M flang/lib/Semantics/check-omp-structure.h
M flang/lib/Semantics/check-omp-variant.cpp
M flang/lib/Semantics/openmp-utils.cpp
M flang/lib/Semantics/resolve-directives.cpp
M flang/lib/Semantics/resolve-names.cpp
M flang/lib/Semantics/rewrite-parse-tree.cpp
A flang/test/Lower/OpenMP/Todo/locator-call-affinity.f90
A flang/test/Lower/OpenMP/Todo/locator-call-from.f90
A flang/test/Lower/OpenMP/Todo/locator-call-map.f90
A flang/test/Lower/OpenMP/Todo/locator-call-to.f90
A flang/test/Lower/OpenMP/Todo/locator-reserved.f90
M flang/test/Parser/OpenMP/allocate-align-tree.f90
M flang/test/Parser/OpenMP/allocate-tree-spec-part.f90
M flang/test/Parser/OpenMP/allocate-tree.f90
M flang/test/Parser/OpenMP/declare-variant.f90
M flang/test/Parser/OpenMP/depobj-construct.f90
M flang/test/Parser/OpenMP/groupprivate.f90
M flang/test/Parser/OpenMP/metadirective-dirspec.f90
M flang/test/Parser/OpenMP/metadirective-flush.f90
M flang/test/Parser/OpenMP/openmp6-directive-spellings.f90
M flang/test/Parser/OpenMP/threadprivate.f90
M flang/test/Semantics/OpenMP/affinity-invalid.f90
M flang/test/Semantics/OpenMP/depend-substring.f90
A flang/test/Semantics/OpenMP/reserved-locator.f90
M llvm/include/llvm/Frontend/OpenMP/OMP.h
M llvm/lib/Frontend/OpenMP/OMP.cpp
Log Message:
-----------
[flang][OpenMP] Parsing and semantics of locators as part of OmpObject (#203910)
Allow function call references and reserved locator names as parts of
OmpObject. Function calls and array element accesses have the same
syntax, and the OmpObject parser will parse them as function calls. This
is then corrected (if needed) immediately after the name resolution is
complete.
There are no clause-specific semantic checks of proper locators.
Existing code will check if a proper locator is specified on a clause
that allows it.
Lowering of proper locators to MLIR is not implemented, and a TODO
message is emitted.
Commit: 822212abb78ea6961bd098282b2fed93188f244f
https://github.com/llvm/llvm-project/commit/822212abb78ea6961bd098282b2fed93188f244f
Author: Nathan Corbyn <n_corbyn at apple.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M llvm/lib/Target/AArch64/AArch64InstrInfo.cpp
M llvm/test/CodeGen/AArch64/framelayout-scavengingslot-stack-hazard.mir
M llvm/test/CodeGen/AArch64/framelayout-scavengingslot.mir
M llvm/test/CodeGen/AArch64/irg_sp_tagp.ll
A llvm/test/CodeGen/AArch64/large-stack-offset-calcs.mir
M llvm/test/CodeGen/AArch64/stack-guard-sve.ll
M llvm/test/CodeGen/AArch64/swiftself-scavenger.ll
Log Message:
-----------
[AArch64] Optimise materialisation of large stack offset calculations (#201856)
Commit: 2ae9c99a738e78b8713e671b655ea3930439dd91
https://github.com/llvm/llvm-project/commit/2ae9c99a738e78b8713e671b655ea3930439dd91
Author: Lukas Sommer <lukas.sommer at amd.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
M llvm/lib/Target/AMDGPU/SIISelLowering.h
M llvm/test/CodeGen/AMDGPU/absdiff.ll
Log Message:
-----------
[AMDGPU] Promote uniform i16 ABS to i32 (#204526)
GlobalISel already expands uniform `i16` `G_ABS` to sign-extend to i32
and the native `s_abs` instruction.
This adds a similar expansion as DAGCombiner pattern, promoting uniform
`i16` `ABS` to `i32` that can use `s_abs`.
---------
Signed-off-by: Lukas Sommer <lukas.sommer at amd.com>
Commit: 3abbb6a92de7049503c1597550b319e1d4aa412e
https://github.com/llvm/llvm-project/commit/3abbb6a92de7049503c1597550b319e1d4aa412e
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
Log Message:
-----------
[X86] isHorizontalBinOp - constify hadd/sub pattern matcher to make it easier to reuse. (#205538)
Avoid performing vector splits / bitcasts inside the isHorizontalBinOp call.
This is to make it easier to reuse the pattern matcher for other uses
(e.g. X86ISD::VPMADDWD/VPMADDUBSW detection).
Commit: 729f3bfbec19065c33593b95db251321dadb0e9c
https://github.com/llvm/llvm-project/commit/729f3bfbec19065c33593b95db251321dadb0e9c
Author: KavinSai-synthara <kavin.sai at synthara.ai>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M llvm/lib/Target/ARM/ARMISelLowering.cpp
A llvm/test/CodeGen/ARM/ssat-offset.ll
Log Message:
-----------
[ARM] Select ssat for saturating clamps with a non-zero offset (#203854)
### Summary
On ARM/Thumb2, a saturating clamp to a signed range that is not centered
on zero is *not* matched to `ssat`, even though it can be potentially
matched to `ssat`. The backend instead emits a long explicit
compare/select clamp.
This pattern is extremely common in quantized ML code: an int8
requantize is `clamp(accumulator + output_zero_point, -128, 127)`, and
whenever the output zero_point != 0, the instruction count regress from
one ssat to ~10 instructions.
The root cause is that InstCombine canonically **sinks the constant out
of the min/max** — `clamp(X + C, -128, 127)` becomes `clamp(X, -128-C,
127-C) + C` — and the backend's SSAT matcher
(`PerformMinMaxToSatCombine`) only handles a clamp whose bounds already
form a saturation range. The offset of the form (`[-128-C, 127-C]`,
width 256 = 2⁸) falls through to a generic clamp.
#### Reproducer
```c
#include <stdint.h>
int8_t requant_offset(int32_t acc) { // output zero-point = 96
int32_t v = (acc >> 8) + 96;
if (v < -128) v = -128;
if (v > 127) v = 127;
return (int8_t)v;
}
int8_t requant_zero(int32_t acc) { // output zero-point = 0 (for contrast)
int32_t v = (acc >> 8);
if (v < -128) v = -128;
if (v > 127) v = 127;
return (int8_t)v;
}
```
```
clang -O2 --target=thumbv7em-none-eabihf -mcpu=cortex-m4 -mfloat-abi=hard -mfpu=fpv4-sp-d16 -S issue.c
```
**Actual**
`requant_offset` (zero-point 96):
```asm
asrs r1, r0, #8
cmn.w r1, #224
mvn r1, #223
it gt
asrgt r1, r0, #8
cmp r1, #31
it ge
movge r1, #31
add.w r0, r1, #96
sxtb r0, r0
```
`requant_zero` (zero-point 0):
```asm
ssat r0, #8, r0, asr #8
```
#### Expected
`requant_offset` should select `ssat`, e.g.:
```asm
movs r1, #96
add.w r0, r1, r0, asr #8
ssat r0, #8, r0
subs r0, #96
```
#### Why this is sound
A clamp whose width (hi − lo + 1) is a power of two is just an `ssat`
shifted off zero by constant C.
```
clamp(X, lo, hi) == ssat_k(X − C) + C, C = lo + 2^(k-1)
```
e.g. `clamp(X, −224, 31)` == `clamp(X+96, (-225+96), (31+96)) - 96` ==
`ssat8(X + 96) − 96`
Assisted-by: Claude
Commit: 225e22d184e20c9e2e6e4ba0d32b206a0c9b9439
https://github.com/llvm/llvm-project/commit/225e22d184e20c9e2e6e4ba0d32b206a0c9b9439
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M clang/lib/AST/ByteCode/Compiler.cpp
M clang/lib/AST/ByteCode/Compiler.h
Log Message:
-----------
[clang][bytecode][NFC] Use SourceInfo for opcode emitter helpers (#205550)
Instead of only using an `Expr*`. This makes more sense and we can later
use a decl as a source as well.
Commit: 6136998a454e748a1feea11ed4a4f2b5f1ea3111
https://github.com/llvm/llvm-project/commit/6136998a454e748a1feea11ed4a4f2b5f1ea3111
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/madd.ll
Log Message:
-----------
[X86] matchPMADDWD - add support for larger source types (#205391)
Handle cases where the source vector type came from a vXi32 type wider
than 2 x the original vXi16 type
The matcher only bothers with the lower elements - it doesn't matter if
we're extracting from a wider vector
Fixes a number of SSE/AVX512 targets that failed to legalize to
recoverable vector widths
Commit: 229e42155579d191ce114d1e067a2a05aba564e3
https://github.com/llvm/llvm-project/commit/229e42155579d191ce114d1e067a2a05aba564e3
Author: Jiaqi He <heturing at gmail.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M mlir/lib/Dialect/Tosa/Transforms/TosaInputShape.cpp
M mlir/test/Dialect/Tosa/tosa-input-shape.mlir
Log Message:
-----------
[mlir][tosa] Handle function declarations in tosa input shape pass (#205359)
Fixes https://github.com/llvm/llvm-project/issues/205063.
The `tosa-experimental-input-shape` pass currently does not handle
function declarations correctly. The pass may run on declarations, but
the current implementation assumes that every function has a body and
unconditionally accesses the entry block and the last block when
updating argument and result types.
This patch checks whether the function has a body before accessing body
blocks. For declarations, the pass updates the function signature input
types and preserves the original result types, since there is no return
operation from which result types can be inferred.
A regression test is added for the declaration case.
Commit: a1cdfebb72880cb1b5039611cafee7ca3af7a368
https://github.com/llvm/llvm-project/commit/a1cdfebb72880cb1b5039611cafee7ca3af7a368
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M clang/lib/AST/ByteCode/Compiler.cpp
Log Message:
-----------
[clang][bytecode] Work around virtual bases being present in APValues (#205553)
This happens in code called via `evaluateDestruction()`, where we
consume an `APValue` created by the current interpreter. APValues don't
have a notion of virtual bases right now, so the virtual bases simply
appear as regular ones.
Commit: 2668971e14219205ddf6b1f753cf83f7cb22022a
https://github.com/llvm/llvm-project/commit/2668971e14219205ddf6b1f753cf83f7cb22022a
Author: Kunal Pathak <kunalspathak.github at gmail.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.h
M llvm/test/CodeGen/AArch64/andorbrcompare.ll
M llvm/test/CodeGen/AArch64/arm64-ccmp.ll
M llvm/test/CodeGen/AArch64/arm64_32.ll
A llvm/test/CodeGen/AArch64/br-cond-merging-cbz-tbnz.ll
A llvm/test/CodeGen/AArch64/br-cond-merging-fccmp.ll
M llvm/test/CodeGen/AArch64/br-cond-not-merge.ll
M llvm/test/CodeGen/AArch64/fcvt-i256.ll
M llvm/test/CodeGen/AArch64/lr-reserved-for-ra-live-in.ll
M llvm/test/CodeGen/AArch64/machine_cse.ll
M llvm/test/CodeGen/AArch64/peephole-and-tst.ll
M llvm/test/CodeGen/AArch64/pr166870.ll
M llvm/test/CodeGen/AArch64/ragreedy-csr.ll
M llvm/test/CodeGen/AArch64/tbl-loops.ll
M llvm/test/CodeGen/AArch64/tbz-tbnz.ll
M llvm/test/CodeGen/AArch64/umulo-128-legalisation-lowering.ll
M llvm/test/DebugInfo/AArch64/instr-ref-target-hooks.ll
Log Message:
-----------
[AArch64][ISel] Enable profile-aware branch condition merging (#201486)
AArch64 previously inherited the default {-1, -1, -1} for
`getJumpConditionMergingParams`, causing
`shouldKeepJumpConditionsTogether` in SelectionDAGBuilder to always
return false. This meant compound branch conditions (br (and/or cond1,
cond2)) were always split into separate basic blocks at the DAG level,
and profile data from BranchProbabilityInfo was never consulted for the
merge/split decision.
Override `getJumpConditionMergingParams` in AArch64TargetLowering with
tunable cl::opt parameters matching the X86 structure. Since `CCMP` is
part of the base AArch64 ISA, the `CCMP` bias is applied
unconditionally. Default values: `BaseCost=2, CcmpBias=6 (effective
threshold 8), LikelyBias=0, UnlikelyBias=-1`.
This enables three improvements:
1. Profile-guided merge/split decisions using BranchProbabilityInfo
2. Smarter compare ordering at the DAG level (e.g., placing large
immediates in CMP and small ones in CCMP to respect the 0-31 immediate
range)
3. Branch elimination in cases like (a == 5 || b == 32) where the
post-ISel CCMP pass previously could not merge due to immediate range
constraints
Godbolt: https://godbolt.org/z/99d8cnKx8
(note: I am not sure why godbolt is not showing the compiler I saved,
but essentially the example shows the comparison of aarch64 clang vs.
gcc with `-O3` flags)
---------
Co-authored-by: Kunal Pathak <kupathak at fb.com>
Commit: 1cf9b9556f4ad0a02f58016538f08339c85725a0
https://github.com/llvm/llvm-project/commit/1cf9b9556f4ad0a02f58016538f08339c85725a0
Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
A llvm/test/tools/llubi/infinite_loop_error_only.ll
M llvm/tools/llubi/llubi.cpp
Log Message:
-----------
[llubi] Always print out error message (#205573)
When `--verbose` is not specified, the error message and UB reason are
omitted. However, this information is still useful for test oracles. For
example, the fuzzer may skip the seed when it runs out of time.
BTW, the stack trace is always dumped. Not sure if it is intended or
not.
Commit: b24a5f51aebda635c50b92d9245613234bdd5328
https://github.com/llvm/llvm-project/commit/b24a5f51aebda635c50b92d9245613234bdd5328
Author: vangthao95 <vang.thao at amd.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalize.cpp
M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeHelper.cpp
M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeHelper.h
M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeRules.cpp
M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeRules.h
M llvm/test/CodeGen/AMDGPU/llvm.get.rounding.ll
M llvm/test/CodeGen/AMDGPU/llvm.set.rounding.ll
Log Message:
-----------
AMDGPU/GlobalISel: Implement G_GET/SET_ROUNDING (#205265)
Implement G_GET/SET_ROUNDING for the llvm.get.rounding and
llvm.set.rounding intrinsics.
The lowering is ported from the existing SelectionDAG handling, keeping
the structure close to the SDAG implementation.
Assisted by: Claude Opus 4.8
Commit: 68192737824cd28410a4c02affde86971b8cb10d
https://github.com/llvm/llvm-project/commit/68192737824cd28410a4c02affde86971b8cb10d
Author: Zeyi Xu <mitchell.xu2 at gmail.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M clang/lib/Sema/SemaLifetimeSafety.h
M clang/test/Sema/LifetimeSafety/annotation-suggestions-fixits.cpp
Log Message:
-----------
[LifetimeSafety] Cache lifetimebound macro lookup (#205250)
Cache lifetimebound macro spelling lookup used by fix-it suggestions.
Current cache strategy:
- During cache build, collect macro names that have ever been defined as
a lifetimebound attribute spelling.
- During lookup, only visit those cached macro names, find the active
definition at the fix-it location, and re-check that the active
definition still has lifetimebound spelling.
- If multiple matching macros are active at the fix-it location, use the
most recently defined one.
Performance:
| Case | Before 359bfe6 | 359bfe6| After Cached |
|-------------------------------------------------------------|----------------:|---------------:|-------------:|
| C++ no diagnostics (8k macros, 5k safe functions) | 42.5 ms | 44.2 ms
| 47.0 ms |
| C++ 10 diagnostics, 8k macros | 23.2 ms | 23.4 ms | 17.5 ms |
| C++ 200 diagnostics, macro passed via command line option | 24.8 ms |
24.6 ms | 29.3 ms |
| C++ 200 diagnostics, 8k macros | 26.3 ms | 41.7 ms | 27.9 ms |
| C++ stress: 1000 diagnostics, 20k macros, no matching macro
(simulating worst case scenario) | 40.8 ms | 386.7 ms | 78.9 ms |
AI Usage: Performance experiment assisted by Codex.
Follow up of https://github.com/llvm/llvm-project/pull/204045
Commit: 779c908014f73aee3b228d24572845dc1178e85f
https://github.com/llvm/llvm-project/commit/779c908014f73aee3b228d24572845dc1178e85f
Author: Cheng Lingfei <53817093+clingfei at users.noreply.github.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/test/CodeGen/AArch64/i128-cmp.ll
Log Message:
-----------
[AArch64] Recombine SETCCCARRY for legalized unsigned compares (#204504)
Type legalization can turn wide unsigned compares into SETCCCARRY nodes
fed by USUBO carry results, hiding the original high/low compare shape
from the existing CCMP conjunction/disjunction lowering.
Add an AArch64 DAG combine for SETCCCARRY that recognizes these
legalized wide-compare patterns and rebuilds them as SETCC plus AND/OR,
exposing them to the existing CCMP lowering.
This is separated from https://github.com/llvm/llvm-project/pull/181822.
Commit: 916a974941fbac24889e9c2da1972bd221d0055e
https://github.com/llvm/llvm-project/commit/916a974941fbac24889e9c2da1972bd221d0055e
Author: Federico Bruzzone <federico.bruzzone.i at gmail.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M mlir/include/mlir/Dialect/MemRef/Utils/MemRefUtils.h
M mlir/include/mlir/Dialect/Vector/IR/VectorOps.td
M mlir/lib/Conversion/VectorToLLVM/ConvertVectorToLLVM.cpp
M mlir/lib/Dialect/MemRef/Utils/MemRefUtils.cpp
M mlir/lib/Dialect/Vector/IR/CMakeLists.txt
M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
M mlir/test/Dialect/Vector/invalid.mlir
Log Message:
-----------
[mlir][vector] reject negative strides for `vector.load`/`vector.store` (#204611)
This PR follows up #204309 and #204309.
It simply rejects negative strides for vector.load/vector.store :D
AI Disclaimer: I used AI for the tests.
---------
Signed-off-by: Federico Bruzzone <federico.bruzzone.i at gmail.com>
Co-authored-by: Andrzej Warzyński <andrzej.warzynski at gmail.com>
Commit: 25a6b5be6853b2c493ef392d41e43dd35ad4839a
https://github.com/llvm/llvm-project/commit/25a6b5be6853b2c493ef392d41e43dd35ad4839a
Author: Stephen Tozer <stephen.tozer at sony.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
A cross-project-tests/debuginfo-tests/dexter/dex/evaluation/ExpectRewriter.py
M cross-project-tests/debuginfo-tests/dexter/dex/test_script/Script.py
M cross-project-tests/debuginfo-tests/dexter/dex/tools/ToolBase.py
M cross-project-tests/debuginfo-tests/dexter/dex/tools/test/Tool.py
A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/Inputs/rewrite_expect_list_expected.cpp
A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/Inputs/rewrite_expects_expected.cpp
A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/Inputs/rewrite_multiple_scripts_expected.cpp
A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/Inputs/simple_prog.cpp
A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/Inputs/whole_file_test.dex
A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/Inputs/whole_file_test_expected.dex
A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/rewrite_expect_list.cpp
A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/rewrite_expects.cpp
A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/rewrite_multiple_scripts.cpp
A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/whole_file.test
Log Message:
-----------
[Dexter] Add ability to rewrite scripts to fill-in unknown values (#202799)
This patch adds a feature to Dexter that allows scripts to be passed to
Dexter with missing expected values (`null` values in YAML), which
Dexter will attempt to "fill-in" with expected values that match the
debugger's actual output. The result is written to a file with the same
name as the original test file, in the directory given by
--results-directory if one is present; all content outside of the Dexter
script itself is preserved exactly as-is.
NB: Each test in this patch has a corresponding "expected" file, which
is almost identical (including the `RUN` lines), and exists to be
`diff`'d against the output of Dexter's script generation.
Commit: d63ecaa12cc1fa204b54e7c3b1520d004041e9b8
https://github.com/llvm/llvm-project/commit/d63ecaa12cc1fa204b54e7c3b1520d004041e9b8
Author: VladimirMedic <Vladimir.Medic at amd.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M llvm/docs/CommandGuide/llvm-objdump.rst
A llvm/test/tools/llvm-objdump/X86/source-path.test
M llvm/tools/llvm-objdump/ObjdumpOpts.td
M llvm/tools/llvm-objdump/SourcePrinter.cpp
M llvm/tools/llvm-objdump/llvm-objdump.cpp
M llvm/tools/llvm-objdump/llvm-objdump.h
Log Message:
-----------
[llvm-objdump] Add --substitute-path and --source-dir for --source (#201096)
When the code object was compiled on a different machine that does not
have the same directory structure, or the source code has been moved, we
are seeing a warning with the disassembler, stating that the files
embedded in the code object were not found on disk.
This patch introduces a command line options for llvm-objdump, which
provide alternate directory locations to locate the source files on
disk. These options are inspired by GDB commands _set directory_ and
_set substitute-path_.
--substitute-path — Takes two strings, _from_ and _to_, and do a simple
string replacement of from with to at the start of the directory part of
the source file name, then use that result instead of the original file
name to look up the sources. A rule applies only if _from_ ends at a
directory separator.
--source-dir — Add directories to the source search path. Directories
are searched in following order: original recorded path, source-dir +
relative recorded path or absolute path without root, source-dir +
basename.
Commit: 2750294d90d6e76f49583eead7c9db2e8075149b
https://github.com/llvm/llvm-project/commit/2750294d90d6e76f49583eead7c9db2e8075149b
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M libcxx/include/__cxx03/__config
M libcxx/include/__cxx03/__type_traits/datasizeof.h
M libcxx/test/libcxx-03/type_traits/datasizeof.compile.pass.cpp
Log Message:
-----------
[libc++][C++03] Cherry-pick #106832 (#205547)
Commit: 6d8d32a242d1ef792c4c08f9aebc7659a15a7c41
https://github.com/llvm/llvm-project/commit/6d8d32a242d1ef792c4c08f9aebc7659a15a7c41
Author: vitbur <vittorioburani at gmail.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVAsmBackend.cpp
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCCodeEmitter.cpp
M llvm/lib/Target/RISCV/RISCVInstrInfoXCV.td
A llvm/test/MC/RISCV/corev/XCVbi-long-branch.s
Log Message:
-----------
[RISCV][XCV] Relax long `cv.beqimm`/`cv.bneimm` branches (#205096)
`cv.beqimm` and `cv.bneimm` encode their target as a 13-bit signed
PC-relative offset (+/-4094 bytes). Branches beyond that range were
silently truncated by MC fixup application, producing wrong code with no
diagnostic. Add `PseudoLongCV_BEQIMM`/`PseudoLongCV_BNEIMM` and the
MC-layer relaxation flow (inverted short branch + JAL trampoline),
mirroring the standard B-type and Qualcomm Xqcibi vendor branches.
**Tests:** `xcvbi-branch-relax.ll` (uses `-filetype=obj | llvm-objdump`,
since MC-layer relaxation is only observable on object emission, not on
textual asm).
Split out of #204879 at review request (one fix per PR).
Part of a CORE-V (XCV) series; see RFC:
https://discourse.llvm.org/t/rfc-core-v-xcv-support-for-cv32e40p-clang-builtins-xcvsimd-intrinsics-and-generic-auto-selection/91111
Commit: 3ae3fa4642b7e9acd7167014ce6ed395186f99f7
https://github.com/llvm/llvm-project/commit/3ae3fa4642b7e9acd7167014ce6ed395186f99f7
Author: lonely eagle <2020382038 at qq.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M mlir/include/mlir/Dialect/LLVMIR/LLVMIntrinsicOps.td
M mlir/test/Target/LLVMIR/Import/intrinsic.ll
M mlir/test/Target/LLVMIR/llvmir-intrinsics.mlir
Log Message:
-----------
[mlir][llvm] Add nontemporal field to llvm.intr.masked.store (#205566)
Add `nontemporal` field to `llvm.intr.masked.store`. Since `nontemporal`
is a missing field for `llvm.intr.masked.store`, you can refer to
https://github.com/llvm/llvm-project/blob/e68e8d35c91b4fd3ba0ae3ef12d79b41d92580b2/llvm/test/CodeGen/AArch64/sve-nontemporal-masked-ldst.ll#L28.
---------
Co-authored-by: Tobias Gysi <tobias.gysi at nextsilicon.com>
Commit: a7f5b5550655a2af0fc1fe9da579e5706713195d
https://github.com/llvm/llvm-project/commit/a7f5b5550655a2af0fc1fe9da579e5706713195d
Author: Charles Zablit <c_zablit at apple.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M lldb/test/API/tools/lldb-dap/attach/TestDAP_attach.py
Log Message:
-----------
[lldb-dap][test] Re-enable test_by_name_waitFor on Windows (#205570)
`test_by_name_waitFor` passes with `LLDB_USE_LLDB_SERVER=1`.
`test_by_partial_name_waitFor` hangs on exit. Skip if for now.
rdar://180515488
Commit: 41b1d3cdaebb9b771d60f62b0dfb6a507c26a6a3
https://github.com/llvm/llvm-project/commit/41b1d3cdaebb9b771d60f62b0dfb6a507c26a6a3
Author: Akash Banerjee <akash.banerjee at amd.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M flang/include/flang/Semantics/openmp-utils.h
M flang/lib/Semantics/check-omp-structure.cpp
M flang/lib/Semantics/check-omp-structure.h
M flang/lib/Semantics/openmp-utils.cpp
A flang/test/Semantics/OpenMP/target-enter-data-temp-descriptor-omp61.f90
A flang/test/Semantics/OpenMP/target-enter-data-temp-descriptor.f90
Log Message:
-----------
[Flang][OpenMP][Sema] Add OpenMP warning when mapping local descriptors to device on enter without a corresponding exit (#205580)
Reland https://github.com/llvm/llvm-project/pull/201060. Issues reported
in https://github.com/llvm/llvm-project/pull/203324 have now been
resolved.
Authored-by: agozillon <Andrew.Gozillon at amd.com>
Commit: a6f8c9c427d8add6715b69ba41e1fff83500494f
https://github.com/llvm/llvm-project/commit/a6f8c9c427d8add6715b69ba41e1fff83500494f
Author: Mel Chen <mel.chen at sifive.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M llvm/test/Transforms/LoopVectorize/iv_outside_user.ll
Log Message:
-----------
[LV] Pre-commit test for live-out derivation requiring VPExpandSCEVRecipe. nfc (#204350)
Commit: aea73b4ef88ed47e9237d6949563325d12c4c7ba
https://github.com/llvm/llvm-project/commit/aea73b4ef88ed47e9237d6949563325d12c4c7ba
Author: Kseniya Tikhomirova <kseniya.tikhomirova at intel.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M libsycl/src/detail/global_objects.cpp
M libsycl/src/detail/global_objects.hpp
M libsycl/src/detail/offload/offload_topology.cpp
M libsycl/src/detail/platform_impl.cpp
M libsycl/src/detail/platform_impl.hpp
M libsycl/src/detail/program_manager.cpp
M libsycl/src/detail/program_manager.hpp
M libsycl/src/device_selector.cpp
M libsycl/unittests/CMakeLists.txt
A libsycl/unittests/common/unittests_helper.hpp
A libsycl/unittests/device_selector/CMakeLists.txt
A libsycl/unittests/device_selector/get_device_preference.cpp
M libsycl/unittests/mock/helpers.hpp
Log Message:
-----------
[libsycl] add heuristics to prefer devices with compatible images (#203530)
Signed-off-by: Tikhomirova, Kseniya <kseniya.tikhomirova at intel.com>
Commit: 62c0effca5cfeba39422a7342ba9bf816649bd79
https://github.com/llvm/llvm-project/commit/62c0effca5cfeba39422a7342ba9bf816649bd79
Author: forking-google-bazel-bot[bot] <265904573+forking-google-bazel-bot[bot]@users.noreply.github.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
Log Message:
-----------
[Bazel] Fixes 916a974 (#205583)
This fixes 916a974941fbac24889e9c2da1972bd221d0055e.
Co-authored-by: Google Bazel Bot <google-bazel-bot at google.com>
Commit: 6a15e2d75623860436271e52513cc2ca43991e70
https://github.com/llvm/llvm-project/commit/6a15e2d75623860436271e52513cc2ca43991e70
Author: Joseph Huber <huberjn at outlook.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M offload/plugins-nextgen/common/src/PluginInterface.cpp
Log Message:
-----------
[Offload] Fix ordering with RPC teardown and global destructors (#205594)
Summary:
There's a bit of a chicken and egg problem for the RPC server if we want
to do something creative with the device's image for things like DWARF
dumping. The problem was that destructors can make RPC calls, but the
RPC server also needed the images to be valid. Simple fix is to just
split the destructor calling out and do it first so we can deinitialize
RPC with valid device images.
Commit: 9adac330f2d134511461376bdbab31d0048bf802
https://github.com/llvm/llvm-project/commit/9adac330f2d134511461376bdbab31d0048bf802
Author: A. Jiang <de34 at live.cn>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M libcxx/include/__locale_dir/wbuffer_convert.h
M libcxx/include/__locale_dir/wstring_convert.h
M libcxx/test/extensions/libcxx/localization/locale.convenience/conversions/conversions.string/ctor_move.pass.cpp
M libcxx/test/libcxx/localization/nodiscard.verify.cpp
Log Message:
-----------
[libc++] Apply `[[nodiscard]]` to `wstring_convert`, `wbuffer_convert` (#205486)
`[[nodiscard]]` should be applied to functions where discarding the
return value is most likely a correctness issue.
- https://libcxx.llvm.org/CodingGuidelines.html
- https://timsong-cpp.github.io/cppwp/n4950/depr.conversions.string
- https://timsong-cpp.github.io/cppwp/n4950/depr.conversions.buffer
Commit: 55b45709a85ccce1fcc768a458179832b030218a
https://github.com/llvm/llvm-project/commit/55b45709a85ccce1fcc768a458179832b030218a
Author: Paul Osmialowski <pawel.osmialowski at arm.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M bolt/runtime/common.h
Log Message:
-----------
[BOLT] Increase BufSize in runtime/common.h (#204607)
During my work towards bolring the flang binary, I've encountered a
frequently occuring problem with running out of the buffer space.
The problem affects C++ programs with a decent number of very long
symbol names, which is inevitable when using template metaprogramming.
As one can clearly see, flang is one of such programs.
The proposed BufSize value is an effect of the trial-and-error process
aiming at finiding the smallest reasonable increase.
Commit: 44409a06cffd8271bce7bf075ce4f4d4552c35ad
https://github.com/llvm/llvm-project/commit/44409a06cffd8271bce7bf075ce4f4d4552c35ad
Author: Paul Osmialowski <pawel.osmialowski at arm.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M clang/CMakeLists.txt
A flang/cmake/caches/BOLT-PGO.cmake
A flang/cmake/caches/BOLT.cmake
A flang/cmake/caches/PGO-stage2-instrumented.cmake
A flang/cmake/caches/PGO-stage2.cmake
A flang/cmake/caches/PGO.cmake
M flang/test/CMakeLists.txt
M flang/test/Driver/offload-device.f90
A flang/test/bolt.lit.cfg
M flang/test/lit.cfg.py
M flang/test/lit.site.cfg.py.in
A flang/test/pgo.lit.cfg
A flang/test/test.lit.cfg
M llvm/docs/AdvancedBuilds.rst
Log Message:
-----------
[flang][cmake][perf-training] Optimize flang with PGO and BOLT (#198863)
This is an attempt to replicate similar fearture already available to
clang. The changes in this patch were made with an intent to reuse as
much of existing infrastructure as possible. Namely, two-stage build
arrangement, perf-helper.py script and the means for building of the
instrumented binaries have all been incorporated into this approach.
It was deliberately chosen to optimize clang along with flang as they
are mostly working together in the final toolchain.
See the `llvm/docs/AdvancedBuilds.rst` documentation for more details.
Note that the attempt to optimize flang has exceeded one of the BOLT
limitations. The size of one of the statically allocated buffers needed
to be extended in this patch.
Commit: 768ad6158a33778e5a4616b448b3952e84fce45e
https://github.com/llvm/llvm-project/commit/768ad6158a33778e5a4616b448b3952e84fce45e
Author: Leandro Lupori <leandro.lupori at linaro.org>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
A mlir/test/Target/LLVMIR/openmp-wsloop-linear.mlir
Log Message:
-----------
[mlir][OpenMP] Don't use label prefixes on linear variable rewrite (#200900)
This is a follow-up to #194623. After that PR, matching specific label
prefixes became unnecessary. In fact, doing so could potentially lead
to missed linear variables in the rewrite, if they appear in basic
blocks with unexpected label prefixes.
Commit: 618edfa7050ed521b29f500782f17a6ab4e01136
https://github.com/llvm/llvm-project/commit/618edfa7050ed521b29f500782f17a6ab4e01136
Author: Lucas Mellone <github.snugness349 at passinbox.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M libcxx/include/__ranges/transform_view.h
R libcxx/test/libcxx/ranges/range.adaptors/range.transform/adaptor.nodiscard.verify.cpp
A libcxx/test/libcxx/ranges/range.adaptors/range.transform/nodiscard.verify.cpp
Log Message:
-----------
[libc++][ranges] Applied [[nodiscard]] to `transform_view` (#204014)
[[nodiscard]] should be applied to functions where discarding the return
value is most likely a correctness issue.
- https://libcxx.llvm.org/CodingGuidelines.html
- https://wg21.link/range.transform
Towards https://github.com/llvm/llvm-project/issues/172124
---------
Co-authored-by: A. Jiang <de34 at live.cn>
Co-authored-by: Hristo Hristov <zingam at outlook.com>
Commit: f4a8eb0a6ea0dd268a23aa08cf0384c6f8542172
https://github.com/llvm/llvm-project/commit/f4a8eb0a6ea0dd268a23aa08cf0384c6f8542172
Author: EuphoricThinking <agata.momot at intel.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M offload/liboffload/API/Memory.td
M offload/liboffload/src/OffloadImpl.cpp
M offload/plugins-nextgen/amdgpu/src/rtl.cpp
M offload/plugins-nextgen/common/include/MemoryManager.h
M offload/plugins-nextgen/common/include/PluginInterface.h
M offload/plugins-nextgen/common/src/PluginInterface.cpp
M offload/plugins-nextgen/cuda/src/rtl.cpp
M offload/plugins-nextgen/host/src/rtl.cpp
M offload/plugins-nextgen/level_zero/include/L0Device.h
M offload/plugins-nextgen/level_zero/src/L0Device.cpp
M offload/unittests/OffloadAPI/CMakeLists.txt
A offload/unittests/OffloadAPI/memory/olMemAllocAligned.cpp
Log Message:
-----------
[offload] add support for aligned allocations (#203353)
This patch is the first step towards introducing alignment support in
memory allocations using liboffload, in order to enable SYCL
implementation of aligned allocations.
At the level of device allocators, it does not modify the Level Zero
code except for forwarding the alignment parameter, since Level Zero
already allows for specifying the alignment in its device allocator
implementation. For AMD and CUDA, it checks whether the alignment passed
by the caller is supported by the given backend; the reasoning behind
this verification is described in the following paragraphs. At the API
level, it adds a new function olMemAllocAligned, which is expected to
work similarly to olMemAlloc, with the difference that the buffers
returned by olMemAllocAligned should be aligned to the alignment passed
by the user. At the level of the plugin interface internal abstractions,
it adds a new argument Alignment to existing functions and delegates
memory allocation between olMemAllocAligned and olMemAlloc
implementations by using a common helper function.
The goal of the anticipated series of patches is to implement handling
of the alignment in the memory manager at the plugin interface level. At
the first stage, presented in this patch, the information about the
passed alignment is used mainly for checking whether the buffer returned
by the device allocators meets the requirements. In the case of the
requested memory size exceeding the thresholds of allocations handled by
the memory manager, the request is forwarded directly to the device.
Otherwise, the memory manager is responsible for allocating memory in
full pages and pooling it according to the requested chunks. In the
first scenario, the requested size, which is greater than the
aforementioned threshold, is usually a multiple of the page size.
Therefore, any alignment smaller than the page size would be correct.
Neither CUDA nor HSA provides users with the ability to specify the
alignment of the allocated memory. Their APIs include the alignment as
one of the possible arguments only in functions that reserve virtual
address space. CUDA enables users only to check the allocation
granularity, which is usually synonymous with the page size. In the case
of HSA, if the memory is allocated using a pool, the user is able to
check not only the granularity, but also the alignment of the buffers
allocated using the given pool. However, these values - granularity and
alignment - are defined only if
HSA_AMD_MEMORY_POOL_INFO_RUNTIME_ALLOC_ALLOWED is set to true, which
should always be set since the current implementation of the memory pool
for the AMD plugin in liboffload uses only hsa_amd_memory_pool_ts for
allocations. Only Level Zero accepts the alignment parameter during the
memory allocation process, but manages returned pointers internally.
Since pooling is also implemented in the memory manager at the plugin
level, such a design in the Level Zero device allocator duplicates
pooling in the whole application.
In the final version, the memory manager at the plugin interface level
will handle memory pooling and the buffer alignment from different
devices instead of delegating memory management to device allocator
implementations, as this would simplify the Level Zero plugin design and
provide AMD and CUDA plugins with support for the alignment in memory
allocations, which is not natively included in their APIs.
Commit: 7920821849ecc8ce929ba78aefc4589366db91aa
https://github.com/llvm/llvm-project/commit/7920821849ecc8ce929ba78aefc4589366db91aa
Author: Alex MacLean <amaclean at nvidia.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M llvm/include/llvm/IR/IntrinsicsNVVM.td
M llvm/lib/Target/NVPTX/NVPTX.h
M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
M llvm/lib/Target/NVPTX/NVPTXLowerArgs.cpp
M llvm/lib/Target/NVPTX/NVPTXPassRegistry.def
M llvm/test/CodeGen/NVPTX/bug21465.ll
M llvm/test/CodeGen/NVPTX/lower-args-alignment.ll
M llvm/test/CodeGen/NVPTX/lower-args-gridconstant.ll
A llvm/test/CodeGen/NVPTX/lower-byval-args-dbg.ll
A llvm/test/CodeGen/NVPTX/lower-byval-args-idempotent.ll
M llvm/test/CodeGen/NVPTX/lower-byval-args.ll
M llvm/test/CodeGen/NVPTX/mark-kernel-ptrs-global.ll
Log Message:
-----------
[NVPTX] Rewrite kernel signatures in param AS (#204192)
Rewrite the kernel signatures moving byval parameters directly into
entry parameter address space (similar to how ExpandVariadics handles
va_arg functions). This avoids the need for the somewhat hacky
nvvm_internal_addrspace_wrap intrinsic and enables better support for
parameter short pointers.
Commit: a92d346119a4eb1a9c8055e29ffb40068c96bef9
https://github.com/llvm/llvm-project/commit/a92d346119a4eb1a9c8055e29ffb40068c96bef9
Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
R clang/test/AST/ast-dump-openmp-atomic.c
R clang/test/AST/ast-dump-openmp-barrier.c
R clang/test/AST/ast-dump-openmp-cancel.c
R clang/test/AST/ast-dump-openmp-cancellation-point.c
R clang/test/AST/ast-dump-openmp-critical.c
R clang/test/AST/ast-dump-openmp-distribute-parallel-for-simd.c
R clang/test/AST/ast-dump-openmp-distribute-parallel-for.c
R clang/test/AST/ast-dump-openmp-distribute-simd.c
R clang/test/AST/ast-dump-openmp-distribute.c
R clang/test/AST/ast-dump-openmp-flush.c
R clang/test/AST/ast-dump-openmp-for-simd.c
R clang/test/AST/ast-dump-openmp-for.c
R clang/test/AST/ast-dump-openmp-master.c
R clang/test/AST/ast-dump-openmp-ordered.c
R clang/test/AST/ast-dump-openmp-parallel-for-simd.c
R clang/test/AST/ast-dump-openmp-parallel-for.c
R clang/test/AST/ast-dump-openmp-parallel-sections.c
R clang/test/AST/ast-dump-openmp-parallel.c
R clang/test/AST/ast-dump-openmp-section.c
R clang/test/AST/ast-dump-openmp-sections.c
R clang/test/AST/ast-dump-openmp-simd.c
R clang/test/AST/ast-dump-openmp-single.c
R clang/test/AST/ast-dump-openmp-split.c
R clang/test/AST/ast-dump-openmp-target-data.c
R clang/test/AST/ast-dump-openmp-target-enter-data.c
R clang/test/AST/ast-dump-openmp-target-exit-data.c
R clang/test/AST/ast-dump-openmp-target-parallel-for-simd.c
R clang/test/AST/ast-dump-openmp-target-parallel-for.c
R clang/test/AST/ast-dump-openmp-target-parallel.c
R clang/test/AST/ast-dump-openmp-target-simd.c
R clang/test/AST/ast-dump-openmp-target-teams-distribute-parallel-for-simd.c
R clang/test/AST/ast-dump-openmp-target-teams-distribute-parallel-for.c
R clang/test/AST/ast-dump-openmp-target-teams-distribute-simd.c
R clang/test/AST/ast-dump-openmp-target-teams-distribute.c
R clang/test/AST/ast-dump-openmp-target-teams.c
R clang/test/AST/ast-dump-openmp-target-update.c
R clang/test/AST/ast-dump-openmp-target.c
R clang/test/AST/ast-dump-openmp-task.c
R clang/test/AST/ast-dump-openmp-taskgroup.c
R clang/test/AST/ast-dump-openmp-taskloop-simd.c
R clang/test/AST/ast-dump-openmp-taskloop.c
R clang/test/AST/ast-dump-openmp-taskwait.c
R clang/test/AST/ast-dump-openmp-taskyield.c
R clang/test/AST/ast-dump-openmp-teams-distribute-parallel-for-simd.c
R clang/test/AST/ast-dump-openmp-teams-distribute-parallel-for.c
R clang/test/AST/ast-dump-openmp-teams-distribute-simd.c
R clang/test/AST/ast-dump-openmp-teams-distribute.c
R clang/test/AST/ast-dump-openmp-teams.c
Log Message:
-----------
[OpenMP] Remove AST dump tests for non-variant clauses (#204493)
As was suggested during discussion of #200077, and supported by Johannes
in our discussion during his office hours today, this PR removes OpenMP
AST dump tests that do not test the `variant` clause. The full
motivation can be found in the description of the aforementioned PR, but
the short version is that they are a maintenance burden that hold off
improvements to `TextNodeDumper` for other parts of Clang, because they
match too many unrelated details.
Commit: bc2c2a94f159ca25df560976b8fc149aa95ca827
https://github.com/llvm/llvm-project/commit/bc2c2a94f159ca25df560976b8fc149aa95ca827
Author: Ryotaro Kasuga <kasuga.ryotaro at fujitsu.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M llvm/lib/Transforms/Scalar/LoopInterchange.cpp
Log Message:
-----------
[LoopInterchange] Remove some early exits in transform phase (NFCI) (#205563)
This patch removes some unnecessary early exits from the transformation
phase in LoopInterchange. Some of them are simply removed because they
are trivially unsatisfiable. Others are replaced with assertions. These
conditions should be checked in the legality check phase, so it should
be safe to add those asserts.
Commit: 8770aec62a7cd5ec0e7f99db41a8beec1861b97e
https://github.com/llvm/llvm-project/commit/8770aec62a7cd5ec0e7f99db41a8beec1861b97e
Author: serge-sans-paille <sguelton at mozilla.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M clang-tools-extra/clang-tidy/modernize/TypeTraitsCheck.cpp
M clang-tools-extra/docs/ReleaseNotes.rst
M clang-tools-extra/docs/clang-tidy/checks/modernize/type-traits.rst
A clang-tools-extra/test/clang-tidy/checkers/modernize/type-traits-remove-cvref.cpp
Log Message:
-----------
[clang-tidy] Extend `modernize-type-traits` to fold remove_cv_t<remove_reference_t<...>> into remove_cv_ref_t (#204789)
Commit: 2b4bbc14e6c53d87d43d2a6047b32535440e96c8
https://github.com/llvm/llvm-project/commit/2b4bbc14e6c53d87d43d2a6047b32535440e96c8
Author: Alex Langford <alangford at apple.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M lldb/include/lldb/Breakpoint/Breakpoint.h
M lldb/source/Breakpoint/Breakpoint.cpp
Log Message:
-----------
[lldb][NFC] Change type of Breakpoint's name list (#205429)
This is currently a `std::unordered_set<std::string>`. The downside of
this is that you need to have a `std::string` to perform a lookup of any
kind. This may require an allocation whenever we want to query the name
list. Even using `std::string_view` is not sufficient to perform a
lookup.
I propose that this instead be a `llvm::StringSet` which uses StringRefs
as its primary currency for insertions, lookups, and more.
---------
Co-authored-by: Jonas Devlieghere <jonas at devlieghere.com>
Commit: f8bfc176bb513abf31da350b9a688ea5f3faadfe
https://github.com/llvm/llvm-project/commit/f8bfc176bb513abf31da350b9a688ea5f3faadfe
Author: vangthao95 <vang.thao at amd.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeHelper.cpp
Log Message:
-----------
AMDGPU/GlobalISel: Fix get.rounding s_getreg lowering (#205601)
Use llvm.amdgcn.s.getreg instead of emitting S_GETREG_B32 directly so
instruction selection applies the required SReg_32 operand constraint.
This was done for setreg but missed for getreg.
Fixes https://github.com/llvm/llvm-project/pull/205265 when expensive
checks are enabled.
Commit: f217862546d65cce10f774d0455c8e806a7b93f0
https://github.com/llvm/llvm-project/commit/f217862546d65cce10f774d0455c8e806a7b93f0
Author: Kevin Sala Penades <salapenades1 at llnl.gov>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M llvm/include/llvm/Transforms/IPO/Instrumentor.h
M llvm/lib/Transforms/IPO/Instrumentor.cpp
Log Message:
-----------
[Instrumentor] Move common instruction IO functions into a class (#205460)
This commit moves several instruction-related IO functions into a class
instead of having them defined in the instrumentor namespace. We add the
BaseInstructionIO non-templated class because InstructionIO is a
templated class. Adding the common functions into InstructionIO would
force us to define them in the header.
Commit: 52f312665807828e1804df0410e82a11c428cca1
https://github.com/llvm/llvm-project/commit/52f312665807828e1804df0410e82a11c428cca1
Author: Jeremy Kun <jkun at google.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M mlir/lib/Conversion/FuncToEmitC/FuncToEmitC.cpp
M mlir/test/Conversion/ConvertToEmitC/func.mlir
Log Message:
-----------
[mlir][emitc]: use converted result types when func.call has one result (#205191)
The lowering for `func.call` to emitc properly uses converted result
types when there are multiple return values from the called func, but
not when there is a single one.
Commit: f1f5d9c88e9cba37ae033581be49d4ea202df24a
https://github.com/llvm/llvm-project/commit/f1f5d9c88e9cba37ae033581be49d4ea202df24a
Author: Alexey Gerenkov <alexey at espressif.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M llvm/lib/Target/Xtensa/AsmParser/XtensaAsmParser.cpp
M llvm/lib/Target/Xtensa/MCTargetDesc/XtensaMCTargetDesc.cpp
M llvm/lib/Target/Xtensa/MCTargetDesc/XtensaTargetStreamer.h
A llvm/test/CodeGen/Xtensa/null-streamer.ll
Log Message:
-----------
[Xtensa] Implement XtensaNullTargetStreamer (#203819)
It fixes crash in Xtensa AsmParser::run() during
ModuleSummaryIndexAnalysis pass.
Commit: de78b7e6678e0a1e0e84c646e4f98d5caed9ebdd
https://github.com/llvm/llvm-project/commit/de78b7e6678e0a1e0e84c646e4f98d5caed9ebdd
Author: David Green <david.green at arm.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M llvm/lib/Target/AArch64/AArch64TargetMachine.cpp
M llvm/test/CodeGen/AArch64/O3-pipeline.ll
M llvm/test/CodeGen/AArch64/aarch64-neon-vector-insert-uaddlv.ll
M llvm/test/CodeGen/AArch64/fabs-fp128.ll
Log Message:
-----------
Revert "[AArch64] Run cleanup one final time after peephole (#199711)" (#205633)
This reverts commit 448c3d54df7bcd5e5be2b5d051832ad00b4cc89c as it
causes
compile time regressions for little gain, and sounds like the dead
instructions
can be removed in a better way.
Commit: 1514123374252f4ca8a9ed340abc80d8e42055dc
https://github.com/llvm/llvm-project/commit/1514123374252f4ca8a9ed340abc80d8e42055dc
Author: adams381 <adams at nvidia.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M clang/include/clang/AST/Mangle.h
M clang/lib/AST/Mangle.cpp
M clang/lib/CIR/CodeGen/CIRGenModule.cpp
M clang/lib/CIR/CodeGen/CIRGenModule.h
M clang/lib/CodeGen/CodeGenModule.cpp
M clang/lib/CodeGen/CodeGenModule.h
A clang/test/CIR/CodeGen/trivially-recursive-skip.cpp
Log Message:
-----------
[CIR] Skip trivially-recursive available_externally function bodies (#198363)
CIR was emitting available_externally bodies for glibc-style inline
wrappers whose sole call is back to the same asm-named symbol (via
__builtin_*). LLVM then treats the function as non-terminating and
can fold away surrounding null checks — the same failure mode as
classic CodeGen PR9614 (basename-style if (cwd) paths).
Port isTriviallyRecursive / shouldEmitFunction from CodeGenModule,
including the isInlineBuiltinDeclaration exemption, and skip emitting
those definitions. isTriviallyRecursive (and its
FunctionIsDirectlyRecursive visitor) lives on MangleContext, so both
classic CodeGen and CIRGen call getMangleContext().isTriviallyRecursive(FD).
Commit: 847d3964cd87f4b1c026d5528a3318a6b3a34c4f
https://github.com/llvm/llvm-project/commit/847d3964cd87f4b1c026d5528a3318a6b3a34c4f
Author: Ziqing Luo <ziqing_luo at apple.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M clang/lib/ScalableStaticAnalysisFramework/Analyses/PointerFlow/PointerFlowExtractor.cpp
M clang/lib/ScalableStaticAnalysisFramework/Analyses/SSAFAnalysesCommon.cpp
M clang/lib/ScalableStaticAnalysisFramework/Analyses/SSAFAnalysesCommon.h
M clang/lib/ScalableStaticAnalysisFramework/Analyses/UnsafeBufferUsage/UnsafeBufferUsageExtractor.cpp
A clang/test/Analysis/Scalable/PointerFlow/entity-name-no-conflict.cpp
A clang/test/Analysis/Scalable/PointerFlow/multi-decl-contributor.cpp
Log Message:
-----------
[SSAF] Properly handle contributors with multiple declarations (#204482)
A contributor entity can have multiple declarations all contributing
interesting facts. For example, a function declaration (not definition)
may have default arguments, which may provide pointer flow or unsafe
buffer usage facts. This commit groups declarations by their canonical
decls. The entity summary of a contributor will be collected from all
its decls.
In addition, this commit includes the following minor changes:
- Factor the common procedure of summary extraction and insertion into a
template function in SSAFAnalysesCommon.h.
- Convert the no-duplicate contributor assertion into a debug warning.
We need the release build to not crash.
rdar://179150798
Commit: 2c4c2683092eb2773a361236910ecbf208af96bb
https://github.com/llvm/llvm-project/commit/2c4c2683092eb2773a361236910ecbf208af96bb
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/madd.ll
M llvm/test/CodeGen/X86/shrink_vmul.ll
Log Message:
-----------
[X86] combineMulToPMADDWD - match 256/512-bit SIGN_EXTEND nodes (#205606)
Now that the X86ISD::VPMADDWD handling is improving, we can remove some
of the limits that we had to prevent regressions
Commit: e53c48b1c4e831482b51a460fdb62026e0652bb2
https://github.com/llvm/llvm-project/commit/e53c48b1c4e831482b51a460fdb62026e0652bb2
Author: Anshil Gandhi <95053726+gandhi56 at users.noreply.github.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
M llvm/lib/Target/AMDGPU/SOPInstructions.td
M llvm/test/CodeGen/AMDGPU/usubsat.ll
Log Message:
-----------
[AMDGPU] Lower uniform usubsat to SOP (#203155)
Prefer scalar (SALU) lowering for uniform `usubsat`, since usubsat(a, b)
= max(a, b) - b.
* i32: add a GCNPat matching uniform `usubsat` to S_MAX_U32 + S_SUB_I32
* i16: route uniform `usubsat` through `promoteUniformOpToI32` instead
of a TableGen pattern that hard-codes the 0xffff masks. This exposes the
zero-extends as real DAG nodes so KnownBits can fold the masks when the
high bits are already known zero; the promoted i32 usubsat then reuses
the scalar pattern. Promote-and-truncate is safe for usubsat because the
result always fits in the narrow type (unlike uaddsat).
Register USUBSAT with `setTargetDAGCombine` and the promotion dispatch,
return ZERO_EXTEND in `getExtOpcodeForPromotedOp`, and add it to
`isNarrowingProfitable` so divergent i16/i32 keep their native VALU
clamp form.
Co-authored by: Jeffrey Byrnes
Commit: aa07daee80611a71c2afc763d3db76fd6dbab784
https://github.com/llvm/llvm-project/commit/aa07daee80611a71c2afc763d3db76fd6dbab784
Author: Jeremy Kun <jkun at google.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
Log Message:
-----------
[mlir][bazel]: Remove GPU dialect deps from MemRefTransforms (#205624)
This change removes dead GPU dependencies (`GPUDialect` and
`NVGPUDialect`) from the `MemRefTransforms` target. These dependencies
are not needed by the transforms themselves and greatly increase the
build time (e.g., NVVMDialect.cpp alone requires two minutes to build).
This aligns the bazel build with the CMake configuration.
Commit: 89ff26442d773dbf8d6dbd5b8908e4d9eef04ef2
https://github.com/llvm/llvm-project/commit/89ff26442d773dbf8d6dbd5b8908e4d9eef04ef2
Author: Fabian Parzefall <parzefall at meta.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M bolt/include/bolt/Core/BinaryFunction.h
M bolt/include/bolt/Core/MCPlusBuilder.h
M bolt/include/bolt/Passes/PatchEntries.h
M bolt/lib/Core/BinaryFunction.cpp
M bolt/lib/Passes/PatchEntries.cpp
M bolt/lib/Target/X86/X86MCPlusBuilder.cpp
M bolt/test/X86/patch-entries.test
Log Message:
-----------
[BOLT] Replace partial instructions with traps in patched entries (#205211)
Overwriting a function entry with a jump is likely to not perfectly
align with the instruction stream. If the end of the patch does not
fall onto an instruction boundary, the bytes following the jump are
orphaned and will have nonsensical interpretations. This can leave
other tools confused, especially since these orphaned bytes can
decode to instructions that do not nicely rejoin the still intact
part of the instructions stream. Overwrite these bytes with traps
in the PatchEntry pass.
Fixes #198455.
Commit: 5528a0e984c3d4d840af98001960ff345167d0cd
https://github.com/llvm/llvm-project/commit/5528a0e984c3d4d840af98001960ff345167d0cd
Author: Florian Hahn <flo at fhahn.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M llvm/include/llvm/Analysis/VectorUtils.h
M llvm/lib/Analysis/VectorUtils.cpp
M llvm/test/Transforms/LoopVectorize/AArch64/discarded-interleave-group.ll
Log Message:
-----------
[VectorUtils] Discard predicates if no interleave groups are found. (#205424)
If no interleave groups are found, the predicates won't be used and
should be dropped. Update to use the new variant of getPtrStride which
returns the added predicates (added in
https://github.com/llvm/llvm-project/pull/203787).
This enables only committing the predicates if there are any interleave
groups.
PR: https://github.com/llvm/llvm-project/pull/205424
Commit: c46c34284d4a059050fca105ad65acb4f27bfca6
https://github.com/llvm/llvm-project/commit/c46c34284d4a059050fca105ad65acb4f27bfca6
Author: Brian Cain <brian.cain at oss.qualcomm.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M compiler-rt/lib/tysan/tysan_interceptors.cpp
Log Message:
-----------
[tysan] Guard mallopt() use on SANITIZER_GLIBC instead of SANITIZER_LINUX (#203118)
mallopt() is a glibc extension, not provided by other Linux C libraries
such as musl, but its declaration and its use in
InitializeInterceptors() are gated on SANITIZER_LINUX. Linking the TySan
runtime for a musl target therefore fails:
ld.lld: error: undefined symbol: mallopt
>>> referenced by tysan_interceptors.cpp:215 in
>>> __tysan::InitializeInterceptors() in libclang_rt.tysan-hexagon.a
Commit: 42ff45b865b1744e3f37a821bbcbc3d2ece1513c
https://github.com/llvm/llvm-project/commit/42ff45b865b1744e3f37a821bbcbc3d2ece1513c
Author: Scott Linder <scott.linder at amd.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M bolt/docs/conf.py
M clang-tools-extra/docs/conf.py
M clang/docs/conf.py
R clang/docs/ghlinks.py
M flang/docs/FlangDriver.md
M flang/docs/conf.py
M libc/docs/conf.py
M libcxx/docs/conf.py
M libunwind/docs/conf.py
M lld/docs/conf.py
M lldb/docs/_ext/lldb_setting.py
M lldb/docs/conf.py
M llvm/cmake/modules/AddSphinxTarget.cmake
M llvm/docs/conf.py
R llvm/docs/llvm_slug.py
M openmp/docs/conf.py
M orc-rt/docs/conf.py
M polly/docs/conf.py
M pyproject.toml
A utils/docs/README.md
A utils/docs/__main__.py
A utils/docs/llvm_sphinx/__init__.py
A utils/docs/llvm_sphinx/ext/__init__.py
A utils/docs/llvm_sphinx/ext/ghlinks/__init__.py
A utils/docs/llvm_sphinx/ext/ghlinks/test/conf.py
A utils/docs/llvm_sphinx/ext/ghlinks/test/index.rst
A utils/docs/llvm_sphinx/ext/ghlinks/test/markdown.md
A utils/docs/llvm_sphinx/ext/ghlinks/test/rest.rst
A utils/docs/llvm_sphinx/help.py
Log Message:
-----------
[docs] Create utils/docs (#203962)
llvm-project is home to many sphinx documentation sites, each with
configuration quirks and bespoke extensions.
The sphinx config model makes sharing code somewhat difficult. There
are options like sphinx-multiproject, but some of our docs builds are
out of the source tree while some are done out of the binary tree, so
the multiproject configuration itself would need to be generated. It
also would impose more uniformity around extensions than required.
This change instead creates a python package at utils/docs/llvm_sphinx
and makes it available to all sphinx-build processes via PYTHONPATH.
Each conf.py does not modify its own sys.path because not all builds are
out of the source tree, so there isn't a stable relative path to use to
refer to the utils/docs/ directory.
Type checking via pyright in new package is pinned to being python 3.8
compatible.
The myst slug script from llvm/docs is promoted to be the default,
with a slight edit to targets needed in FlangDriver.md to adapt to the
change.
The ghlinks extension from clang gets lifted to be the first generic
extension, although it is still only used in clang currently. I used it
as an example of a general extension that might be useful for other
projects, but I also intend to add a new generic extension in a future
patch.
As part of the move ghlinks is refactored a bit:
* Rather than have a main function directly to run its tests, those
tests are now run via the command-line entrypoint to the new package,
e.g. `python utils/docs --test` will now replace
`python clang/docs/ghlinks.py --test`. This makes the command-line
more pithy (`python utils/docs/llvm_sphinx/ext/ghlinks --test` is a
bit long), and makes the default behavior when running be to
include utils/docs in the sys.path, so imports can be absolute and
the behavior is as close to the CMake targets as possible.
* The static files that were previously written to a tempdir during
testing are just committed directly in git. The assumption here is
that the original version was taking pains to avoid polluting the
clang/docs directory with test files that would confuse sphinx-build,
and without that limitation the workaround can be removed.
* Some typing-related changes to make it strictly python 3.8 compatible.
Change-Id: Ie16de273f74973f163dbf7fe9d22d80a466d051f
Commit: 7c6c2af56f4a446c9e5221049eb63527e4ac0a97
https://github.com/llvm/llvm-project/commit/7c6c2af56f4a446c9e5221049eb63527e4ac0a97
Author: Nico Weber <thakis at chromium.org>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M libc/src/__support/FPUtil/x86_64/fenv_x87_utils.h
M libc/src/__support/macros/sanitizer.h
M libc/src/sys/epoll/linux/epoll_pwait.cpp
M libc/src/sys/epoll/linux/epoll_pwait2.cpp
M libc/src/sys/epoll/linux/epoll_wait.cpp
M libc/src/sys/socket/linux/recv.cpp
M libc/src/sys/socket/linux/recvfrom.cpp
M libc/src/sys/socket/linux/recvmsg.cpp
M libc/src/sys/socket/linux/socketpair.cpp
M libc/src/unistd/linux/pipe.cpp
M libc/src/unistd/linux/pipe2.cpp
M libc/src/unistd/linux/pread.cpp
M libc/src/unistd/linux/read.cpp
M libc/test/src/string/memory_utils/memory_check_utils.h
Log Message:
-----------
[libc] Prefix sanitizer macros with LIBC_ (#205002)
Since these macros leak into user code via libc/shared/math.h,
prefix them with LIBC_ to not cause collisions.
Change created with:
rg -l MSAN_UNPOISON libc | xargs sed -i '' \
-e 's/MSAN_UNPOISON/LIBC_MSAN_UNPOISON/g'
rg -l ASAN_POISON_MEMORY_REGION libc | xargs sed -i '' -e \
's/ASAN_POISON_MEMORY_REGION/LIBC_ASAN_POISON_MEMORY_REGION/g'
rg -l ASAN_POISON_MEMORY_REGION libc | xargs sed -i '' -e \
's/ASAN_POISON_MEMORY_REGION/LIBC_ASAN_POISON_MEMORY_REGION/g'
No behavior change.
Commit: 4500e536f6e83e654e6abc7fe29ebd09f7ec5533
https://github.com/llvm/llvm-project/commit/4500e536f6e83e654e6abc7fe29ebd09f7ec5533
Author: Jon Roelofs <jonathan_roelofs at apple.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M llvm/lib/Target/AArch64/AArch64PointerAuth.cpp
M llvm/test/CodeGen/AArch64/pauth-lr-tail-call-fpdiff.ll
M llvm/test/CodeGen/AArch64/swifttail-ptrauth.ll
Log Message:
-----------
[AArch64] Skip FrameDestroy DW_CFA_AARCH64_negate_ra_state_with_pc (#198677)
The toggle semantics of DW_CFA_AARCH64_negate_ra_state_with_pc are
evaluated over a linear stream of CFI opcodes, rather than along control
flow edges, making it impossible to faithfully represent the RA state
across all CFG paths for functions with non-trivial block layouts (for
example hot-cold-splitting, or doubly-shrinkwrapped functions with
multiple independent frames).
libunwind works around this by recording the signing address at the
FrameSetup site, and not validating that the CFI state has toggled back
to "unsigned" after authentication. We can therefore omit the
FrameDestroy emission, treating the marker solely as a marker for the
signing site. This holds so long as each function has at most one
signing location, which is currently guaranteed since shrinkwrapping
does not yet create functions with more than one frame.
DW_CFA_AARCH64_set_ra_state is the correct long-term fix, but cannot be
used exclusively due to unwinder compatability concerns.
See: https://github.com/ARM-software/abi-aa/issues/327
https://github.com/ARM-software/abi-aa/pull/346
rdar://174074919
Commit: ede168f6492a5a1fca60264b9c7d290693b9d8e2
https://github.com/llvm/llvm-project/commit/ede168f6492a5a1fca60264b9c7d290693b9d8e2
Author: Nico Weber <thakis at chromium.org>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M llvm/utils/gn/secondary/llvm/lib/Transforms/Utils/BUILD.gn
Log Message:
-----------
[gn build] Port 30abd9ec2b8d (#205658)
Commit: 657f38cbb57ecb5c6b17766147cd342b99700c6b
https://github.com/llvm/llvm-project/commit/657f38cbb57ecb5c6b17766147cd342b99700c6b
Author: Nico Weber <thakis at chromium.org>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M llvm/utils/gn/secondary/compiler-rt/lib/profile/BUILD.gn
Log Message:
-----------
[gn] Fix oversight from cf6527a49669c796b (#205660)
Without this, the interception/interception.h include in
InstProfilingPlatformROCm.cpp isn't found.
Commit: 1b44a9d9e1ae82ccbd16488d02c4ebd5d3a6be13
https://github.com/llvm/llvm-project/commit/1b44a9d9e1ae82ccbd16488d02c4ebd5d3a6be13
Author: Nico Weber <thakis at chromium.org>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M llvm/utils/gn/secondary/llvm/lib/Target/Hexagon/BUILD.gn
Log Message:
-----------
[gn build] Port c997a13812c1 (#205659)
Commit: c0cbb8ac9e51f9bf19ed2ef5428420d8ef18fac5
https://github.com/llvm/llvm-project/commit/c0cbb8ac9e51f9bf19ed2ef5428420d8ef18fac5
Author: Jan Svoboda <jan_svoboda at apple.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
R cross-project-tests/debuginfo-tests/dexter/dex/evaluation/ExpectRewriter.py
M cross-project-tests/debuginfo-tests/dexter/dex/test_script/Script.py
M cross-project-tests/debuginfo-tests/dexter/dex/tools/ToolBase.py
M cross-project-tests/debuginfo-tests/dexter/dex/tools/test/Tool.py
R cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/Inputs/rewrite_expect_list_expected.cpp
R cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/Inputs/rewrite_expects_expected.cpp
R cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/Inputs/rewrite_multiple_scripts_expected.cpp
R cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/Inputs/simple_prog.cpp
R cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/Inputs/whole_file_test.dex
R cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/Inputs/whole_file_test_expected.dex
R cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/rewrite_expect_list.cpp
R cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/rewrite_expects.cpp
R cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/rewrite_multiple_scripts.cpp
R cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/whole_file.test
Log Message:
-----------
Revert "[Dexter] Add ability to rewrite scripts to fill-in unknown values" (#205657)
Reverts llvm/llvm-project#202799 to fix the failing
cross-project-tests::debuginfo-tests/dexter/feature_tests/scripts/rewriting/rewrite_expect_list.cpp
test and unblock pre-commit CI.
Commit: ab3fc0b17b9e80f91694271b068566b388b7ae0f
https://github.com/llvm/llvm-project/commit/ab3fc0b17b9e80f91694271b068566b388b7ae0f
Author: Aditya Gupta <adityagupta1089 at users.noreply.github.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M llvm/include/llvm/CodeGen/ValueTypes.td
M llvm/test/TableGen/CPtrWildcard.td
Log Message:
-----------
[CodeGen] Add v2048bf16 vector type (#202386)
Define v2048bf16 vector type in ValueTypes.td. This is useful for
targets that support packed bf16 operations with large vector widths
(e.g. Google TPU).
Commit: 83c0ccc6f95c900a504d27ffa1741951b487b290
https://github.com/llvm/llvm-project/commit/83c0ccc6f95c900a504d27ffa1741951b487b290
Author: Prabhu Rajasekaran <prabhukr at google.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M libc/src/__support/math/atan2f_float.h
Log Message:
-----------
[libc][math] Fix MPI_OVER_2 constant in atan2f_float (#205621)
Fix a typo in the size-optimized float-float implementation of atan2f
where MPI_OVER_2 (-pi/2) was defined identically to PI_OVER_2 (pi/2).
This caused atan2f to return incorrect values (off by pi) on targets
where the float-float path is selected (e.g. baremetal ARM Cortex-M
with hardware FMA/floating-point support) for inputs requiring
reciprocal range reduction, such as atan2f(10.0f, 1.0f).
Commit: c41ab104b001659431fa97b8c0bfcbac0273c452
https://github.com/llvm/llvm-project/commit/c41ab104b001659431fa97b8c0bfcbac0273c452
Author: Scott Manley <rscottmanley at gmail.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M mlir/include/mlir/Dialect/OpenACC/OpenACCCGOps.td
M mlir/lib/Dialect/OpenACC/IR/OpenACCCG.cpp
M mlir/test/Dialect/OpenACC/invalid-cg.mlir
M mlir/test/Dialect/OpenACC/ops-cg.mlir
Log Message:
-----------
[OpenACC] add acc::ReductionAccumulateArrayOp (#205617)
Add an OpenACC Dialect operation to accumulate elements of a (private)
array across threads. This operation only specifies the PointerLikeType
and an acc::DataBoundsOp to represent the accumulation of the array at a
high level. This will ultimately get lowered by "codegen".
Commit: d1b9398bead54b0fe0ce785b822a214a7f3c00ed
https://github.com/llvm/llvm-project/commit/d1b9398bead54b0fe0ce785b822a214a7f3c00ed
Author: Jianhui Li <jian.hui.li at intel.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M mlir/lib/Dialect/XeGPU/Transforms/XeGPULayoutImpl.cpp
Log Message:
-----------
[mlir][xegpu] adding maybe_usused for unused variable/function when assertion is off (#205629)
address the warning brought by the PR
https://github.com/llvm/llvm-project/pull/203156
Commit: fccfe44b80a11cf15f56467a974ef99bc0ebd8d3
https://github.com/llvm/llvm-project/commit/fccfe44b80a11cf15f56467a974ef99bc0ebd8d3
Author: Ryan Buchner <rbuchner at qti.qualcomm.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
Log Message:
-----------
[SLP][NFC] Remove extra checks from analyzeRtStrideCandidate() (#205415)
These checks duplicate the functionality of the additional checks added
in #204013
Commit: 1c9412432ff9f897d5fb096d31b945e50fbbb61d
https://github.com/llvm/llvm-project/commit/1c9412432ff9f897d5fb096d31b945e50fbbb61d
Author: Florian Hahn <flo at fhahn.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlan.cpp
M llvm/lib/Transforms/Vectorize/VPlan.h
Log Message:
-----------
[VPlan] Remove unused VPlan::getExitBlock(BasicBlock*) (NFC) (#205645)
Remove unused function.
Commit: f6923f5d39c7fb0b2ca5bd799206abb7eb96d43e
https://github.com/llvm/llvm-project/commit/f6923f5d39c7fb0b2ca5bd799206abb7eb96d43e
Author: nvptm <pmathew at nvidia.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M flang/docs/Directives.md
M flang/lib/Semantics/check-call.cpp
A flang/test/Semantics/call03-ignore-tkr-c-relaxed.f90
A flang/test/Semantics/call03-ignore-tkr-c-strict.f90
Log Message:
-----------
[flang] Relax ignore_tkr(c) for assumed-type BIND(C) descriptor dummies (#205445)
Relax `F2023 15.5.2.5 p2` derived-type checks for assumed-type
ignore_tkr(c) dummies passed by descriptor to bind(C) procedures. This
will allow passing a derived type with a type-bound procedure or FINAL
or a parameterized derived type to a TYPE(*), dimension(..) bind(C)
dummy.
Commit: 0ba95d65d8e27b7fedd953b1bda8a8a206191ce6
https://github.com/llvm/llvm-project/commit/0ba95d65d8e27b7fedd953b1bda8a8a206191ce6
Author: Florian Hahn <flo at fhahn.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorizationPlanner.cpp
A llvm/test/Transforms/LoopVectorize/X86/outer-loop-non-power-of-2-type.ll
Log Message:
-----------
[LV] Round outer-loop VPlan VF down to a power of two (#205646)
computeVPlanOuterloopVF computes the VF as max(1, RegSize / WidestType).
WidestType may not be a power of two, which resulted in a non-power-of-2
VF. Round down like in the inner loop path.
Commit: fa538c0b3af533e296cbfc0dd018ef94cf3607ed
https://github.com/llvm/llvm-project/commit/fa538c0b3af533e296cbfc0dd018ef94cf3607ed
Author: Dave Lee <davelee.com at gmail.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M lldb/include/lldb/Core/Address.h
M lldb/include/lldb/Core/AddressRange.h
M lldb/include/lldb/Core/Declaration.h
M lldb/include/lldb/Core/Mangled.h
M lldb/include/lldb/Symbol/Block.h
M lldb/include/lldb/Symbol/Function.h
M lldb/include/lldb/Symbol/Variable.h
M lldb/include/lldb/Symbol/VariableList.h
M lldb/include/lldb/Utility/FileSpecList.h
M lldb/source/Core/Address.cpp
M lldb/source/Core/Declaration.cpp
M lldb/source/Core/Mangled.cpp
M lldb/source/Symbol/Block.cpp
M lldb/source/Symbol/Function.cpp
M lldb/source/Symbol/Variable.cpp
M lldb/source/Symbol/VariableList.cpp
M lldb/source/Utility/FileSpecList.cpp
Log Message:
-----------
[lldb] Remove unused MemorySize methods (NFC) (#205463)
These `MemorySize` methods are unused. There are two remaining which are
used: `FileSpec::MemorySize` and `ConstString::MemorySize`.
Commit: 1338319d3cdd710ecdab9377c0aa1b61206fc4bd
https://github.com/llvm/llvm-project/commit/1338319d3cdd710ecdab9377c0aa1b61206fc4bd
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M clang/include/clang/Basic/TargetInfo.h
M clang/lib/Basic/Targets/AMDGPU.cpp
M clang/lib/Basic/Targets/AMDGPU.h
M clang/lib/Sema/SemaAMDGPU.cpp
Log Message:
-----------
clang: Replace getTargetID API with isProcessorName (#205653)
The "target ID" naming is an AMDGPUism. Replace the getTargetID query
with an isProcessorName predicate so the target reports whether the
string should be considered a match. This makes alias handling more
natural than checking for exact match, and avoids an unnecessary
parse of the target ID.
Co-authored-by: Claude (Opus 4.8) <noreply at anthropic.com>
Commit: c85e7156f83fc5654a6229ee69f88e83891adb4c
https://github.com/llvm/llvm-project/commit/c85e7156f83fc5654a6229ee69f88e83891adb4c
Author: Jeremy Kun <jkun at google.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
Log Message:
-----------
[mlir][bazel]: only depend on needed LLVM translations in ExecutionEngine (#205619)
ExecutionEngine currently pulls in `AllToLLVMIRTranslations` which
includes heavy dependencies on GPU dialects (notably NVVMDialect.cpp
which takes a whopping 2 minutes to compile!), despite the
ExecutionEngine not doing anything GPU-specific.
This change reduces the dependencies to just the subset of LLVMIR
translations that ExecutionEngine actually uses: Builtin, LLVM dialect,
and OpenMP dialect.
Commit: fc03af0ea17f7f3c5a3fff42be9d6a369dc0910d
https://github.com/llvm/llvm-project/commit/fc03af0ea17f7f3c5a3fff42be9d6a369dc0910d
Author: forking-google-bazel-bot[bot] <265904573+forking-google-bazel-bot[bot]@users.noreply.github.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
Log Message:
-----------
[Bazel] Fixes 639c5a0 (#205273)
This fixes 639c5a014fad13c683b01c66a1474b7aa47ce7ee.
Co-authored-by: Google Bazel Bot <google-bazel-bot at google.com>
Commit: 07d30c1fc9123c559caac2bc0194faa6d8d21758
https://github.com/llvm/llvm-project/commit/07d30c1fc9123c559caac2bc0194faa6d8d21758
Author: Piotr Balcer <piotr.balcer at intel.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M clang/lib/CodeGen/CGStmtOpenMP.cpp
M clang/test/OpenMP/distribute_codegen.cpp
M clang/test/OpenMP/distribute_simd_codegen.cpp
M clang/test/OpenMP/target_dyn_groupprivate_codegen.cpp
M clang/test/OpenMP/target_firstprivate_codegen.cpp
M clang/test/OpenMP/target_ompx_dyn_cgroup_mem_codegen.cpp
M clang/test/OpenMP/target_parallel_codegen.cpp
M clang/test/OpenMP/target_parallel_for_codegen.cpp
M clang/test/OpenMP/target_parallel_for_simd_codegen.cpp
M clang/test/OpenMP/target_parallel_generic_loop_codegen-2.cpp
M clang/test/OpenMP/target_parallel_if_codegen.cpp
M clang/test/OpenMP/target_parallel_num_threads_codegen.cpp
M clang/test/OpenMP/target_parallel_num_threads_strict_codegen.cpp
M clang/test/OpenMP/target_private_codegen.cpp
M clang/test/OpenMP/target_task_affinity_codegen.cpp
M clang/test/OpenMP/target_teams_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_firstprivate_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_private_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_firstprivate_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_private_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_simd_codegen.cpp
M clang/test/OpenMP/target_teams_generic_loop_codegen-1.cpp
M clang/test/OpenMP/target_teams_generic_loop_private_codegen.cpp
M clang/test/OpenMP/target_teams_map_codegen.cpp
M clang/test/OpenMP/target_teams_num_teams_codegen.cpp
M clang/test/OpenMP/target_teams_thread_limit_codegen.cpp
M clang/test/OpenMP/teams_codegen.cpp
M offload/plugins-nextgen/host/src/rtl.cpp
Log Message:
-----------
[OpenMP][Offload] Use argument pointer array in host kernels (#205355)
This is a follow-up to #194333, which changed liboffload's kernel launch
interface to take an array of pointers to arguments instead of a
contiguous argument buffer, but left the old path intact for OpenMP, to
be cleaned up iteratively in later changes.
This patch modifies the offload host kernels, and the OpenMP clang
codegen, to also use argument pointer arrays. The host was the only
plugin that did not support the new submission path. With it converted,
OpenMP can migrate to use the new path in all scenarios, after which
everything related to contiguous argument buffer and its construction
can be removed from plugin interface and the backends.
The change itself is fairly straightforward. The bulk of the diff is
automated test updates. In the runtime, the host kernel signature
becomes an array of pointers (void **), and the codegen is updated to
match. With each argument being a pointer, the kernel function now adds
one load to read the argument's value.
Assisted-by: Claude
Commit: 0f9ffd5fdd7d6a6415e2a98352e6132528fa6b03
https://github.com/llvm/llvm-project/commit/0f9ffd5fdd7d6a6415e2a98352e6132528fa6b03
Author: Thurston Dang <thurston at google.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M llvm/lib/Analysis/AssumptionCache.cpp
M llvm/test/Transforms/DropUnnecessaryAssumes/dereferenceable.ll
Log Message:
-----------
[AssumptionCache] Fix removeAffectedValues() when value is repeated in AssumeInst (#205275)
If a value appears more than once in an AssumeInst (e.g., `ptr %arg1` in
`call void @llvm.assume(i1 true) [ "dereferenceable"(ptr %arg1, i64 1),
"align"(ptr %arg1, i64 8) ]`) it will appear multiple times in the
result of findAffectedValues(). removeAffectedValues() may (depending on
how the results in AffectedValues.find_as(AV.Assume) are ordered),
nullify multiple values from AffectedValues.find_as(AV.Assume) in one
iteration of an outer for loop. The next iteration of that outer for
loop might then find a match only to a different AssumeInst, resulting
in an assertion failure.
This patch fixes the issue by counting the number of matching
ResultElems we expect to find.
This was a latent bug that was revealed by
https://github.com/llvm/llvm-project/pull/204432; the latter is not
itself buggy, but relies on AssumptionCache::removeAffectedValues().
---------
Co-authored-by: Nikolas Klauser <nikolasklauser at berlin.de>
Commit: b206777d06f8da99220ef48f33dcea80edb0ffcc
https://github.com/llvm/llvm-project/commit/b206777d06f8da99220ef48f33dcea80edb0ffcc
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M clang/lib/AST/ByteCode/InterpBuiltin.cpp
M clang/lib/AST/ExprConstant.cpp
M llvm/include/llvm/ADT/APInt.h
M llvm/lib/Analysis/ConstantFolding.cpp
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
M llvm/lib/Support/APInt.cpp
M llvm/unittests/ADT/APIntTest.cpp
M llvm/unittests/Support/KnownBitsTest.cpp
Log Message:
-----------
[APInt] Consistently use the terms pdep/pext instead of expandBits/compressBits (#205112)
After some bikeshedding in #200570 - we decided on the terms pdep/pext
Commit: 0b1ad4c065ab6aaeea0c7563fab8a0d59c4af639
https://github.com/llvm/llvm-project/commit/0b1ad4c065ab6aaeea0c7563fab8a0d59c4af639
Author: Jiahao Guo <eoonguo at gmail.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M clang/test/CodeGen/AArch64/neon-intrinsics.c
M clang/test/CodeGen/AArch64/neon/subtraction.c
Log Message:
-----------
[CIR][AArch64] Migrate vsubl_high/vsubw_high NEON tests to subtraction.c (#205508)
### summary
Part of : https://github.com/llvm/llvm-project/issues/185382
This is a light patch and a follow up of :
https://github.com/llvm/llvm-project/pull/204088
All lowering logic have been implemented in this PR :
https://github.com/llvm/llvm-project/pull/204285 , I just need to
migrate these intrinsics.
This PR completed with the assistance of Claude Opus4.8
Co-authored-by: Claude Opus 4.8 <noreply at anthropic.com>
Commit: 238dbabecf5fbe31bb9e8182f87b3d710cdbff7e
https://github.com/llvm/llvm-project/commit/238dbabecf5fbe31bb9e8182f87b3d710cdbff7e
Author: Walter Lee <49250218+googlewalt at users.noreply.github.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
Log Message:
-----------
Revert "[Bazel] Fixes 639c5a0" (#205681)
Reverts llvm/llvm-project#205273. 639c5a0 was rolled back.
Commit: d7a29a8e3372eb009e6d62b810f15977e0663969
https://github.com/llvm/llvm-project/commit/d7a29a8e3372eb009e6d62b810f15977e0663969
Author: Paul Osmialowski <pawel.osmialowski at arm.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M flang/cmake/caches/BOLT-PGO.cmake
M flang/cmake/caches/BOLT.cmake
M flang/cmake/caches/PGO-stage2.cmake
M flang/cmake/caches/PGO.cmake
M llvm/docs/AdvancedBuilds.rst
Log Message:
-----------
[flang][cmake] Enable the runtimes in the CMake caches (#205642)
I've tried to introduce that in the PR #198863, but sadly, the buildbots
could not cope with this, so I decided to introduce it separately.
This patch also fixes the relevant places in the docs.
Commit: 8c87cf1605d3cb9b0a24c728ac01c9637ae3dcac
https://github.com/llvm/llvm-project/commit/8c87cf1605d3cb9b0a24c728ac01c9637ae3dcac
Author: Yao Qi <qiyaoltc at gmail.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M lldb/source/Plugins/ObjectContainer/Universal-Mach-O/ObjectContainerUniversalMachO.cpp
M lldb/unittests/ObjectContainer/ObjectContainerUniversalMachOTest.cpp
Log Message:
-----------
[lldb][Mach-O] Bounds-check GetArchitectureAtIndex against m_fat_archs (#205289)
`ObjectContainerUniversalMachO::GetArchitectureAtIndex` used
`m_header.nfat_arch` (read directly from the file and untrusted, up to
0xFFFFFFFF) as the bound before indexing `m_fat_archs`. When ParseHeader
exhausts the data partway through and breaks early, `m_fat_archs.size()`
can be smaller than `nfat_arch`, so the indexed load is out of bounds.
Bound the check on the actual vector size instead.
Found by lldb-target-fuzzer.
---------
Co-authored-by: Alex Langford <nirvashtzero at gmail.com>
Commit: 6bf6094866ff39afc255816ff69ec815f2fb1aea
https://github.com/llvm/llvm-project/commit/6bf6094866ff39afc255816ff69ec815f2fb1aea
Author: Hüseyin Dönmez <donnmez.huseyin at gmail.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Sema/SemaChecking.cpp
A clang/test/Sema/builtin-abs-invalid.c
Log Message:
-----------
[Sema] Fix ICE when passing vector types to `abs` (#205017)
fix for ICE in `Sema::CheckAbsoluteValueFunction`
We failed to reject non-scalar types.
Fixes: #204777
Commit: 3d2974a7b4539634377c7f83797adc9287da7c0d
https://github.com/llvm/llvm-project/commit/3d2974a7b4539634377c7f83797adc9287da7c0d
Author: Johannes Doerfert <jdoerfert.llvm at gmail.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M llvm/include/llvm/Transforms/IPO/Instrumentor.h
M llvm/include/llvm/Transforms/IPO/InstrumentorRuntimeHelper.h
M llvm/lib/Transforms/IPO/Instrumentor.cpp
M llvm/lib/Transforms/IPO/InstrumentorStubPrinter.cpp
M llvm/test/Instrumentation/Instrumentor/alloca_and_function.ll
M llvm/test/Instrumentation/Instrumentor/cast.ll
M llvm/test/Instrumentation/Instrumentor/cast_crash.ll
M llvm/test/Instrumentation/Instrumentor/default_config.json
M llvm/test/Instrumentation/Instrumentor/default_rt.c
M llvm/test/Instrumentation/Instrumentor/default_rt.h
M llvm/test/Instrumentation/Instrumentor/generate_rt.ll
M llvm/test/Instrumentation/Instrumentor/module_and_globals.ll
A llvm/test/Instrumentation/Instrumentor/numeric_subtypeid.ll
A llvm/test/Instrumentation/Instrumentor/numeric_subtypeid_config.json
M llvm/test/Instrumentation/Instrumentor/rt_config.json
Log Message:
-----------
[Instrumentor] Add subtype IDs to complement type IDs for vectors/arrays (#205466)
If the type of an argument passed to the instrumentation is a vector or
array, we still want to filter on the underlying type, and the
instrumentation might also need to know. Thus, we can now pass a subtype
ID, which is -1 except if it's a vector or array, then it's the element
type ID. Structs need to be handled differently.
Commit: d4cf04ba17c833cfbab5a16aa2d21f7185a0c9ae
https://github.com/llvm/llvm-project/commit/d4cf04ba17c833cfbab5a16aa2d21f7185a0c9ae
Author: Utkarsh Saxena <usx at google.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M clang/include/clang/Analysis/Analyses/LifetimeSafety/FactsGenerator.h
M clang/lib/Analysis/LifetimeSafety/FactsGenerator.cpp
M clang/lib/Analysis/LifetimeSafety/LiveOrigins.cpp
M clang/test/Sema/LifetimeSafety/invalidations.cpp
M clang/test/Sema/LifetimeSafety/safety.cpp
Log Message:
-----------
Revert "[LifetimeSafety] Fix liveness propagation for all origin flows (#205323)" (#205687)
Revert "[LifetimeSafety] Fix liveness propagation for all origin flows
(#205323)"
This reverts commit 8d2a578b2130742c8790f3dba5fb414962eafcd5.
Revert "[LifetimeSafety] Model GNU statement expressions (#204841)"
This reverts commit 361f3b24f2a8703eb7a32c1ae081f490888238f3.
Commit: 6cc609bb250b21b47fc7d394b4019101e9983597
https://github.com/llvm/llvm-project/commit/6cc609bb250b21b47fc7d394b4019101e9983597
Author: Alexey Gerenkov <alexey at espressif.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M llvm/lib/Target/Xtensa/XtensaISelLowering.cpp
M llvm/lib/Target/Xtensa/XtensaInstrInfo.td
M llvm/lib/Target/Xtensa/XtensaSubtarget.h
A llvm/test/CodeGen/Xtensa/trap.ll
Log Message:
-----------
[Xtensa] Fix trap/debugtrap operations lowering. (#200872)
Fix debug operation lowering for Xtensa.
Co-authored-by: Andrei Safronov <safronov at espressif.com>
Commit: b576ec61928671722c7bf7cf2df42862fd41b683
https://github.com/llvm/llvm-project/commit/b576ec61928671722c7bf7cf2df42862fd41b683
Author: Johannes Doerfert <jdoerfert.llvm at gmail.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M compiler-rt/cmake/Modules/AllSupportedArchDefs.cmake
M compiler-rt/cmake/config-ix.cmake
M compiler-rt/lib/CMakeLists.txt
A compiler-rt/lib/instrumentor-tools/CMakeLists.txt
A compiler-rt/lib/instrumentor-tools/README.md
A compiler-rt/lib/instrumentor-tools/flop-counter/CMakeLists.txt
A compiler-rt/lib/instrumentor-tools/flop-counter/README.md
A compiler-rt/lib/instrumentor-tools/flop-counter/flop_counter_config.json
A compiler-rt/lib/instrumentor-tools/flop-counter/flop_counter_runtime.cpp
A compiler-rt/lib/instrumentor-tools/instrumentor_runtime.h
M compiler-rt/test/CMakeLists.txt
A compiler-rt/test/instrumentor-tools/CMakeLists.txt
A compiler-rt/test/instrumentor-tools/lit.cfg.py
A compiler-rt/test/instrumentor-tools/lit.site.cfg.py.in
A compiler-rt/test/instrumentor-tools/simple_flops.c
A compiler-rt/test/instrumentor-tools/vector_flops.cpp
Log Message:
-----------
[Instrumentor] Add runtime examples: [1/N] A flop counter (#205221)
This adds a instrumentor-tools folder into compiler RT to showcase
use cases of the instrumentor. The initial example is a program that,
via instrumentation, counts the number of flops performed. Call and
intrinsic support will follow after #198042.
Partially developed by Claude (AI), tested and verified by me.
Commit: 518040ac1d04b3960913b172c2a404e5b3cf8de6
https://github.com/llvm/llvm-project/commit/518040ac1d04b3960913b172c2a404e5b3cf8de6
Author: Sam Elliott <aelliott at qti.qualcomm.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M clang/lib/Driver/ToolChain.cpp
M clang/test/Driver/print-multi-selection-flags.c
Log Message:
-----------
[RISCV][clang] Use fcf-protection flag in Multilib Selection (#205202)
This ensures that we can separate out multilibs that are or are not
built with control flow protection enabled.
The initial version of the patch claims all values of these flags are
incompatible. It might be the case that we could make this logic more
complex if some versions do become compatible.
Commit: 66ed5f9cb7f6f09baec97652dfbd2b87de7d001f
https://github.com/llvm/llvm-project/commit/66ed5f9cb7f6f09baec97652dfbd2b87de7d001f
Author: Alex Langford <alangford at apple.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M lldb/include/lldb/Target/Language.h
M lldb/source/Breakpoint/BreakpointResolverName.cpp
M lldb/source/Plugins/Language/ObjC/ObjCLanguage.cpp
M lldb/source/Plugins/Language/ObjC/ObjCLanguage.h
M lldb/source/Symbol/Symtab.cpp
Log Message:
-----------
[lldb][NFC] Remove ConstString from Language::MethodNameVariant (#205688)
Language::MethodNameVariant is for when a given method name may have
several language-defined variants. For example, we may see an
objective-C method name with a category that should be searchable via
the name without the category.
The ObjCLanguage plugin computes these names without checking that they
are actually useful or even exist. Because these variant names are
stored in ConstString, they will live forever even if they are never
used.
Commit: 86ecfffe8ad988f3f6c6a4bb6c1717f13afd32a0
https://github.com/llvm/llvm-project/commit/86ecfffe8ad988f3f6c6a4bb6c1717f13afd32a0
Author: Michael Spencer <bigcheesegs at gmail.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M clang/include/clang/AST/DeclBase.h
M clang/lib/Sema/SemaDeclCXX.cpp
A clang/test/PCH/pch-debuginfo-vtable.cpp
Log Message:
-----------
[Clang] Don't suppress vtable emission for classes with -fmodules-debuginfo (#204662)
847f9cb0e868 made `Sema::DefineUsedVTables` skip
`Consumer.HandleVTable()` when `Class->shouldEmitInExternalSource()` is
true. This works for named C++20 modules as they have an object file,
but does not hold for -fmodules-debuginfo / -fpch-debuginfo.
This patch additionally gates that on `Class->isInNamedModule()`. This
is the same pattern used by the rest of codegen for this situation.
Needing to check this everywhere is a bit unfortunate. It would be good
to eventually refactor this class of checks to have clearer semantics
around named modules, debug info, and -fmodules-codgen.
Fixes https://github.com/llvm/llvm-project/issues/198587
Assisted-by: Claude Code: opus-4-8
Commit: c6a17f1bfd7607229aba71d0de92db95335b8ce7
https://github.com/llvm/llvm-project/commit/c6a17f1bfd7607229aba71d0de92db95335b8ce7
Author: Johannes Doerfert <jdoerfert.llvm at gmail.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M compiler-rt/lib/instrumentor-tools/flop-counter/CMakeLists.txt
Log Message:
-----------
[Instrumentor][FIX] Ensure CXX headers are available (#205693)
Try to address failure in #205221, which results in <atomic> not found.
This is CMake code copied from other compiler-rt projects using
<atomic>.
Commit: b26636154374424e3d2ded25e853dbcc975640de
https://github.com/llvm/llvm-project/commit/b26636154374424e3d2ded25e853dbcc975640de
Author: Johannes Doerfert <jdoerfert.llvm at gmail.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M compiler-rt/cmake/Modules/AllSupportedArchDefs.cmake
M compiler-rt/cmake/config-ix.cmake
M compiler-rt/lib/CMakeLists.txt
R compiler-rt/lib/instrumentor-tools/CMakeLists.txt
R compiler-rt/lib/instrumentor-tools/README.md
R compiler-rt/lib/instrumentor-tools/flop-counter/CMakeLists.txt
R compiler-rt/lib/instrumentor-tools/flop-counter/README.md
R compiler-rt/lib/instrumentor-tools/flop-counter/flop_counter_config.json
R compiler-rt/lib/instrumentor-tools/flop-counter/flop_counter_runtime.cpp
R compiler-rt/lib/instrumentor-tools/instrumentor_runtime.h
M compiler-rt/test/CMakeLists.txt
R compiler-rt/test/instrumentor-tools/CMakeLists.txt
R compiler-rt/test/instrumentor-tools/lit.cfg.py
R compiler-rt/test/instrumentor-tools/lit.site.cfg.py.in
R compiler-rt/test/instrumentor-tools/simple_flops.c
R compiler-rt/test/instrumentor-tools/vector_flops.cpp
Log Message:
-----------
Revert "[Instrumentor] Add runtime examples: [1/N] A flop counter (#205221)" (#205696)
Commit: c4249350f2488b6434e5b88cdc72b00436dcbefc
https://github.com/llvm/llvm-project/commit/c4249350f2488b6434e5b88cdc72b00436dcbefc
Author: Jan Korous <jkorous at apple.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M .github/new-prs-labeler.yml
A clang/docs/ScalableStaticAnalysis/developer-docs/ForceLinkerHeaders.rst
A clang/docs/ScalableStaticAnalysis/developer-docs/HowToExtend.rst
A clang/docs/ScalableStaticAnalysis/developer-docs/SummaryExtractionInternals.rst
A clang/docs/ScalableStaticAnalysis/developer-docs/index.rst
A clang/docs/ScalableStaticAnalysis/index.rst
A clang/docs/ScalableStaticAnalysis/user-docs/SummaryExtraction.rst
R clang/docs/ScalableStaticAnalysisFramework/developer-docs/ForceLinkerHeaders.rst
R clang/docs/ScalableStaticAnalysisFramework/developer-docs/HowToExtend.rst
R clang/docs/ScalableStaticAnalysisFramework/developer-docs/SummaryExtractionInternals.rst
R clang/docs/ScalableStaticAnalysisFramework/developer-docs/index.rst
R clang/docs/ScalableStaticAnalysisFramework/index.rst
R clang/docs/ScalableStaticAnalysisFramework/user-docs/SummaryExtraction.rst
M clang/docs/index.rst
M clang/include/clang/Basic/DiagnosticFrontendKinds.td
M clang/include/clang/Basic/DiagnosticGroups.td
A clang/include/clang/ScalableStaticAnalysis/Analyses/CallGraph/CallGraphSummary.h
A clang/include/clang/ScalableStaticAnalysis/Analyses/EntityPointerLevel/EntityPointerLevel.h
A clang/include/clang/ScalableStaticAnalysis/Analyses/EntityPointerLevel/EntityPointerLevelFormat.h
A clang/include/clang/ScalableStaticAnalysis/Analyses/PointerFlow/PointerFlow.h
A clang/include/clang/ScalableStaticAnalysis/Analyses/PointerFlow/PointerFlowAnalysis.h
A clang/include/clang/ScalableStaticAnalysis/Analyses/PointerFlow/PointerFlowFormat.h
A clang/include/clang/ScalableStaticAnalysis/Analyses/UnsafeBufferUsage/UnsafeBufferUsage.h
A clang/include/clang/ScalableStaticAnalysis/Analyses/UnsafeBufferUsage/UnsafeBufferUsageAnalysis.h
A clang/include/clang/ScalableStaticAnalysis/BuiltinAnchorSources.def
A clang/include/clang/ScalableStaticAnalysis/Core/ASTEntityMapping.h
A clang/include/clang/ScalableStaticAnalysis/Core/EntityLinker/EntityLinker.h
A clang/include/clang/ScalableStaticAnalysis/Core/EntityLinker/EntitySummaryEncoding.h
A clang/include/clang/ScalableStaticAnalysis/Core/EntityLinker/LUSummary.h
A clang/include/clang/ScalableStaticAnalysis/Core/EntityLinker/LUSummaryEncoding.h
A clang/include/clang/ScalableStaticAnalysis/Core/EntityLinker/TUSummaryEncoding.h
A clang/include/clang/ScalableStaticAnalysis/Core/Model/BuildNamespace.h
A clang/include/clang/ScalableStaticAnalysis/Core/Model/EntityId.h
A clang/include/clang/ScalableStaticAnalysis/Core/Model/EntityIdTable.h
A clang/include/clang/ScalableStaticAnalysis/Core/Model/EntityLinkage.h
A clang/include/clang/ScalableStaticAnalysis/Core/Model/EntityName.h
A clang/include/clang/ScalableStaticAnalysis/Core/Model/PrivateFieldNames.def
A clang/include/clang/ScalableStaticAnalysis/Core/Model/SummaryName.h
A clang/include/clang/ScalableStaticAnalysis/Core/Serialization/JSONFormat.h
A clang/include/clang/ScalableStaticAnalysis/Core/Serialization/SerializationFormat.h
A clang/include/clang/ScalableStaticAnalysis/Core/Serialization/SerializationFormatRegistry.h
A clang/include/clang/ScalableStaticAnalysis/Core/SummaryData/LUSummaryConsumer.h
A clang/include/clang/ScalableStaticAnalysis/Core/SummaryData/SummaryData.h
A clang/include/clang/ScalableStaticAnalysis/Core/SummaryData/SummaryDataBuilder.h
A clang/include/clang/ScalableStaticAnalysis/Core/SummaryData/SummaryDataBuilderRegistry.h
A clang/include/clang/ScalableStaticAnalysis/Core/SummaryData/SummaryDataStore.h
A clang/include/clang/ScalableStaticAnalysis/Core/SummaryData/SummaryDataTraits.h
A clang/include/clang/ScalableStaticAnalysis/Core/Support/ErrorBuilder.h
A clang/include/clang/ScalableStaticAnalysis/Core/Support/FormatProviders.h
A clang/include/clang/ScalableStaticAnalysis/Core/TUSummary/EntitySummary.h
A clang/include/clang/ScalableStaticAnalysis/Core/TUSummary/ExtractorRegistry.h
A clang/include/clang/ScalableStaticAnalysis/Core/TUSummary/TUSummary.h
A clang/include/clang/ScalableStaticAnalysis/Core/TUSummary/TUSummaryBuilder.h
A clang/include/clang/ScalableStaticAnalysis/Core/TUSummary/TUSummaryExtractor.h
A clang/include/clang/ScalableStaticAnalysis/Core/WholeProgramAnalysis/AnalysisBase.h
A clang/include/clang/ScalableStaticAnalysis/Core/WholeProgramAnalysis/AnalysisDriver.h
A clang/include/clang/ScalableStaticAnalysis/Core/WholeProgramAnalysis/AnalysisName.h
A clang/include/clang/ScalableStaticAnalysis/Core/WholeProgramAnalysis/AnalysisRegistry.h
A clang/include/clang/ScalableStaticAnalysis/Core/WholeProgramAnalysis/AnalysisResult.h
A clang/include/clang/ScalableStaticAnalysis/Core/WholeProgramAnalysis/AnalysisTraits.h
A clang/include/clang/ScalableStaticAnalysis/Core/WholeProgramAnalysis/DerivedAnalysis.h
A clang/include/clang/ScalableStaticAnalysis/Core/WholeProgramAnalysis/SummaryAnalysis.h
A clang/include/clang/ScalableStaticAnalysis/Core/WholeProgramAnalysis/WPASuite.h
A clang/include/clang/ScalableStaticAnalysis/Frontend/TUSummaryExtractorFrontendAction.h
A clang/include/clang/ScalableStaticAnalysis/SSAFBuiltinForceLinker.h
A clang/include/clang/ScalableStaticAnalysis/SSAFForceLinker.h
A clang/include/clang/ScalableStaticAnalysis/SourceTransformation/SourceEditEmitter.h
A clang/include/clang/ScalableStaticAnalysis/SourceTransformation/Transformation.h
A clang/include/clang/ScalableStaticAnalysis/SourceTransformation/TransformationRegistry.h
A clang/include/clang/ScalableStaticAnalysis/SourceTransformation/TransformationReportEmitter.h
A clang/include/clang/ScalableStaticAnalysis/Tool/Utils.h
R clang/include/clang/ScalableStaticAnalysisFramework/Analyses/CallGraph/CallGraphSummary.h
R clang/include/clang/ScalableStaticAnalysisFramework/Analyses/EntityPointerLevel/EntityPointerLevel.h
R clang/include/clang/ScalableStaticAnalysisFramework/Analyses/EntityPointerLevel/EntityPointerLevelFormat.h
R clang/include/clang/ScalableStaticAnalysisFramework/Analyses/PointerFlow/PointerFlow.h
R clang/include/clang/ScalableStaticAnalysisFramework/Analyses/PointerFlow/PointerFlowAnalysis.h
R clang/include/clang/ScalableStaticAnalysisFramework/Analyses/PointerFlow/PointerFlowFormat.h
R clang/include/clang/ScalableStaticAnalysisFramework/Analyses/UnsafeBufferUsage/UnsafeBufferUsage.h
R clang/include/clang/ScalableStaticAnalysisFramework/Analyses/UnsafeBufferUsage/UnsafeBufferUsageAnalysis.h
R clang/include/clang/ScalableStaticAnalysisFramework/BuiltinAnchorSources.def
R clang/include/clang/ScalableStaticAnalysisFramework/Core/ASTEntityMapping.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/EntityLinker/EntityLinker.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/EntityLinker/EntitySummaryEncoding.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/EntityLinker/LUSummary.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/EntityLinker/LUSummaryEncoding.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/EntityLinker/TUSummaryEncoding.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/Model/BuildNamespace.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/Model/EntityId.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/Model/EntityIdTable.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/Model/EntityLinkage.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/Model/EntityName.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/Model/PrivateFieldNames.def
R clang/include/clang/ScalableStaticAnalysisFramework/Core/Model/SummaryName.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/Serialization/JSONFormat.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/Serialization/SerializationFormat.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/Serialization/SerializationFormatRegistry.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/SummaryData/LUSummaryConsumer.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/SummaryData/SummaryData.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/SummaryData/SummaryDataBuilder.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/SummaryData/SummaryDataBuilderRegistry.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/SummaryData/SummaryDataStore.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/SummaryData/SummaryDataTraits.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/Support/ErrorBuilder.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/Support/FormatProviders.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/TUSummary/EntitySummary.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/TUSummary/ExtractorRegistry.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/TUSummary/TUSummary.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/TUSummary/TUSummaryBuilder.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/TUSummary/TUSummaryExtractor.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/WholeProgramAnalysis/AnalysisBase.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/WholeProgramAnalysis/AnalysisDriver.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/WholeProgramAnalysis/AnalysisName.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/WholeProgramAnalysis/AnalysisRegistry.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/WholeProgramAnalysis/AnalysisResult.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/WholeProgramAnalysis/AnalysisTraits.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/WholeProgramAnalysis/DerivedAnalysis.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/WholeProgramAnalysis/SummaryAnalysis.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/WholeProgramAnalysis/WPASuite.h
R clang/include/clang/ScalableStaticAnalysisFramework/Frontend/TUSummaryExtractorFrontendAction.h
R clang/include/clang/ScalableStaticAnalysisFramework/SSAFBuiltinForceLinker.h
R clang/include/clang/ScalableStaticAnalysisFramework/SSAFForceLinker.h
R clang/include/clang/ScalableStaticAnalysisFramework/SourceTransformation/SourceEditEmitter.h
R clang/include/clang/ScalableStaticAnalysisFramework/SourceTransformation/Transformation.h
R clang/include/clang/ScalableStaticAnalysisFramework/SourceTransformation/TransformationRegistry.h
R clang/include/clang/ScalableStaticAnalysisFramework/SourceTransformation/TransformationReportEmitter.h
R clang/include/clang/ScalableStaticAnalysisFramework/Tool/Utils.h
M clang/include/module.modulemap
M clang/lib/CMakeLists.txt
M clang/lib/Driver/CMakeLists.txt
M clang/lib/Driver/Driver.cpp
M clang/lib/FrontendTool/CMakeLists.txt
M clang/lib/FrontendTool/ExecuteCompilerInvocation.cpp
A clang/lib/ScalableStaticAnalysis/Analyses/CMakeLists.txt
A clang/lib/ScalableStaticAnalysis/Analyses/CallGraph/CallGraphExtractor.cpp
A clang/lib/ScalableStaticAnalysis/Analyses/CallGraph/CallGraphJSONFormat.cpp
A clang/lib/ScalableStaticAnalysis/Analyses/EntityPointerLevel/EntityPointerLevel.cpp
A clang/lib/ScalableStaticAnalysis/Analyses/EntityPointerLevel/EntityPointerLevelFormat.cpp
A clang/lib/ScalableStaticAnalysis/Analyses/PointerFlow/PointerFlow.cpp
A clang/lib/ScalableStaticAnalysis/Analyses/PointerFlow/PointerFlowAnalysis.cpp
A clang/lib/ScalableStaticAnalysis/Analyses/PointerFlow/PointerFlowExtractor.cpp
A clang/lib/ScalableStaticAnalysis/Analyses/PointerFlow/PointerFlowFormat.cpp
A clang/lib/ScalableStaticAnalysis/Analyses/SSAFAnalysesCommon.cpp
A clang/lib/ScalableStaticAnalysis/Analyses/SSAFAnalysesCommon.h
A clang/lib/ScalableStaticAnalysis/Analyses/UnsafeBufferUsage/UnsafeBufferUsage.cpp
A clang/lib/ScalableStaticAnalysis/Analyses/UnsafeBufferUsage/UnsafeBufferUsageAnalysis.cpp
A clang/lib/ScalableStaticAnalysis/Analyses/UnsafeBufferUsage/UnsafeBufferUsageExtractor.cpp
A clang/lib/ScalableStaticAnalysis/Analyses/UnsafeBufferUsage/UnsafeBufferUsageFormat.cpp
A clang/lib/ScalableStaticAnalysis/CMakeLists.txt
A clang/lib/ScalableStaticAnalysis/Core/ASTEntityMapping.cpp
A clang/lib/ScalableStaticAnalysis/Core/CMakeLists.txt
A clang/lib/ScalableStaticAnalysis/Core/EntityLinker/EntityLinker.cpp
A clang/lib/ScalableStaticAnalysis/Core/Model/BuildNamespace.cpp
A clang/lib/ScalableStaticAnalysis/Core/Model/EntityId.cpp
A clang/lib/ScalableStaticAnalysis/Core/Model/EntityIdTable.cpp
A clang/lib/ScalableStaticAnalysis/Core/Model/EntityLinkage.cpp
A clang/lib/ScalableStaticAnalysis/Core/Model/EntityName.cpp
A clang/lib/ScalableStaticAnalysis/Core/Model/SummaryName.cpp
A clang/lib/ScalableStaticAnalysis/Core/ModelStringConversions.h
A clang/lib/ScalableStaticAnalysis/Core/Serialization/JSONFormat/Artifact.cpp
A clang/lib/ScalableStaticAnalysis/Core/Serialization/JSONFormat/JSONEntitySummaryEncoding.cpp
A clang/lib/ScalableStaticAnalysis/Core/Serialization/JSONFormat/JSONEntitySummaryEncoding.h
A clang/lib/ScalableStaticAnalysis/Core/Serialization/JSONFormat/JSONFormatImpl.cpp
A clang/lib/ScalableStaticAnalysis/Core/Serialization/JSONFormat/JSONFormatImpl.h
A clang/lib/ScalableStaticAnalysis/Core/Serialization/JSONFormat/LUSummary.cpp
A clang/lib/ScalableStaticAnalysis/Core/Serialization/JSONFormat/LUSummaryEncoding.cpp
A clang/lib/ScalableStaticAnalysis/Core/Serialization/JSONFormat/TUSummary.cpp
A clang/lib/ScalableStaticAnalysis/Core/Serialization/JSONFormat/TUSummaryEncoding.cpp
A clang/lib/ScalableStaticAnalysis/Core/Serialization/JSONFormat/WPASuite.cpp
A clang/lib/ScalableStaticAnalysis/Core/Serialization/SerializationFormatRegistry.cpp
A clang/lib/ScalableStaticAnalysis/Core/SummaryData/LUSummaryConsumer.cpp
A clang/lib/ScalableStaticAnalysis/Core/SummaryData/SummaryDataBuilderRegistry.cpp
A clang/lib/ScalableStaticAnalysis/Core/Support/ErrorBuilder.cpp
A clang/lib/ScalableStaticAnalysis/Core/TUSummary/ExtractorRegistry.cpp
A clang/lib/ScalableStaticAnalysis/Core/TUSummary/TUSummaryBuilder.cpp
A clang/lib/ScalableStaticAnalysis/Core/TUSummary/TUSummaryExtractor.cpp
A clang/lib/ScalableStaticAnalysis/Core/WholeProgramAnalysis/AnalysisDriver.cpp
A clang/lib/ScalableStaticAnalysis/Core/WholeProgramAnalysis/AnalysisName.cpp
A clang/lib/ScalableStaticAnalysis/Core/WholeProgramAnalysis/AnalysisRegistry.cpp
A clang/lib/ScalableStaticAnalysis/Frontend/CMakeLists.txt
A clang/lib/ScalableStaticAnalysis/Frontend/TUSummaryExtractorFrontendAction.cpp
A clang/lib/ScalableStaticAnalysis/Plugins/CMakeLists.txt
A clang/lib/ScalableStaticAnalysis/Plugins/ExamplePlugin/AnalysisResults.h
A clang/lib/ScalableStaticAnalysis/Plugins/ExamplePlugin/CMakeLists.txt
A clang/lib/ScalableStaticAnalysis/Plugins/ExamplePlugin/PairsAnalysis.cpp
A clang/lib/ScalableStaticAnalysis/Plugins/ExamplePlugin/TagsAnalysis.cpp
A clang/lib/ScalableStaticAnalysis/Plugins/ExamplePlugin/TagsPairsAnalysis.cpp
A clang/lib/ScalableStaticAnalysis/SourceTransformation/CMakeLists.txt
A clang/lib/ScalableStaticAnalysis/SourceTransformation/TransformationRegistry.cpp
A clang/lib/ScalableStaticAnalysis/Tool/CMakeLists.txt
A clang/lib/ScalableStaticAnalysis/Tool/Utils.cpp
R clang/lib/ScalableStaticAnalysisFramework/Analyses/CMakeLists.txt
R clang/lib/ScalableStaticAnalysisFramework/Analyses/CallGraph/CallGraphExtractor.cpp
R clang/lib/ScalableStaticAnalysisFramework/Analyses/CallGraph/CallGraphJSONFormat.cpp
R clang/lib/ScalableStaticAnalysisFramework/Analyses/EntityPointerLevel/EntityPointerLevel.cpp
R clang/lib/ScalableStaticAnalysisFramework/Analyses/EntityPointerLevel/EntityPointerLevelFormat.cpp
R clang/lib/ScalableStaticAnalysisFramework/Analyses/PointerFlow/PointerFlow.cpp
R clang/lib/ScalableStaticAnalysisFramework/Analyses/PointerFlow/PointerFlowAnalysis.cpp
R clang/lib/ScalableStaticAnalysisFramework/Analyses/PointerFlow/PointerFlowExtractor.cpp
R clang/lib/ScalableStaticAnalysisFramework/Analyses/PointerFlow/PointerFlowFormat.cpp
R clang/lib/ScalableStaticAnalysisFramework/Analyses/SSAFAnalysesCommon.cpp
R clang/lib/ScalableStaticAnalysisFramework/Analyses/SSAFAnalysesCommon.h
R clang/lib/ScalableStaticAnalysisFramework/Analyses/UnsafeBufferUsage/UnsafeBufferUsage.cpp
R clang/lib/ScalableStaticAnalysisFramework/Analyses/UnsafeBufferUsage/UnsafeBufferUsageAnalysis.cpp
R clang/lib/ScalableStaticAnalysisFramework/Analyses/UnsafeBufferUsage/UnsafeBufferUsageExtractor.cpp
R clang/lib/ScalableStaticAnalysisFramework/Analyses/UnsafeBufferUsage/UnsafeBufferUsageFormat.cpp
R clang/lib/ScalableStaticAnalysisFramework/CMakeLists.txt
R clang/lib/ScalableStaticAnalysisFramework/Core/ASTEntityMapping.cpp
R clang/lib/ScalableStaticAnalysisFramework/Core/CMakeLists.txt
R clang/lib/ScalableStaticAnalysisFramework/Core/EntityLinker/EntityLinker.cpp
R clang/lib/ScalableStaticAnalysisFramework/Core/Model/BuildNamespace.cpp
R clang/lib/ScalableStaticAnalysisFramework/Core/Model/EntityId.cpp
R clang/lib/ScalableStaticAnalysisFramework/Core/Model/EntityIdTable.cpp
R clang/lib/ScalableStaticAnalysisFramework/Core/Model/EntityLinkage.cpp
R clang/lib/ScalableStaticAnalysisFramework/Core/Model/EntityName.cpp
R clang/lib/ScalableStaticAnalysisFramework/Core/Model/SummaryName.cpp
R clang/lib/ScalableStaticAnalysisFramework/Core/ModelStringConversions.h
R clang/lib/ScalableStaticAnalysisFramework/Core/Serialization/JSONFormat/Artifact.cpp
R clang/lib/ScalableStaticAnalysisFramework/Core/Serialization/JSONFormat/JSONEntitySummaryEncoding.cpp
R clang/lib/ScalableStaticAnalysisFramework/Core/Serialization/JSONFormat/JSONEntitySummaryEncoding.h
R clang/lib/ScalableStaticAnalysisFramework/Core/Serialization/JSONFormat/JSONFormatImpl.cpp
R clang/lib/ScalableStaticAnalysisFramework/Core/Serialization/JSONFormat/JSONFormatImpl.h
R clang/lib/ScalableStaticAnalysisFramework/Core/Serialization/JSONFormat/LUSummary.cpp
R clang/lib/ScalableStaticAnalysisFramework/Core/Serialization/JSONFormat/LUSummaryEncoding.cpp
R clang/lib/ScalableStaticAnalysisFramework/Core/Serialization/JSONFormat/TUSummary.cpp
R clang/lib/ScalableStaticAnalysisFramework/Core/Serialization/JSONFormat/TUSummaryEncoding.cpp
R clang/lib/ScalableStaticAnalysisFramework/Core/Serialization/JSONFormat/WPASuite.cpp
R clang/lib/ScalableStaticAnalysisFramework/Core/Serialization/SerializationFormatRegistry.cpp
R clang/lib/ScalableStaticAnalysisFramework/Core/SummaryData/LUSummaryConsumer.cpp
R clang/lib/ScalableStaticAnalysisFramework/Core/SummaryData/SummaryDataBuilderRegistry.cpp
R clang/lib/ScalableStaticAnalysisFramework/Core/Support/ErrorBuilder.cpp
R clang/lib/ScalableStaticAnalysisFramework/Core/TUSummary/ExtractorRegistry.cpp
R clang/lib/ScalableStaticAnalysisFramework/Core/TUSummary/TUSummaryBuilder.cpp
R clang/lib/ScalableStaticAnalysisFramework/Core/TUSummary/TUSummaryExtractor.cpp
R clang/lib/ScalableStaticAnalysisFramework/Core/WholeProgramAnalysis/AnalysisDriver.cpp
R clang/lib/ScalableStaticAnalysisFramework/Core/WholeProgramAnalysis/AnalysisName.cpp
R clang/lib/ScalableStaticAnalysisFramework/Core/WholeProgramAnalysis/AnalysisRegistry.cpp
R clang/lib/ScalableStaticAnalysisFramework/Frontend/CMakeLists.txt
R clang/lib/ScalableStaticAnalysisFramework/Frontend/TUSummaryExtractorFrontendAction.cpp
R clang/lib/ScalableStaticAnalysisFramework/Plugins/CMakeLists.txt
R clang/lib/ScalableStaticAnalysisFramework/Plugins/ExamplePlugin/AnalysisResults.h
R clang/lib/ScalableStaticAnalysisFramework/Plugins/ExamplePlugin/CMakeLists.txt
R clang/lib/ScalableStaticAnalysisFramework/Plugins/ExamplePlugin/PairsAnalysis.cpp
R clang/lib/ScalableStaticAnalysisFramework/Plugins/ExamplePlugin/TagsAnalysis.cpp
R clang/lib/ScalableStaticAnalysisFramework/Plugins/ExamplePlugin/TagsPairsAnalysis.cpp
R clang/lib/ScalableStaticAnalysisFramework/SourceTransformation/CMakeLists.txt
R clang/lib/ScalableStaticAnalysisFramework/SourceTransformation/TransformationRegistry.cpp
R clang/lib/ScalableStaticAnalysisFramework/Tool/CMakeLists.txt
R clang/lib/ScalableStaticAnalysisFramework/Tool/Utils.cpp
M clang/tools/clang-ssaf-analyzer/CMakeLists.txt
M clang/tools/clang-ssaf-analyzer/SSAFAnalyzer.cpp
M clang/tools/clang-ssaf-format/CMakeLists.txt
M clang/tools/clang-ssaf-format/SSAFFormat.cpp
M clang/tools/clang-ssaf-linker/CMakeLists.txt
M clang/tools/clang-ssaf-linker/SSAFLinker.cpp
M clang/unittests/CMakeLists.txt
A clang/unittests/ScalableStaticAnalysis/ASTEntityMappingTest.cpp
A clang/unittests/ScalableStaticAnalysis/Analyses/CallGraph/CallGraphExtractorTest.cpp
A clang/unittests/ScalableStaticAnalysis/Analyses/PointerFlow/PointerFlowTest.cpp
A clang/unittests/ScalableStaticAnalysis/Analyses/PointerFlow/PointerFlowWPATest.cpp
A clang/unittests/ScalableStaticAnalysis/Analyses/UnsafeBufferUsage/UnsafeBufferUsageTest.cpp
A clang/unittests/ScalableStaticAnalysis/Analyses/UnsafeBufferUsage/UnsafeBufferUsageWPATest.cpp
A clang/unittests/ScalableStaticAnalysis/BuildNamespaceTest.cpp
A clang/unittests/ScalableStaticAnalysis/CMakeLists.txt
A clang/unittests/ScalableStaticAnalysis/EntityIdTableTest.cpp
A clang/unittests/ScalableStaticAnalysis/EntityIdTest.cpp
A clang/unittests/ScalableStaticAnalysis/EntityLinkageTest.cpp
A clang/unittests/ScalableStaticAnalysis/EntityLinkerTest.cpp
A clang/unittests/ScalableStaticAnalysis/EntityNameTest.cpp
A clang/unittests/ScalableStaticAnalysis/ErrorBuilderTest.cpp
A clang/unittests/ScalableStaticAnalysis/FindDecl.h
A clang/unittests/ScalableStaticAnalysis/Frontend/TUSummaryExtractorFrontendActionTest.cpp
A clang/unittests/ScalableStaticAnalysis/LUSummaryTest.cpp
A clang/unittests/ScalableStaticAnalysis/ModelStringConversionsTest.cpp
A clang/unittests/ScalableStaticAnalysis/Registries/FancyAnalysisData.cpp
A clang/unittests/ScalableStaticAnalysis/Registries/MockSerializationFormat.cpp
A clang/unittests/ScalableStaticAnalysis/Registries/MockSerializationFormat.h
A clang/unittests/ScalableStaticAnalysis/Registries/MockSummaryExtractor1.cpp
A clang/unittests/ScalableStaticAnalysis/Registries/MockSummaryExtractor2.cpp
A clang/unittests/ScalableStaticAnalysis/Registries/MockTUSummaryBuilder.h
A clang/unittests/ScalableStaticAnalysis/Registries/SerializationFormatRegistryTest.cpp
A clang/unittests/ScalableStaticAnalysis/Registries/SummaryExtractorRegistryTest.cpp
A clang/unittests/ScalableStaticAnalysis/Serialization/JSONFormatTest/JSONFormatTest.cpp
A clang/unittests/ScalableStaticAnalysis/Serialization/JSONFormatTest/JSONFormatTest.h
A clang/unittests/ScalableStaticAnalysis/Serialization/JSONFormatTest/LUSummaryTest.cpp
A clang/unittests/ScalableStaticAnalysis/Serialization/JSONFormatTest/TUSummaryTest.cpp
A clang/unittests/ScalableStaticAnalysis/SourceTransformation/EmitterTest.cpp
A clang/unittests/ScalableStaticAnalysis/SourceTransformation/RegistryTest.cpp
A clang/unittests/ScalableStaticAnalysis/SummaryData/SummaryDataTest.cpp
A clang/unittests/ScalableStaticAnalysis/SummaryNameTest.cpp
A clang/unittests/ScalableStaticAnalysis/TUSummaryBuilderTest.cpp
A clang/unittests/ScalableStaticAnalysis/TestFixture.cpp
A clang/unittests/ScalableStaticAnalysis/TestFixture.h
A clang/unittests/ScalableStaticAnalysis/WholeProgramAnalysis/AnalysisDriverTest.cpp
A clang/unittests/ScalableStaticAnalysis/WholeProgramAnalysis/UnsafeBufferReachableAnalysisTest.cpp
R clang/unittests/ScalableStaticAnalysisFramework/ASTEntityMappingTest.cpp
R clang/unittests/ScalableStaticAnalysisFramework/Analyses/CallGraph/CallGraphExtractorTest.cpp
R clang/unittests/ScalableStaticAnalysisFramework/Analyses/PointerFlow/PointerFlowTest.cpp
R clang/unittests/ScalableStaticAnalysisFramework/Analyses/PointerFlow/PointerFlowWPATest.cpp
R clang/unittests/ScalableStaticAnalysisFramework/Analyses/UnsafeBufferUsage/UnsafeBufferUsageTest.cpp
R clang/unittests/ScalableStaticAnalysisFramework/Analyses/UnsafeBufferUsage/UnsafeBufferUsageWPATest.cpp
R clang/unittests/ScalableStaticAnalysisFramework/BuildNamespaceTest.cpp
R clang/unittests/ScalableStaticAnalysisFramework/CMakeLists.txt
R clang/unittests/ScalableStaticAnalysisFramework/EntityIdTableTest.cpp
R clang/unittests/ScalableStaticAnalysisFramework/EntityIdTest.cpp
R clang/unittests/ScalableStaticAnalysisFramework/EntityLinkageTest.cpp
R clang/unittests/ScalableStaticAnalysisFramework/EntityLinkerTest.cpp
R clang/unittests/ScalableStaticAnalysisFramework/EntityNameTest.cpp
R clang/unittests/ScalableStaticAnalysisFramework/ErrorBuilderTest.cpp
R clang/unittests/ScalableStaticAnalysisFramework/FindDecl.h
R clang/unittests/ScalableStaticAnalysisFramework/Frontend/TUSummaryExtractorFrontendActionTest.cpp
R clang/unittests/ScalableStaticAnalysisFramework/LUSummaryTest.cpp
R clang/unittests/ScalableStaticAnalysisFramework/ModelStringConversionsTest.cpp
R clang/unittests/ScalableStaticAnalysisFramework/Registries/FancyAnalysisData.cpp
R clang/unittests/ScalableStaticAnalysisFramework/Registries/MockSerializationFormat.cpp
R clang/unittests/ScalableStaticAnalysisFramework/Registries/MockSerializationFormat.h
R clang/unittests/ScalableStaticAnalysisFramework/Registries/MockSummaryExtractor1.cpp
R clang/unittests/ScalableStaticAnalysisFramework/Registries/MockSummaryExtractor2.cpp
R clang/unittests/ScalableStaticAnalysisFramework/Registries/MockTUSummaryBuilder.h
R clang/unittests/ScalableStaticAnalysisFramework/Registries/SerializationFormatRegistryTest.cpp
R clang/unittests/ScalableStaticAnalysisFramework/Registries/SummaryExtractorRegistryTest.cpp
R clang/unittests/ScalableStaticAnalysisFramework/Serialization/JSONFormatTest/JSONFormatTest.cpp
R clang/unittests/ScalableStaticAnalysisFramework/Serialization/JSONFormatTest/JSONFormatTest.h
R clang/unittests/ScalableStaticAnalysisFramework/Serialization/JSONFormatTest/LUSummaryTest.cpp
R clang/unittests/ScalableStaticAnalysisFramework/Serialization/JSONFormatTest/TUSummaryTest.cpp
R clang/unittests/ScalableStaticAnalysisFramework/SourceTransformation/EmitterTest.cpp
R clang/unittests/ScalableStaticAnalysisFramework/SourceTransformation/RegistryTest.cpp
R clang/unittests/ScalableStaticAnalysisFramework/SummaryData/SummaryDataTest.cpp
R clang/unittests/ScalableStaticAnalysisFramework/SummaryNameTest.cpp
R clang/unittests/ScalableStaticAnalysisFramework/TUSummaryBuilderTest.cpp
R clang/unittests/ScalableStaticAnalysisFramework/TestFixture.cpp
R clang/unittests/ScalableStaticAnalysisFramework/TestFixture.h
R clang/unittests/ScalableStaticAnalysisFramework/WholeProgramAnalysis/AnalysisDriverTest.cpp
R clang/unittests/ScalableStaticAnalysisFramework/WholeProgramAnalysis/UnsafeBufferReachableAnalysisTest.cpp
M llvm/utils/gn/secondary/clang/lib/Driver/BUILD.gn
M llvm/utils/gn/secondary/clang/lib/FrontendTool/BUILD.gn
A llvm/utils/gn/secondary/clang/lib/ScalableStaticAnalysis/Analyses/BUILD.gn
A llvm/utils/gn/secondary/clang/lib/ScalableStaticAnalysis/Core/BUILD.gn
A llvm/utils/gn/secondary/clang/lib/ScalableStaticAnalysis/Frontend/BUILD.gn
A llvm/utils/gn/secondary/clang/lib/ScalableStaticAnalysis/SourceTransformation/BUILD.gn
A llvm/utils/gn/secondary/clang/lib/ScalableStaticAnalysis/Tool/BUILD.gn
R llvm/utils/gn/secondary/clang/lib/ScalableStaticAnalysisFramework/Analyses/BUILD.gn
R llvm/utils/gn/secondary/clang/lib/ScalableStaticAnalysisFramework/Core/BUILD.gn
R llvm/utils/gn/secondary/clang/lib/ScalableStaticAnalysisFramework/Frontend/BUILD.gn
R llvm/utils/gn/secondary/clang/lib/ScalableStaticAnalysisFramework/SourceTransformation/BUILD.gn
R llvm/utils/gn/secondary/clang/lib/ScalableStaticAnalysisFramework/Tool/BUILD.gn
M llvm/utils/gn/secondary/clang/tools/clang-ssaf-analyzer/BUILD.gn
M llvm/utils/gn/secondary/clang/tools/clang-ssaf-format/BUILD.gn
M llvm/utils/gn/secondary/clang/tools/clang-ssaf-linker/BUILD.gn
M llvm/utils/gn/secondary/clang/unittests/BUILD.gn
A llvm/utils/gn/secondary/clang/unittests/ScalableStaticAnalysis/BUILD.gn
R llvm/utils/gn/secondary/clang/unittests/ScalableStaticAnalysisFramework/BUILD.gn
M utils/bazel/llvm-project-overlay/clang/BUILD.bazel
M utils/bazel/llvm-project-overlay/clang/unittests/BUILD.bazel
Log Message:
-----------
[clang][ssaf] Shorten directory name to ScalableStaticAnalysis (#204697)
The directory name ScalableStaticAnalysisFramework produces build paths
that exceed Windows' MAX_PATH limit (260 chars) on downstream CI bots.
The clang-ssaf-format / clang-ssaf-linker tool names and SSAF-prefixed
source filenames are unchanged.
Assisted-By: Claude Opus 4.7
---------
Co-authored-by: Aviral Goel <goel.aviral at gmail.com>
Co-authored-by: Aviral Goel <aviralg at users.noreply.github.com>
Commit: 8a531c3608c722ad529be448d6ecef06ba107228
https://github.com/llvm/llvm-project/commit/8a531c3608c722ad529be448d6ecef06ba107228
Author: William Tran-Viet <wtranviet at proton.me>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M libcxx/docs/FeatureTestMacroTable.rst
M libcxx/docs/ReleaseNotes/23.rst
M libcxx/docs/Status/Cxx26Issues.csv
M libcxx/docs/Status/Cxx26Papers.csv
M libcxx/include/CMakeLists.txt
M libcxx/include/__configuration/availability.h
M libcxx/include/__locale
M libcxx/include/__locale_dir/locale_base_api.h
M libcxx/include/__locale_dir/support/aix.h
M libcxx/include/__locale_dir/support/bsd_like.h
M libcxx/include/__locale_dir/support/linux.h
M libcxx/include/__locale_dir/support/newlib.h
M libcxx/include/__locale_dir/support/windows.h
M libcxx/include/module.modulemap.in
A libcxx/include/text_encoding
M libcxx/include/version
M libcxx/lib/abi/arm64-apple-darwin.libcxxabi.v1.stable.exceptions.nonew.abilist
M libcxx/lib/abi/i686-linux-android23.libcxxabi.v1.stable.exceptions.nonew.abilist
M libcxx/lib/abi/powerpc-ibm-aix.libcxxabi.v1.stable.exceptions.nonew.abilist
M libcxx/lib/abi/powerpc64-ibm-aix.libcxxabi.v1.stable.exceptions.nonew.abilist
M libcxx/lib/abi/x86_64-linux-android23.libcxxabi.v1.stable.exceptions.nonew.abilist
M libcxx/lib/abi/x86_64-unknown-freebsd.libcxxabi.v1.stable.exceptions.nonew.abilist
M libcxx/lib/abi/x86_64-unknown-linux-gnu.libcxxabi.v1.stable.exceptions.nonew.abilist
M libcxx/lib/abi/x86_64-unknown-linux-gnu.libcxxabi.v1.stable.noexceptions.nonew.abilist
M libcxx/modules/std.compat.cppm.in
M libcxx/modules/std.cppm.in
M libcxx/modules/std/text_encoding.inc
M libcxx/src/CMakeLists.txt
M libcxx/src/support/win32/locale_win32.cpp
A libcxx/src/text_encoding.cpp
M libcxx/test/libcxx/localization/nodiscard.verify.cpp
A libcxx/test/libcxx/text/text_encoding/environment.android.pass.cpp
A libcxx/test/libcxx/text/text_encoding/environment.pass.cpp
A libcxx/test/libcxx/text/text_encoding/environment.windows.pass.cpp
A libcxx/test/libcxx/text/text_encoding/nodiscard.verify.cpp
A libcxx/test/libcxx/text/text_encoding/text_encoding.ctor/assert.id.pass.cpp
A libcxx/test/libcxx/text/text_encoding/text_encoding.ctor/assert.string_view.pass.cpp
A libcxx/test/libcxx/text/text_encoding/text_encoding.members/environment.delete.verify.cpp
M libcxx/test/libcxx/transitive_includes/cxx03.csv
M libcxx/test/libcxx/transitive_includes/cxx11.csv
M libcxx/test/libcxx/transitive_includes/cxx14.csv
M libcxx/test/libcxx/transitive_includes/cxx17.csv
M libcxx/test/libcxx/transitive_includes/cxx20.csv
M libcxx/test/libcxx/transitive_includes/cxx23.csv
M libcxx/test/libcxx/transitive_includes/cxx26.csv
A libcxx/test/std/language.support/support.limits/support.limits.general/text_encoding.version.compile.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/version.version.compile.pass.cpp
M libcxx/test/std/localization/locale.categories/category.monetary/locale.money.get/locale.money.get.members/get_long_double_fr_FR.pass.cpp
M libcxx/test/std/localization/locale.categories/category.monetary/locale.money.put/locale.money.put.members/put_long_double_fr_FR.pass.cpp
A libcxx/test/std/localization/locales/locale/locale.members/encoding.pass.cpp
A libcxx/test/std/text/text_encoding/test_text_encoding.h
A libcxx/test/std/text/text_encoding/text_encoding.ctor/default.pass.cpp
A libcxx/test/std/text/text_encoding/text_encoding.ctor/id.pass.cpp
A libcxx/test/std/text/text_encoding/text_encoding.ctor/string_view.pass.cpp
A libcxx/test/std/text/text_encoding/text_encoding.eq/equal.id.pass.cpp
A libcxx/test/std/text/text_encoding/text_encoding.eq/equal.pass.cpp
A libcxx/test/std/text/text_encoding/text_encoding.hash/enabled_hash.pass.cpp
A libcxx/test/std/text/text_encoding/text_encoding.hash/hash.pass.cpp
A libcxx/test/std/text/text_encoding/text_encoding.members/aliases.pass.cpp
A libcxx/test/std/text/text_encoding/text_encoding.members/aliases_view.compile.pass.cpp
A libcxx/test/std/text/text_encoding/text_encoding.members/environment.pass.cpp
A libcxx/test/std/text/text_encoding/text_encoding.members/id.compile.pass.cpp
A libcxx/test/std/text/text_encoding/text_encoding.members/literal.pass.cpp
A libcxx/test/std/text/text_encoding/text_encoding.members/text_encoding.aliases_view/begin.pass.cpp
A libcxx/test/std/text/text_encoding/text_encoding.members/text_encoding.aliases_view/empty.pass.cpp
A libcxx/test/std/text/text_encoding/text_encoding.members/text_encoding.aliases_view/end.pass.cpp
A libcxx/test/std/text/text_encoding/text_encoding.members/text_encoding.aliases_view/front.pass.cpp
A libcxx/test/std/text/text_encoding/text_encoding.members/text_encoding.aliases_view/index.pass.cpp
A libcxx/test/std/text/text_encoding/text_encoding.members/text_encoding.aliases_view/iterator.pass.cpp
A libcxx/test/std/text/text_encoding/text_encoding.members/text_encoding.aliases_view/operator-bool.pass.cpp
A libcxx/test/std/text/text_encoding/trivially_copyable.compile.pass.cpp
M libcxx/utils/generate_feature_test_macro_components.py
M libcxx/utils/libcxx/header_information.py
M libcxx/utils/libcxx/test/features/availability.py
Log Message:
-----------
[libc++] Implement P1885R12: `<text_encoding>` (#141312)
Resolves #105373, resolves #118371 and resolves #105332
- Implements `<text_encoding>`
- Adds availability macros for LLVM 23.
- The data is stored in three tables:
- One giant string split by null-terminators to represent the aliases
- An index table which stores indexes into the string, each entry
representing the first character of an alias
- Text encoding data, which stores an index to the index table, the MIB,
and the number of aliases the encoding has.
Storing it in the above manner allows us to make significant savings in
binary file size and required runtime storage for the data.
As required by the LLVM Project's AI use policy:
- The implementation for `__get_locale_encoding(const char*)` for
Windows has been developed with the assistance of AI.
---------
Co-authored-by: A. Jiang <de34 at live.cn>
Commit: 2ce6fc677fdb7a7c04b71bb1734ba856d62e7d79
https://github.com/llvm/llvm-project/commit/2ce6fc677fdb7a7c04b71bb1734ba856d62e7d79
Author: Reid Kleckner <rkleckner at nvidia.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M llvm/include/llvm/IR/DiagnosticInfo.h
M llvm/unittests/IR/CMakeLists.txt
A llvm/unittests/IR/DiagnosticInfoTest.cpp
Log Message:
-----------
[IR] Fix invalid debug metadata diagnostic kind (#205648)
This type is only ever passed to LLVMContext::diagnose directly, and
there are no downcasts to this type, so classof is effectively dead, but
we should fix this oversight.
Fixes #205340
Commit: b37b10d5217b992180ee0a61f343b3edb4cc083e
https://github.com/llvm/llvm-project/commit/b37b10d5217b992180ee0a61f343b3edb4cc083e
Author: Wenju He <wenju.he at intel.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M clang/lib/Driver/Driver.cpp
A clang/test/Driver/sycl-print-internal-defines.cpp
Log Message:
-----------
[Driver][SYCL] Treat stdin as C++ when -fsycl is active (#204968)
1723b7a30145 added a frontend check that rejects C inputs when SYCL mode
is active (since SYCL requires C++). The stdin path in BuildInputs
hardcoded TY_C regardless of driver mode, so `-fsycl -dM -E -` would
pass -x c to cc1 and trigger the new diagnostic.
Fix: use TY_CXX for stdin when IsSYCL.
Also, upstream a downstream test that fails due to 1723b7a30145.
---------
Co-authored-by: Claude Sonnet 4.6 <noreply at anthropic.com>
Commit: 635ed0edc68c3ea2556b773b3e9f5fffc57aa303
https://github.com/llvm/llvm-project/commit/635ed0edc68c3ea2556b773b3e9f5fffc57aa303
Author: Jackson Stogel <jtstogel at gmail.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M libc/src/__support/OSUtil/linux/CMakeLists.txt
A libc/src/__support/OSUtil/linux/stat/CMakeLists.txt
A libc/src/__support/OSUtil/linux/stat/kernel_statx_types.h
A libc/src/__support/OSUtil/linux/stat/stat_via_statx.h
M libc/src/sys/stat/linux/CMakeLists.txt
M libc/src/sys/stat/linux/fstat.cpp
R libc/src/sys/stat/linux/kernel_statx.h
M libc/src/sys/stat/linux/lstat.cpp
M libc/src/sys/stat/linux/stat.cpp
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
Log Message:
-----------
[libc][stat] Move internal statx type definition into OSUtil/linux (#203975)
This PR refactors the internally defined `statx` buffer to a shareable
location so other LLVM-libc linux entrypoints may call `statx` without
concern for name conflicts around `linux/stat.h`.
Specifically, this PR moves `libc/src/sys/stat/linux/kernel_statx.h` to
`libc/src/__support/OSUtil/linux/stat/` and splits it into two files,
`kernel_statx_types.h` + `stat_via_statx.h`.
This will be used by `realpath`.
Commit: f4a149172b51165487b71144c3fd7275da1809a1
https://github.com/llvm/llvm-project/commit/f4a149172b51165487b71144c3fd7275da1809a1
Author: Arthur Eubanks <aeubanks at google.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M llvm/include/llvm/Target/TargetLoweringObjectFile.h
M llvm/lib/CodeGen/TargetLoweringObjectFileImpl.cpp
M llvm/lib/Target/TargetLoweringObjectFile.cpp
M llvm/lib/Target/TargetMachine.cpp
A llvm/test/CodeGen/X86/large-implicit-section.ll
Log Message:
-----------
[x86] Handle implicit sections when determining if a global is large (#204247)
Just like explicit sections.
We were seeing globals with implicit sections marked large under the
medium code model.
Assisted-by: Gemini
Commit: 89ac672f5b9242e040598eedb7d240c97a8da44b
https://github.com/llvm/llvm-project/commit/89ac672f5b9242e040598eedb7d240c97a8da44b
Author: Wenju He <wenju.he at intel.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M libclc/clc/lib/nvptx/CMakeLists.txt
R libclc/clc/lib/nvptx/relational/clc_isinf.cl
Log Message:
-----------
[libclc] Delete wrong implementation nvptx clc_isinf (#205699)
The file calls __nv_isinf which return 1 for true on vector input, while
the generic clc_isinf which return -1 for true on vector input. Using
nvptx clc_isinf in OpenCL isinf violates OpenCL spec.
Found the issue in https://github.com/intel/llvm/pull/22413
Commit: 39ed392c4e890d6261e80dcbd98ebf3487c012bc
https://github.com/llvm/llvm-project/commit/39ed392c4e890d6261e80dcbd98ebf3487c012bc
Author: Kito Cheng <kito.cheng at sifive.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
A llvm/test/CodeGen/RISCV/rvp-srl-bitcast-bv.ll
Log Message:
-----------
[DAG] Fix illegal type in srl(bitcast(build_vector)) fold (#205074)
The fold
```
(srl (bitcast (build_vector e1, ..., eN)), (N-1) * eltsize) -> (zext eN)
```
added in #181412 built the result through a narrow element integer type,
which
can be illegal (e.g. i16 on RV32 with the P extension, where `<2 x i16>`
is
legal). When the fold runs in the last DAG combine that illegal type
hits the
"Unexpected illegal type!" assert.
Build the result directly in the result type `VT` and mask off the high
bits
instead:
```
(and (zext/trunc eN to VT), (1 << eltsize) - 1)
```
`VT` is always legal, so no illegal type is created and the fold no
longer needs
to be gated on legalization.
Assisted-by: Opus 4.8
---------
Co-authored-by: Matt Arsenault <arsenm2 at gmail.com>
Commit: 4efc6ef95cb041fae7e8fd60c4281b355418e747
https://github.com/llvm/llvm-project/commit/4efc6ef95cb041fae7e8fd60c4281b355418e747
Author: Kito Cheng <kito.cheng at sifive.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M llvm/lib/Target/RISCV/RISCVAsmPrinter.cpp
A llvm/test/CodeGen/RISCV/option-arch-experimental.ll
Log Message:
-----------
[RISCV] Emit .option arch extensions without the "experimental-" prefix (#205471)
We currently emit the "experimental-" prefix in .option arch, e.g.
`.option arch, +experimental-zicfiss`, but the assembler can't parse
that back.
There are two ways to fix this:
1. Teach the assembler to accept `.option arch, +experimental-zicfiss`.
2. Emit `.option arch, +zicfiss` instead of `.option arch,
+experimental-zicfiss`.
This patch takes the second approach, which better fits the .option arch
syntax we defined. Experimental extensions are still guarded by
`-menable-experimental-extensions`.
Commit: 1fadc09c1985a6f3bb0ff993fc876384797116a3
https://github.com/llvm/llvm-project/commit/1fadc09c1985a6f3bb0ff993fc876384797116a3
Author: Jianhui Li <jian.hui.li at intel.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M mlir/lib/Dialect/XeGPU/IR/XeGPUDialect.cpp
M mlir/test/Dialect/XeGPU/propagate-layout-subgroup.mlir
Log Message:
-----------
[MLIR][XeGPU] Fix order remapping in layout transpose (#205212)
LayoutAttr::transposeDims and LayoutAttr::isTransposeOf mishandled the
`order` field when transposing a layout. The `order` field is
fundamentally different from the size-valued fields (sg_layout, sg_data,
inst_data, lane_layout, lane_data): its values are dimension indices
(order[0] is the fastest-varying dim), not per-position sizes. The two
require different transpose rules:
- Size fields — reindex by position: new[i] = orig[perm[i]]
- order — relabel values through the inverse permutation: newOrder[i] =
inversePerm[origOrder[i]]
Both functions incorrectly applied the size-field rule to `order`.
Because the bug was applied consistently in both places, it stayed
hidden for trivial/symmetric (e.g. 2D [1,0]) permutations, where the two
rules happen to coincide. It only surfaces for non-trivial permutations
such as the 3D [1,0,2] produced by a broadcast→transpose chain.
Assist-by-Claude
---------
Co-authored-by: Claude Opus 4.8 (1M context) <noreply at anthropic.com>
Commit: 05daa3d135f8a23e6875340938402db2c52f3688
https://github.com/llvm/llvm-project/commit/05daa3d135f8a23e6875340938402db2c52f3688
Author: jinge90 <ge.jin at intel.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M libc/config/baremetal/aarch64/entrypoints.txt
M libc/config/baremetal/arm/entrypoints.txt
M libc/config/baremetal/riscv/entrypoints.txt
M libc/config/darwin/aarch64/entrypoints.txt
M libc/config/linux/aarch64/entrypoints.txt
M libc/config/linux/arm/entrypoints.txt
M libc/config/linux/riscv/entrypoints.txt
M libc/config/linux/x86_64/entrypoints.txt
M libc/docs/headers/complex.rst
M libc/include/complex.yaml
M libc/src/complex/CMakeLists.txt
A libc/src/complex/carg.h
A libc/src/complex/cargf.h
M libc/src/complex/generic/CMakeLists.txt
A libc/src/complex/generic/carg.cpp
A libc/src/complex/generic/cargf.cpp
A libc/test/src/complex/CArgTest.h
M libc/test/src/complex/CMakeLists.txt
A libc/test/src/complex/carg_test.cpp
A libc/test/src/complex/cargf_test.cpp
Log Message:
-----------
[libc][complex] Add cargf and carg functions to libc complex math (#204087)
This PR adds carg and cargf function to libc complex and also add test
cases to cover some special inputs.
---------
Signed-off-by: jinge90 <ge.jin at intel.com>
Commit: 1f713c05e87e470cbdb5c5eee5bcbc0d46ba342b
https://github.com/llvm/llvm-project/commit/1f713c05e87e470cbdb5c5eee5bcbc0d46ba342b
Author: TPPPP <TPPPP72 at outlook.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/AST/ExprConstant.cpp
A clang/test/SemaCXX/gh147127.cpp
Log Message:
-----------
[Clang] Fixed an assertion in constant evaluation when using a defaulted comparison operator in a union (#198830)
Fixes an assertion failure by decoupling `IsTrivialMemoryOperation` from
assignment operators.
fix #147127
Commit: 85a94e312513301805adb4c73c1e8a5581097a94
https://github.com/llvm/llvm-project/commit/85a94e312513301805adb4c73c1e8a5581097a94
Author: I <1091761+wx257osn2 at users.noreply.github.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Sema/TreeTransform.h
M clang/test/SemaTemplate/concepts.cpp
Log Message:
-----------
[Clang] Transform SubstNonTypeTemplateParmExpr replacements in a constant-evaluated context (#196791)
Fixes #175831.
When transforming a `SubstNonTypeTemplateParmExpr`,
`TreeTransform::TransformSubstNonTypeTemplateParmExpr` calls
`Sema::CheckTemplateArgument` so that any sema annotations (such as
implicit casts) that were stripped from the replacement are recovered.
This is done in whatever evaluation context the node happens to appear
in after substitutions.
Since the normalization of constraints, a `SubstNonTypeTemplateParmExpr`
can end up inside an unevaluated operand, so the replacement gets
rebuilt in an unevaluated context.
Entities it refers to are then not odr-used: for example, when a call
materializes a by-value function parameter of class type, the copy
constructor is never marked odr-used and its definition is never
instantiated.
The constant evaluation performed by `CheckTemplateArgument` afterwards
then fails for otherwise valid arguments.
This caused rejects-valid regressions on real code such as mp-units.
This PR inserts a constant-evaluated context in
`TransformSubstNonTypeTemplateParmExpr`, so that the replacement is
rebuilt and re-checked on the context, regardless of where normalization
has placed it.
--
Co-authored-by: A. Jiang <de34 at live.cn>
Co-authored-by: Matheus Izvekov <mizvekov at gmail.com>
Commit: a218ee3ef4d36d9907dd829d0283ae27bb03e97c
https://github.com/llvm/llvm-project/commit/a218ee3ef4d36d9907dd829d0283ae27bb03e97c
Author: Greg Clayton <gclayton at fb.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M lldb/include/lldb/Core/ModuleSpec.h
M lldb/include/lldb/Target/DynamicLoader.h
M lldb/include/lldb/Target/Process.h
M lldb/source/Core/DynamicLoader.cpp
M lldb/source/Plugins/DynamicLoader/POSIX-DYLD/DynamicLoaderPOSIXDYLD.cpp
M lldb/source/Plugins/Process/elf-core/ProcessElfCore.cpp
M lldb/source/Plugins/Process/elf-core/ProcessElfCore.h
M lldb/source/Target/Process.cpp
M lldb/test/API/functionalities/postmortem/elf-core/TestLinuxCore.py
A lldb/test/API/functionalities/postmortem/elf-core/elf-dyld-nt-file-mismatch.yaml
Log Message:
-----------
Fix ProcessElfCore::FindModuleUUID() so it work with symlinks. (#205235)
ProcessElfCore was reading the NT_FILE list and using that to help
FindModuleUUID to provide UUID information when loading core files. The
NT_FILE list contains resolved paths only, while the
DynamicLoaderPOSIXDYLD plug-in was using paths found in the r_debug
structure which contains a linked list of all of the shared libraries in
a process. The issue was these paths could be symlinks which would cause
ProcessELFCore::FindModuleUUID(...) to fail because the paths wouldn't
match up. This led to the ProcessELFCore often not being able to provide
UUIDs for shared libraries and cause the incorrect binaries to be loaded
from the current machine even when the shared library UUIDs don't match.
The solution was to add the ability for a ModuleSpec to contain a load
address for the shared library. This allows ProcessELFCore to uniquely
identify a library regardless of the name used in NT_FILE. We can now
correctly supply the UUID from the .gnu-build-id to any binaries which
use symlinks when linking, but have differing resolved paths to the
libraries.
The process virtual function for finding a UUID was changed from:
virtual lldb_private::UUID FindModuleUUID(const llvm::StringRef path);
to:
virtual bool FindModuleUUID(ModuleSpec &spec);
to allow Process::FindModuleUUID to rely on other data in the ModuleSpec
since the path isn't enough.
We will be able to use the ModuleSpec's load address for creating a
module from a ModuleSpec, but that isn't in this PR.
Commit: bd1acfcb5d05341bacec042386edef34b987e195
https://github.com/llvm/llvm-project/commit/bd1acfcb5d05341bacec042386edef34b987e195
Author: HighW4y2H3ll <zhenghaohuu at gmail.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M llvm/include/llvm/Transforms/IPO/SampleProfileMatcher.h
M llvm/lib/Transforms/IPO/SampleProfileMatcher.cpp
A llvm/test/Transforms/SampleProfile/Inputs/pseudo-probe-stale-profile-orphan-conflict.prof
A llvm/test/Transforms/SampleProfile/pseudo-probe-stale-profile-orphan-conflict.ll
Log Message:
-----------
[SampleProfileMatcher] Sample profile duplication to avoid stale CFG profile matching conflicts (#202460)
Stale profile matching may map multiple different IR anchors into one
profile anchor because of the common function basename. One example is
`foo(int)` and `foo<bar>(float)` can both be mapped to `foo()` if
`foo()` is the only function that has a profile. And this creates
conflicting CFG matching for `foo(int)` and `foo<bar>(float)` when they
each runs stale profile matching. The CFG matching results will be
overwritten among the conflicting functions. And it will trigger the
following assertation failure:
https://github.com/llvm/llvm-project/blob/7087094b05a1bba64a99474cc501328919e11b4a/llvm/lib/Transforms/IPO/SampleProfileMatcher.cpp#L332-L333
This patch tries to detect this conflict during the stale CG matching,
and create duplicated profiles to avoid CFG matching conflicts.
Commit: 1827faef2ae5668dff8f14080ddaae143d7bb17d
https://github.com/llvm/llvm-project/commit/1827faef2ae5668dff8f14080ddaae143d7bb17d
Author: Zhiheng Xie <xiezhiheng at huawei.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M clang/test/Driver/print-enabled-extensions/aarch64-hip12.c
M llvm/lib/Target/AArch64/AArch64Processors.td
Log Message:
-----------
[AArch64] Add missing SubtargetFeature for hip12 core (#205246)
The initial patch for the hip12 core had omitted several subtarget
features:
FeatureFP16FML, FeatureFlagM, FeaturePredRes, FeatureSB, FeatureSSBS,
FeatureCCIDX, FeatureRandGen.
Commit: f9953d49dc4f2c8f747d8cbf2ed44bfdc1258b96
https://github.com/llvm/llvm-project/commit/f9953d49dc4f2c8f747d8cbf2ed44bfdc1258b96
Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M flang/lib/Parser/executable-parsers.cpp
M flang/test/Semantics/cuf23.cuf
Log Message:
-----------
[flang][cuda] Accept cuf kernel do without scalar (#205705)
The base compiler accept `!$cuf kernel do()` instead of raising an
error. Update the parser to accept the same syntax.
`!$cuf kernel do()` is equivalent to `!$cuf kernel do`
Commit: 53fb8492c26a832f9c8df300f64376eaaa5b78bc
https://github.com/llvm/llvm-project/commit/53fb8492c26a832f9c8df300f64376eaaa5b78bc
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M clang/lib/AST/ByteCode/Compiler.cpp
A clang/test/AST/ByteCode/evaluate-dtor-codegen.cpp
Log Message:
-----------
[clang][bytecode] Ignore indeterminate APValues (#205555)
They don't produce a value and for us, that means we just need to ignore
them and not initialize anything.
Commit: 2fe65489978870631729ccb5c242c77f80f01a99
https://github.com/llvm/llvm-project/commit/2fe65489978870631729ccb5c242c77f80f01a99
Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M flang/lib/Semantics/check-cuda.cpp
M flang/lib/Semantics/expression.cpp
A flang/test/Semantics/cuf30.cuf
Log Message:
-----------
[flang][cuda] Add NYI message for CUDA dynamic parallelism (#205628)
Commit: c0e80b94eefd29c7c1b0ae868e5d5092109a1d17
https://github.com/llvm/llvm-project/commit/c0e80b94eefd29c7c1b0ae868e5d5092109a1d17
Author: Paul Kirth <paulkirth at google.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
A clang-tools-extra/test/clang-doc/Inputs/array-type.cpp
A clang-tools-extra/test/clang-doc/Inputs/class-partial-specialization.cpp
A clang-tools-extra/test/clang-doc/Inputs/function-pointer-type.cpp
A clang-tools-extra/test/clang-doc/Inputs/member-function-pointer-type.cpp
A clang-tools-extra/test/clang-doc/Inputs/nested-pointer-qualifiers.cpp
A clang-tools-extra/test/clang-doc/array-type.cpp
A clang-tools-extra/test/clang-doc/class-partial-specialization.cpp
A clang-tools-extra/test/clang-doc/function-pointer-type.cpp
A clang-tools-extra/test/clang-doc/json/array-type.cpp
A clang-tools-extra/test/clang-doc/json/class-partial-specialization.cpp
A clang-tools-extra/test/clang-doc/json/function-pointer-type.cpp
A clang-tools-extra/test/clang-doc/json/member-function-pointer-type.cpp
A clang-tools-extra/test/clang-doc/json/nested-pointer-qualifiers.cpp
A clang-tools-extra/test/clang-doc/member-function-pointer-type.cpp
A clang-tools-extra/test/clang-doc/nested-pointer-qualifiers.cpp
Log Message:
-----------
[clang-doc] Test more language constructs (#205585)
We're missing several different language constructs in our tests. This
patch simply adds the basic tests and captures the output without trying
to fix or adjust any behavior, and can be considered a sort of precommit
test for future fixes to the various documentation components.
Commit: 765f0d14fe14a8394abf23afbdc6d6d657f6459d
https://github.com/llvm/llvm-project/commit/765f0d14fe14a8394abf23afbdc6d6d657f6459d
Author: Hood Chatham <roberthoodchatham at gmail.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/CodeGen/CGExpr.cpp
M clang/lib/CodeGen/CGExprConstant.cpp
M clang/lib/CodeGen/CGExprScalar.cpp
M clang/lib/CodeGen/CodeGenTypes.cpp
M clang/test/CodeGen/WebAssembly/builtins-table-externref.c
M clang/test/CodeGen/WebAssembly/builtins-table-funcref.c
M clang/test/CodeGen/WebAssembly/builtins-test-fp-sig.c
M clang/test/CodeGen/WebAssembly/wasm-externref.c
A clang/test/CodeGen/WebAssembly/wasm-funcref-to-ptr-error.c
M clang/test/CodeGen/WebAssembly/wasm-funcref.c
M clang/test/CodeGen/builtins-wasm.c
M clang/test/CodeGenCXX/wasm-reftypes-mangle.cpp
M llvm/docs/ReleaseNotes.md
M llvm/include/llvm/IR/Intrinsics.h
M llvm/include/llvm/IR/IntrinsicsWebAssembly.td
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
M llvm/lib/CodeGen/ValueTypes.cpp
M llvm/lib/IR/Intrinsics.cpp
M llvm/lib/IR/Type.cpp
M llvm/lib/Target/WebAssembly/CMakeLists.txt
M llvm/lib/Target/WebAssembly/GISel/WebAssemblyCallLowering.cpp
M llvm/lib/Target/WebAssembly/Utils/WasmAddressSpaces.h
M llvm/lib/Target/WebAssembly/Utils/WebAssemblyTypeUtilities.h
M llvm/lib/Target/WebAssembly/WebAssembly.h
M llvm/lib/Target/WebAssembly/WebAssemblyFastISel.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyISelDAGToDAG.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.h
R llvm/lib/Target/WebAssembly/WebAssemblyLowerRefTypesIntPtrConv.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyRefTypeMem2Local.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp
M llvm/test/CodeGen/WebAssembly/GlobalISel/irtranslator/args.ll
M llvm/test/CodeGen/WebAssembly/GlobalISel/irtranslator/call-basics.ll
M llvm/test/CodeGen/WebAssembly/GlobalISel/irtranslator/ret-basics.ll
A llvm/test/CodeGen/WebAssembly/GlobalISel/reference-types-fallback.ll
M llvm/test/CodeGen/WebAssembly/externref-globalget.ll
M llvm/test/CodeGen/WebAssembly/externref-globalset.ll
M llvm/test/CodeGen/WebAssembly/externref-inttoptr.ll
M llvm/test/CodeGen/WebAssembly/externref-ptrtoint.ll
M llvm/test/CodeGen/WebAssembly/externref-tableget.ll
M llvm/test/CodeGen/WebAssembly/externref-tableset.ll
M llvm/test/CodeGen/WebAssembly/externref-unsized-load.ll
M llvm/test/CodeGen/WebAssembly/externref-unsized-store.ll
M llvm/test/CodeGen/WebAssembly/funcref-call.ll
M llvm/test/CodeGen/WebAssembly/funcref-globalget.ll
M llvm/test/CodeGen/WebAssembly/funcref-globalset.ll
A llvm/test/CodeGen/WebAssembly/funcref-ptr-conversion.ll
M llvm/test/CodeGen/WebAssembly/funcref-table_call.ll
M llvm/test/CodeGen/WebAssembly/funcref-tableget.ll
M llvm/test/CodeGen/WebAssembly/funcref-tableset.ll
A llvm/test/CodeGen/WebAssembly/funcref-to-ptr-error.ll
A llvm/test/CodeGen/WebAssembly/ref-null-zeroinitializer.ll
M llvm/test/CodeGen/WebAssembly/ref-null.ll
M llvm/test/CodeGen/WebAssembly/ref-test-func.ll
M llvm/test/CodeGen/WebAssembly/ref-type-mem2local.ll
M llvm/test/CodeGen/WebAssembly/select-reftype.ll
M llvm/test/CodeGen/WebAssembly/table-copy.ll
M llvm/test/CodeGen/WebAssembly/table-fill.ll
M llvm/test/CodeGen/WebAssembly/table-grow.ll
M llvm/test/CodeGen/WebAssembly/table-size.ll
M llvm/test/CodeGen/WebAssembly/table-types.ll
A llvm/test/Transforms/SLPVectorizer/WebAssembly/externref-no-vectorize.ll
M llvm/utils/gn/secondary/llvm/lib/Target/WebAssembly/BUILD.gn
Log Message:
-----------
[WebAssembly] Represent reference types as TargetExtType (#203165)
Originally #71540 by Paolo Matos, I picked it up and finished it.
Resolves https://github.com/llvm/llvm-project/issues/69894.
Model WebAssembly externref and funcref as target("wasm.externref") /
target("wasm.funcref") TargetExtTypes instead of pointers in
non-integral address spaces 10 and 20.
The entire WebAssemblyLowerRefTypesIntPtrConv can be removed.
This breaks the GlobalISel handling for reference types, I just disabled
GlobalISel handling for functions that use them.
I added intrinsics for `wasm.ptr.to_funcref` and `wasm.funcref.to_ptr`.
ptr.to_funcref does a table.get from the indirect function pointer
table. As a special case, 0 is converted to the null funcref rather than
doing table.get on 0. `wasm.funcref.to_ptr` is only handled when we call
it immediately, otherwise it will fail to lower. We could dynamically
put the funcref into the table to make it work but that would require a
stack of spilled funcrefs and isn't worth the effort.
In the process of looking into this, I noticed that clang used to allow
casting from funcref to function pointer but if the cast result escaped
it would hit `Cannot select: FUNCREF_TO_PTR` in the backend. I added a
diagnostic that says "a funcref can only be converted to a pointer to be
directly called" to make this a little cleaner.
cc @QuantumSegfault
---------
Co-authored-by: Paulo Matos <pmatos at igalia.com>
Commit: 374df9f56e9b45e8eef7dc20cf23b73082bb4daa
https://github.com/llvm/llvm-project/commit/374df9f56e9b45e8eef7dc20cf23b73082bb4daa
Author: Anshul Nigham <nigham at google.com>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M llvm/lib/Target/AArch64/AArch64.h
M llvm/lib/Target/AArch64/AArch64PassRegistry.def
M llvm/lib/Target/AArch64/AArch64SRLTDefineSuperRegs.cpp
M llvm/lib/Target/AArch64/AArch64TargetMachine.cpp
M llvm/test/CodeGen/AArch64/subreg-liveness-fix-subreg-to-reg-implicit-def.mir
Log Message:
-----------
[NewPM][AArch64] Port AArch64SRLTDefineSuperRegs pass to NewPassManager (#202803)
Standard port for the AArch64SRLTDefineSuperRegs pass.
Assisted by Gemini
Commit: 1ece64c7c497e691f505cdba8be5a5ceff4694da
https://github.com/llvm/llvm-project/commit/1ece64c7c497e691f505cdba8be5a5ceff4694da
Author: Derek Schuff <dschuff at chromium.org>
Date: 2026-06-24 (Wed, 24 Jun 2026)
Changed paths:
M clang/test/CodeGen/WebAssembly/wasm-funcref-to-ptr-error.c
Log Message:
-----------
Fix test from #203165 when no wasm target is configured (#205722)
Fix test from #203165 when no wasm target is configured
Commit: 101b2cdd2266d683ed8d9ff58cac8d70ff5b816e
https://github.com/llvm/llvm-project/commit/101b2cdd2266d683ed8d9ff58cac8d70ff5b816e
Author: Matt <MattPD at users.noreply.github.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M flang/lib/Semantics/check-omp-structure.cpp
M flang/lib/Semantics/mod-file.cpp
M flang/lib/Semantics/resolve-names-utils.cpp
M flang/lib/Semantics/resolve-names-utils.h
M flang/lib/Semantics/resolve-names.cpp
A flang/test/Semantics/OpenMP/declare-reduction-overbroad-lookup.f90
A flang/test/Semantics/OpenMP/declare-reduction-use-mixed-merged.f90
A flang/test/Semantics/OpenMP/declare-reduction-use-only-defined-op.f90
A flang/test/Semantics/OpenMP/declare-reduction-use-only-merged.f90
A flang/test/Semantics/OpenMP/declare-reduction-use-only-renamed.f90
A flang/test/Semantics/OpenMP/declare-reduction-use-only.f90
A flang/test/Semantics/OpenMP/declare-reduction-use-reexport-merged.f90
A flang/test/Semantics/OpenMP/declare-reduction-use-reexport-remerge.f90
A flang/test/Semantics/OpenMP/declare-reduction-use-shadow-merged.f90
A flang/test/Semantics/OpenMP/declare-reduction-use-shadow.f90
Log Message:
-----------
[flang][OpenMP] Fix declare reduction lookup for USE...ONLY imports
CheckSymbolSupportsType walked every module in the global scope to find
declare-reduction declarations. That accepted reductions from modules
that were never USE'd, or were excluded via USE...ONLY, and it still
rejected some valid imports such as a renamed operator.
Replace the global scan with FindUserReduction(), which resolves the
reduction the way name resolution resolves the operator. It checks a
directly visible reduction first, then follows the operator's USE
associations and merged-generic sources to the declaring modules,
re-deriving the source module's mangled name for renamed operators. The
search recurses through re-exporting (facade) modules and is type-aware,
so an operator that carries reductions for several types resolves to the
one supporting the requested type. A locally declared reduction is
authoritative and shadows reductions reachable through the operator.
Consolidate the duplicated GetReductionFortranId() (formerly static in
both resolve-names.cpp and mod-file.cpp) into a shared utility, fixing a
latent bug where defined operators were not correctly reverse-mapped.
This corrects the semantic check only. The local lowering ICE for a
user-defined operator declare reduction was fixed separately in
https://github.com/llvm/llvm-project/issues/204299. The cross-module
cases this change additionally accepts (USE-associated, renamed, or
merged operators) now emit a clean "not yet implemented" diagnostic in
lowering. Completing their lowering is a follow-up.
Fixes https://github.com/llvm/llvm-project/issues/200300.
Assisted-by: Claude Opus 4.8.
Commit: dd499f88bf4d304baf0db1d6d4d84ad5bea8d7ad
https://github.com/llvm/llvm-project/commit/dd499f88bf4d304baf0db1d6d4d84ad5bea8d7ad
Author: Kaviya Rajendiran <67495422+kaviya2510 at users.noreply.github.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M clang/include/clang/Options/Options.td
M clang/lib/Driver/ToolChains/Flang.cpp
M flang/include/flang/Frontend/CodeGenOptions.def
M flang/lib/Frontend/CompilerInvocation.cpp
M flang/lib/Frontend/FrontendActions.cpp
A flang/test/Driver/fpseudo-probe-for-profiling.f90
A flang/test/Integration/pseudo-probe-for-profiling.f90
Log Message:
-----------
[Flang][Driver]Add support for option '-fpseudo-probe-for-profiling' in flang (#205046)
Added support for option `-fpseudo-probe-for-profiling` in flang.
- When the option `-fpseudo-probe-for-profiling` is passed, the compiler
sets the` PseudoProbeForProfiling` flag and triggers the
`SampleProfileProbePass`. This pass inserts `llvm.pseudoprobe(..)`
intrinsic calls and `!llvm.pseudo_probe_desc` metadata into the IR.
Commit: a6e3bf89bf3d55136a6b10d7269eead564f6b96f
https://github.com/llvm/llvm-project/commit/a6e3bf89bf3d55136a6b10d7269eead564f6b96f
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M clang/lib/AST/ByteCode/Interp.cpp
M clang/lib/AST/ByteCode/Interp.h
M clang/lib/AST/ByteCode/InterpHelpers.h
Log Message:
-----------
[clang][bytecode] Pass AccessKinds to Check{Constant,Mutable} (#205720)
So we can pass them on do `diagnoseNonConstVariable`.
This doesn't make a difference right now but is needed for a future
commit.
Commit: 2290eef65c1d40a76ff68d7a1750556fa392cb81
https://github.com/llvm/llvm-project/commit/2290eef65c1d40a76ff68d7a1750556fa392cb81
Author: David Green <david.green at arm.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M llvm/unittests/Target/AArch64/AArch64SVESchedPseudoTest.cpp
Log Message:
-----------
[AArch64] Correct latency calculation in runSVEPseudoTestForCPU test. NFC (#205100)
It does not look like this caused problems in the pseudo scheduling
tests, but is accumulating the wrong latency. I added extra checks that
the NumWriteLatencyEntries were the same in both cases whilst I was here
too.
Commit: e5f8e65fb2579fa71c812805fbee8b06db690b0c
https://github.com/llvm/llvm-project/commit/e5f8e65fb2579fa71c812805fbee8b06db690b0c
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/test/SemaHIP/amdgpu-feature-predicates-guard-use.hip
Log Message:
-----------
clang: Fix referring to __builtin_amdgcn_is_processor in diagnostic (#205725)
The builtin name is really __builtin_amdgcn_processor_is.
Commit: 44546e0e32077241ca9a9a90ac57f2f086f9488a
https://github.com/llvm/llvm-project/commit/44546e0e32077241ca9a9a90ac57f2f086f9488a
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M cmake/Modules/FindLibcCommonUtils.cmake
M libcxx/include/__functional/function.h
M libcxx/include/__locale_dir/wbuffer_convert.h
M libcxx/include/__memory/is_sufficiently_aligned.h
M libcxx/include/__memory/unique_ptr.h
M libcxx/include/__tree
M libcxx/include/map
M libcxx/include/variant
M libcxx/src/include/to_chars_floating_point.h
M libcxx/test/configs/llvm-libc++-llvm-libc.cfg.in
M libcxx/test/libcxx/clang_tidy.gen.py
M libcxx/test/libcxx/module_std_compat.gen.py
M libcxx/test/tools/clang_tidy_checks/hide_from_abi.cpp
M libcxx/utils/ci/run-buildbot
M libcxxabi/include/cxxabi.h
M libcxxabi/test/configs/llvm-libc++abi-llvm-libc.cfg.in
Log Message:
-----------
[libc++] Enable clang-tidy in the CI again (#195047)
clang-tidy currently doesn't run in the CI because CMake doesn't find
the appropriate `ClangConfig.cmake` anymore. This adds the path so
clang-tidy is built again and fixes most issues. Some things are
disabled for now to get most checks back. They will be re-enabled later.
Commit: 60977b5a37fb775b2b8292e3d34ce4cff7934c45
https://github.com/llvm/llvm-project/commit/60977b5a37fb775b2b8292e3d34ce4cff7934c45
Author: Ming-Yi Lai <ming-yi.lai at mediatek.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M llvm/include/llvm/TargetParser/RISCVTargetParser.h
M llvm/lib/Target/RISCV/RISCVAsmPrinter.cpp
M llvm/test/CodeGen/RISCV/branch-relaxation-rv32.ll
M llvm/test/CodeGen/RISCV/branch-relaxation-rv64.ll
M llvm/test/CodeGen/RISCV/calls-cf-branch.ll
M llvm/test/CodeGen/RISCV/jumptable-swguarded.ll
M llvm/test/CodeGen/RISCV/lpad-setjmp.ll
M llvm/test/CodeGen/RISCV/lpad.ll
M llvm/test/CodeGen/RISCV/nest-register.ll
A llvm/test/CodeGen/RISCV/note-gnu-property-zicfilp-error.ll
A llvm/test/CodeGen/RISCV/note-gnu-property-zicfilp-unlabeled.ll
M llvm/test/CodeGen/RISCV/rv64-trampoline-cfi.ll
M llvm/test/CodeGen/RISCV/tail-calls.ll
Log Message:
-----------
[RISCV][Zicfilp] Emit .note.gnu.property section for Zicfilp CFI unlabeled scheme (#141468)
RISC-V Zicfilp-based CFI needs to let the linker/loader know if the
binary is built with the mechanism enabled to support proper
link-time/load-time management of this feature. The information is
encoded as a bit in the `.note.gnu.property` section. This patch
implements emitting the section for RISC-V targets when Zicfilp-based
CFI with the "unlabeled" label scheme is enabled.
When Clang receives the `-fcf-protection=branch` flag, which enables
forward-edge CFI protection, it adds the `cf-protection-branch`
attribute to the LLVM module. Additionally, if a branch label scheme is
needed, another attribute (`cf-branch-label-scheme`) is added to
indicate it. For RISC-V targets, the `cf-protection-branch` attribute
indicates the adoption of Zicfilp-based forward-edge CFI protection, and
the `cf-branch-label-scheme` attribute selects how the "label" operands
of the Zicfilp `lpad` insns are produced. This patch emits the proper
`.note.gnu.property` feature bit when the RISC-V backend sees that the
LLVM module has the `cf-protection-branch` attribute set to `1`, and the
`cf-branch-label-scheme` attribute set to `unlabeled`, so
linkers/loaders know that the object file is built with Zicfilp-based
forward-edge CFI protection with the "unlabeled" scheme.
-----
Co-authored-by: Piyou chen <piyou.chen at sifive.com>
Commit: b8be9500691f62930a448a20066ee14cf3ea5896
https://github.com/llvm/llvm-project/commit/b8be9500691f62930a448a20066ee14cf3ea5896
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M llvm/include/llvm/ADT/iterator_range.h
Log Message:
-----------
[ADT][NFC] Use is_constructible instead of implementing it ourselves (#205341)
Commit: c50b561b96a97e354b0a2b3aaaba9c3fdef1cbeb
https://github.com/llvm/llvm-project/commit/c50b561b96a97e354b0a2b3aaaba9c3fdef1cbeb
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M clang/lib/Sema/SemaAMDGPU.cpp
Log Message:
-----------
clang/AMDGPU: Simplify cpu name checks for __builtin_amdgcn_is_processor (#205724)
Instead of trying to figure out which TargetInfo to use, skip it and
directly use the source of truth from TargetParser. This avoids
regressions in future commits where isValidCPUName will be
conditionally filtered.
Commit: ea05555c54ab5d15628e2676cd17ca084a81901a
https://github.com/llvm/llvm-project/commit/ea05555c54ab5d15628e2676cd17ca084a81901a
Author: William Tran-Viet <wtranviet at proton.me>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M libcxx/include/__locale_dir/support/fuchsia.h
M libcxx/include/__locale_dir/support/llvm_libc.h
M libcxx/test/libcxx/text/text_encoding/environment.pass.cpp
M libcxx/test/std/text/text_encoding/text_encoding.members/environment.pass.cpp
Log Message:
-----------
[libc++] Add implementations of `__get_locale_encoding(...)` to Fuschia and LLVM-Libc (#205716)
- These were missed in #141312 and consequently broke the Fuschia and
AMDGPU llvm-libc build bots.
- Fuschia seems to have support for `nl_langinfo_l(...)`, so we can use
that.
- However, LLVM-libc does not implement it, so for now we can do a dummy
implementation and mark `environment()` and `encoding()` as unsupported
on LLVM libc.
Commit: 3887ae1aacf6799e83684ab2bd0d02fd6b169ccd
https://github.com/llvm/llvm-project/commit/3887ae1aacf6799e83684ab2bd0d02fd6b169ccd
Author: Zihan Qin <zihanqin2048 at gmail.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M clang-tools-extra/clang-tidy/utils/RenamerClangTidyCheck.cpp
M clang-tools-extra/docs/ReleaseNotes.rst
M clang-tools-extra/test/clang-tidy/checkers/readability/identifier-naming-member-decl-usage.cpp
Log Message:
-----------
[clang-tidy] Guard `readability-identifier-naming` recursion in dependent base lookup (#204913)
Prevent `readability-identifier-naming` from recursing indefinitely in
dependent base lookup when AggressiveDependentMemberLookup` is enabled.
In #204790, `findDeclInBases()` maps a dependent template base back to
the primary template, creating a recursive cycle that crashes
clang-tidy. Add a recursion guard to stop the crash. A more complete fix
could be explored separately.
Add a regression test covering the dependent base cycle reproducer.
Closes https://github.com/llvm/llvm-project/issues/204790.
---------
Co-authored-by: EugeneZelenko <eugene.zelenko at gmail.com>
Commit: df9bcebdb20f846b6335dafedb3452fcb95fee48
https://github.com/llvm/llvm-project/commit/df9bcebdb20f846b6335dafedb3452fcb95fee48
Author: Nikita Popov <npopov at redhat.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M llvm/include/llvm/CodeGen/BasicTTIImpl.h
M llvm/include/llvm/CodeGen/TargetSubtargetInfo.h
M llvm/include/llvm/Target/Target.td
M llvm/lib/Target/AArch64/AArch64Features.td
M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.h
M llvm/lib/Target/AMDGPU/AMDGPU.td
M llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.cpp
M llvm/lib/Target/X86/X86.td
M llvm/lib/Target/X86/X86TargetTransformInfo.cpp
M llvm/lib/Target/X86/X86TargetTransformInfo.h
M llvm/test/TableGen/aarch64-apple-tuning-features.td
M llvm/unittests/CodeGen/MFCommon.inc
M llvm/utils/TableGen/SubtargetEmitter.cpp
Log Message:
-----------
[TTI][Inline] Define inlining behavior in SubtargetFeature (#205348)
This allows specifying the InliningBehavior as part of SubtargetFeature.
The behavior is one of InlineDefault, InlineInverse, and InlineIgnore.
* InlineDefault: A callee with this feature enabled cannot be inlined
into a caller without it enabled.
* InlineInverse: A callee without this feature enabled cannot be inlined
into a caller with it enabled.
* InlineIgnore: Arbitrary differences are allowed.
The default areInlineCompatible() implementation respects these now.
The intention behind this change is that it reduces the risk of
forgetting to update feature lists in TTI when adding a new feature,
e.g. when adding a new tuning flag that should be InlineIgnore.
Move X86 and AMDGPU ignored features, and the one inverse feature on
AArch64 to TableGen.
There is various followup work to do here, e.g. currently tuning flags
on AArch64 are not ignored (and on AMDGPU only some are ignored).
Commit: 388fe68212bec06f3205d6aa0629a55a571a782c
https://github.com/llvm/llvm-project/commit/388fe68212bec06f3205d6aa0629a55a571a782c
Author: LukeZhuang <luke.zhuang at linux.alibaba.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfo.td
A llvm/test/CodeGen/RISCV/tlsdesc-clobber.ll
Log Message:
-----------
[RISCV] Add explicit defs in PseudoLA_TLSDESC (#205494)
(Separated from #205027, per this discussion thread:
https://github.com/llvm/llvm-project/pull/205027#discussion_r3464170432
and
https://github.com/llvm/llvm-project/pull/205027#issuecomment-4785382877)
Per the psABI, la.tlsdesc clobbers a0/t0. The defs are not strictly
required now because the expanding happens pre-RA, while just in case
some passes may need it or the expanding may be moved to post-RA in the
future.
Also, a test case is added as well showing the right behavior of TLSDESC
clobbering.
Commit: 4a04568bead31bd9edf8fd64210fbf2307d47199
https://github.com/llvm/llvm-project/commit/4a04568bead31bd9edf8fd64210fbf2307d47199
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M clang/lib/AST/ExprConstant.cpp
Log Message:
-----------
[clang][ExprConst] Add early exit in `evaluateDestruction()` (#205476)
There's nothing to do here for them. It's a little sad that we still
crated the vector holding the notes int he caller but setting
`HasConstantDestruction` is a side-effect of `evaluateDestruction()`
that some callers rely on.
Commit: 3fd56af03613059ba3edd30d7c60aaf50956e951
https://github.com/llvm/llvm-project/commit/3fd56af03613059ba3edd30d7c60aaf50956e951
Author: Volodymyr Turanskyy <Volodymyr.Turanskyy at arm.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M clang/lib/Driver/ToolChain.cpp
M clang/test/Driver/baremetal-multilib.yaml
M clang/test/Driver/print-multi-selection-flags.c
Log Message:
-----------
[clang][Driver] Pass --cstdlib through to multilibs (#203884)
Pass the --cstdlib through to the multilibs backend so that the value
specified on the command line can be used inside the multilibs YAML
file.
Assisted-by: codex, reviewed and tested by me.
Commit: 2084ce6be25f0cdf21db31446d6c14377eae7256
https://github.com/llvm/llvm-project/commit/2084ce6be25f0cdf21db31446d6c14377eae7256
Author: Jean-Didier PAILLEUX <jean-didier.pailleux at sipearl.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M flang/include/flang/Optimizer/Transforms/Passes.td
M flang/lib/Optimizer/Transforms/MIFOpConversion.cpp
M flang/test/Fir/MIF/change_team.mlir
M flang/test/Fir/MIF/change_team2.mlir
M flang/test/Fir/MIF/co_broadcast.mlir
M flang/test/Fir/MIF/co_max.mlir
M flang/test/Fir/MIF/co_min.mlir
M flang/test/Fir/MIF/co_sum.mlir
M flang/test/Fir/MIF/coarray-alloc.mlir
M flang/test/Fir/MIF/form_team.mlir
M flang/test/Fir/MIF/get_team.mlir
M flang/test/Fir/MIF/init.mlir
M flang/test/Fir/MIF/num_images.mlir
M flang/test/Fir/MIF/sync_all.mlir
M flang/test/Fir/MIF/sync_images.mlir
M flang/test/Fir/MIF/sync_memory.mlir
M flang/test/Fir/MIF/sync_team.mlir
M flang/test/Fir/MIF/team_number.mlir
M flang/test/Fir/MIF/this_image.mlir
Log Message:
-----------
[flang][MIF] Use default datalayout and cleanup MIF tests (#205662)
As mentioned in the PR #192944, we are now using the default data
layout.
Commit: 8eae99152a23bd70c6f8bbf8f59a4518902eb73f
https://github.com/llvm/llvm-project/commit/8eae99152a23bd70c6f8bbf8f59a4518902eb73f
Author: Kaviya Rajendiran <67495422+kaviya2510 at users.noreply.github.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M flang/include/flang/Optimizer/Analysis/ArraySectionAnalyzer.h
M flang/include/flang/Optimizer/Builder/FIRBuilder.h
M flang/lib/Optimizer/Builder/FIRBuilder.cpp
M flang/lib/Optimizer/HLFIR/Transforms/InlineHLFIRAssign.cpp
A flang/test/HLFIR/inline-hlfir-assign-pointer-overlap.fir
A flang/test/HLFIR/inline-hlfir-assign-scalar-index.fir
A flang/test/HLFIR/inline-hlfir-assign-self-copy-runtime-stride.fir
A flang/test/HLFIR/inline-hlfir-assign-self-copy.fir
Log Message:
-----------
[Flang]Add support for inlining hlfir.assign operation where both LHS and RHS are slices of the same array (#204532)
Added support for inlining hlfir.assign when both LHS and RHS are slices
of the same array. When overlap between the slices cannot be determined,
the pass introduces a disjointness check:
- genIndexBasedDisjointnessCheck(..) is used when both sides are
sections of the same array.
- genAddressBasedDisjointnessCheck(..) used as a fallback for more
complex cases.
At runtime:
- If the slices are disjoint, a direct element-wise copy is performed
without allocating a temporary buffer.
- If overlap is possible, a temporary buffer is allocated, the RHS is
first copied into it and then the data is copied from the temporary
buffer to the LHS.
Fixes https://github.com/llvm/llvm-project/issues/203228
Commit: aabcb57b6c4d2f4cd83f7de999c4e7574074d68f
https://github.com/llvm/llvm-project/commit/aabcb57b6c4d2f4cd83f7de999c4e7574074d68f
Author: Mark Murray <mark.murray at arm.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M clang/docs/ReleaseNotes.rst
Log Message:
-----------
Add armagicpu to release notes (#205599)
Add armagicpu to release notes
Raised by validator.
---------
Co-authored-by: Volodymyr Turanskyy <vturanskyy at gmail.com>
Commit: 5a0106d9f7f9b26dd36972665ee5e5b9806d975c
https://github.com/llvm/llvm-project/commit/5a0106d9f7f9b26dd36972665ee5e5b9806d975c
Author: Piotr Fusik <p.fusik at samsung.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/AST/TypeBase.h
M clang/lib/AST/Type.cpp
M clang/lib/Sema/SemaTemplateInstantiate.cpp
M clang/test/CodeGenCXX/dynamic-cast-exact.cpp
Log Message:
-----------
[Clang] Fix missing vtable for `dynamic_cast<FinalClass *>(this)` in a function template (#202594)
9d525bf94b255df89587db955b5fa2d3c03c2c3e introduced an optimization
of `dynamic_cast<FinalClass *>` by comparing vtable pointers. This requires
the vtable to be emitted, which was fixed for most cases in #64088.
This change addresses a missing case of a `dynamic_cast` of `this`
in a function template. We ensure that `Sema::MarkVTableUsed`
gets called during template instantiation. It wasn't because
`CXXThisExpr` is unaffected by template instantiation.
Fix #198511
Commit: a460d7ecf04e551234edf1a342e333abdf346431
https://github.com/llvm/llvm-project/commit/a460d7ecf04e551234edf1a342e333abdf346431
Author: Javed Absar <javed.absar at gmail.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M mlir/include/mlir/Dialect/Linalg/Passes.td
M mlir/include/mlir/Dialect/Linalg/Transforms/Transforms.h
M mlir/lib/Dialect/Linalg/Transforms/CMakeLists.txt
A mlir/lib/Dialect/Linalg/Transforms/CategoryToNamedOp.cpp
M mlir/lib/Dialect/Linalg/Transforms/MorphOps.cpp
A mlir/test/Dialect/Linalg/linalg-morph-elementwise-to-named.mlir
Log Message:
-----------
[mlir][linalg] Add category-to-named conversion in linalg-morph-ops (#205582)
Add the missing `category-to-named` morphism path that converts
`linalg.elementwise` ops to their equivalent named ops (e.g.
`linalg.elementwise kind=add` -> `linalg.add`). This completes the set
of conversions in the linalg-morph-ops pass:
generic <---> category <---> named
The conversion only applies to elementwise ops with identity indexing
maps, since named elementwise ops cannot carry custom maps. Kinds
without a named op equivalent (e.g. sin, cos) are left unconverted.
Co-authored-by: mabsar <mabsar at qti.qualcommm.com>
Commit: 86c17ecd4cc558769be4ab87bf5c89061ea99f5d
https://github.com/llvm/llvm-project/commit/86c17ecd4cc558769be4ab87bf5c89061ea99f5d
Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td
M llvm/lib/Target/AArch64/SVEInstrFormats.td
Log Message:
-----------
[AArch64][SVE] Expose flags result of predicate-as-counter whiles (NFC) (#202976)
For predicate-as-counter there is not "ptest" instruction. So unlike for
the SVE1 while instructions, we can't fold
`extract_vector_elt(pext(whilelo, 0), 0)` to PTEST_FIRST_ACTIVE, then
rely on the ptest elimination to remove redundant tests.
This patch instead adds new ISD nodes for predicate-as-counter while
instructions that return both the predicate and the status flags. This
will allow us to DAG combine `extract_vector_elt(pext(whilelo, 0), 0)`
to `CSET (whilelo, first)`. A further DAG combine could also fold the
`CSET` into a BR_CC (if it has one use).
Commit: 22da7f92913937b0318e3d504b2d8e90faaf2597
https://github.com/llvm/llvm-project/commit/22da7f92913937b0318e3d504b2d8e90faaf2597
Author: forking-google-bazel-bot[bot] <265904573+forking-google-bazel-bot[bot]@users.noreply.github.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M utils/bazel/llvm-project-overlay/flang/lib/Optimizer/Builder/BUILD.bazel
Log Message:
-----------
[Bazel] Fixes 8eae991 (#205752)
This fixes 8eae99152a23bd70c6f8bbf8f59a4518902eb73f.
Co-authored-by: Google Bazel Bot <google-bazel-bot at google.com>
Commit: 7083c06372905081929ea43abea4751ef372761a
https://github.com/llvm/llvm-project/commit/7083c06372905081929ea43abea4751ef372761a
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M libcxx/docs/ABIGuarantees.rst
M libcxx/include/__configuration/attributes.h
M libcxx/include/__memory/compressed_pair.h
M libcxx/include/__memory/shared_ptr.h
R libcxx/test/libcxx/utilities/memory/util.smartptr/util.smartptr.shared/libcxx.control_block_layout.pass.cpp
A libcxx/test/std/utilities/memory/util.smartptr/util.smartptr.shared/pointer_destruction.pass.cpp
M libcxx/test/std/utilities/memory/util.smartptr/util.smartptr.shared/util.smartptr.shared.create/allocate_shared.lwg2070.pass.cpp
Log Message:
-----------
[libc++] Remove _LIBCPP_COMPRESSED_PAIR/TRIPLE from shared_ptr (#200401)
The `shared_ptr` control blocks don't need to be ABI stable as long as
we rename them. This can be thought of as adding a new control block,
which we've done before, and simply never generating the old one again.
This is done via an ABI tag on the control blocks, allowing us to change
their contents in whichever way we want without needing to consider
their ABI. In this case specifically, `_LIBCPP_COMPRESSED_{PAIR,TRIPLE}`
is removed, simplifying the code.
Commit: be8255a294a8fe9f404fcde0bd92b507cf152670
https://github.com/llvm/llvm-project/commit/be8255a294a8fe9f404fcde0bd92b507cf152670
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M clang/lib/AST/ByteCode/Compiler.cpp
M clang/test/AST/ByteCode/new-delete.cpp
Log Message:
-----------
[clang][bytecode] Fix ImplicitValueInitExpr array initializer (#205754)
... if the allocation is dynamic and the array is multidimensional.
Commit: 159ea0a9a8a2a765dad1b487e5a1ece0ea48130d
https://github.com/llvm/llvm-project/commit/159ea0a9a8a2a765dad1b487e5a1ece0ea48130d
Author: Ramkumar Ramachandra <artagnon at tenstorrent.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/test/Transforms/LoopVectorize/AArch64/epilog-vectorization-widen-inductions.ll
M llvm/test/Transforms/LoopVectorize/AArch64/force-target-instruction-cost.ll
M llvm/test/Transforms/LoopVectorize/AArch64/induction-costs.ll
M llvm/test/Transforms/LoopVectorize/AArch64/interleave-with-gaps.ll
M llvm/test/Transforms/LoopVectorize/AArch64/replicating-load-store-costs.ll
M llvm/test/Transforms/LoopVectorize/AArch64/transform-narrow-interleave-to-widen-memory-with-wide-ops.ll
M llvm/test/Transforms/LoopVectorize/AArch64/type-shrinkage-insertelt.ll
M llvm/test/Transforms/LoopVectorize/ARM/gather-cost.ll
M llvm/test/Transforms/LoopVectorize/RISCV/riscv-vector-reverse.ll
M llvm/test/Transforms/LoopVectorize/VPlan/AArch64/widen-call-with-intrinsic-or-libfunc.ll
M llvm/test/Transforms/LoopVectorize/X86/consecutive-ptr-uniforms.ll
M llvm/test/Transforms/LoopVectorize/X86/cost-conditional-branches.ll
M llvm/test/Transforms/LoopVectorize/X86/gather_scatter.ll
M llvm/test/Transforms/LoopVectorize/X86/induction-costs.ll
M llvm/test/Transforms/LoopVectorize/X86/interleave-ptradd-with-replicated-operand.ll
M llvm/test/Transforms/LoopVectorize/X86/interleaved-accesses-hoist-load-across-store.ll
M llvm/test/Transforms/LoopVectorize/X86/parallel-loops.ll
M llvm/test/Transforms/LoopVectorize/X86/predicated-replicate-feeding-cast.ll
M llvm/test/Transforms/LoopVectorize/X86/replicating-load-store-costs.ll
M llvm/test/Transforms/LoopVectorize/X86/strided_load_cost.ll
M llvm/test/Transforms/LoopVectorize/X86/vplan-native-inner-loop-only.ll
M llvm/test/Transforms/LoopVectorize/X86/x86-interleaved-accesses-masked-group.ll
M llvm/test/Transforms/LoopVectorize/X86/x86-interleaved-store-accesses-with-gaps.ll
M llvm/test/Transforms/LoopVectorize/X86/x86_fp80-vector-store.ll
M llvm/test/Transforms/LoopVectorize/assume.ll
M llvm/test/Transforms/LoopVectorize/bsd_regex.ll
M llvm/test/Transforms/LoopVectorize/byte-type-function-variants.ll
M llvm/test/Transforms/LoopVectorize/consecutive-ptr-uniforms.ll
M llvm/test/Transforms/LoopVectorize/dereferenceable-info-from-assumption-constant-size.ll
M llvm/test/Transforms/LoopVectorize/find-last-iv-sinkable-load.ll
M llvm/test/Transforms/LoopVectorize/float-induction.ll
M llvm/test/Transforms/LoopVectorize/forked-pointers.ll
M llvm/test/Transforms/LoopVectorize/gather-scatter.ll
M llvm/test/Transforms/LoopVectorize/histograms.ll
M llvm/test/Transforms/LoopVectorize/hoist-predicated-loads-with-predicated-stores.ll
M llvm/test/Transforms/LoopVectorize/induction-wrapflags.ll
M llvm/test/Transforms/LoopVectorize/induction.ll
M llvm/test/Transforms/LoopVectorize/interleaved-accesses-pred-stores.ll
M llvm/test/Transforms/LoopVectorize/interleaved-accesses.ll
M llvm/test/Transforms/LoopVectorize/loop-scalars.ll
M llvm/test/Transforms/LoopVectorize/narrow-to-single-scalar.ll
M llvm/test/Transforms/LoopVectorize/non-widenable-intrinsics-outer-loop.ll
M llvm/test/Transforms/LoopVectorize/optimal-epilog-vectorization.ll
M llvm/test/Transforms/LoopVectorize/optsize.ll
M llvm/test/Transforms/LoopVectorize/pointer-induction.ll
M llvm/test/Transforms/LoopVectorize/pr34681.ll
M llvm/test/Transforms/LoopVectorize/pr39417-optsize-scevchecks.ll
M llvm/test/Transforms/LoopVectorize/predicate-switch.ll
M llvm/test/Transforms/LoopVectorize/preserve-inbounds-gep-with-pointer-casts.ll
M llvm/test/Transforms/LoopVectorize/reduction-with-invariant-store.ll
M llvm/test/Transforms/LoopVectorize/scev-predicate-reasoning.ll
M llvm/test/Transforms/LoopVectorize/shl-shift-amount-out-of-range-scev.ll
M llvm/test/Transforms/LoopVectorize/single-value-blend-phis.ll
M llvm/test/Transforms/LoopVectorize/struct-return-replicate.ll
M llvm/test/Transforms/LoopVectorize/uniform-args-call-variants.ll
M llvm/test/Transforms/LoopVectorize/uniform_across_vf_induction1.ll
M llvm/test/Transforms/LoopVectorize/uniform_across_vf_induction1_and.ll
M llvm/test/Transforms/LoopVectorize/uniform_across_vf_induction1_div_urem.ll
M llvm/test/Transforms/LoopVectorize/uniform_across_vf_induction1_lshr.ll
M llvm/test/Transforms/LoopVectorize/uniform_across_vf_induction2.ll
M llvm/test/Transforms/LoopVectorize/vplan-native-path-inner-loop-with-runtime-checks.ll
M llvm/test/Transforms/PhaseOrdering/AArch64/hoist-load-from-vector-loop.ll
Log Message:
-----------
[VPlan] Strip replicate-region bail in materializing Unpacks (#203907)
Replicate regions are now removed by VPlanUnroll replicateByVF. The
patch also includes a fix replacing usesScalarValues with
usesFirstLaneOnly.
Commit: 038606bcc37039cd0dbaede7be18a0b353ffcabf
https://github.com/llvm/llvm-project/commit/038606bcc37039cd0dbaede7be18a0b353ffcabf
Author: Hongyu Chen <xxs_chy at outlook.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineCasts.cpp
M llvm/test/Transforms/InstCombine/bswap.ll
Log Message:
-----------
[InstCombine] do not assume the operand position of reverse shuffle (#205747)
Fixes https://github.com/llvm/llvm-project/issues/204522
`Shuf->isReverse` only guarantees that the shuffle mask is reverse for
one of the operands, instead of the first one, and we cannot assume that
the second shuffle operand is undef. Otherwise, the assertion can be
triggered by the bitcasts on non-canonical shuffles, e.g., bitcast on
`%shuffle` generated by `InstCombinerImpl::mergeStoreIntoSuccessor` in
the testcase.
In this patch, we remove the assertion and do the fold only if the
second shuffle operand is undef. In this case, for whichever shuffle
operand the mask is reverse for, we are performing the correct
refinement.
Commit: 8aeeb9f67a4f314fb4f4e83788a62d69d4f3e742
https://github.com/llvm/llvm-project/commit/8aeeb9f67a4f314fb4f4e83788a62d69d4f3e742
Author: Simon Tatham <simon.tatham at arm.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
A llvm/test/CodeGen/AArch64/aarch64-fmuladd.ll
Log Message:
-----------
[AArch64] Don't call fma/fmaf for @llvm.fmuladd.f64/f32 in softfp (#205356)
@llvm.fmuladd is the IR intrinsic that leaves it up to code generation
whether to fuse an FP multiply+add pair or leave them separate.
Generally you only fuse them if fused mul+add has good performance.
On AArch64, for the float and double instances of this intrinsic, isel
was unconditionally fusing the operations. This is sensible with
hardware FP, but a bad idea for the rare case of AArch64 without
hardware FP, because that leads to a call to the libm `fma()` or
`fmaf()` function. That function generally (in multiple libcs) seems to
be much slower than separate mul+add operations. So this patch checks
for the presence of FP before reporting that fusing the operations is a
performance win.
Commit: a85dcb8f907416e650d992c0ba52909e64c20611
https://github.com/llvm/llvm-project/commit/a85dcb8f907416e650d992c0ba52909e64c20611
Author: Hardik Kumar <hardikkumarpro0005 at gmail.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M libc/src/wchar/wcslcat.cpp
M libc/src/wchar/wcsncat.cpp
M libc/test/src/wchar/wcslcat_test.cpp
M libc/test/src/wchar/wcsncat_test.cpp
Log Message:
-----------
[libc] fix oob and overflow bugs in wcslcat and wcsncat (#203697)
closes #203649
- I have added a check in `libc/src/wchar/wcslcat.cpp` to prevent
overflow caused by when static_cast wraps the limit.
- For the `wcsncat` implementation I have fixed the condition in the for
loop to first check if `i` is within bounds preventing OOB access on
`s2`
I am new to the codebase so any feedback would be very helpful and I
will be happy to follow up promptly after a review!
Commit: 8cd49c6f64f2e2b14853ae79bbecd78797d8f2a5
https://github.com/llvm/llvm-project/commit/8cd49c6f64f2e2b14853ae79bbecd78797d8f2a5
Author: Sergio Afonso <safonsof at amd.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M clang/test/CIR/Lowering/omp-target-map.cir
M clang/test/CIR/Transforms/omp-mark-declare-target.cir
M flang/lib/Lower/OpenMP/ClauseProcessor.cpp
M flang/lib/Lower/OpenMP/ClauseProcessor.h
M flang/lib/Lower/OpenMP/OpenMP.cpp
M flang/lib/Optimizer/OpenMP/DoConcurrentConversion.cpp
M flang/lib/Optimizer/OpenMP/LowerWorkdistribute.cpp
M flang/test/Analysis/AliasAnalysis/alias-analysis-omp-target-1.fir
M flang/test/Analysis/AliasAnalysis/alias-analysis-omp-target-2.fir
M flang/test/Fir/OpenMP/bounds-generation-for-char-arrays.f90
M flang/test/Fir/convert-to-llvm-openmp-and-fir.fir
M flang/test/Lower/OpenMP/DelayedPrivatization/target-private-allocatable.f90
M flang/test/Lower/OpenMP/DelayedPrivatization/target-private-implicit-scalar-map-2.f90
M flang/test/Lower/OpenMP/DelayedPrivatization/target-private-implicit-scalar-map.f90
M flang/test/Lower/OpenMP/DelayedPrivatization/target-private-simple.f90
M flang/test/Lower/OpenMP/DelayedPrivatization/target-teams-private-implicit-scalar-map.f90
M flang/test/Lower/OpenMP/KernelLanguage/bare-clause.f90
M flang/test/Lower/OpenMP/allocatable-dtype-intermediate-map-gen.f90
M flang/test/Lower/OpenMP/allocatable-map.f90
M flang/test/Lower/OpenMP/array-bounds.f90
M flang/test/Lower/OpenMP/attach-and-ref-modifier.f90
M flang/test/Lower/OpenMP/common-block-map.f90
M flang/test/Lower/OpenMP/declare-mapper.f90
M flang/test/Lower/OpenMP/default-mapper-no-pointer-map.f90
M flang/test/Lower/OpenMP/defaultmap.f90
M flang/test/Lower/OpenMP/depend-iterator.f90
M flang/test/Lower/OpenMP/derived-type-allocatable-map.f90
M flang/test/Lower/OpenMP/derived-type-map.f90
M flang/test/Lower/OpenMP/distribute-parallel-do-simd.f90
M flang/test/Lower/OpenMP/dyn-groupprivate-clause.f90
M flang/test/Lower/OpenMP/groupprivate.f90
M flang/test/Lower/OpenMP/implicit-mapper-no-pointer-map.f90
M flang/test/Lower/OpenMP/local-intrinsic-sized-array-map.f90
M flang/test/Lower/OpenMP/location.f90
M flang/test/Lower/OpenMP/map-character.f90
M flang/test/Lower/OpenMP/map-component-ref.f90
M flang/test/Lower/OpenMP/map-descriptor-deferral.f90
M flang/test/Lower/OpenMP/map-mapper.f90
M flang/test/Lower/OpenMP/optional-argument-map-2.f90
M flang/test/Lower/OpenMP/optional-argument-map-3.f90
M flang/test/Lower/OpenMP/target-map-complex.f90
M flang/test/Lower/OpenMP/target-parallel-private.f90
M flang/test/Lower/OpenMP/target-scope.f90
M flang/test/Lower/OpenMP/target-spmd.f90
M flang/test/Lower/OpenMP/target-teams-private.f90
M flang/test/Lower/OpenMP/target.f90
M flang/test/Lower/OpenMP/workdistribute-target-teams-clauses.f90
M flang/test/Lower/OpenMP/workdistribute.f90
M flang/test/Transforms/DoConcurrent/host_eval.f90
M flang/test/Transforms/DoConcurrent/local_device.mlir
M flang/test/Transforms/DoConcurrent/map_shape_info.f90
M flang/test/Transforms/DoConcurrent/multiple_iteration_ranges.f90
M flang/test/Transforms/DoConcurrent/non_reference_to_device.f90
M flang/test/Transforms/DoConcurrent/reduce_device.mlir
M flang/test/Transforms/OpenMP/delete-unreachable-targets.mlir
M flang/test/Transforms/OpenMP/function-filtering-host-ops.mlir
M flang/test/Transforms/OpenMP/function-filtering.mlir
M flang/test/Transforms/OpenMP/lower-workdistribute-fission-host.mlir
M flang/test/Transforms/OpenMP/lower-workdistribute-fission-target.mlir
M flang/test/Transforms/OpenMP/lower-workdistribute-runtime-assign-scalar.mlir
M flang/test/Transforms/OpenMP/simd-only.mlir
M flang/test/Transforms/debug-omp-target-op-1.fir
M flang/test/Transforms/debug-omp-target-op-2.fir
M flang/test/Transforms/omp-function-filtering-todo.mlir
M flang/test/Transforms/omp-map-info-finalization-implicit-field.fir
M flang/test/Transforms/omp-map-info-finalization-member-record.fir
M flang/test/Transforms/omp-map-info-finalization-name-loc.fir
M flang/test/Transforms/omp-map-info-finalization-usm.fir
M flang/test/Transforms/omp-map-info-finalization.fir
M flang/test/Transforms/omp-maps-for-privatized-symbols.fir
M mlir/include/mlir/Dialect/OpenMP/OpenMPClauseOperands.h
M mlir/include/mlir/Dialect/OpenMP/OpenMPClauses.td
M mlir/include/mlir/Dialect/OpenMP/OpenMPEnums.td
M mlir/include/mlir/Dialect/OpenMP/OpenMPOps.td
M mlir/lib/Dialect/OpenMP/IR/OpenMPDialect.cpp
M mlir/lib/Dialect/OpenMP/Utils/Utils.cpp
M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
M mlir/test/Conversion/OpenMPToLLVM/convert-to-llvmir.mlir
M mlir/test/Dialect/OpenMP/canonicalize.mlir
M mlir/test/Dialect/OpenMP/invalid.mlir
M mlir/test/Dialect/OpenMP/omp-offload-privatization-prepare-by-value.mlir
M mlir/test/Dialect/OpenMP/omp-offload-privatization-prepare.mlir
M mlir/test/Dialect/OpenMP/ops.mlir
M mlir/test/Dialect/OpenMP/stack-to-shared.mlir
M mlir/test/Target/LLVMIR/allocatable_gpu_reduction.mlir
M mlir/test/Target/LLVMIR/allocatable_gpu_reduction_teams.mlir
M mlir/test/Target/LLVMIR/omp-target-call-with-repeated-parameter.mlir
M mlir/test/Target/LLVMIR/omptarget-array-sectioning-host.mlir
M mlir/test/Target/LLVMIR/omptarget-atomic-capture-control-options.mlir
M mlir/test/Target/LLVMIR/omptarget-atomic-update-control-options.mlir
M mlir/test/Target/LLVMIR/omptarget-byref-bycopy-generation-device.mlir
M mlir/test/Target/LLVMIR/omptarget-byref-bycopy-generation-host.mlir
M mlir/test/Target/LLVMIR/omptarget-constant-alloca-raise.mlir
M mlir/test/Target/LLVMIR/omptarget-constant-indexing-device-region.mlir
M mlir/test/Target/LLVMIR/omptarget-debug-147063.mlir
M mlir/test/Target/LLVMIR/omptarget-debug-empty.mlir
M mlir/test/Target/LLVMIR/omptarget-debug-loop-loc.mlir
M mlir/test/Target/LLVMIR/omptarget-debug-map-link-loc.mlir
M mlir/test/Target/LLVMIR/omptarget-debug-nowait.mlir
M mlir/test/Target/LLVMIR/omptarget-debug-record-pos.mlir
M mlir/test/Target/LLVMIR/omptarget-debug-var-1.mlir
M mlir/test/Target/LLVMIR/omptarget-debug-var-2.mlir
M mlir/test/Target/LLVMIR/omptarget-debug.mlir
M mlir/test/Target/LLVMIR/omptarget-debug2.mlir
M mlir/test/Target/LLVMIR/omptarget-declare-target-llvm-device-2.mlir
M mlir/test/Target/LLVMIR/omptarget-declare-target-llvm-device.mlir
M mlir/test/Target/LLVMIR/omptarget-declare-target-to-device.mlir
M mlir/test/Target/LLVMIR/omptarget-declare-target-to-host.mlir
M mlir/test/Target/LLVMIR/omptarget-depend-host-only.mlir
M mlir/test/Target/LLVMIR/omptarget-depend.mlir
M mlir/test/Target/LLVMIR/omptarget-device-shared-memory.mlir
M mlir/test/Target/LLVMIR/omptarget-device.mlir
M mlir/test/Target/LLVMIR/omptarget-fortran-common-block-host.mlir
M mlir/test/Target/LLVMIR/omptarget-groupprivate.mlir
M mlir/test/Target/LLVMIR/omptarget-host-ref-semantics.mlir
M mlir/test/Target/LLVMIR/omptarget-if-nowait.mlir
M mlir/test/Target/LLVMIR/omptarget-if.mlir
M mlir/test/Target/LLVMIR/omptarget-llvm.mlir
M mlir/test/Target/LLVMIR/omptarget-mapper-combined-entry.mlir
M mlir/test/Target/LLVMIR/omptarget-memcpy-align-metadata.mlir
M mlir/test/Target/LLVMIR/omptarget-multi-block-reduction.mlir
M mlir/test/Target/LLVMIR/omptarget-multi-reduction.mlir
M mlir/test/Target/LLVMIR/omptarget-nested-ptr-record-type-mapping-host.mlir
M mlir/test/Target/LLVMIR/omptarget-nested-record-type-mapping-host.mlir
M mlir/test/Target/LLVMIR/omptarget-nowait-host-only.mlir
M mlir/test/Target/LLVMIR/omptarget-nowait-llvm.mlir
M mlir/test/Target/LLVMIR/omptarget-nowait.mlir
M mlir/test/Target/LLVMIR/omptarget-nullary-record-ptr-member-map.mlir
M mlir/test/Target/LLVMIR/omptarget-overlapping-record-member-map.mlir
M mlir/test/Target/LLVMIR/omptarget-parallel-llvm-debug.mlir
M mlir/test/Target/LLVMIR/omptarget-parallel-llvm.mlir
M mlir/test/Target/LLVMIR/omptarget-private-llvm.mlir
M mlir/test/Target/LLVMIR/omptarget-record-type-mapping-host.mlir
M mlir/test/Target/LLVMIR/omptarget-record-type-with-ptr-member-host.mlir
M mlir/test/Target/LLVMIR/omptarget-region-device-llvm.mlir
M mlir/test/Target/LLVMIR/omptarget-region-host-device-llvm.mlir
M mlir/test/Target/LLVMIR/omptarget-region-host-only.mlir
M mlir/test/Target/LLVMIR/omptarget-region-llvm.mlir
M mlir/test/Target/LLVMIR/omptarget-region-parallel-llvm.mlir
M mlir/test/Target/LLVMIR/omptarget-runtimecc.mlir
M mlir/test/Target/LLVMIR/omptarget-target-cpu-features.mlir
M mlir/test/Target/LLVMIR/omptarget-teams-distribute-reduction-array-descriptor.mlir
M mlir/test/Target/LLVMIR/omptarget-teams-distribute-reduction.mlir
M mlir/test/Target/LLVMIR/omptarget-teams-reduction.mlir
M mlir/test/Target/LLVMIR/openmp-data-target-device.mlir
M mlir/test/Target/LLVMIR/openmp-iterator.mlir
M mlir/test/Target/LLVMIR/openmp-llvm-invalid.mlir
M mlir/test/Target/LLVMIR/openmp-nested-task-target-parallel.mlir
M mlir/test/Target/LLVMIR/openmp-private-allloca-hoisting.mlir
M mlir/test/Target/LLVMIR/openmp-target-default-as.mlir
M mlir/test/Target/LLVMIR/openmp-target-dyn-groupprivate.mlir
M mlir/test/Target/LLVMIR/openmp-target-generic-spmd.mlir
M mlir/test/Target/LLVMIR/openmp-target-has-device-addr.mlir
M mlir/test/Target/LLVMIR/openmp-target-launch-device.mlir
M mlir/test/Target/LLVMIR/openmp-target-launch-host.mlir
M mlir/test/Target/LLVMIR/openmp-target-multiple-private.mlir
M mlir/test/Target/LLVMIR/openmp-target-private-allocatable.mlir
M mlir/test/Target/LLVMIR/openmp-target-private-shared-mem.mlir
M mlir/test/Target/LLVMIR/openmp-target-private.mlir
M mlir/test/Target/LLVMIR/openmp-target-simd-on_device.mlir
M mlir/test/Target/LLVMIR/openmp-target-spmd-num-threads-i64.mlir
M mlir/test/Target/LLVMIR/openmp-target-spmd.mlir
M mlir/test/Target/LLVMIR/openmp-target-wsloop-private.mlir
M mlir/test/Target/LLVMIR/openmp-teams-clauses-trunc-ext.mlir
M mlir/test/Target/LLVMIR/openmp-todo.mlir
Log Message:
-----------
[Flang][MLIR][OpenMP] Explicitly represent omp.target kernel types (#186166)
Currently, the kernel type (i.e. `generic`, `spmd`, `spmd-no-loop` and
`bare`) of an `omp.target` operation is not an explicit attribute of the
operation. Rather, this is inferred based on the contents of its region
and clauses.
The problems with this approach are that it can be a potentially
resource intensive check for large kernels, and misidentifications are
prone to happen based on the presence of arbitrary operations from other
dialects.
Since the AST already contains the information needed to identify the
kernel type in a more reliable manner, this patch moves that
responsiblity to the Flang frontend. Other MLIR passes that create
`omp.target` operations are updated as well.
One known limitation of this approach is that the MLIR op verifier for
`omp.target` can't completely check that the contents of its region are
compatible with the declared kernel type without being exposed to the
same pattern-matching limitations that this patch is removing. Also, the
`TargetOp::getInnermostCapturedOmpOp()` function is maintained but,
ideally, a better solution should be implemented to remove its expensive
and potentially flaky checks from MLIR.
Commit: 3e4c108d3f58038ffc62492556b9490276d4e428
https://github.com/llvm/llvm-project/commit/3e4c108d3f58038ffc62492556b9490276d4e428
Author: Sergio Afonso <safonsof at amd.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M mlir/include/mlir/Dialect/OpenMP/OpenMPOps.td
M mlir/include/mlir/Dialect/OpenMP/OpenMPOpsInterfaces.td
M mlir/lib/Dialect/OpenMP/IR/OpenMPDialect.cpp
M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
M mlir/test/Conversion/OpenMPToLLVM/convert-to-llvmir.mlir
A mlir/test/Dialect/OpenMP/invalid-interface.mlir
M mlir/test/Dialect/OpenMP/invalid.mlir
M mlir/test/Dialect/OpenMP/ops.mlir
M mlir/test/Dialect/OpenMP/stack-to-shared.mlir
M mlir/test/Target/LLVMIR/allocatable_gpu_reduction.mlir
M mlir/test/Target/LLVMIR/allocatable_gpu_reduction_teams.mlir
M mlir/test/Target/LLVMIR/omptarget-debug-loop-loc.mlir
M mlir/test/Target/LLVMIR/omptarget-memcpy-align-metadata.mlir
M mlir/test/Target/LLVMIR/omptarget-multi-block-reduction.mlir
M mlir/test/Target/LLVMIR/omptarget-multi-reduction.mlir
M mlir/test/Target/LLVMIR/omptarget-private-llvm.mlir
M mlir/test/Target/LLVMIR/omptarget-teams-distribute-reduction-array-descriptor.mlir
M mlir/test/Target/LLVMIR/openmp-data-target-device.mlir
M mlir/test/Target/LLVMIR/openmp-nested-task-target-parallel.mlir
M mlir/test/Target/LLVMIR/openmp-target-generic-spmd.mlir
M mlir/test/Target/LLVMIR/openmp-target-launch-device.mlir
M mlir/test/Target/LLVMIR/openmp-target-spmd.mlir
M mlir/test/Target/LLVMIR/openmp-taskloop-bounds-cast.mlir
M mlir/test/Target/LLVMIR/openmp-taskloop-cancel.mlir
M mlir/test/Target/LLVMIR/openmp-taskloop-cancellation-point.mlir
M mlir/test/Target/LLVMIR/openmp-taskloop-collapse.mlir
M mlir/test/Target/LLVMIR/openmp-taskloop-context-alloca.mlir
M mlir/test/Target/LLVMIR/openmp-taskloop-final.mlir
M mlir/test/Target/LLVMIR/openmp-taskloop-grainsize.mlir
M mlir/test/Target/LLVMIR/openmp-taskloop-if.mlir
M mlir/test/Target/LLVMIR/openmp-taskloop-local-bounds.mlir
M mlir/test/Target/LLVMIR/openmp-taskloop-mergeable.mlir
M mlir/test/Target/LLVMIR/openmp-taskloop-no-context-struct.mlir
M mlir/test/Target/LLVMIR/openmp-taskloop-nogroup.mlir
M mlir/test/Target/LLVMIR/openmp-taskloop-num_tasks.mlir
M mlir/test/Target/LLVMIR/openmp-taskloop-outer-bounds.mlir
M mlir/test/Target/LLVMIR/openmp-taskloop-priority.mlir
M mlir/test/Target/LLVMIR/openmp-taskloop-reduction.mlir
M mlir/test/Target/LLVMIR/openmp-taskloop-untied.mlir
M mlir/test/Target/LLVMIR/openmp-taskloop.mlir
M mlir/test/Target/LLVMIR/openmp-teams-clauses-trunc-ext.mlir
M mlir/test/Target/LLVMIR/openmp-todo.mlir
Log Message:
-----------
[MLIR][OpenMP] Explicit tagging of combined constructs (#198782)
Combined OpenMP constructs, such as `parallel do`, which represent nests
of constructs where each one contains a single other construct without
any other directives or statements in between, are currently not marked
in any way in the MLIR representation.
This works because they don't usually require any specific handling
other than what would be done for the included operations. However, the
handling of `target` regions needs to know whether it was part of a
combined construct in order to properly optimize for the SPMD case and
detect when certain clauses must be inconditionally evaluated in the
host.
So far, this has been achieved by having some MLIR pattern-matching
logic to infer whether a nest of operations could have potentially been
produced for a combined construct. This approach is error prone,
computationally expensive and it can't really work in the general case.
On the other hand, a compiler frontend can easily tell the difference
and tag MLIR operations accordingly.
This patch extends the `ComposableOpInterface` of the OpenMP dialect to
handle a new `omp.combined` attribute that must be set for all leafs
(except for the innermost one) on a combined construct. Verification
logic is added for this interface, which is added to all operations that
can be used as part of a combined construct, and the previous
`target`-related pattern-matching logic is removed.
This patch has to be followed up with Flang lowering changes to pass all
unit tests.
Commit: e8cca37882fdd502e5ee70ad884134aeb7a42bac
https://github.com/llvm/llvm-project/commit/e8cca37882fdd502e5ee70ad884134aeb7a42bac
Author: Sergio Afonso <safonsof at amd.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M flang/lib/Lower/OpenMP/OpenMP.cpp
M flang/lib/Optimizer/OpenMP/DoConcurrentConversion.cpp
M flang/lib/Optimizer/OpenMP/LowerWorkdistribute.cpp
M flang/lib/Optimizer/OpenMP/LowerWorkshare.cpp
M flang/test/Integration/OpenMP/workshare-array-array-assign.f90
M flang/test/Integration/OpenMP/workshare-axpy.f90
M flang/test/Integration/OpenMP/workshare-forall-sliced-array.f90
M flang/test/Integration/OpenMP/workshare-scalar-array-assign.f90
M flang/test/Integration/OpenMP/workshare-scalar-array-mul.f90
A flang/test/Lower/OpenMP/compound.f90
M flang/test/Lower/OpenMP/multiple-entry-points.f90
M flang/test/Lower/OpenMP/workshare.f90
M flang/test/Transforms/DoConcurrent/basic_device.f90
M flang/test/Transforms/DoConcurrent/basic_host.f90
M flang/test/Transforms/DoConcurrent/basic_host.mlir
M flang/test/Transforms/DoConcurrent/local_device.mlir
M flang/test/Transforms/DoConcurrent/locality_specifiers_simple.mlir
M flang/test/Transforms/DoConcurrent/non_const_bounds.f90
M flang/test/Transforms/DoConcurrent/reduce_add.mlir
M flang/test/Transforms/DoConcurrent/reduce_all_regions.mlir
M flang/test/Transforms/DoConcurrent/reduce_device.mlir
M flang/test/Transforms/DoConcurrent/reduce_device_min.f90
M flang/test/Transforms/DoConcurrent/reduce_local.mlir
M flang/test/Transforms/DoConcurrent/reduction_symbol_resultion.f90
M flang/test/Transforms/DoConcurrent/runtime_sized_array.f90
M flang/test/Transforms/DoConcurrent/skip_all_nested_loops.f90
M flang/test/Transforms/DoConcurrent/use_loop_bounds_in_body.f90
M flang/test/Transforms/OpenMP/lower-workdistribute-doloop.mlir
M flang/test/Transforms/OpenMP/lower-workdistribute-fission-host.mlir
M flang/test/Transforms/OpenMP/lower-workdistribute-fission-target.mlir
M flang/test/Transforms/OpenMP/lower-workdistribute-fission.mlir
M flang/test/Transforms/OpenMP/lower-workdistribute-runtime-assign-scalar.mlir
M flang/test/Transforms/omp-function-filtering-todo.mlir
Log Message:
-----------
[Flang][OpenMP] Add combined construct information (#198783)
This patch adds the `omp.combined` attribute to OpenMP dialect
operations following changes to the `ComposableOpInterface`.
This attribute is added to operations representing non-innermost leaf
constructs of a combined construct and to standalone block-associated
constructs that can be combined with their parent construct.
Changes are made to the OpenMP lowering logic, as well as the
do-concurrent, workshare and workdistribute transformation passes.
Commit: fdb2f1bbd916cdf41957d68958ff459954f3c630
https://github.com/llvm/llvm-project/commit/fdb2f1bbd916cdf41957d68958ff459954f3c630
Author: Walter <90877047+WalterKruger at users.noreply.github.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/gfni-xor-fold-avx512.ll
M llvm/test/CodeGen/X86/gfni-xor-fold.ll
Log Message:
-----------
[X86] Fold splat XOR on VGF2P8AFFINEQB source (#204508)
Given that XORs are associative, a XOR on `vgf2p8affineqb`'s source can
be reassociated to occur after by first permuting by the matrix. If the
XOR operand is a 8-bit splat, it can be applied for free by combining it
with the immediate. This patch:
- Folds XOR by splat on `vgf2p8affineqb`'s source into its immediate.
- Only occurs when the matrix is both constant and splat across each
64-bit lane.
- Can occur when the XOR is multi-use, as it can still reduce the
dependency chain.
- Includes test coverage for a variety of matrices and negative cases
for when the fold isn't possible.
Fixes #179606
Commit: 236a0d1232d94aa41a6d5cc8d9ee9255c200c334
https://github.com/llvm/llvm-project/commit/236a0d1232d94aa41a6d5cc8d9ee9255c200c334
Author: Kseniya Tikhomirova <kseniya.tikhomirova at intel.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M libsycl/include/sycl/__impl/queue.hpp
M libsycl/unittests/mock/helpers.cpp
M libsycl/unittests/mock/helpers.hpp
M libsycl/unittests/mock/mock.cpp
M libsycl/unittests/queue/CMakeLists.txt
A libsycl/unittests/queue/sycl_kernel_launch.cpp
Log Message:
-----------
[libsycl] add UT for kernel submission (#203931)
Signed-off-by: Tikhomirova, Kseniya <kseniya.tikhomirova at intel.com>
Commit: 4b85f3ca6444f1c5cc2370b5cfe1a05657ba183f
https://github.com/llvm/llvm-project/commit/4b85f3ca6444f1c5cc2370b5cfe1a05657ba183f
Author: Chirag Patel <chirag198838 at gmail.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M llvm/lib/Target/X86/X86InstrMisc.td
M llvm/test/CodeGen/X86/bmi.ll
Log Message:
-----------
[X86] Select BLSMSK for i8 operands (#205093)
Adds a tablegen pattern to select BLSMSK i8 for
```
%neg = sub i8 %x, 1
%and = xor i8 %neg, %x
```
I've used Claude to generate the comment line before the tablegen entry and the ll file decoding which I confirmed after llc
Fixes #204984
Commit: 47caa5d8c66b84e39d1c15abf96cbbe3e3641ca1
https://github.com/llvm/llvm-project/commit/47caa5d8c66b84e39d1c15abf96cbbe3e3641ca1
Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M mlir/lib/Conversion/MathToSPIRV/MathToSPIRV.cpp
M mlir/test/Conversion/MathToSPIRV/math-to-gl-spirv.mlir
Log Message:
-----------
[mlir][SPIR-V] Convert math.atan2 to GL atan2 (#201928)
Commit: 2c1d884c47b03e35283639f7122499ded8986b2b
https://github.com/llvm/llvm-project/commit/2c1d884c47b03e35283639f7122499ded8986b2b
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M llvm/include/llvm/IR/InstrTypes.h
M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
M llvm/test/Transforms/InstCombine/assume-loop-align.ll
M llvm/test/Transforms/InstCombine/assume.ll
M llvm/test/Transforms/PhaseOrdering/AArch64/std-find.ll
Log Message:
-----------
Reapply "[InstCombine] Merge consecutive assumes", round 2 (#205773)
This patch was reverted due to triggering another bug. That bug has been
fixed by https://github.com/llvm/llvm-project/pull/205275, so this
should be ready to land now.
Original commit message:
This should make assumes a bit more efficient, since it removes a few
instructions. This should also help with optimizations that are limited
in how many instructions they step through.
This reverts commit 053d75c1d580e0c394f4cfb0688bafd05c187b0f.
Commit: 3ff82c7e556969a20e77393e4ba801c6684e8365
https://github.com/llvm/llvm-project/commit/3ff82c7e556969a20e77393e4ba801c6684e8365
Author: Jessica Clarke <jrtc27 at jrtc27.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M llvm/include/llvm/Support/CHERICapabilityFormat.h
M llvm/lib/Support/CHERICapabilityFormat.cpp
Log Message:
-----------
[Support][CHERI] Refactor CHERICapabilityFormatBase to embrace CRTP (#205623)
Currently CHERICapabilityFormatBase does not provide a definition for
getAlignmentMask, but does provide a declaration, which leads to
warnings when building with MSVC. We want to have an abstract base here
without any dynamic dispatch, which is what CRTP is for, so use it for
getAlignmentMask such that the base can provide a definition that uses
each derived type's implementation, just as the two base wrappers were
already doing when calling getAlignmentMask. Whilst doing this we might
as well move the wrappers to the header so they can be inlined (and now
that getAlignmentMask is defined we can use it in the helpers rather
than needing each of them to explicitly use the derived type).
Fixes: 7dc09d0d3cf1 ("[CHERI] Add a Support utility for determining
alignment requirements of CHERI capabilities. (#197402)")
Commit: d9e53b24867e30a9ed513c1253f34f0e8222a8a7
https://github.com/llvm/llvm-project/commit/d9e53b24867e30a9ed513c1253f34f0e8222a8a7
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
R clang/test/CodeGen/amdgpu-feature-builtins-invalid-use.cpp
A clang/test/SemaCXX/amdgpu-feature-builtins-invalid-use.cpp
Log Message:
-----------
clang: Move __builtin_amdgcn_processor_is diagnostic test to sema (#205734)
This wasn't checking the codegen result, so move it to the right place
and use -verify instead of FileChecking stderr.
Co-authored-by: Claude (Opus 4.8) <noreply at anthropic.com>
Commit: 5314be5a740c9985b0b3ab958269b5f1824cce02
https://github.com/llvm/llvm-project/commit/5314be5a740c9985b0b3ab958269b5f1824cce02
Author: Ferdinand Lemaire <flscminecraft at gmail.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M mlir/include/mlir/Conversion/Passes.h
M mlir/include/mlir/Conversion/Passes.td
A mlir/include/mlir/Conversion/RaiseWasm/RaiseWasmMLIR.h
M mlir/include/mlir/Dialect/WasmSSA/IR/WasmSSAOps.td
M mlir/lib/Conversion/CMakeLists.txt
A mlir/lib/Conversion/RaiseWasm/CMakeLists.txt
A mlir/lib/Conversion/RaiseWasm/RaiseWasmMLIR.cpp
M mlir/lib/Dialect/WasmSSA/IR/WasmSSAOps.cpp
A mlir/test/Conversion/RaiseWasm/wasm-abs-to-math-abs.mlir
A mlir/test/Conversion/RaiseWasm/wasm-add-to-arith-add.mlir
A mlir/test/Conversion/RaiseWasm/wasm-and-to-arith-and.mlir
A mlir/test/Conversion/RaiseWasm/wasm-ceil-to-math-ceil.mlir
A mlir/test/Conversion/RaiseWasm/wasm-clz-to-math-clz.mlir
A mlir/test/Conversion/RaiseWasm/wasm-const-to-arith-const.mlir
A mlir/test/Conversion/RaiseWasm/wasm-convert-to-arith-tofp.mlir
A mlir/test/Conversion/RaiseWasm/wasm-copysign-to-math-copysign.mlir
A mlir/test/Conversion/RaiseWasm/wasm-ctz-to-math-ctz.mlir
A mlir/test/Conversion/RaiseWasm/wasm-demote-to-arith-trunc.mlir
A mlir/test/Conversion/RaiseWasm/wasm-div-to-arith-div.mlir
A mlir/test/Conversion/RaiseWasm/wasm-floor-to-math-floor.mlir
A mlir/test/Conversion/RaiseWasm/wasm-func-to-func.mlir
A mlir/test/Conversion/RaiseWasm/wasm-global-to-memref-global.mlir
A mlir/test/Conversion/RaiseWasm/wasm-local-to-memref.mlir
A mlir/test/Conversion/RaiseWasm/wasm-max-to-arith-maximumf.mlir
A mlir/test/Conversion/RaiseWasm/wasm-min-to-arith-minimumf.mlir
A mlir/test/Conversion/RaiseWasm/wasm-mul-to-arith-mul.mlir
A mlir/test/Conversion/RaiseWasm/wasm-neg-to-arith-neg.mlir
A mlir/test/Conversion/RaiseWasm/wasm-or-to-arith-or.mlir
A mlir/test/Conversion/RaiseWasm/wasm-popcnt-to-math-ctpop.mlir
A mlir/test/Conversion/RaiseWasm/wasm-promote-to-arith-ext.mlir
A mlir/test/Conversion/RaiseWasm/wasm-reinterpret-to-arith-bitcast.mlir
A mlir/test/Conversion/RaiseWasm/wasm-rem-to-arith-rem.mlir
A mlir/test/Conversion/RaiseWasm/wasm-shl-to-arith-shl.mlir
A mlir/test/Conversion/RaiseWasm/wasm-shr_s-to-arith-shrs.mlir
A mlir/test/Conversion/RaiseWasm/wasm-shr_u-to-arith-shru.mlir
A mlir/test/Conversion/RaiseWasm/wasm-sqrt-to-math-sqrt.mlir
A mlir/test/Conversion/RaiseWasm/wasm-sub-to-arith-sub.mlir
A mlir/test/Conversion/RaiseWasm/wasm-trunc-to-math-trunc.mlir
A mlir/test/Conversion/RaiseWasm/wasm-wrap-to-arith-trunc.mlir
A mlir/test/Conversion/RaiseWasm/wasm-xor-to-arith-xor.mlir
Log Message:
-----------
[MLIR][WASM] Re-Introduce the RaiseWasmMLIRPass to convert WasmSSA MLIR to core dialects (#205483)
See the previous PR here:
https://github.com/llvm/llvm-project/pull/164562
It was reverted by @lforg37 because of some build bot issue: see
https://github.com/llvm/llvm-project/pull/164562#issuecomment-4756828598.
However, after checking on my end, I could not reproduce the buildbot
issue. Seeing that the problem triggered in `flang` which is completely
unrelated to this work, I assume that it was a builder or a flaky test
problem so I'm re-opening this PR as it had been initially merged.
---------
Signed-off-by: Ferdinand Lemaire <flemairen6 at gmail.com>
Co-authored-by: Ferdinand Lemaire <ferdinand.lemaire at woven-planet.global>
Co-authored-by: Ferdinand Lemaire <flemairen6 at gmail.com>
Commit: 94ae3dd241ad9f1d8cf11720fadd68b50236d4f9
https://github.com/llvm/llvm-project/commit/94ae3dd241ad9f1d8cf11720fadd68b50236d4f9
Author: tcottin <timcottin at gmx.de>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M clang-tools-extra/clangd/CodeCompletionStrings.cpp
M clang-tools-extra/clangd/SymbolDocumentation.cpp
M clang-tools-extra/clangd/SymbolDocumentation.h
M clang-tools-extra/clangd/support/Markup.cpp
M clang-tools-extra/clangd/unittests/CodeCompletionStringsTests.cpp
M clang-tools-extra/clangd/unittests/HoverTests.cpp
M clang-tools-extra/clangd/unittests/SymbolDocumentationTests.cpp
M clang/include/clang/AST/Comment.h
M clang/include/clang/AST/CommentLexer.h
M clang/include/clang/AST/CommentSema.h
M clang/lib/AST/CommentLexer.cpp
M clang/lib/AST/CommentParser.cpp
M clang/lib/AST/CommentSema.cpp
M clang/unittests/AST/CommentLexer.cpp
Log Message:
-----------
[clangd] Fix unknown doxygen command parsing in parameter documentation (#202121)
This patch mainly fixes a bug with parsing of unknown doxygen commands
in function parameter documentation.
To extract the parameter documentation from the function documentation,
the whole function documentation is parsed first.
Then the documentation paragraph for the requested parameter is
"converted" to a string and stored as the documentation for the
parameter. The string is converted by visiting and dumping all chunks of
the parsed paragraph.
When unknown doxygen commands are parsed (during the function
documentation parsing step), they are registered in a
`clang::comments::CommandTraits` object.
Visiting the unknown command requires to query the registered commands
through the `clang::comments::CommandTraits` object to get the command
name.
The bug was that the function documentation parsing and the visiting
step used 2 different `clang::comments::CommandTraits` objects. Hence
the visiting step fails (array access out of bounds) when trying to
retrieve the command names for unknown commands.
The patch moves the function documentation parsing step to the
construction of the `SymbolDocCommentVisitor` which is also responsible
for converting the parameter documentation paragraph to a string.
This way the same `clang::comments::CommandTraits` is used and the query
for unknown command names is correct.
Additional fixes:
- correct some whitespace behaviour for doxygen inline commands
- add a new token kind for the clang comment parser to distinguish
unknown "backslash" and "at" commands to correctly show them in the
clangd hover info
Related issue: clangd/clangd#2671
Commit: c07bc2962c5f76ebcbd040c4e97fe5d129530087
https://github.com/llvm/llvm-project/commit/c07bc2962c5f76ebcbd040c4e97fe5d129530087
Author: J. Ryan Stinnett <ryan at convolv.es>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M llvm/docs/LangRef.rst
M llvm/docs/ReleaseNotes.md
M llvm/include/llvm/Bitcode/LLVMBitCodes.h
M llvm/include/llvm/IR/Attributes.td
M llvm/include/llvm/IR/GlobalValue.h
M llvm/lib/Analysis/InlineCost.cpp
M llvm/lib/Analysis/ValueLatticeUtils.cpp
M llvm/lib/Bitcode/Reader/BitcodeReader.cpp
M llvm/lib/Bitcode/Writer/BitcodeWriter.cpp
M llvm/lib/IR/Globals.cpp
M llvm/lib/Transforms/IPO/ArgumentPromotion.cpp
M llvm/lib/Transforms/IPO/DeadArgumentElimination.cpp
M llvm/lib/Transforms/IPO/GlobalOpt.cpp
M llvm/lib/Transforms/IPO/MergeFunctions.cpp
M llvm/lib/Transforms/Utils/CodeExtractor.cpp
M llvm/test/Bitcode/attributes.ll
A llvm/test/Transforms/ArgumentPromotion/noipa.ll
A llvm/test/Transforms/DeadArgElim/noipa.ll
A llvm/test/Transforms/FunctionSpecialization/noipa.ll
A llvm/test/Transforms/GlobalOpt/global-constructor-noipa.ll
A llvm/test/Transforms/GlobalOpt/noipa.ll
A llvm/test/Transforms/GlobalOpt/resolve-fmv-ifunc-noipa.ll
A llvm/test/Transforms/GlobalOpt/resolve-static-ifunc-noipa.ll
A llvm/test/Transforms/Inline/noipa.ll
A llvm/test/Transforms/MergeFunc/noipa.ll
A llvm/test/Transforms/SCCP/noipa.ll
A llvm/test/Transforms/WholeProgramDevirt/vcp-noipa.ll
M llvm/unittests/IR/FunctionTest.cpp
M llvm/utils/emacs/llvm-mode.el
M llvm/utils/kate/llvm.xml
M llvm/utils/vim/syntax/llvm.vim
M llvm/utils/vscode/llvm/syntaxes/ll.tmLanguage.yaml
Log Message:
-----------
[Attr] Add `noipa` function attribute (#203304)
This adds a `noipa` function attribute to LLVM IR. This new attribute
disables any interprocedural analysis that inspects the definition of
the function. Setting this attribute is equivalent to moving the
function definition to a separate, optimizer-opaque, module.
The `noipa` attribute does *not* control inlining or outlining. Add the
`noinline` and `nooutline` attributes as well in cases where inlining
and outlining should additionally be disabled.
Revival of https://reviews.llvm.org/D101011
Discussed in https://discourse.llvm.org/t/noipa-continues/74411
LLVM portion of https://github.com/llvm/llvm-project/issues/40819
Commit: 1f84b4aab5c714ea8be7ee8f69d00c69b7cecaba
https://github.com/llvm/llvm-project/commit/1f84b4aab5c714ea8be7ee8f69d00c69b7cecaba
Author: Matthew Nagy <matthew.nagy at sony.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M compiler-rt/lib/tysan/tysan.cpp
M compiler-rt/lib/tysan/tysan_interceptors.cpp
M compiler-rt/test/tysan/global.c
A compiler-rt/test/tysan/memcpy_doesnt_change_shadow.c
Log Message:
-----------
[TySan] Remove incorrect memcpy shadow memory tracking (#199958)
Fixes the false positive in
https://github.com/llvm/llvm-project/issues/122934
memcpy is allowed to bypass strict aliasing rules (see
https://en.cppreference.com/c/string/byte/memcpy) so we shouldn't alter
shadow memory when it is used
Commit: 07097a56cce0602336c2437eccb80696936a30a1
https://github.com/llvm/llvm-project/commit/07097a56cce0602336c2437eccb80696936a30a1
Author: Luke Lau <luke at igalia.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlanPatternMatch.h
M llvm/lib/Transforms/Vectorize/VPlanUtils.cpp
Log Message:
-----------
[VPlan] Allow VPValue in match_fn without needing explicit template arguments. NFC (#205748)
Currently if you want to use match_fn over a range of VPValues, you have
to explicitly write `match_fn<VPValue>` otherwise it will resolve to the
VPUser overload.
This changes the functor to be a lambda with an auto argument so
match_fn(...) works for both VPValues and VPUsers without explicit
templates. The lambda is inlined so there's no indirect function call.
vputils::getGEPFlagsForPtr is updated to use the new form.
We can't use `bind_back` since it requires we bind to exactly one
function that's known at call time.
Commit: 3dc2e179220bf4dabd96272460fcca7a1b81539d
https://github.com/llvm/llvm-project/commit/3dc2e179220bf4dabd96272460fcca7a1b81539d
Author: Igor Kirillov <igor.kirillov at arm.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
A llvm/test/CodeGen/AArch64/complex-deinterleaving-reassoc-duplicates.ll
Log Message:
-----------
[ComplexDeinterleaving] Add test for duplicate reassoc addends (NFC) (#205794)
Commit: 75a256727cc5977775bc85f30fea9767f8e53b65
https://github.com/llvm/llvm-project/commit/75a256727cc5977775bc85f30fea9767f8e53b65
Author: Utkarsh Saxena <usx at google.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M clang/include/clang/Analysis/Analyses/LifetimeSafety/Checker.h
M clang/include/clang/Analysis/Analyses/LifetimeSafety/LifetimeSafety.h
M clang/lib/Analysis/LifetimeSafety/Checker.cpp
M clang/lib/Analysis/LifetimeSafety/LifetimeSafety.cpp
M clang/lib/Sema/AnalysisBasedWarnings.cpp
M clang/lib/Sema/SemaLifetimeSafety.h
M clang/test/Sema/LifetimeSafety/safety.cpp
Log Message:
-----------
[LifetimeSafety] Gate annotation suggestions behind `SuggestAnnotations` opt (#205764)
Annotations suggestions expectedly fire very often and they have
recently shown significant regressions after the
https://github.com/llvm/llvm-project/pull/204045. This now gates the
suggestions behind a dedicated `SuggestAnnotations` option, preventing
unnecessary work when the relevant diagnostics are disabled.
Commit: 0c540b9dcd041a2574f744144bb894b5862344b1
https://github.com/llvm/llvm-project/commit/0c540b9dcd041a2574f744144bb894b5862344b1
Author: Donát Nagy <donat.nagy at ericsson.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M clang/lib/StaticAnalyzer/Core/ExprEngineCallAndReturn.cpp
Log Message:
-----------
[analyzer] Fix unjustified early return in processCallExit (#205656)
In `ExprEngine::processCallExit` step 3 may theoretically split the
state because it calls `removeDead`, which activates `LiveSymbols` and
`DeadSymbols` callbacks of various checkers. (However, in practice it is
likely that these checker callbacks never actually split the state -- at
least, no such state splits happen in the LIT tests.)
The nodes produced by `removeDead` are placed in the set `CleanedNodes`;
in theory the different execution paths should be handled in parallel,
independently of each other. However, the loop `for (ExplodedNode *N :
CleanedNodes)` contained an early return statement, which meant that if
the creation of `CEENode` failed for a node `N`, then the subsequent
iterations were skipped altogether.
This commit replaces the `return` with a `continue` to ensure that the
nodes in `CleanedNodes` are handled independently (if there are several
such nodes).
This logic error is present in the codebase since 2012 (!) when commit
7e53bd6fb01b062ece426252fb94c76bcce58941 introduced the `removeDead`
step into `processCallExit`.
Given that nobody noticed this error within the last 14 years, I very
strongly suspect that it doesn't have any observable functional effects,
i.e. this change is essentially NFC.
Commit: 87f7884cb69912ca812d3a0543c94e0362d395a9
https://github.com/llvm/llvm-project/commit/87f7884cb69912ca812d3a0543c94e0362d395a9
Author: t-demchuk <109612249+t-demchuk at users.noreply.github.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M llvm/lib/Transforms/Scalar/NaryReassociate.cpp
A llvm/test/Transforms/NaryReassociate/nary-gep-zero-sized-element.ll
Log Message:
-----------
[NaryReassociate] Fix divide by zero crash in NaryReassociatePass (#202377)
Updates NaryReassociatePass with a safety check to guard against GEPs
into arrays with zero sized element types (eg. [0 x ptr]) to prevent
division by zero.
Commit: e0981358efdf3c630d1921fd81ba55af5e406364
https://github.com/llvm/llvm-project/commit/e0981358efdf3c630d1921fd81ba55af5e406364
Author: Zeyi Xu <mitchell.xu2 at gmail.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M clang/lib/Analysis/FlowSensitive/WatchedLiteralsSolver.cpp
Log Message:
-----------
[clang][dataflow] Move expensive solver asserts under EXPENSIVE_CHECKS (#205715)
The watched-literal solver has a few invariant checks that run on every
solver iteration in assertion builds. Some of these checks rebuild and
iterate over the watched-literal state. This overhead is usually hidden,
but it becomes dominant for large flow-sensitive analyses.
While testing clang-tidy's `unchecked-optional-access` check on real
world projects (in this case, LLVM itself), we found there are a few
extreme slow analyses caused by this overhead.
| Time | File |
|---------|-----------------------------------------------------|
| 8235.7s | llvm-project/clang/utils/TableGen/RISCVVEmitter.cpp |
| 8197.2s | llvm-project/clang/lib/Driver/Multilib.cpp |
(Ran on a machine with Icelake 32cores + 128gb memory)
After moving these asserts to `EXPENSIVE_CHECKS`, the same files
complete in about 14.2 seconds and 12.2 seconds locally. That is roughly
a 580x improvement for `RISCVVEmitter.cpp` and a 673x improvement for
`Multilib.cpp`.
This can also affect clang-tidy pre-merge CI, because the pre-merge
configuration uses an assertions build and enables
`bugprone-unchecked-optional-access`.
Given this scale of improvement, I think these invariant checks are
better suited for `EXPENSIVE_CHECKS`. They remain available in dedicated
expensive-check builds, while avoiding a very large cost in regular
release+assertions builds.
Closes https://github.com/llvm/llvm-project/issues/205713
Commit: 5fdc9482989b59a4e1b2bbe75f80e12e082f9f90
https://github.com/llvm/llvm-project/commit/5fdc9482989b59a4e1b2bbe75f80e12e082f9f90
Author: Sergio Afonso <safonsof at amd.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M offload/test/offloading/fortran/target-no-loop.f90
Log Message:
-----------
[Offload][OpenMP][Flang] Update no-loop test (#205803)
Updates to the kernel type detection logic now allow `target parallel
do` to be promoted to SPMD-No-Loop.
A currently broken offload test that was affected by this change is
updated here.
Commit: 87c11c98a2412f4aab2f7bf18d9346b016945c24
https://github.com/llvm/llvm-project/commit/87c11c98a2412f4aab2f7bf18d9346b016945c24
Author: Jeff Bailey <jbailey at raspberryginger.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M libc/config/linux/aarch64/headers.txt
M libc/config/linux/arm/headers.txt
M libc/config/linux/riscv/headers.txt
M libc/config/linux/x86_64/headers.txt
Log Message:
-----------
[libc] Add libgen.h to target public headers (#205804)
Ensure libgen.h is included in TARGET_PUBLIC_HEADERS for Linux targets
so that it gets generated and installed.
Assisted-by: Automated tooling, human reviewed.
Commit: c834d1acf130b8d98d818b60ab129f780855461f
https://github.com/llvm/llvm-project/commit/c834d1acf130b8d98d818b60ab129f780855461f
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M clang/lib/AST/ByteCode/Compiler.cpp
M clang/lib/AST/ByteCode/Context.cpp
M clang/lib/AST/ByteCode/EvalEmitter.cpp
M clang/lib/AST/ByteCode/Interp.cpp
M clang/lib/AST/ByteCode/InterpFrame.cpp
M clang/lib/AST/ByteCode/InterpState.h
M clang/lib/AST/ExprConstant.cpp
A clang/test/AST/ByteCode/evaluate-dtor.cpp
M clang/test/CXX/expr/expr.const/p6-2a.cpp
M clang/test/CodeGenCXX/const-init-cxx2a.cpp
M clang/test/CodeGenCXX/non-const-init-cxx2a.cpp
Log Message:
-----------
[clang][bytecode] Fix `evaluateDestruction()` (#205778)
Me previous testing regarding this seems to have been insufficient. Or
this regressed some time along the way.
Now that `CLANG_USE_EXPERIMENTAL_CONST_INTERP` is used for testing I
noticed a few regressions.
We need to special-case the evaluating decl in a few places, since it's
a global variable that we're allowed to modify.
Commit: 630125ac5be7dab26fcfba8918ee091588616f21
https://github.com/llvm/llvm-project/commit/630125ac5be7dab26fcfba8918ee091588616f21
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M llvm/include/llvm/IR/InstrTypes.h
M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
M llvm/test/Transforms/InstCombine/assume-loop-align.ll
M llvm/test/Transforms/InstCombine/assume.ll
M llvm/test/Transforms/PhaseOrdering/AArch64/std-find.ll
Log Message:
-----------
Revert "Reapply "[InstCombine] Merge consecutive assumes", round 2" (#205805)
It looks like there is still a bug with removing assumes from the
assumption cache.
Reverts llvm/llvm-project#205773
Commit: 4d4c865933e1048842f836490e02296b2cb48711
https://github.com/llvm/llvm-project/commit/4d4c865933e1048842f836490e02296b2cb48711
Author: Federico Bruzzone <federico.bruzzone.i at gmail.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M mlir/include/mlir/Dialect/Vector/IR/VectorOps.td
M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
M mlir/test/Dialect/Vector/invalid.mlir
Log Message:
-----------
[mlir][vector] add consistent stride verification to `masked load/store` and `gather/scatter` ops (#204842)
Extend negative stride checks to MaskedLoadOp, MaskedStoreOp, GatherOp,
and ScatterOp to match LoadOp and StoreOp behavior.
Depends on: #204611.
AI Disclaimer: I used AI for the tests.
---------
Signed-off-by: Federico Bruzzone <federico.bruzzone.i at gmail.com>
Commit: 647c29886973c7111a32702e3c7a5ccc33a9feeb
https://github.com/llvm/llvm-project/commit/647c29886973c7111a32702e3c7a5ccc33a9feeb
Author: John Brawn <john.brawn at arm.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M llvm/lib/Target/AArch64/AArch64SchedA510.td
M llvm/test/CodeGen/AArch64/zext-to-tbl.ll
M llvm/test/tools/llvm-mca/AArch64/Cortex/A510-neon-instructions.s
M llvm/test/tools/llvm-mca/AArch64/Cortex/A510-writeback.s
Log Message:
-----------
[AArch64] Correct A510 scheduling information for LDn instructions (#205518)
The latency and throughput for these instructions don't match what's in
the A510 Software Optimization Guide, so adjust them so that they do
match. Also rearrange the definitions to match how they're structured in
the optimization guide and rename things in a similar manner to how the
C1 CPUs do things, as it's much clearer.
Commit: ec574cf0444e4c3cc3f2c97a019d49445bb37ddf
https://github.com/llvm/llvm-project/commit/ec574cf0444e4c3cc3f2c97a019d49445bb37ddf
Author: Ingo Müller <ingomueller at google.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
Log Message:
-----------
[Bazel] Fixes 5314be5 (#205818)
This fixes 5314be5a740c9985b0b3ab958269b5f1824cce02.
Signed-off-by: Ingo Müller <ingomueller at google.com>
Co-authored-by: Google Bazel Bot <google-bazel-bot at google.com>
Commit: bef95e54674592946530fdda73e4fea7809263f3
https://github.com/llvm/llvm-project/commit/bef95e54674592946530fdda73e4fea7809263f3
Author: Jeff Bailey <jbailey at raspberryginger.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M libc/config/linux/aarch64/entrypoints.txt
M libc/config/linux/riscv/entrypoints.txt
M libc/config/linux/x86_64/entrypoints.txt
M libc/include/stdlib.yaml
M libc/src/CMakeLists.txt
M libc/src/stdlib/CMakeLists.txt
M libc/src/stdlib/environ_internal.cpp
M libc/src/stdlib/environ_internal.h
M libc/src/stdlib/linux/CMakeLists.txt
A libc/src/stdlib/linux/unsetenv.cpp
A libc/src/stdlib/unsetenv.h
M libc/test/integration/src/stdlib/CMakeLists.txt
A libc/test/integration/src/stdlib/unsetenv_test.cpp
Log Message:
-----------
[libc][stdlib] Add unsetenv (#202422)
Added the POSIX unsetenv() function and its internal support.
Implemented EnvironmentManager::unset() to remove a variable by name,
free the string if allocated, and compact the array.
Updated EnvironmentManager to synchronize the public global environ
pointer when transitioning to managed storage.
Registered for x86_64, aarch64, and riscv. Integration tests cover basic
operations and edge cases.
Assisted-by: Automated tooling, human reviewed.
Commit: 755bc5c9a54de43166930585fde1c23efe8f18e1
https://github.com/llvm/llvm-project/commit/755bc5c9a54de43166930585fde1c23efe8f18e1
Author: A. Jiang <de34 at live.cn>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M libcxx/include/__memory/shared_ptr.h
Log Message:
-----------
[libc++] Add missing attribute usages to `<__memory/shared_ptr.h>` (#205776)
Since 44546e0e32077241ca9a9a90ac57f2f086f9488a, lack of
`_LIBCPP_NODEBUG` and `_LIBCPP_HIDE_FROM_ABI` are caught by clang-tidy.
This patch adds them wherever expected.
Commit: 7b54691ba96944d7a2bb2d3eb8c7654c9350be81
https://github.com/llvm/llvm-project/commit/7b54691ba96944d7a2bb2d3eb8c7654c9350be81
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M clang/lib/Headers/__clang_hip_libdevice_declares.h
Log Message:
-----------
clang/HIP: Remove some unused ocml function declarations (#204735)
Commit: f36745eb0a07177743ccb039a77399846a873a40
https://github.com/llvm/llvm-project/commit/f36745eb0a07177743ccb039a77399846a873a40
Author: Zorojuro <sawantsukumar at gmail.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M libc/config/baremetal/aarch64/entrypoints.txt
M libc/config/baremetal/arm/entrypoints.txt
M libc/config/baremetal/riscv/entrypoints.txt
M libc/config/darwin/aarch64/entrypoints.txt
M libc/config/darwin/x86_64/entrypoints.txt
M libc/config/freebsd/x86_64/entrypoints.txt
M libc/config/gpu/amdgpu/entrypoints.txt
M libc/config/gpu/nvptx/entrypoints.txt
M libc/config/linux/aarch64/entrypoints.txt
M libc/config/linux/arm/entrypoints.txt
M libc/config/linux/riscv/entrypoints.txt
M libc/config/linux/x86_64/entrypoints.txt
M libc/config/windows/entrypoints.txt
M libc/docs/headers/math/index.rst
M libc/shared/math.h
A libc/shared/math/tanbf16.h
M libc/src/__support/math/CMakeLists.txt
A libc/src/__support/math/tanbf16.h
M libc/src/math/CMakeLists.txt
M libc/src/math/generic/CMakeLists.txt
A libc/src/math/generic/tanbf16.cpp
A libc/src/math/tanbf16.h
M libc/test/shared/CMakeLists.txt
M libc/test/shared/shared_math_test.cpp
M libc/test/src/math/CMakeLists.txt
M libc/test/src/math/smoke/CMakeLists.txt
A libc/test/src/math/smoke/tanbf16_test.cpp
A libc/test/src/math/tanbf16_test.cpp
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
Log Message:
-----------
[libc][math][c23] Add tanbf16 math function (#185100)
Adds tanbf16 higher math function for bfloat16 type
Commit: acff1e5417dde747ba0f18ccac1366c87de60adf
https://github.com/llvm/llvm-project/commit/acff1e5417dde747ba0f18ccac1366c87de60adf
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M lldb/examples/python/templates/scripted_process.py
Log Message:
-----------
[lldb] Don't fail scripted frame construction on WebAssembly (#205692)
Commit: b45bb83888a5cb5aaa3b7d41d446bbe797089881
https://github.com/llvm/llvm-project/commit/b45bb83888a5cb5aaa3b7d41d446bbe797089881
Author: Luke Lau <luke at igalia.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M llvm/test/Transforms/LoopVectorize/runtime-checks-hoist.ll
Log Message:
-----------
[LV] Regen runtime-checks-hoist.ll with newer UTC. NFC (#205831)
Fixes some noise in an upcoming test diff with labels being renamed.
Commit: 28475c218ebcbf81d581d1953e7a1cb4e91fba60
https://github.com/llvm/llvm-project/commit/28475c218ebcbf81d581d1953e7a1cb4e91fba60
Author: SiHuaN <liyongtai at iscas.ac.cn>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/lib/Target/RISCV/RISCVInstrInfoP.td
M llvm/test/CodeGen/RISCV/rv32p.ll
Log Message:
-----------
[RISCV][P-ext] Select signed widening add/sub accumulate to wadda/wsuba (#205475)
WADDA is rd += sext(rs1) + sext(rs2) and WSUBA is rd += sext(rs1) - sext(rs2),
the signed counterparts of WADDAU/WSUBAU added in #181396.
Add the WADDA/WSUBA SelectionDAG nodes, fold ADDD/SUBD whose addend is a
sign-extended i32 (high half == sra(lo, 31)) into them, collapse chained
accumulates into the free source slot, and select them to the wadda/wsuba
instructions.
Commit: 84c42fe09e0521b565b938411f30397df663e2bc
https://github.com/llvm/llvm-project/commit/84c42fe09e0521b565b938411f30397df663e2bc
Author: elizabethandrews <elizabeth.andrews at intel.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Basic/AttrDocs.td
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/lib/Sema/SemaType.cpp
M clang/test/CodeGenOpenCL/address-spaces-conversions.cl
M clang/test/CodeGenOpenCL/address-spaces.cl
M clang/test/CodeGenSYCL/address-space-conversions.cpp
M clang/test/CodeGenSYCL/amd-address-space-conversions.cpp
M clang/test/CodeGenSYCL/cuda-address-space-conversions.cpp
M clang/test/SemaOpenCL/usm-address-spaces-conversions.cl
M clang/test/SemaSYCL/address-space-conversions.cpp
Log Message:
-----------
[clang][opencl][sycl] Deprecate opencl_global_device and opencl_global_host (#203569)
These attributes were originally introduced as part of the SYCL
upstreaming effort to enable improved performance for USM pointers on
FPGA targets. However, subsequent evaluation indicates that they are not
meaningfully used in practice. Additionally given the current shift in
focus away from FPGAs in DPC++, these attributes no longer serve an
active purpose. Their removal would simplify the codebase and reduce
ongoing maintenance burden.
RFC:
https://discourse.llvm.org/t/rfc-remove-opencl-global-device-and-opencl-global-host-address-space-attributes/90677
Commit: 0bb2b00bee4da3b3706910f14cc1641fac95fe73
https://github.com/llvm/llvm-project/commit/0bb2b00bee4da3b3706910f14cc1641fac95fe73
Author: Kseniya Tikhomirova <kseniya.tikhomirova at intel.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M libsycl/docs/index.rst
M libsycl/include/sycl/__impl/index_space_classes.hpp
A libsycl/test/basic/index_space_classes.cpp
A libsycl/test/basic/index_space_classes_negative.cpp
Log Message:
-----------
[libsycl] add operators to sycl::range and sycl::id (#203572)
This PR was assisted by GH Copilot (tests extension).
Signed-off-by: Tikhomirova, Kseniya <kseniya.tikhomirova at intel.com>
Commit: 213c7b7634d8cc585368e5acc0e26002b3715495
https://github.com/llvm/llvm-project/commit/213c7b7634d8cc585368e5acc0e26002b3715495
Author: Jan Leyonberg <jan_sjodin at yahoo.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenFunction.h
M clang/lib/CIR/CodeGen/CIRGenOpenMPClause.cpp
A clang/lib/CIR/CodeGen/CIRGenOpenMPClause.h
M clang/lib/CIR/CodeGen/CIRGenStmt.cpp
M clang/lib/CIR/CodeGen/CIRGenStmtOpenMP.cpp
M clang/test/CIR/CodeGenOpenMP/not-yet-implemented.c
A clang/test/CIR/CodeGenOpenMP/target-map-llvm-device.c
A clang/test/CIR/CodeGenOpenMP/target-map-llvm-host.c
A clang/test/CIR/CodeGenOpenMP/target-map.c
M mlir/include/mlir/Dialect/OpenMP/OpenMPDialect.h
M mlir/lib/Dialect/OpenMP/IR/OpenMPDialect.cpp
Log Message:
-----------
[CIR][OpenMP] Initial implementation of target region support (#195452)
This patch adds support for target regions with some basic support for map
clauses. It also changes the clause handling to make use of the OMP dialect
ClauseOps to simplify op constrution.
Assisted-by: Cursor / claude-4.6-opus-high
Commit: c1869ffacf2b756913b45468aa58e7c8828112c4
https://github.com/llvm/llvm-project/commit/c1869ffacf2b756913b45468aa58e7c8828112c4
Author: Michael Kruse <llvm-project at meinersbur.de>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M flang-rt/lib/runtime/CMakeLists.txt
M flang-rt/lib/runtime/__fortran_type_info.f90
M flang-rt/lib/runtime/cooperative_groups.f90
M flang-rt/lib/runtime/cudadevice.f90
M openmp/module/CMakeLists.txt
M openmp/module/omp_lib.F90.var
M runtimes/cmake/config-Fortran.cmake
Log Message:
-----------
[flang-rt][CMake] Avoid 'use, intrinsic ::' (#205634)
Two build failures reported after #204260
* Unix Makefiles generator stops working: The cause is that the rules
for building each OBJECT library lands in its own Makefile, e.g.
`flang_rt.mod.fortran.builtins.dir/build.make` and
`libomp-mod.dir/build.make`. Trying to inject dependencies directly for
build rules in the other file does not work.
* `__ppc_types.f90` not tracked: Forgotten in #204260 due to being only
conditionally enabled for PowerPC targets.
The solution for both is to just remove the workaround for CMake not
recognizing modules uses declared using `intrinsic` which caused these
problems. This PR promotes the `use` constructs in the module sources to
normal dependencies that are not ignored by CMake.
The `intrinsic` modifier changes the search path to only look for such a
module in `-fintrinsic-modules-path`. The difference is only
theoretical:
1. When compiling the intrinsic modules, there are no other search paths
than for the intrinsics anyway
2. Users should strongly avoid naming their modules the same as an
intrinsic module
3. Most of our intrinsic sources don't even use the `intrinsic` modifier
in the first place (e.g.
https://github.com/llvm/llvm-project/blob/1c9412432ff9f897d5fb096d31b945e50fbbb61d/flang-rt/lib/runtime/__cuda_builtins.f90#L13).
That is, if there was a problem with lookup ambiguity, these would have
already been a problem for those.
4. The checksum of used modules is only added into the .mod file (the
only reason why modules would need to be transitively rebuilt) when a
`use` statement appears. Many intrinsic modules don't explicitly use the
modules that are added implicitly by the compiler, such as
`__fortran_builtins`, and hence do not even need to be rebuilt.
I started this PR with a tested-working fix
([71c5e7f0ffcf2ebd58812d2e2812b22663be1631](https://github.com/llvm/llvm-project/pull/205634/changes/BASE..71c5e7f0ffcf2ebd58812d2e2812b22663be1631))
to the workaround code. But given the points above, there seems to be no
benefit of keeping the workaround code handling CMake version < 4.5
around just for some intrinsic modules to keep the `intrinsic` modifier
with no practical effect. A non-workaround path using CMake's
`Fortran_BUILDING_IN(S)TRINSIC_MODULES` setting had to be added in any
case for Unix Makefile generators (reported issue 1.) because injecting
dependencies is not possible with Unix Makefiles as stated, but
`Fortran_BUILDING_IN(S)TRINSIC_MODULES` also does not work with the
Ninja generator. Avoiding `use, intrinsic` keeps just one configuration
path.
I tested that modules are properly updated with Ninja and Unix
Makefiles:
* Build from scratch
* Modifying `__fortran_builtins.f90` rebuilds its dependent modules
* Modifying `iso_c_binding.f90` rebuilds its dependent modules
(omp_lib.mod)
Commit: ec6eed0b000733b865f5cc07ec5c444654d218b4
https://github.com/llvm/llvm-project/commit/ec6eed0b000733b865f5cc07ec5c444654d218b4
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M libcxx/include/__algorithm/simd_utils.h
M libcxx/include/__locale_dir/num.h
Log Message:
-----------
[libc++] Remove __broadcast simd function (#205559)
The simd vector type in Clang already provides a conversion operator
that acts as a broadcast constructor. We can use that instead.
Commit: 17d49bc052a74e1b9d365dd8f9f3597b4a538209
https://github.com/llvm/llvm-project/commit/17d49bc052a74e1b9d365dd8f9f3597b4a538209
Author: David Spickett <david.spickett at arm.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M lldb/source/Plugins/Process/Linux/NativeRegisterContextLinux_arm64.cpp
Log Message:
-----------
[lldb][Linux][AArch64] Get NT_ARM_ constants from llvm's ELF header (#205834)
The first thing I do for any new register set is add it to the llvm
header. So we should just use those values instead of having all these
macros to handle older kernels.
Commit: 383f8586986aac5abec446a08b1c33a0fff0a631
https://github.com/llvm/llvm-project/commit/383f8586986aac5abec446a08b1c33a0fff0a631
Author: Harry Ramsey <harry.ramsey at arm.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
A llvm/test/CodeGen/AArch64/sve2-fixed-length-sra-flag.ll
A llvm/test/CodeGen/AArch64/sve2-fixed-length-sra.ll
Log Message:
-----------
[AArch64] Preserve SDNode flags when lowering fixed vectors to scalable operations (#204616)
Preserve the original SDNode flags when LowerToScalableOp rebuilds fixed-length vector operations using their scalable container type. This allows combines to use flag information generated before the scalable was created.
Commit: ff066c745de9f00b0bac8a98d1bd9bd864034da0
https://github.com/llvm/llvm-project/commit/ff066c745de9f00b0bac8a98d1bd9bd864034da0
Author: Alexis Engelke <engelke at in.tum.de>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M llvm/include/llvm/IR/PatternMatch.h
M llvm/include/llvm/Transforms/Scalar/NaryReassociate.h
M llvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
M llvm/lib/Transforms/Scalar/NaryReassociate.cpp
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/test/CodeGen/X86/vec_minmax_match.ll
M llvm/test/Transforms/InstSimplify/maxmin.ll
M llvm/test/Transforms/LoopInterchange/reductions-non-wrapped-operations.ll
M llvm/test/Transforms/LoopUnroll/runtime-unroll-reductions-min-max.ll
M llvm/test/Transforms/LoopVectorize/AArch64/pr33053.ll
M llvm/test/Transforms/LoopVectorize/AArch64/scalable-reductions.ll
M llvm/test/Transforms/LoopVectorize/ARM/mve-reduction-predselect.ll
M llvm/test/Transforms/LoopVectorize/ARM/mve-reduction-types.ll
M llvm/test/Transforms/LoopVectorize/ARM/tail-fold-multiple-icmps.ll
M llvm/test/Transforms/LoopVectorize/ARM/tail-folding-not-allowed.ll
M llvm/test/Transforms/LoopVectorize/RISCV/inloop-reduction.ll
M llvm/test/Transforms/LoopVectorize/RISCV/reductions.ll
M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-inloop-reduction.ll
M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-reduction.ll
M llvm/test/Transforms/LoopVectorize/VPlan/vplan-printing-reductions-tail-folded.ll
M llvm/test/Transforms/LoopVectorize/VPlan/vplan-printing-reductions.ll
M llvm/test/Transforms/LoopVectorize/first-order-recurrence.ll
M llvm/test/Transforms/LoopVectorize/minmax-extra-outside-users.ll
M llvm/test/Transforms/LoopVectorize/minmax_reduction.ll
M llvm/test/Transforms/LoopVectorize/reduction-inloop-min-max.ll
M llvm/test/Transforms/LoopVectorize/reduction-inloop-pred.ll
M llvm/test/Transforms/LoopVectorize/reduction-predselect.ll
M llvm/test/Transforms/LoopVectorize/scalable-first-order-recurrence.ll
M llvm/test/Transforms/LoopVectorize/select-reduction.ll
M llvm/test/Transforms/LowerSwitch/do-not-handle-impossible-values.ll
M llvm/test/Transforms/NaryReassociate/nary-req.ll
M llvm/test/Transforms/NaryReassociate/nary-smax.ll
M llvm/test/Transforms/NaryReassociate/nary-smin.ll
M llvm/test/Transforms/NaryReassociate/nary-umax.ll
M llvm/test/Transforms/NaryReassociate/nary-umin.ll
M llvm/test/Transforms/SLPVectorizer/AMDGPU/horizontal-store.ll
M llvm/test/Transforms/SLPVectorizer/AMDGPU/reduction.ll
M llvm/test/Transforms/SLPVectorizer/X86/extractelement-single-use-many-nodes.ll
M llvm/test/Transforms/SLPVectorizer/X86/horizontal-minmax.ll
M llvm/test/Transforms/SLPVectorizer/X86/reduction.ll
M llvm/test/Transforms/SLPVectorizer/X86/undef_vect.ll
M llvm/test/Transforms/SLPVectorizer/X86/used-reduced-op.ll
Log Message:
-----------
[IR] Don't match icmp+select as min/max (#205595)
Since some time, we canonicalize integer min/max as intrinsics. Remove
the detection of icmp+select as min/max from the pattern matchers. These
matchers were quite expensive but, due to canonicalization, were almost
never hit.
Test updates are largely canonicalization of the input to use intrinics
instead of icmp+select. (Manual work, we unfortunately don't have a tool
to canonicalize the test input.)
Commit: 77b0b29955125c6caae1f88f710c4b3b41a0d37f
https://github.com/llvm/llvm-project/commit/77b0b29955125c6caae1f88f710c4b3b41a0d37f
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M lldb/source/Utility/VirtualDataExtractor.cpp
M lldb/unittests/Utility/VirtualDataExtractorTest.cpp
Log Message:
-----------
[lldb] Return an empty extractor for unmappable subset requests (#205596)
DataExtractor::GetSubsetExtractorSP always returns a valid, non-null
extractor, and every caller relies on that: they dereference the result
directly rather than checking for null. The VirtualDataExtractor
override broke this contract. When the requested range had no backing in
the lookup table (e.g. the virtual offset fell in a gap, or the range
crossed an entry boundary) it returned an empty shared_ptr, turning each
caller's dereference into a null-pointer access.
It also asserted on those cases. But the offsets passed to a subset
request are derived from parsed file contents, which may be truncated or
inconsistent. A range that cannot be mapped is therefore ordinary input,
not a programming error, and must not abort an assertions-enabled build.
Return a valid but empty extractor instead. Reads see zero bytes and the
caller's existing size checks skip the data, matching the graceful
degradation the base class already provides for out-of-range offsets.
Assisted-by: Claude
Commit: 003a7601914a5fd6ecb71d94161147cdeca59ff1
https://github.com/llvm/llvm-project/commit/003a7601914a5fd6ecb71d94161147cdeca59ff1
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M clang/test/CodeGenOpenCL/amdgpu-sizeof-alignof.cl
M clang/test/CodeGenOpenCL/func-call-dbg-loc.cl
Log Message:
-----------
clang/AMDGPU: Remove gizcl triples from tests (#205811)
These are a leftover from a very old migration
Commit: 03511907c7a9908f7902e18d3789371a63bb91b1
https://github.com/llvm/llvm-project/commit/03511907c7a9908f7902e18d3789371a63bb91b1
Author: Scott Linder <scott.linder at amd.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M llvm/docs/CommandGuide/index.md
M llvm/docs/GettingInvolved.md
M llvm/docs/GlobalISel/Pipeline.rst
M llvm/docs/GlobalISel/Porting.rst
M llvm/docs/GlobalISel/index.rst
M llvm/docs/Reference.md
M llvm/docs/UserGuides.md
M llvm/docs/conf.py
M llvm/docs/tutorial/MyFirstLanguageFrontend/index.rst
M llvm/tools/llvm-debuginfo-analyzer/README.md
A utils/docs/llvm_sphinx/ext/checks.py
Log Message:
-----------
[docs] Enforce unambiguous toctree in llvm/docs (#203967)
It seems like using a non-`hidden` `toctree` for page navigation is a
bit of a trap, in that every doc must have a single unique path through
the global toctree to the root doc, and it is very easy to end up with
multiple.
This patch tries to address the warnings (actually infos, hence why it
does not fail the build) in llvm/docs/.
I tried to preserve the documents as-is, by hiding `toctree`s and
instead using lists of `{doc}` forms where the `toctree` was visible
before.
The only visual change in the resulting HTML is that the link is now
underlined where it wasn't before.
I also nested the `Tutorials` section in GISel Porting document, and
didn't link to it directly as the title is a bit ambiguous without the
context of the document it appears in.
I also saw warnings about a jump in heading level in
`llvm-debuginfo-analyzer/README.md` and assumed it was just a mistake,
so I collapsed the level-3 headings down to level-2.
Finally, I wrote a sphinx extension to make ambiguous toctree entries
into errors, so the docs do not regress. I hope to fix other sphinx
project in llvm-project and enable the checks for them too, assuming
this patch is accepted.
Change-Id: Icb11de69be1ea5489fba501aee4d767f5129e7e1
Commit: 94c1a8bc3e6b790ccc5723803129b3b956f11d13
https://github.com/llvm/llvm-project/commit/94c1a8bc3e6b790ccc5723803129b3b956f11d13
Author: Tim Besard <tim.besard at gmail.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M llvm/lib/Target/NVPTX/CMakeLists.txt
M llvm/lib/Target/NVPTX/MCTargetDesc/NVPTXMCTargetDesc.cpp
M llvm/lib/Target/NVPTX/MCTargetDesc/NVPTXMCTargetDesc.h
M llvm/lib/Target/NVPTX/NVPTX.h
A llvm/lib/Target/NVPTX/NVPTXAddressFolder.cpp
M llvm/lib/Target/NVPTX/NVPTXInstrFormats.td
M llvm/lib/Target/NVPTX/NVPTXInstrInfo.td
M llvm/lib/Target/NVPTX/NVPTXTargetMachine.cpp
A llvm/test/CodeGen/NVPTX/address-folder.ll
A llvm/test/CodeGen/NVPTX/address-folder.mir
Log Message:
-----------
[NVPTX] Fold symbol addresses into memory operands (#202379)
SelectionDAG can fold a symbol address (a kernel parameter, global
variable, or external symbol) directly into a memory instruction's
address operand, but only within a single basic block. When the address
crosses a block boundary, ISel materializes it with `MOV_B{32,64}_sym`
and the memory instruction becomes register-relative:
```ptx
mov.b64 %rd1, kernel_param_0;
ld.param.b64 %rd2, [%rd1];
ld.param.b64 %rd3, [%rd1+8];
```
instead of:
```
ld.param.b64 %rd2, [kernel_param_0];
ld.param.b64 %rd3, [kernel_param_0+8];
```
This patch adds NVPTXAddressFolder, a pre-regalloc pass that looks for
loads and stores whose address operand is defined by `MOV_B{32,64}_sym`,
then folds the symbol back into the memory operand. The mov is erased
once it has no remaining uses; if the address also feeds arithmetic or
escapes, it is kept.
To make this generic over NVPTX memory instructions, the patch enables
named operand tables for NVPTX instructions and uses them to find `addr`
and `addsp` operands instead of hardcoding opcode-specific operand
indices.
This was motivated by a CUDA.jl performance regression where `byval`
kernel parameters stopped being pre-lowered into simple loads and
exposed the missing cross-block fold in the backend.
Disclaimer: LLMs (GPT 5.5, Opus 4.8) were used to develop this PR.
---------
Co-authored-by: Claude Opus 4.8 (1M context) <noreply at anthropic.com>
Commit: 30b88eb862b1fe9aa532ba4501455adb9f02de29
https://github.com/llvm/llvm-project/commit/30b88eb862b1fe9aa532ba4501455adb9f02de29
Author: Rahul Joshi <rjoshi at nvidia.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M llvm/include/llvm/IR/Intrinsics.td
A llvm/test/Verifier/anyptr-bad.ll
Log Message:
-----------
[LLVM][Intrinsics] Fix `llvm_anyptr_ty` to disallow vector of pointers (#205806)
`llvm_anyptr_ty` should only allow scalar pointer types and disallow
vector of pointers; fix the vector constraint for `llvm_anyptr_ty`
accordingly. This fixes a regression in `llvm_anyptr_ty` that was
introduced in https://github.com/llvm/llvm-project/pull/203506.
Added a unit test to verify that use of a vector of pointers for
`llvm_anyptr_ty` fails verification.
Commit: bb620ab07ddac0dce15cece204b647197c8073d3
https://github.com/llvm/llvm-project/commit/bb620ab07ddac0dce15cece204b647197c8073d3
Author: Ingo Müller <ingomueller at google.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M mlir/include/mlir/Dialect/Vector/IR/VectorOps.td
M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
M mlir/test/Dialect/Vector/invalid.mlir
Log Message:
-----------
Revert "[mlir][vector] add consistent stride verification to `masked load/store` and `gather/scatter` ops" (#205832)
Reverts llvm/llvm-project#204842. That PR breaks the following two
tests:
* `mlir/test/Integration/Dialect/SparseTensor/CPU/reshape_dot.mlir.test`
*
`mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_coo_test.mlir.test`
Commit: 9dee94ab30f9804c55f9f2cca347aa2af94f332d
https://github.com/llvm/llvm-project/commit/9dee94ab30f9804c55f9f2cca347aa2af94f332d
Author: Igor Kirillov <igor.kirillov at arm.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M llvm/lib/CodeGen/ComplexDeinterleavingPass.cpp
M llvm/test/CodeGen/AArch64/complex-deinterleaving-reassoc-duplicates.ll
Log Message:
-----------
[ComplexDeinterleaving] Preserve duplicate reassoc addends in identifyReassocNodes (#205578)
Fixes #205197
Commit: 4feb14a494df152be1f44f80e289ffa82357ed12
https://github.com/llvm/llvm-project/commit/4feb14a494df152be1f44f80e289ffa82357ed12
Author: forking-google-bazel-bot[bot] <265904573+forking-google-bazel-bot[bot]@users.noreply.github.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
Log Message:
-----------
[Bazel] Fixes f36745e (#205837)
This fixes f36745eb0a07177743ccb039a77399846a873a40.
Co-authored-by: Google Bazel Bot <google-bazel-bot at google.com>
Commit: 76ddb39f1b18556b6de86c6cac0ebbb0ed6cb056
https://github.com/llvm/llvm-project/commit/76ddb39f1b18556b6de86c6cac0ebbb0ed6cb056
Author: khaki3 <47756807+khaki3 at users.noreply.github.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M flang/lib/Optimizer/OpenACC/Support/FIROpenACCTypeInterfaces.cpp
M flang/test/Fir/OpenACC/openacc-mappable.fir
Log Message:
-----------
[flang][acc] Avoid assert for assumed-size arrays without a descriptor (#205726)
Example:
```fortran
subroutine sub(a, n)
real(8) :: a(n, *)
integer :: n, i
!$acc data no_create(a)
!$acc parallel loop
do i = 1, n
a(1, i) = 0.0d0
end do
!$acc end data
end subroutine
```
An assumed-size dummy array (e.g. `real(8) :: a(n,*)`) has an unknown
trailing extent and is passed without a descriptor. When the OpenACC
implicit-data pass builds a data clause for such an array,
`generateSeqTyAccBounds` enters the unknown-shape branch but finds no
descriptor (`fir.box`) to recover bounds from, and hits:
assert(false && "array with unknown dimension expected to have
descriptor");
The premise is wrong: an assumed-size array legitimately has no
descriptor and no recoverable bounds.
Fix: return empty bounds instead of asserting. The caller only assigns
bounds when non-empty, so the array is mapped without bounds — the only
correct option when the extent is unknown, and sufficient for
presence-only clauses (`no_create`/`present`).
Commit: e74b6bcafb575b1548052b00854916c27e9bd4c8
https://github.com/llvm/llvm-project/commit/e74b6bcafb575b1548052b00854916c27e9bd4c8
Author: khaki3 <47756807+khaki3 at users.noreply.github.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M mlir/lib/Dialect/OpenACC/Transforms/ACCSpecializeForHost.cpp
A mlir/test/Dialect/OpenACC/acc-specialize-for-host-deep-nesting.mlir
Log Message:
-----------
[mlir][acc] Run acc-specialize-for-host rewrite to convergence (#205727)
Example:
```fortran
!$acc routine worker
subroutine transform(p, n)
real*8 p(*); integer n
!$acc loop seq
do i1 = 1, n
!$acc loop seq
do i2 = 1, n
! ... a dozen+ levels of nested acc loops ...
!$acc loop vector
do i = 1, n
p(i) = p(i) + 1.0d0
end do
end do
end do
end subroutine
```
In this code, the routine becomes a `func.func` with deeply nested
orphan `acc.loop` ops. `acc-specialize-for-host` lowers them (e.g.
`acc.loop` → `scf.for`) via `applyPatternsGreedily`, but leaves
`GreedyRewriteConfig::maxIterations` at its default of 10. Since inner
loops only become rewritable after their parents convert, a nest deeper
than 10 isn't at a fixed point when the cap is hit, so the driver
returns `failure()` and the pass calls `signalPassFailure()` — a
spurious, diagnostic-less failure even though the conversion was
progressing correctly.
Fix:
Run the rewrite to convergence instead of stopping at the default cap:
```cpp
config.setMaxIterations(GreedyRewriteConfig::kNoLimit);
```
The patterns are strictly reductive (ops are lowered/erased, never
regenerated), so this is safe. Adds a regression test with a 16-deep
orphan `acc.loop` nest.
Commit: df49da3201a05f7a2ef78ad00cdcfebe09ae1308
https://github.com/llvm/llvm-project/commit/df49da3201a05f7a2ef78ad00cdcfebe09ae1308
Author: Abid Qadeer <haqadeer at amd.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M flang/lib/Semantics/openmp-utils.cpp
M flang/test/Lower/OpenMP/metadirective-construct.f90
Log Message:
-----------
[flang][OpenMP] Decompose combined construct selectors in variant matching (#205802)
The previous code resolved a `construct={...}` selector by mapping its
name to a trait through a string lookup
(`getOpenMPContextTraitSelectorKind` ->
`getOpenMPContextTraitPropertyForSelector`). That works for a standalone
leaf construct such as `parallel`, whose name matches a single construct
selector string, but not for a combined/composite directive such as
`target teams`: its name (`"target teams"`) matches no selector string,
so the lookup returns `invalid` and the selector's construct traits are
dropped.
This PR adds `AppendConstructTraitsForDirective` that walks the
directive sets and adds each leaf trait, so combined directives are no
longer reduced to a single (or dropped) trait. It also handles the
standalone `dispatch` construct trait.
Fixes https://github.com/llvm/llvm-project/issues/205664
Assisted-by: Cursor
Commit: 0e847869ab8dde02815d82b67c7f0bb834653b51
https://github.com/llvm/llvm-project/commit/0e847869ab8dde02815d82b67c7f0bb834653b51
Author: adams381 <adams at nvidia.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenExprCXX.cpp
A clang/test/CIR/CodeGen/new-array-init.cpp
M clang/test/CIR/CodeGen/new.cpp
M clang/test/CIR/CodeGen/paren-list-agg-init.cpp
M clang/test/CIR/CodeGenCXX/new-array-init.cpp
Log Message:
-----------
[CIR] Zero-init array-new with trivial ctor (#205611)
emitNewArrayInitializer hit errorNYI for a value-initialized array new of
a trivially-constructible element (new T[n]()), where the trailing
parentheses mean zero-initialization. Route the trivial-ctor branch
through the existing tryMemsetInitialization() helper, following classic
CodeGen: a zero-initializable element gets operator new[] plus a single
memset to 0, while a non-zero-initializable element (an array of
pointers-to-data-member, whose null value is -1) declines the memset and
falls through to the constructor loop value-initializing each element.
Also add the getParent()->isEmpty() early return. tryMemsetInitialization
builds the memset through the Address overload of createMemSet so the
destination alignment is preserved.
Found building the SPEC CPU 2026 LLVM benchmark (723.llvm_r / 823.llvm_s)
with ClangIR.
Commit: d3c00bf7b08c3746c6e62c56d6142c333b0a8d25
https://github.com/llvm/llvm-project/commit/d3c00bf7b08c3746c6e62c56d6142c333b0a8d25
Author: David Zbarsky <dzbarsky at gmail.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M utils/bazel/llvm-project-overlay/llvm/BUILD.bazel
M utils/bazel/llvm-project-overlay/llvm/driver.bzl
Log Message:
-----------
Bazel driver-tools build-setting simplification (#205846)
Read the validated `driver-tools` build setting directly in
`generate_driver_tools_def` instead of reconstructing tool names from
selected `CcInfo` dependency labels through `label.name`.
`generate_driver_selects` now returns the selected dependency labels, so
`select_driver_tools` is removed.
This fixes a silent issue when 2 multicall participants have the same
`label.name`.
Commit: fcc105f40c8ee7cd604c3dafb3750e8ee1db65b6
https://github.com/llvm/llvm-project/commit/fcc105f40c8ee7cd604c3dafb3750e8ee1db65b6
Author: Grigory Pastukhov <gpastukhov at meta.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M clang-tools-extra/clang-tidy/misc/ExplicitConstructorCheck.cpp
M clang-tools-extra/clang-tidy/utils/TypeTraits.cpp
M clang-tools-extra/clang-tidy/utils/TypeTraits.h
M clang-tools-extra/unittests/clang-tidy/CMakeLists.txt
A clang-tools-extra/unittests/clang-tidy/TypeTraitsTest.cpp
Log Message:
-----------
[clang-tidy] Move isStdInitializerList to utils::type_traits and add unit tests (#205449)
Moves isStdInitializerList from misc/ExplicitConstructorCheck into
utils::type_traits so it can be shared, and adds unit tests for it. NFC.
Commit: 78247bf69011b35f04e0905b3cea56eab7d7831c
https://github.com/llvm/llvm-project/commit/78247bf69011b35f04e0905b3cea56eab7d7831c
Author: Yonah Goldberg <ygoldberg at nvidia.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M llvm/lib/Transforms/Scalar/SROA.cpp
M llvm/test/Transforms/SROA/struct-to-vector-fp-store-only-tail.ll
M llvm/test/Transforms/SROA/struct-to-vector.ll
Log Message:
-----------
[SROA] Adjust struct layout requirements for struct to vector canonicalization (#201967)
Address a bug pointed out by @bjope (thank you!)
- To perform struct to vector canonicalization, it is not enough that
the struct layout size is the same as the vector layout size, because
structs and vectors may have padding in different locations! Previously
we would promote `{ i5, i5 }` as `<i5, i5>`, which is a miscompile!
- I also relaxed another requirement. Previously we made sure that the
struct layout size is equal to the vector allocation size. This
prevented promoting `{ i32, i32, i32 }` as `<i32, i32, i32>` because the
struct layout size is 3 x i32 but the vector allocation size is 4 x i32.
So instead we should compare to the vector store size, which is 3 x i32.
Commit: d4148a8476dfb63291ca3c63bc92a3bd8a19b773
https://github.com/llvm/llvm-project/commit/d4148a8476dfb63291ca3c63bc92a3bd8a19b773
Author: hulxv <hulxxv at gmail.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
A libc/docs/dev/builtin_compatibility.rst
M libc/docs/dev/index.rst
Log Message:
-----------
[libc][docs] add `builtin_compatibility` (#200539)
Document the built-in compatibility for different GCC versions since
GCC-5
Commit: 4f638ff7baf97dd16abff7fc961d76c22063dc1f
https://github.com/llvm/llvm-project/commit/4f638ff7baf97dd16abff7fc961d76c22063dc1f
Author: khaki3 <47756807+khaki3 at users.noreply.github.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M mlir/lib/Dialect/OpenACC/Transforms/ACCSpecializeForHost.cpp
M mlir/test/Dialect/OpenACC/acc-if-clause-lowering.mlir
Log Message:
-----------
[mlir][acc] Drop redundant `acc.terminator` erase that broke atomic capture under `if` (#205731)
Example:
```fortran
!$acc parallel if(cond)
!$acc atomic capture
a = a + 1
b = a
!$acc end atomic
!$acc end parallel
```
In this code, the `if` clause triggers host-fallback specialization. A
blanket `acc.terminator` erase pattern strips the implicit terminator of
the still-present `acc.atomic.capture`, so the later `getTerminator()`
trips `mightHaveTerminator()`.
Fix: remove that pattern — every ACC region op already erases its own
terminator when it unwraps/inlines, so it was redundant (and only raced
ahead to break this case). Adds a lit test.
Commit: 04450c8cd86e7bbfab42cbeb919d31d8668366a8
https://github.com/llvm/llvm-project/commit/04450c8cd86e7bbfab42cbeb919d31d8668366a8
Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVCLOps.td
M mlir/test/Dialect/SPIRV/IR/ocl-ops.mlir
M mlir/test/Target/SPIRV/ocl-ops.mlir
Log Message:
-----------
[mlir][SPIR-V] Add CL copysign, fdim, fmod and hypot ops (#203880)
Commit: d0373ba8b57bb2355cfed09ad4c15c315a36af8c
https://github.com/llvm/llvm-project/commit/d0373ba8b57bb2355cfed09ad4c15c315a36af8c
Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVGLOps.td
M mlir/lib/Dialect/SPIRV/IR/SPIRVOps.cpp
M mlir/test/Dialect/SPIRV/IR/gl-ops.mlir
M mlir/test/Target/SPIRV/gl-ops.mlir
Log Message:
-----------
[mlir][SPIR-V] Add GL NMin, NMax and NClamp ops (#203878)
Commit: 4c203981fc40698bca926c9b41c98574648d537f
https://github.com/llvm/llvm-project/commit/4c203981fc40698bca926c9b41c98574648d537f
Author: hanbeom <kese111 at gmail.com>
Date: 2026-06-26 (Fri, 26 Jun 2026)
Changed paths:
A llvm/test/Transforms/SLPVectorizer/WebAssembly/or-reduction-zero-test.ll
A llvm/test/Transforms/SLPVectorizer/X86/reduction-zero-test-ctpop.ll
Log Message:
-----------
[SLP] Add pre-commit tests for zero-tested OR/UMax reductions (NFC) (#205738)
Add pre-commit tests for scalar OR/UMax reductions whose result is
only used by an eq/ne-zero comparison.
Commit: 6d6475328be051b35b22c5e72a0c4aa72c3815c4
https://github.com/llvm/llvm-project/commit/6d6475328be051b35b22c5e72a0c4aa72c3815c4
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M clang/lib/AST/ByteCode/Compiler.cpp
M clang/lib/AST/ByteCode/EvalEmitter.cpp
M clang/lib/AST/ByteCode/Interp.h
M clang/test/SemaCXX/constant-expression-p2280r4.cpp
Log Message:
-----------
[clang][bytecode] Don't ignore discarded `DeclRefExpr`s (#204165)
Check for the evaluating decl in `GetRefGlobal` so we don't fail too
early. We also need to mark the `APValue` as constexpr-unknown when
returning it, even though the backing `Descriptor` is not marked
constexpr-unknown.
This fixes the last differences in `constant-expression-p2280r4.cpp`.
Commit: cf223eb1ec5fd5430a110bbd9f3fc18b46796fa0
https://github.com/llvm/llvm-project/commit/cf223eb1ec5fd5430a110bbd9f3fc18b46796fa0
Author: Moazin K. <mkhatti at nvidia.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M mlir/include/mlir/Dialect/OpenACC/Transforms/Passes.td
A mlir/lib/Dialect/OpenACC/Transforms/ACCEmitRemarksPrivate.cpp
M mlir/lib/Dialect/OpenACC/Transforms/CMakeLists.txt
A mlir/test/Dialect/OpenACC/acc-emit-remarks-private.mlir
Log Message:
-----------
[OpenACC] Add pass `ACCEmitRemarksPrivate`. (#205824)
The pass emits remarks describing `acc.firstprivate` and `acc.private`
associated with OpenACC compute and loop constructs.
Assisted-by: Claude Code
Commit: 5e85dbcde1d4ca6088132de09a3a95ca99caad17
https://github.com/llvm/llvm-project/commit/5e85dbcde1d4ca6088132de09a3a95ca99caad17
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp
A lldb/test/Shell/SymbolFile/DWARF/wasm-function-display-name.yaml
Log Message:
-----------
[lldb] Use the source name when the linkage name is not mangled (#205701)
When a DW_TAG_subprogram has a DW_AT_linkage_name that is not actually a
mangled name and differs from DW_AT_name, lldb used the linkage name as
the function's display name. For C++ the linkage name demangles back to
the source name, but a plain symbol such as __main_argc_argv does not,
so the function showed up under its raw linkage name in backtraces,
breakpoint locations and `image lookup`, and was not findable by its
source name.
This happens on WebAssembly: wasi-libc renames `int main(int, char**)`
to its __main_argc_argv argv-passing wrapper, keeping DW_AT_name "main"
but recording DW_AT_linkage_name "__main_argc_argv".
When the linkage name has no recognized mangling scheme, use DW_AT_name
as the display name and keep the linkage name as the symbol, so lookups
by either name still resolve.
Commit: 469e3e81c6264f61d4369246d498c587b5ac6c71
https://github.com/llvm/llvm-project/commit/469e3e81c6264f61d4369246d498c587b5ac6c71
Author: Ryotaro Kasuga <kasuga.ryotaro at fujitsu.com>
Date: 2026-06-26 (Fri, 26 Jun 2026)
Changed paths:
M llvm/lib/Transforms/Scalar/LoopInterchange.cpp
A llvm/test/Transforms/LoopInterchange/transform-stop-partway.ll
Log Message:
-----------
[LoopInterchange] Add test for IR modification stops partway (#205562)
The transform phase in LoopInterchange, which actually modifies the
input IR, has several early exits. This means that if the process hits
one of them, the end result may be IR that has been left in a partially
modified state. As far as I have searched, there is only one case that
actually triggers an early exit. In that case, the final output happens
to be valid IR (though not interchanged), so I believe this is not a
correctness issue at the moment. However, the current implementation is
clearly undesirable, especially because the loop is regarded as
interchanged internally even though the transformation actually failed.
We should eliminate all such early exits.
This patch adds a test that I could find, and also adds a debug output
to make it clear which one is triggered.
Assisted-by: Claude Code
Commit: e87160eddf6d7986423209711878b26f82443009
https://github.com/llvm/llvm-project/commit/e87160eddf6d7986423209711878b26f82443009
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp
Log Message:
-----------
[lldb] Fix DWARFASTParserClang formatting (#205857)
In #205701, I applied Michael's suggestion and enabled auto-merge.
Despite the formatter check failing, the change still got merged. Fix
the formatting and another inconsistency in the use of braces.
Commit: f3cb7bbc0110938c78542add1f79364fa526fb8d
https://github.com/llvm/llvm-project/commit/f3cb7bbc0110938c78542add1f79364fa526fb8d
Author: Gábor Horváth <xazax.hun at gmail.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M llvm/benchmarks/CMakeLists.txt
A llvm/benchmarks/ImmutableSetIteratorBM.cpp
M llvm/include/llvm/ADT/ImmutableSet.h
M llvm/unittests/ADT/ImmutableSetTest.cpp
Log Message:
-----------
[ADT] Rewrite ImmutableSet/Map in-order iterator without per-node state (#205552)
ImutAVLTreeInOrderIterator was layered on a "generic" iterator whose
stack stored a 2-bit visit-state (None/Left/Right) packed into the low
bits of each node pointer, and which was spun through several
intermediate states per in-order step.
Replace it with a single iterator that keeps a stack of plain node
pointers (the root-to-current ancestor chain) and recovers the traversal
direction by inspecting whether it is ascending from a node's left or
right child. A node's parent cannot be cached in the node itself because
these trees are persistent and structurally shared (one node may be a
child of different parents across tree versions), so the ancestor stack
is the per-traversal parent chain.
The observable contract is unchanged: same in-order sequence, same
skipSubTree() semantics (so tree canonicalization via isEqual is
unaffected), and the iterator stays bidirectional. operator== now
compares the current node rather than the whole path, which is O(1) and
correct because within a single tree a node has a unique path.
Microbenchmarks (llvm/benchmarks/ImmutableSetIteratorBM.cpp, -O2 with
assertions) show ~2x faster plain traversal and skipSubTree, and the
node-identity operator== is ~1.5x faster on comparison-heavy loops (no
change on the common compare-against-end() path).
| Test (input size) | Before | After | Speedup |
|:--|--:|--:|--:|
| Cycle `N=100` | 64.3 ms | 52.3 ms | 1.23× |
| Cycle `N=200` | 464.5 ms | 375.5 ms | 1.24× |
| Cycle `N=300` | 1540 ms | 1260 ms | 1.22× |
| Merge `N=1000` | 51.3 ms | 44.7 ms | 1.15× |
| Merge `N=2000` | 237.0 ms | 198.0 ms | 1.20× |
| Merge `N=5000` | 1710 ms | 1480 ms | 1.16× |
| Switch fan-out `N=1000` | 73.8 ms | 62.7 ms | 1.18× |
| Switch fan-out `N=2000` | 328.0 ms | 294.2 ms | 1.11× |
| Switch fan-out `N=4000` | 1420 ms | 1260 ms | 1.13× |
Assisted by: Claude Opus 4.8
Co-authored-by: Gabor Horvath <gaborh at apple.com>
Commit: b7c56b5b0a54a6c966a74dfe311fcddcffade521
https://github.com/llvm/llvm-project/commit/b7c56b5b0a54a6c966a74dfe311fcddcffade521
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M llvm/lib/Target/NVPTX/CMakeLists.txt
M llvm/lib/Target/NVPTX/MCTargetDesc/NVPTXMCTargetDesc.cpp
M llvm/lib/Target/NVPTX/MCTargetDesc/NVPTXMCTargetDesc.h
M llvm/lib/Target/NVPTX/NVPTX.h
R llvm/lib/Target/NVPTX/NVPTXAddressFolder.cpp
M llvm/lib/Target/NVPTX/NVPTXInstrFormats.td
M llvm/lib/Target/NVPTX/NVPTXInstrInfo.td
M llvm/lib/Target/NVPTX/NVPTXTargetMachine.cpp
R llvm/test/CodeGen/NVPTX/address-folder.ll
R llvm/test/CodeGen/NVPTX/address-folder.mir
Log Message:
-----------
Revert "[NVPTX] Fold symbol addresses into memory operands" (#205852)
Reverts llvm/llvm-project#202379
check-llvm now fails on one of the new testcases
```
Failed Tests (1):
LLVM :: CodeGen/NVPTX/address-folder.ll
```
Commit: 8987645d1d42147340367f6752cac563bf2c64be
https://github.com/llvm/llvm-project/commit/8987645d1d42147340367f6752cac563bf2c64be
Author: Tamir Duberstein <tamird at gmail.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M llvm/lib/Target/BPF/BPFAbstractMemberAccess.cpp
M llvm/lib/Target/BPF/BPFCORE.h
M llvm/lib/Target/BPF/BTFDebug.cpp
M llvm/lib/Target/BPF/BTFDebug.h
A llvm/test/CodeGen/BPF/BTF/struct-member-order.ll
A llvm/test/CodeGen/BPF/CORE/struct-member-order.ll
Log Message:
-----------
[BPF] Sort BTF struct members by offset (#205396)
Sort BTF structure elements by their debug offsets. Prevent
source-ordered Rust debug metadata from producing descending member
offsets after rustc chooses a different physical layout, because the
kernel rejects such BTF.
Use the sorted order for member emission, declaration-tag component
indexes, and CO-RE access strings. Keep physical offset calculations on
the original debug indexes so changing BTF order does not change
generated code.
Eliminate the need for the bpf-linker metadata rewrite by enforcing the
ordering in the LLVM BPF backend:
https://github.com/aya-rs/bpf-linker/commit/1007ec7fed03562eb7d08f3e7521094a7e698b95
Commit: aa1cc2dc42733219a91167ca2279c96c1bce58e7
https://github.com/llvm/llvm-project/commit/aa1cc2dc42733219a91167ca2279c96c1bce58e7
Author: Alex Langford <alangford at apple.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M llvm/include/llvm/ADT/StringRef.h
M llvm/unittests/ADT/StringRefTest.cpp
Log Message:
-----------
[ADT] Add StringRef::nonEmptyOr (#204690)
This adds a new method to StringRef. The intended use case is for
situations when a non-empty StringRef is needed but some operation
returns an empty StringRef because of missing data or some other
exception.
This is primarily for ergonomics. I'm mainly motivated to avoid creating
a temporary StringRef in situations where a StringRef is obtained
through a long call chain. e.g.
`doAThing(my_obj.getFoo().getBar().getBaz().getStringRef().nonEmptyOr("unknown"))`
---------
Co-authored-by: Jonas Devlieghere <jonas at devlieghere.com>
Commit: 32572205a08d213c6a7cb387fe384fb3d98bca6c
https://github.com/llvm/llvm-project/commit/32572205a08d213c6a7cb387fe384fb3d98bca6c
Author: Alex Langford <alangford at apple.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M lldb/include/lldb/Breakpoint/Breakpoint.h
M lldb/include/lldb/Breakpoint/BreakpointList.h
M lldb/source/Breakpoint/BreakpointList.cpp
M lldb/source/Target/Target.cpp
Log Message:
-----------
[lldb] Change BreakpointList::FindBreakpointsByName to use StringRef (#205695)
It's not possible to turn a StringRef into a c-string safely without a
potential allocation. I will use this in a follow-up to remove
ConstString from BreakpointName.
Commit: eb05efcd9b035b397c907d9949fd225e40173c07
https://github.com/llvm/llvm-project/commit/eb05efcd9b035b397c907d9949fd225e40173c07
Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M flang/include/flang/Parser/parse-tree.h
M flang/lib/Parser/program-parsers.cpp
M flang/lib/Semantics/program-tree.cpp
A flang/test/Semantics/OpenACC/acc-routine-bad.f90
Log Message:
-----------
[flang][openacc] Ignore bare acc routine in module subprogram part instead of erroring out (#205450)
This small code below would trigger not easy to understand error like
`error: expected 'END'`. Ignore such directive and emit the standard
warning.
```
module acc_routine_bad
contains
!$acc routine
subroutine acc_routine20()
end subroutine
end module
```
Commit: e32a1c6d91a7a4e75a4a890ffdddfda068f8bd33
https://github.com/llvm/llvm-project/commit/e32a1c6d91a7a4e75a4a890ffdddfda068f8bd33
Author: Yusra Syeda <99052248+ysyeda at users.noreply.github.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M clang/lib/Driver/ToolChains/ZOS.cpp
M clang/test/Driver/zos-ld.c
Log Message:
-----------
[SystemZ][z/OS] Improve link command for shared libraries (#204205)
This PR adds -e/-O CELQSTRT and improves the link command for shared
libs.
Co-authored-by: Yusra Syeda <yusra.syeda at ibm.com>
Commit: 67cc47c7f9f4a0383bc386fdca748d0330a4aaf6
https://github.com/llvm/llvm-project/commit/67cc47c7f9f4a0383bc386fdca748d0330a4aaf6
Author: Arthur Eubanks <aeubanks at google.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M llvm/include/llvm/Target/TargetLoweringObjectFile.h
M llvm/lib/CodeGen/TargetLoweringObjectFileImpl.cpp
M llvm/lib/Target/TargetLoweringObjectFile.cpp
M llvm/lib/Target/TargetMachine.cpp
R llvm/test/CodeGen/X86/large-implicit-section.ll
Log Message:
-----------
Revert "[x86] Handle implicit sections when determining if a global is large" (#205859)
Reverts llvm/llvm-project#204247
Causes crashes:
https://github.com/llvm/llvm-project/pull/204247#issuecomment-4799229027
Fixes #205801
Commit: bc3eb524b2d1dcc3e48161cd2eb80a2364fdc097
https://github.com/llvm/llvm-project/commit/bc3eb524b2d1dcc3e48161cd2eb80a2364fdc097
Author: adams381 <adams at nvidia.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenBuiltin.cpp
A clang/test/CIR/CodeGen/builtin-atomic-is-lock-free.c
Log Message:
-----------
[CIR] Lower __atomic_is_lock_free / __c11_atomic_is_lock_free (#205862)
`__atomic_is_lock_free` and `__c11_atomic_is_lock_free` were routed to
`errorNYI` in CIRGen, so `std::atomic<T>::is_lock_free()` failed to
compile under `-fclangir` whenever the query wasn't constant-folded --
which is what the libcxx atomics lock-free tests hit.
This mirrors classic CodeGen (`CGBuiltin.cpp`): emit a call to the
runtime entry `bool __atomic_is_lock_free(size_t size, void *ptr)`.
`__atomic_is_lock_free` forwards its pointer argument;
`__c11_atomic_is_lock_free` passes a null pointer, since an `_Atomic`
object is always suitably aligned. `__atomic_test_and_set` /
`__atomic_clear` stay NYI.
The lowered call omits the `noundef`/`zeroext` argument and return
attributes classic emits, and the declaration picks up `dso_local`.
That's the existing CIR libcall attribute gap, so the test uses split
`LLVMCIR`/`OGCG` prefixes where the two diverge and a shared skeleton
where they match.
Commit: ebc2f7946ad76daa1c4db18fc9196d94845e6946
https://github.com/llvm/llvm-project/commit/ebc2f7946ad76daa1c4db18fc9196d94845e6946
Author: adams381 <adams at nvidia.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M clang/lib/CIR/Dialect/Transforms/EHABILowering.cpp
A clang/test/CIR/CodeGen/cleanup-scope-throw-caught.cpp
Log Message:
-----------
[CIR] Fix lost catch clauses on EH landing pads (#205638)
A throw caught by an enclosing handler could call std::terminate instead of
entering the handler. The smallest trigger is a try that destroys a local and
throws a new-expression whose type has a throwing constructor: two cleanups
then sit on the path to the handler and produce two cir.eh.initiate operations
that funnel into one cir.eh.dispatch. The same bug also asserted on ordinary
nested try/catch and dropped the outer handler's catch clause from the inner
landing pad on a nested throw.
ItaniumEHLowering::lowerEhInitiate derived each landing pad's catch clauses
while destructively walking the eh_token graph, tying a correctness property
to lowering order: whichever initiate lowered first tore down the shared cir.br
edges, so the other reached no dispatch and kept an empty catch_type_list -- a
cleanup-only landing pad that resumes past the handler.
lowerFunc now does a read-only walk first. For each initiate it collects every
dispatch the exception can reach (innermost first, preserving nested catch
order) and records the catch_type_list, plus the cleanup clause when a cleanup
lies on the unwind path. Each dispatch is lowered once, after every initiate has
been processed.
Follow-up to #199121, which added cleanup-scope throw handling for the
single-dispatch case.
Commit: ab3d63cc080b767f97a23f4efc6cf109be084679
https://github.com/llvm/llvm-project/commit/ab3d63cc080b767f97a23f4efc6cf109be084679
Author: Shafik Yaghmour <shafik.yaghmour at intel.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M clang-tools-extra/pp-trace/PPCallbacksTracker.cpp
Log Message:
-----------
[Clang-tools-extra] Add missing values to CharacteristicKindStrings (#205455)
Static analysis flagged that we were indexing CharacteristicKindStrings
in PPCallbacksTracker::FileChanged based on the values of
SrcMgr::CharacteristicKind which would access outside array bounds for
some values of the enum. As far I can see all value of the enum are
possible when calling FileChanged and so the array should indeed cover
all values. So I added the missing values to the array.
Commit: 291a2d12fec082a234cb1d800723acdb0fd32f8d
https://github.com/llvm/llvm-project/commit/291a2d12fec082a234cb1d800723acdb0fd32f8d
Author: Teresa Johnson <tejohnson at google.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M llvm/test/ThinLTO/X86/memprof-icp.ll
Log Message:
-----------
[MemProf] Make ICP test check compared target more strictly (#201656)
We intend to check that we are comparing to the original uncloned
target, but weren't checking for EOL. Add the EOL check.
Commit: 65d16616f810d22e5bcfa2abe7b769172bc260bf
https://github.com/llvm/llvm-project/commit/65d16616f810d22e5bcfa2abe7b769172bc260bf
Author: Charles Zablit <c_zablit at apple.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.cpp
Log Message:
-----------
[lldb][gdb-remote] Send QSetSTDIOWindowSize for a 0x0 size (#205772)
The client uses a 0x0 STDIO window size as a deliberate signal to the
server that there is no client terminal, so the server should redirect
the inferior's stdio over anonymous pipes instead of a ConPTY (on
Windows).
This is a follow up to https://github.com/llvm/llvm-project/pull/203562.
rdar://178725958
Commit: 99f4b63a79ecbaed60be14fcea05279e8e16e9de
https://github.com/llvm/llvm-project/commit/99f4b63a79ecbaed60be14fcea05279e8e16e9de
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M llvm/test/CodeGen/AMDGPU/rotate-add.ll
Log Message:
-----------
AMDGPU: Fix wrong triple in rotate-add test (#205863)
This was overwritten by the command line anyway.
Commit: 7ede8a4c665bb999f35ebc0293dd49812329e2bd
https://github.com/llvm/llvm-project/commit/7ede8a4c665bb999f35ebc0293dd49812329e2bd
Author: Erich Keane <ekeane at nvidia.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M clang/test/CIR/CodeGen/constant-inits.cpp
M clang/test/CIR/CodeGen/record-zero-init-padding.c
Log Message:
-----------
[NFC][CIR] Fix test that used 'DAG-SAME' (#205867)
'DAG-SAME' isn't a thing in file-check, so these lines weren't being
checked. This patch just puts them all on teh same line as they should
be.
Commit: 5c561a32a5afccb42b2a44f95535dbe6ea939f44
https://github.com/llvm/llvm-project/commit/5c561a32a5afccb42b2a44f95535dbe6ea939f44
Author: Christopher Bate <cbate at nvidia.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M mlir/lib/TableGen/CodeGenHelpers.cpp
A mlir/test/IR/test-successor-verifier.mlir
M mlir/test/lib/Dialect/Test/TestOps.td
M mlir/test/mlir-tblgen/constraint-unique.td
M mlir/tools/mlir-tblgen/OpDefinitionsGen.cpp
Log Message:
-----------
[MLIR] Fix broken 'Successor<CPred<...>>' functionality in mlir-tblgen (#205375)
Previously, mlir-tblgen would generate incorrect C++ code when
passing a custom constraint to `Successor<...>`. The code would fail
to compile. We lacked end-to-end tests for this functionality and all
in-tree dialects only use `AnySuccessor` for their successors.
Custom C++ predicates for an Operation's successor(s) can be useful
in order to generate verification for certain conditions (e.g. that the
successor is the "next" block). This commit fixes the mlir-tblgen
functionality and adds end-to-end tests in the Test dialect for single
and variadic successors.
Assisted-by: Claude
Commit: 1254310544a8ef042b635bc15b4d70e891fae62b
https://github.com/llvm/llvm-project/commit/1254310544a8ef042b635bc15b4d70e891fae62b
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M llvm/test/CodeGen/AMDGPU/add_i128.ll
M llvm/test/CodeGen/AMDGPU/add_i64.ll
M llvm/test/CodeGen/AMDGPU/alignbit-pat.ll
M llvm/test/CodeGen/AMDGPU/allow-check.ll
M llvm/test/CodeGen/AMDGPU/any_extend_vector_inreg.ll
M llvm/test/CodeGen/AMDGPU/atomic_cmp_swap_local.ll
M llvm/test/CodeGen/AMDGPU/atomic_optimizations_buffer.ll
M llvm/test/CodeGen/AMDGPU/atomic_optimizations_global_pointer.ll
M llvm/test/CodeGen/AMDGPU/atomic_optimizations_local_pointer.ll
M llvm/test/CodeGen/AMDGPU/atomic_optimizations_pixelshader.ll
M llvm/test/CodeGen/AMDGPU/atomic_optimizations_raw_buffer.ll
M llvm/test/CodeGen/AMDGPU/atomic_optimizations_struct_buffer.ll
M llvm/test/CodeGen/AMDGPU/bf16.ll
M llvm/test/CodeGen/AMDGPU/bfe-patterns.ll
M llvm/test/CodeGen/AMDGPU/bfi_nested.ll
M llvm/test/CodeGen/AMDGPU/bfm.ll
M llvm/test/CodeGen/AMDGPU/branch-relax-indirect-branch.mir
M llvm/test/CodeGen/AMDGPU/branch-relaxation.ll
M llvm/test/CodeGen/AMDGPU/bswap.ll
M llvm/test/CodeGen/AMDGPU/call-constexpr.ll
M llvm/test/CodeGen/AMDGPU/calling-conventions.ll
M llvm/test/CodeGen/AMDGPU/carryout-selection.ll
M llvm/test/CodeGen/AMDGPU/cf-loop-on-constant.ll
M llvm/test/CodeGen/AMDGPU/coalescer-early-clobber-subreg.mir
M llvm/test/CodeGen/AMDGPU/collapse-endcf-broken.mir
M llvm/test/CodeGen/AMDGPU/collapse-endcf.mir
M llvm/test/CodeGen/AMDGPU/collapse-endcf2.mir
M llvm/test/CodeGen/AMDGPU/combine-and-sext-bool.ll
M llvm/test/CodeGen/AMDGPU/combine-cond-add-sub.ll
M llvm/test/CodeGen/AMDGPU/combine-reg-or-const.ll
M llvm/test/CodeGen/AMDGPU/combine-sreg64-inits.mir
M llvm/test/CodeGen/AMDGPU/commute-compares.ll
M llvm/test/CodeGen/AMDGPU/control-flow-optnone.ll
M llvm/test/CodeGen/AMDGPU/copyprop_regsequence_with_undef.mir
M llvm/test/CodeGen/AMDGPU/ctlz.ll
M llvm/test/CodeGen/AMDGPU/ctlz_zero_poison.ll
M llvm/test/CodeGen/AMDGPU/cttz-elts.ll
M llvm/test/CodeGen/AMDGPU/cttz.ll
M llvm/test/CodeGen/AMDGPU/cttz_zero_poison.ll
M llvm/test/CodeGen/AMDGPU/cvt_flr_i32_f32.ll
M llvm/test/CodeGen/AMDGPU/cvt_rpi_i32_f32.ll
M llvm/test/CodeGen/AMDGPU/dagcombine-lshr-and-cmp.ll
M llvm/test/CodeGen/AMDGPU/div_v2i128.ll
M llvm/test/CodeGen/AMDGPU/divergence-driven-buildvector.ll
M llvm/test/CodeGen/AMDGPU/divergence-driven-sext-inreg.ll
M llvm/test/CodeGen/AMDGPU/divergence-driven-trunc-to-i1.ll
M llvm/test/CodeGen/AMDGPU/extract-load-i1.ll
M llvm/test/CodeGen/AMDGPU/extract-lowbits.ll
M llvm/test/CodeGen/AMDGPU/extract-subvector-16bit.ll
M llvm/test/CodeGen/AMDGPU/extract-subvector-equal-length.ll
M llvm/test/CodeGen/AMDGPU/extract-subvector.ll
M llvm/test/CodeGen/AMDGPU/extract_vector_elt-f16.ll
M llvm/test/CodeGen/AMDGPU/extract_vector_elt-i16.ll
M llvm/test/CodeGen/AMDGPU/extract_vector_elt-i8.ll
M llvm/test/CodeGen/AMDGPU/extractelt-to-trunc.ll
M llvm/test/CodeGen/AMDGPU/fabs.f64.ll
M llvm/test/CodeGen/AMDGPU/fabs.ll
M llvm/test/CodeGen/AMDGPU/fadd-fma-fmul-combine.ll
M llvm/test/CodeGen/AMDGPU/fceil64.ll
M llvm/test/CodeGen/AMDGPU/fcmp.f16.ll
M llvm/test/CodeGen/AMDGPU/fcopysign.bf16.ll
M llvm/test/CodeGen/AMDGPU/fix-sgpr-copies.mir
M llvm/test/CodeGen/AMDGPU/fmax3.ll
M llvm/test/CodeGen/AMDGPU/fmax_legacy.f16.ll
M llvm/test/CodeGen/AMDGPU/fmed3.bf16.ll
M llvm/test/CodeGen/AMDGPU/fmed3.ll
M llvm/test/CodeGen/AMDGPU/fmin3.ll
M llvm/test/CodeGen/AMDGPU/fmin_legacy.f16.ll
M llvm/test/CodeGen/AMDGPU/fnearbyint.ll
M llvm/test/CodeGen/AMDGPU/fneg-fabs.f64.ll
M llvm/test/CodeGen/AMDGPU/fneg-fabs.ll
M llvm/test/CodeGen/AMDGPU/fold-fi-mubuf.mir
M llvm/test/CodeGen/AMDGPU/fold-fi-operand-shrink.mir
M llvm/test/CodeGen/AMDGPU/fold-imm-copy.mir
M llvm/test/CodeGen/AMDGPU/fold-immediate-operand-shrink-with-carry.mir
M llvm/test/CodeGen/AMDGPU/fold-immediate-operand-shrink.mir
M llvm/test/CodeGen/AMDGPU/fp-classify.ll
M llvm/test/CodeGen/AMDGPU/fp-to-int-to-fp.ll
M llvm/test/CodeGen/AMDGPU/fp32_to_fp16.ll
M llvm/test/CodeGen/AMDGPU/fp_to_sint.ll
M llvm/test/CodeGen/AMDGPU/fp_to_uint.ll
M llvm/test/CodeGen/AMDGPU/fptosi.f16.ll
M llvm/test/CodeGen/AMDGPU/fptrunc.f16.ll
M llvm/test/CodeGen/AMDGPU/fptrunc.ll
M llvm/test/CodeGen/AMDGPU/freeze-other-uses-issue-198094.ll
M llvm/test/CodeGen/AMDGPU/frem.ll
M llvm/test/CodeGen/AMDGPU/global-alias.ll
M llvm/test/CodeGen/AMDGPU/global-atomicrmw-fadd-wrong-subtarget.ll
M llvm/test/CodeGen/AMDGPU/global_atomics.ll
M llvm/test/CodeGen/AMDGPU/global_atomics_i32_system.ll
M llvm/test/CodeGen/AMDGPU/global_atomics_i64_system.ll
M llvm/test/CodeGen/AMDGPU/global_atomics_scan_fadd.ll
M llvm/test/CodeGen/AMDGPU/global_atomics_scan_fmax.ll
M llvm/test/CodeGen/AMDGPU/global_atomics_scan_fmin.ll
M llvm/test/CodeGen/AMDGPU/global_atomics_scan_fsub.ll
M llvm/test/CodeGen/AMDGPU/i1-copies-rpo.mir
M llvm/test/CodeGen/AMDGPU/i1-copy-from-loop.ll
Log Message:
-----------
AMDGPU: Avoid using default subtarget in generated codegen tests (1/9) (#205784)
Fix codegen tests using amdgcn triples without a target-cpu. The dummy
default subtarget has always been an irritating edge case to deal with.
For unknown/mesa3d/amdpal triples, this has been a gfx600-like result
and gfx700-like result for amdhsa. Convert tests to use the explicit
target. This was performed by vibe-coded script, and covers tests
using update_{llc|mir}_test_checks. There are some minor codegen
differences to be expected, mostly due to now having a scheduling
model.
In the future we should forbid trying to codegen the default target.
Co-Authored-By: Claude <noreply at anthropic.com> (Claude-Opus-4.8)
Commit: 334907c294934e7f83867d96035ee3af4f0d63b6
https://github.com/llvm/llvm-project/commit/334907c294934e7f83867d96035ee3af4f0d63b6
Author: Florian Hahn <flo at fhahn.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
A llvm/test/Transforms/IndVarSimplify/exit-value-gep-inbounds.ll
Log Message:
-----------
[IndVars] Add tests with exit uses of inbounds GEPs. (NFC) (#205665)
Commit: 1813ca6e98ac0159aea9ef9aa40cc441d185ec8e
https://github.com/llvm/llvm-project/commit/1813ca6e98ac0159aea9ef9aa40cc441d185ec8e
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M llvm/test/CodeGen/AMDGPU/icmp.i16.ll
M llvm/test/CodeGen/AMDGPU/illegal-sgpr-to-vgpr-copy.ll
M llvm/test/CodeGen/AMDGPU/indirect-addressing-si.ll
M llvm/test/CodeGen/AMDGPU/indirect-call.ll
M llvm/test/CodeGen/AMDGPU/invalid-addrspacecast.ll
M llvm/test/CodeGen/AMDGPU/ipra-regmask.ll
M llvm/test/CodeGen/AMDGPU/kernel-args.ll
M llvm/test/CodeGen/AMDGPU/kill-infinite-loop.ll
M llvm/test/CodeGen/AMDGPU/livevars-implicitdef.mir
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.alignbyte.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.class.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.div.fmas.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.lds.kernel.id.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.rsq.clamp.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.rsq.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.s.barrier.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.s.setprio.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.sched.barrier.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.ubfe.ll
M llvm/test/CodeGen/AMDGPU/llvm.mulo.ll
M llvm/test/CodeGen/AMDGPU/llvm.r600.read.local.size.ll
M llvm/test/CodeGen/AMDGPU/load-constant-f32.ll
M llvm/test/CodeGen/AMDGPU/load-constant-f64.ll
M llvm/test/CodeGen/AMDGPU/load-constant-i1.ll
M llvm/test/CodeGen/AMDGPU/load-constant-i16.ll
M llvm/test/CodeGen/AMDGPU/load-constant-i32.ll
M llvm/test/CodeGen/AMDGPU/load-constant-i64.ll
M llvm/test/CodeGen/AMDGPU/load-constant-i8.ll
M llvm/test/CodeGen/AMDGPU/load-global-f32.ll
M llvm/test/CodeGen/AMDGPU/load-global-i16.ll
M llvm/test/CodeGen/AMDGPU/load-global-i32.ll
M llvm/test/CodeGen/AMDGPU/load-global-i8.ll
M llvm/test/CodeGen/AMDGPU/load-local-i16.ll
M llvm/test/CodeGen/AMDGPU/long-branch-reserve-register.ll
M llvm/test/CodeGen/AMDGPU/loop_break.ll
M llvm/test/CodeGen/AMDGPU/lower-control-flow-live-variables-update.mir
M llvm/test/CodeGen/AMDGPU/machinelicm-copy-like-instrs.mir
M llvm/test/CodeGen/AMDGPU/mad_uint24.ll
M llvm/test/CodeGen/AMDGPU/mcp-use-before-def.mir
M llvm/test/CodeGen/AMDGPU/memory-legalizer-atomic-insert-end.mir
M llvm/test/CodeGen/AMDGPU/memory-legalizer-store-infinite-loop.ll
M llvm/test/CodeGen/AMDGPU/mul_int24.ll
M llvm/test/CodeGen/AMDGPU/mul_uint24-amdgcn.ll
M llvm/test/CodeGen/AMDGPU/multilevel-break.ll
M llvm/test/CodeGen/AMDGPU/no-limit-coalesce.mir
M llvm/test/CodeGen/AMDGPU/opt-sgpr-to-vgpr-copy.mir
M llvm/test/CodeGen/AMDGPU/optimize-exec-masking-pre-ra.mir
M llvm/test/CodeGen/AMDGPU/optimize-negated-cond.ll
M llvm/test/CodeGen/AMDGPU/peephole-opt-regseq-removal.mir
M llvm/test/CodeGen/AMDGPU/pei-reg-scavenger-position.mir
M llvm/test/CodeGen/AMDGPU/perfhint.ll
M llvm/test/CodeGen/AMDGPU/rcp_iflag.ll
M llvm/test/CodeGen/AMDGPU/regcoalesce-cannot-join-failures.mir
M llvm/test/CodeGen/AMDGPU/regcoalesce-keep-valid-lanes-implicit-def-bug39602.mir
M llvm/test/CodeGen/AMDGPU/regcoalescer-resolve-lane-conflict-by-subranges.mir
M llvm/test/CodeGen/AMDGPU/remat-dead-subreg.mir
M llvm/test/CodeGen/AMDGPU/rewrite-partial-reg-uses-dbg.mir
M llvm/test/CodeGen/AMDGPU/rewrite-partial-reg-uses-gen.mir
M llvm/test/CodeGen/AMDGPU/rewrite-partial-reg-uses.mir
M llvm/test/CodeGen/AMDGPU/rotate-add.ll
M llvm/test/CodeGen/AMDGPU/rotl.ll
M llvm/test/CodeGen/AMDGPU/rotr.ll
M llvm/test/CodeGen/AMDGPU/scalar_to_vector.ll
M llvm/test/CodeGen/AMDGPU/select-constant-cttz.ll
M llvm/test/CodeGen/AMDGPU/setcc-select-hi32mask.ll
M llvm/test/CodeGen/AMDGPU/setcc-select.ll
M llvm/test/CodeGen/AMDGPU/sgpr-to-vreg1-copy.mir
M llvm/test/CodeGen/AMDGPU/shrink-add-sub-constant.ll
M llvm/test/CodeGen/AMDGPU/si-annotate-nested-control-flows.ll
M llvm/test/CodeGen/AMDGPU/si-i1-copies.mir
M llvm/test/CodeGen/AMDGPU/si-lower-control-flow.mir
M llvm/test/CodeGen/AMDGPU/si-lower-i1-copies.mir
M llvm/test/CodeGen/AMDGPU/si-lower-sgpr-spills-cycle-header.mir
M llvm/test/CodeGen/AMDGPU/si-lower-sgpr-spills-initial-insert-in-body.mir
M llvm/test/CodeGen/AMDGPU/si-lower-sgpr-spills-initial-insert-in-latch.mir
M llvm/test/CodeGen/AMDGPU/si-lower-sgpr-spills-multi-entry-cycle.mir
M llvm/test/CodeGen/AMDGPU/simplifydemandedbits-recursion.ll
M llvm/test/CodeGen/AMDGPU/sint_to_fp.i64.ll
M llvm/test/CodeGen/AMDGPU/skip-branch-taildup-ret.mir
M llvm/test/CodeGen/AMDGPU/spill-empty-live-interval.mir
M llvm/test/CodeGen/AMDGPU/spill-partial-csr-sgpr-live-ins.mir
M llvm/test/CodeGen/AMDGPU/spill-sgpr-csr-live-ins.mir
M llvm/test/CodeGen/AMDGPU/splitkit-copy-live-lanes.mir
M llvm/test/CodeGen/AMDGPU/splitkit-nolivesubranges.mir
M llvm/test/CodeGen/AMDGPU/srem-seteq-illegal-types.ll
M llvm/test/CodeGen/AMDGPU/stop-tail-duplicate-cfg-intrinsic.mir
M llvm/test/CodeGen/AMDGPU/tail-dup-bundle.mir
M llvm/test/CodeGen/AMDGPU/trunc-bitcast-vector.ll
M llvm/test/CodeGen/AMDGPU/trunc-cmp-constant.ll
M llvm/test/CodeGen/AMDGPU/twoaddr-regsequence.mir
M llvm/test/CodeGen/AMDGPU/udivrem24.ll
M llvm/test/CodeGen/AMDGPU/uint_to_fp.i64.ll
M llvm/test/CodeGen/AMDGPU/undefined-subreg-liverange.ll
M llvm/test/CodeGen/AMDGPU/unstructured-cfg-def-use-issue.ll
M llvm/test/CodeGen/AMDGPU/urem-seteq-illegal-types.ll
M llvm/test/CodeGen/AMDGPU/v_cndmask.ll
Log Message:
-----------
AMDGPU: Avoid default subtarget in generated codegen tests (2/9) (#205785)
Continue migrating away from testing the dummy target, and use
real targets approximating the old behavior. Performed by script.
Co-Authored-By: Claude <noreply at anthropic.com> (Claude-Opus-4.8)
Commit: a916cb6b5793ee5e853dd308fed9c14940821023
https://github.com/llvm/llvm-project/commit/a916cb6b5793ee5e853dd308fed9c14940821023
Author: Ian Anderson <iana at apple.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M clang/include/clang/Basic/DarwinSDKInfo.h
M clang/lib/Basic/DarwinSDKInfo.cpp
M clang/lib/Driver/ToolChains/Darwin.cpp
M clang/lib/Driver/ToolChains/Darwin.h
M clang/test/Driver/driverkit-path.c
M clang/test/Driver/incompatible_sysroot.c
M clang/unittests/Basic/DarwinSDKInfoTest.cpp
Log Message:
-----------
[clang][driver][darwin] DarwinSDKInfo doesn't match sufficiently modified triples, doesn't warn for unsupported architectures (#204061)
DarwinSDKInfo::getPlatformPrefix(...) is passed the effective target
triple which has undergone modifications from the original -target
value, which can sometimes even include changes to the triple's
environment. That will cause it to fail to match the platform infos, not
get a platform prefix, and get incorrect default search paths. In the
case where a triple doesn't match, check all platform infos, and if they
all have the same platform prefix, then use that.
DarwinSDKInfo::supportsTriple(...) doesn't try to match the architecture
of the triple. That makes it not emit -Wincompatible-sysroot e.g. when
trying to use arm64 against a sufficiently old macOS SDK or when still
trying to build i386 for macOS. Instead of parsing values from
SDKSettings.json into a Triple, storing the probably-relevant
components, and then comparing those against a full Triple, just store
the parsed triple and get rid of the custom comparison code. While this
does make the matching problem above a little more fragile, in practice
that's well mitigated by treating thumb* and arm* as equivalent, and it
does allow for better diagnostics and overall simpler code.
Clean up some unnecessary copies in DarwinSDKInfo and related code.
Assisted-by: Claude Code
rdar://172876443
Commit: 336aa499241da677ba5dadf055ae3b4b5affba03
https://github.com/llvm/llvm-project/commit/336aa499241da677ba5dadf055ae3b4b5affba03
Author: Robert Imschweiler <robert.imschweiler at amd.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
A offload/test/offloading/xteam_min_reduction_partial_wave.c
M openmp/device/src/Reduction.cpp
Log Message:
-----------
[offload][OpenMP] Fix partial warp reduction (#205861)
Don't use a full warp for the final cross-team reduction if the
reduction's thread limit is below the warp size.
Claude assisted with the test.
Commit: c6c76421d3c24a7009cffd7fcdb9022c81d9c898
https://github.com/llvm/llvm-project/commit/c6c76421d3c24a7009cffd7fcdb9022c81d9c898
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M libcxx/lib/abi/CHANGELOG.TXT
Log Message:
-----------
[libc++] Add missing ABI changelog entry for #173283 (#205887)
PR #173283 (Remove numpunct_byname::__init) removed symbols but forgot
to add the relevant entry in the ABI changelog.
Commit: b8c5f6ee633cd4176acdb5153c537e5dafa61063
https://github.com/llvm/llvm-project/commit/b8c5f6ee633cd4176acdb5153c537e5dafa61063
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M llvm/test/CodeGen/AMDGPU/valu-i1.ll
M llvm/test/CodeGen/AMDGPU/vector-legalizer-divergence.ll
M llvm/test/CodeGen/AMDGPU/vgpr_constant64_to_sgpr.mir
M llvm/test/CodeGen/AMDGPU/virtregrewrite-undef-identity-copy.mir
M llvm/test/CodeGen/AMDGPU/vselect.ll
M llvm/test/CodeGen/AMDGPU/waitcnt-debug-non-first-terminators.mir
M llvm/test/CodeGen/AMDGPU/widen-vselect-and-mask.ll
M llvm/test/CodeGen/AMDGPU/wqm-debug-instr.mir
Log Message:
-----------
AMDGPU: Avoid default subtarget in generated codegen tests (3/9) (#205786)
Another batch of tests updated by script.
Co-Authored-By: Claude <noreply at anthropic.com> (Claude-Opus-4.8)
Commit: aa939e521d71407d5d653eb8fd6b5ce283e3e32c
https://github.com/llvm/llvm-project/commit/aa939e521d71407d5d653eb8fd6b5ce283e3e32c
Author: Akhil Goel <akhil.goel at intel.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.cpp
A llvm/test/CodeGen/SPIRV/pointers/global-vars-untyped.ll
Log Message:
-----------
[SPIR-V] Avoid typed pointers for global variables (#201203)
This PR replaces typed pointers with opaque pointers for global variable
types. Since typed pointers are legal in SPIR-V, the type retrieved when
creating a global variable may be a typed pointer, causing it to leak
into the module. This will break the bitcode parsing of the serialized
module.
Commit: aca3f14c0d24d6d3ddc376ebbe1b5b0636e12ed6
https://github.com/llvm/llvm-project/commit/aca3f14c0d24d6d3ddc376ebbe1b5b0636e12ed6
Author: Schrodinger ZHU Yifan <yfzhu at google.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M libc/benchmarks/CMakeLists.txt
M libc/benchmarks/JSON.cpp
M libc/benchmarks/JSONTest.cpp
M libc/benchmarks/LibcBenchmark.cpp
M libc/benchmarks/LibcBenchmark.h
M libc/benchmarks/LibcBenchmarkTest.cpp
M libc/benchmarks/LibcFunctionPrototypes.h
M libc/benchmarks/LibcMemoryBenchmark.cpp
M libc/benchmarks/LibcMemoryBenchmark.h
M libc/benchmarks/LibcMemoryBenchmarkMain.cpp
M libc/benchmarks/LibcMemoryGoogleBenchmarkMain.cpp
M libc/benchmarks/MemorySizeDistributions.cpp
M libc/benchmarks/MemorySizeDistributions.h
Log Message:
-----------
[libc][benchmark] allow benchmark to be built without llvm support (#200951)
Update benchmark to allow it to be built in runtimes driven mode.
It is still useful to have an in-tree benchmark suite. On my side, I am
working on some allocators related benchmarks. Due to the broken state
of this in-tree benchmark suite, I have to frequently port changes
between two workspace. Also, having benchmark suite can make it easier
to track performance change in a consistent view.
Assisted-by: AI tools, checked manually
Commit: 3021455fcc4d173a92ffad2ac39a11a5dcf8271a
https://github.com/llvm/llvm-project/commit/3021455fcc4d173a92ffad2ac39a11a5dcf8271a
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-add-nullptr.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-ashr-narrow.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-extract-vector-load.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-fabs-fneg.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-fcanonicalize.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-fsh.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-fsub-fneg.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-itofp.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-lshr-narrow.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-or-redundant.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-redundant-and.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-redundant-neg.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-rot.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-shift-amount-zext.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-shift-imm-chain-illegal-types.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-shift-imm-chain-shlsat.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-shift-imm-chain.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-shift-of-shifted-logic-shlsat.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-shift-of-shifted-logic.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-shifts.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-shl-narrow.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-trunc-shift.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/dummy-target.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-amdgcn.s.barrier.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-amdgcn.s.sendmsg.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-amdgpu-ffbh-u32.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-amdgpu-ffbl-b32.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-anyext.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-br.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-brcond.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-frame-index.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-phi.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-sext.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-trunc.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-zext.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-amdgcn-sendmsg.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-constantexpr.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-constrained-fp.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-fence.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-fixed-function-abi-vgpr-args.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-getelementptr.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-invariant.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-memory-intrinsics.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-prefetch.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-ptrmask.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-sat.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-struct-return-intrinsics.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-zext-vec-index.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/knownbits-ptrtoint.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-build-vector.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-extractelement-crash.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-insert.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-intrinsic-amdgcn-fdiv-fast.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-inttoptr.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-jump-table.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-memcpy.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-memcpyinline.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-memmove.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-memset.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-memsetinline.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-merge-values-build-vector.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-ptrtoint.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-unmerge-values.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.memcpy.inline.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.memcpy.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.memmove.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.memset.inline.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.memset.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/merge-buffer-stores.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/minmaxabs.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/postlegalizer-combiner-reassoc.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/postlegalizercombiner-select.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-amdgcn.image.sample.1d.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-amdgcn.raw.buffer.load.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-amdgcn.raw.ptr.buffer.load.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-amdgcn.struct.buffer.load.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-amdgcn.struct.buffer.store.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-amdgcn.struct.ptr.buffer.load.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-amdgcn.struct.ptr.buffer.store.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-fabs.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-fneg.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-inttoptr.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-ptr-add.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-ptrtoint.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/sdiv.i32.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/selected-inst-flags.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/shufflevector-pointer-crash.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/srem.i32.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/udiv.i32.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/udiv.i64.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/urem.i32.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/urem.i64.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/v_bfe_i32.ll
M llvm/test/Transforms/LoopStrengthReduce/AMDGPU/lsr-void-inseltpoison.ll
M llvm/test/Transforms/LoopStrengthReduce/AMDGPU/lsr-void.ll
Log Message:
-----------
AMDGPU: Avoid default subtarget in codegen tests (4/9) (#205787)
Continue migrating targets away from codegenning the dummy target
by script.
Co-Authored-By: Claude <noreply at anthropic.com> (Claude-Opus-4.8)
Commit: 5375e9c91c26431923d74793460b20ba7c1b08fa
https://github.com/llvm/llvm-project/commit/5375e9c91c26431923d74793460b20ba7c1b08fa
Author: Florian Hahn <flo at fhahn.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
Log Message:
-----------
[LV] Remove unused MinProfitableTripCount field from ILV (NFC) (#205666)
The MinProfitableTripCount is never read. Remove it.
Commit: fbc32eb9fcf6e16173daabdd3bdbff169dda5917
https://github.com/llvm/llvm-project/commit/fbc32eb9fcf6e16173daabdd3bdbff169dda5917
Author: Zorojuro <sawantsukumar at gmail.com>
Date: 2026-06-26 (Fri, 26 Jun 2026)
Changed paths:
M libc/src/math/docs/add_math_function.md
Log Message:
-----------
[libc][docs] updating entrypoints in `add_math_functions.md` (#204700)
It updates the entrypoint documentation, which currently has only two
entrypoints listed (Outdated)
Commit: 8af6c2936d4eb824f853dfaba24722527277a520
https://github.com/llvm/llvm-project/commit/8af6c2936d4eb824f853dfaba24722527277a520
Author: Moazin K. <mkhatti at nvidia.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M mlir/include/mlir/Dialect/OpenACC/OpenACCTypeInterfaces.td
M mlir/include/mlir/Dialect/OpenACC/OpenACCUtils.h
M mlir/lib/Dialect/OpenACC/Transforms/ACCRecipeMaterialization.cpp
M mlir/lib/Dialect/OpenACC/Utils/OpenACCUtils.cpp
A mlir/test/Dialect/OpenACC/acc-recipe-materialization-firstprivate-two-allocs.mlir
Log Message:
-----------
[OpenACC] Propagate variable names to ops after materializing recipes. (#205821)
ACCRecipeMaterialization only attaches names to the result of the recipe
being materialized. However, some recipes produce multiple ops that need
to carry the variable name.
This change introduces `acc::getVarNamePlaceholder()`, a placeholder
value for `acc.var_name`. Implementations can attach this placeholder
while building the recipe to any ops that should carry the variable
name. ACCRecipeMaterialization will then replace the placeholder with
the actual variable name while materializing the recipe.
Assisted-by: Claude Code
Commit: 3b5c4ae855e6c2ee173c0cab37b8c6b38f344b8f
https://github.com/llvm/llvm-project/commit/3b5c4ae855e6c2ee173c0cab37b8c6b38f344b8f
Author: Farzon Lotfi <farzonlotfi at microsoft.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M llvm/lib/Target/DirectX/DXILDataScalarization.cpp
M llvm/test/CodeGen/DirectX/scalarize-dynamic-vector-index.ll
Log Message:
-----------
[DirectX] Widen i1 indexable temps to i32 in DXILDataScalarization (#205444)
fixes #205443
Dynamically-indexed <N x i1> vectors were lowered to alloca [N x i1]
indexable temps. DXIL booleans are 32-bit in memory, and i1 stack arrays
are mishandled downstream (e.g. WARP returns 1 for every
dynamically-indexed element), producing wrong results for dynamic
bool vector/matrix accesses.
Widen i1 indexable-temp arrays to [N x i32], zero-extending on store and
truncating back to i1 on load, matching DXC. Fixes the dynamic bool
extract/insert miscompile.
We make this change in DXILDataScalarization because this is the pass
that adds the i1 allocas which was the cause of our miscompile.
Assisted by Claude Opus 4.7
Commit: 23e960431d294646b0664f759463529588471fc4
https://github.com/llvm/llvm-project/commit/23e960431d294646b0664f759463529588471fc4
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M libcxx/include/__memory/shared_ptr.h
M libcxx/test/std/utilities/memory/util.smartptr/util.smartptr.shared/util.smartptr.shared.create/make_shared.pass.cpp
Log Message:
-----------
[libc++] Fix move-only types in std::make_shared (#205819)
https://github.com/llvm/llvm-project/pull/200401 broke `make_shared` and
friends support for move-only types.
Commit: 0b328bc6a50becb35ebfb158dd3de69bd32c5563
https://github.com/llvm/llvm-project/commit/0b328bc6a50becb35ebfb158dd3de69bd32c5563
Author: Michael Kruse <llvm-project at meinersbur.de>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M flang-rt/lib/runtime/__cuda_device.f90
M flang-rt/lib/runtime/cuda_runtime_api.f90
Log Message:
-----------
[Flang-RT] Make __cuda_builtins dependency explicit (#205895)
When compiling CUDA-Fortran, a use of the module __cuda_builtins is
added implicitly by the compiler. Add explicit use so CMake can consider
it in the built order. The other modules that are compiled with CUDA
enabled (`cudadevice.f90` and `cooperativegroups.f90`) transitively
depend on depend on __cuda_builtins as well.
Commit: f0fd1ee64993eca0acb9d847ebf351ed7eb10bac
https://github.com/llvm/llvm-project/commit/f0fd1ee64993eca0acb9d847ebf351ed7eb10bac
Author: Alex Langford <alangford at apple.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M lldb/include/lldb/Utility/FileSpec.h
Log Message:
-----------
[lldb][NFC] Correct documentation for FileSpec::GetFileNameExtension (#205871)
Commit: 0a00381c67afcbb411679407c96e6b3e6613ee2f
https://github.com/llvm/llvm-project/commit/0a00381c67afcbb411679407c96e6b3e6613ee2f
Author: Krzysztof Drewniak <Krzysztof.Drewniak at amd.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
A llvm/test/Analysis/MemorySSA/invariant-load-intrinsic.ll
A llvm/test/Transforms/GVN/invariant-load-intrinsic.ll
A llvm/test/Transforms/InstCombine/invariant-load-like-sink.ll
M llvm/test/Transforms/Sink/invariant-load.ll
Log Message:
-----------
[llvm][NFC] Add invariant.load intrinsic precommit tests (#205894)
Add tests to show what does/doesn't currently happen to !invariant.load
on intrinsics that read memory.
AI disclosure: Codex wrote these. They got put into new files in many cases and I _think_ that's a reasonable call.
Co-authored-by: Codex <codex at openai.com>
Commit: f2459f9ec89db238fb84b13a75ae38867d0b6cb2
https://github.com/llvm/llvm-project/commit/f2459f9ec89db238fb84b13a75ae38867d0b6cb2
Author: Florian Hahn <flo at fhahn.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/VPRecipeBuilder.h
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/lib/Transforms/Vectorize/VPlanTransforms.h
M llvm/lib/Transforms/Vectorize/VPlanUtils.cpp
M llvm/test/Transforms/LoopVectorize/VPlan/AArch64/vplan-memory-op-decisions.ll
Log Message:
-----------
[VPlan] Handle loads feeding memops in makeMemOpWideningDecisions (NFC) (#196842)
The legacy cost model force-scalarizes loads feeding memory ops, unless
the target prefers vector addressing. Add the logic to
makeMemOpWideningDecisions. Currently this should match the legacy
decision as-is. Should be test-able in VPlan-printing test if legacy
decisions are done in a separate sub-pass as
https://github.com/llvm/llvm-project/pull/182593
PR: https://github.com/llvm/llvm-project/pull/196842
Commit: fc171ea41ab66eb05c27e939dd12e12de5da7423
https://github.com/llvm/llvm-project/commit/fc171ea41ab66eb05c27e939dd12e12de5da7423
Author: Justin Bogner <mail at justinbogner.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M llvm/docs/GettingInvolved.md
Log Message:
-----------
[GettingInvolved] Add wg-hlsl to online sync ups (#205891)
This has been on the community calendar for a very long time, but
apparently we never added it here.
Commit: 749abf04eadaa38549e0168f1f6def513c86bee1
https://github.com/llvm/llvm-project/commit/749abf04eadaa38549e0168f1f6def513c86bee1
Author: Gedare Bloom <gedare at rtems.org>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M clang/lib/Format/FormatToken.h
M clang/lib/Format/TokenAnnotator.cpp
M clang/lib/Format/UnwrappedLineParser.cpp
M clang/unittests/Format/TokenAnnotatorTest.cpp
Log Message:
-----------
[clang-format] annotate inline assembly parens (#201703)
Annotate the opening and closing parens of inline assembly. This will
make other improvements related to inline assembly easier.
Commit: de3787e56829165917efef19c4ef030f230dc9e8
https://github.com/llvm/llvm-project/commit/de3787e56829165917efef19c4ef030f230dc9e8
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M llvm/test/CodeGen/AMDGPU/addrspacecast-initializer-unsupported.ll
M llvm/test/CodeGen/AMDGPU/addrspacecast-initializer.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.private-memory.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-function-calls-option.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-reloc-const.ll
M llvm/test/CodeGen/AMDGPU/amdgpu.private-memory.ll
M llvm/test/CodeGen/AMDGPU/amdgpu.work-item-intrinsics.deprecated.ll
M llvm/test/CodeGen/AMDGPU/amdpal-callable.ll
M llvm/test/CodeGen/AMDGPU/amdpal-cs.ll
M llvm/test/CodeGen/AMDGPU/amdpal-es.ll
M llvm/test/CodeGen/AMDGPU/amdpal-gs.ll
M llvm/test/CodeGen/AMDGPU/amdpal-hs.ll
M llvm/test/CodeGen/AMDGPU/amdpal-ls.ll
M llvm/test/CodeGen/AMDGPU/amdpal-msgpack-cs.ll
M llvm/test/CodeGen/AMDGPU/amdpal-msgpack-default.ll
M llvm/test/CodeGen/AMDGPU/amdpal-msgpack-denormal.ll
M llvm/test/CodeGen/AMDGPU/amdpal-msgpack-dx10-clamp-on.ll
M llvm/test/CodeGen/AMDGPU/amdpal-msgpack-dx10-clamp.ll
M llvm/test/CodeGen/AMDGPU/amdpal-msgpack-es.ll
M llvm/test/CodeGen/AMDGPU/amdpal-msgpack-gs.ll
M llvm/test/CodeGen/AMDGPU/amdpal-msgpack-hs.ll
M llvm/test/CodeGen/AMDGPU/amdpal-msgpack-ieee.ll
M llvm/test/CodeGen/AMDGPU/amdpal-msgpack-ls.ll
M llvm/test/CodeGen/AMDGPU/amdpal-msgpack-ps.ll
M llvm/test/CodeGen/AMDGPU/amdpal-msgpack-psenable.ll
M llvm/test/CodeGen/AMDGPU/amdpal-msgpack-vs.ll
M llvm/test/CodeGen/AMDGPU/amdpal-ps.ll
M llvm/test/CodeGen/AMDGPU/amdpal-psenable.ll
M llvm/test/CodeGen/AMDGPU/amdpal-vs.ll
M llvm/test/CodeGen/AMDGPU/array-ptr-calc-i64.ll
M llvm/test/CodeGen/AMDGPU/atomic_load_add.ll
M llvm/test/CodeGen/AMDGPU/atomic_load_sub.ll
M llvm/test/CodeGen/AMDGPU/barrier-elimination.ll
M llvm/test/CodeGen/AMDGPU/basic-branch.ll
M llvm/test/CodeGen/AMDGPU/bitreverse-inline-immediates.ll
M llvm/test/CodeGen/AMDGPU/branch-uniformity.ll
M llvm/test/CodeGen/AMDGPU/break-vmem-soft-clauses.mir
M llvm/test/CodeGen/AMDGPU/call-constant.ll
M llvm/test/CodeGen/AMDGPU/call-graph-register-usage.ll
M llvm/test/CodeGen/AMDGPU/cgp-bitfield-extract.ll
M llvm/test/CodeGen/AMDGPU/clamp-omod-special-case.mir
M llvm/test/CodeGen/AMDGPU/cndmask-no-def-vcc.ll
M llvm/test/CodeGen/AMDGPU/coalescer-identical-values-undef.mir
M llvm/test/CodeGen/AMDGPU/coalescer-subreg-join.mir
M llvm/test/CodeGen/AMDGPU/coalescer-subregjoin-fullcopy.mir
M llvm/test/CodeGen/AMDGPU/coalescer_remat.ll
M llvm/test/CodeGen/AMDGPU/commute_modifiers.ll
M llvm/test/CodeGen/AMDGPU/concat_vectors.ll
M llvm/test/CodeGen/AMDGPU/control-flow-fastregalloc.ll
M llvm/test/CodeGen/AMDGPU/convergent-inlineasm.ll
M llvm/test/CodeGen/AMDGPU/dagcomb-shuffle-vecextend-non2.ll
M llvm/test/CodeGen/AMDGPU/dagcombine-reassociate-bug.ll
M llvm/test/CodeGen/AMDGPU/dce-disjoint-intervals.mir
M llvm/test/CodeGen/AMDGPU/debug-value.ll
M llvm/test/CodeGen/AMDGPU/debug-value2.ll
M llvm/test/CodeGen/AMDGPU/debug_frame.ll
M llvm/test/CodeGen/AMDGPU/default_amdhsa_code_object_version.ll
M llvm/test/CodeGen/AMDGPU/detect-dead-lanes.mir
M llvm/test/CodeGen/AMDGPU/divergence-driven-abs.ll
M llvm/test/CodeGen/AMDGPU/divergence-driven-bfe-isel.ll
M llvm/test/CodeGen/AMDGPU/divergence-driven-bitreverse.ll
M llvm/test/CodeGen/AMDGPU/divergence-driven-ctlz-cttz.ll
M llvm/test/CodeGen/AMDGPU/divergence-driven-ctpop.ll
M llvm/test/CodeGen/AMDGPU/divergence-driven-min-max.ll
M llvm/test/CodeGen/AMDGPU/divergence-driven-negsubinlineconst.ll
M llvm/test/CodeGen/AMDGPU/divergence-driven-not-isel.ll
M llvm/test/CodeGen/AMDGPU/divergence-driven-xnor.ll
M llvm/test/CodeGen/AMDGPU/ds-negative-offset-addressing-mode-loop.ll
M llvm/test/CodeGen/AMDGPU/eh_frame.ll
M llvm/test/CodeGen/AMDGPU/elf.ll
M llvm/test/CodeGen/AMDGPU/enable-no-signed-zeros-fp-math.ll
M llvm/test/CodeGen/AMDGPU/endcf-loop-header.ll
M llvm/test/CodeGen/AMDGPU/endpgm-dce.mir
M llvm/test/CodeGen/AMDGPU/exceed-max-sgprs.ll
M llvm/test/CodeGen/AMDGPU/extload-align.ll
M llvm/test/CodeGen/AMDGPU/extload-private.ll
M llvm/test/CodeGen/AMDGPU/extload.ll
M llvm/test/CodeGen/AMDGPU/extract-vector-elt-build-vector-combine.ll
M llvm/test/CodeGen/AMDGPU/extract_vector_elt-f64.ll
M llvm/test/CodeGen/AMDGPU/extract_vector_elt-i64.ll
M llvm/test/CodeGen/AMDGPU/fadd.ll
M llvm/test/CodeGen/AMDGPU/fceil.ll
M llvm/test/CodeGen/AMDGPU/ffloor.f64.ll
M llvm/test/CodeGen/AMDGPU/ffloor.ll
M llvm/test/CodeGen/AMDGPU/fix-vgpr-copies.mir
M llvm/test/CodeGen/AMDGPU/fma.f64.ll
M llvm/test/CodeGen/AMDGPU/fmax_legacy.ll
M llvm/test/CodeGen/AMDGPU/fmaxnum.f64.ll
M llvm/test/CodeGen/AMDGPU/fmin_fmax_legacy.amdgcn.ll
M llvm/test/CodeGen/AMDGPU/fmin_legacy.ll
M llvm/test/CodeGen/AMDGPU/fmul.ll
M llvm/test/CodeGen/AMDGPU/fneg-fabs-divergence-driven-isel.ll
M llvm/test/CodeGen/AMDGPU/fneg.f64.ll
M llvm/test/CodeGen/AMDGPU/fold-cndmask.mir
M llvm/test/CodeGen/AMDGPU/fold-fmul-to-neg-abs.ll
M llvm/test/CodeGen/AMDGPU/fold-immediate-output-mods.mir
M llvm/test/CodeGen/AMDGPU/fold-implicit-operand.mir
M llvm/test/CodeGen/AMDGPU/fold-over-exec.mir
M llvm/test/CodeGen/AMDGPU/fold-readlane.mir
M llvm/test/CodeGen/AMDGPU/force-alwaysinline-lds-global-address-codegen.ll
Log Message:
-----------
AMDGPU: Avoid default subtarget in hand-written codegen tests (5/9) (#205788)
Introduce -mcpu arguments in tests that did not need check line updates.
Co-Authored-By: Claude <noreply at anthropic.com> (Claude-Opus-4.8)
Commit: 7f0fad687d76fecc087fe6aca70d7086655d2e41
https://github.com/llvm/llvm-project/commit/7f0fad687d76fecc087fe6aca70d7086655d2e41
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-amdgcn.exp.compr.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-amdgcn.exp.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-bitcast.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-readnone-intrinsic-callsite.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.implicit.ptr.buffer.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.s.sleep.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.workitem.id.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-illegal-copy.mir
M llvm/test/CodeGen/AMDGPU/InlineAsmCrash.ll
M llvm/test/CodeGen/AMDGPU/fp_to_sint.f64.ll
M llvm/test/CodeGen/AMDGPU/fp_to_uint.f64.ll
M llvm/test/CodeGen/AMDGPU/fpext.ll
M llvm/test/CodeGen/AMDGPU/fract.f64.ll
M llvm/test/CodeGen/AMDGPU/fract.ll
M llvm/test/CodeGen/AMDGPU/frame-lowering-entry-all-sgpr-used.mir
M llvm/test/CodeGen/AMDGPU/fsub.ll
M llvm/test/CodeGen/AMDGPU/ftrunc.ll
M llvm/test/CodeGen/AMDGPU/global-constant.ll
M llvm/test/CodeGen/AMDGPU/global-directive.ll
M llvm/test/CodeGen/AMDGPU/global-extload-i16.ll
M llvm/test/CodeGen/AMDGPU/gv-const-addrspace.ll
M llvm/test/CodeGen/AMDGPU/hoist-cond.ll
M llvm/test/CodeGen/AMDGPU/hsa-fp-mode.ll
M llvm/test/CodeGen/AMDGPU/hsa-metadata-deduced-arg-attr.ll
M llvm/test/CodeGen/AMDGPU/hsa-metadata-invalid-ocl-version-1.ll
M llvm/test/CodeGen/AMDGPU/hsa-metadata-invalid-ocl-version-3.ll
M llvm/test/CodeGen/AMDGPU/huge-number-operand-folds.mir
M llvm/test/CodeGen/AMDGPU/huge-private-buffer.ll
M llvm/test/CodeGen/AMDGPU/i1-copy-implicit-def.ll
M llvm/test/CodeGen/AMDGPU/i1-copy-phi-uniform-branch.ll
M llvm/test/CodeGen/AMDGPU/i1-copy-phi.ll
M llvm/test/CodeGen/AMDGPU/icmp64.ll
M llvm/test/CodeGen/AMDGPU/implicit-def-muse.ll
M llvm/test/CodeGen/AMDGPU/indirect-private-64.ll
M llvm/test/CodeGen/AMDGPU/inline-asm.ll
M llvm/test/CodeGen/AMDGPU/insert-waitcnts-exp.mir
M llvm/test/CodeGen/AMDGPU/invalid-inline-asm-constraint-crash.ll
M llvm/test/CodeGen/AMDGPU/invariant-load-no-alias-store.ll
M llvm/test/CodeGen/AMDGPU/invert-br-undef-vcc.mir
M llvm/test/CodeGen/AMDGPU/ipra-return-address-save-restore.ll
M llvm/test/CodeGen/AMDGPU/kernarg-stack-alignment.ll
M llvm/test/CodeGen/AMDGPU/kernel_code_t_recurse.ll
M llvm/test/CodeGen/AMDGPU/knownbits-recursion.ll
M llvm/test/CodeGen/AMDGPU/lcssa-optnone.ll
M llvm/test/CodeGen/AMDGPU/lds-alignment.ll
M llvm/test/CodeGen/AMDGPU/lds-m0-init-in-loop.ll
M llvm/test/CodeGen/AMDGPU/lds-size.ll
M llvm/test/CodeGen/AMDGPU/liveness.mir
M llvm/test/CodeGen/AMDGPU/llc-pipeline-npm.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cos.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.dispatch.id.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.div.fixup.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.div.scale.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.exp.compr.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.fdiv.fast.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.fmed3.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.fract.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.frexp.mant.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.implicit.ptr.buffer.hsa.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.implicit.ptr.buffer.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.kernarg.segment.ptr.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.log.clamp.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mqsad.pk.u16.u8.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.msad.u8.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mul.i24.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mul.u24.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.qsad.pk.u16.u8.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.rcp.legacy.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.rcp.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.rsq.legacy.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.s.decperflevel.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.s.getpc.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.s.incperflevel.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.s.sleep.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.sad.hi.u8.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.sad.u16.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.sad.u8.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.sbfe.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.sin.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.trig.preop.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.unreachable.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.wave.barrier.ll
M llvm/test/CodeGen/AMDGPU/llvm.cos.ll
M llvm/test/CodeGen/AMDGPU/llvm.dbg.value.ll
M llvm/test/CodeGen/AMDGPU/llvm.rint.ll
M llvm/test/CodeGen/AMDGPU/load-global-f64.ll
M llvm/test/CodeGen/AMDGPU/load-global-i1.ll
M llvm/test/CodeGen/AMDGPU/load-global-i64.ll
M llvm/test/CodeGen/AMDGPU/load-local-f32.ll
M llvm/test/CodeGen/AMDGPU/load-local-f64.ll
M llvm/test/CodeGen/AMDGPU/load-local-i1.ll
M llvm/test/CodeGen/AMDGPU/load-local-i32.ll
M llvm/test/CodeGen/AMDGPU/load-local-i64.ll
M llvm/test/CodeGen/AMDGPU/load-local-i8.ll
M llvm/test/CodeGen/AMDGPU/load-weird-sizes.ll
M llvm/test/CodeGen/AMDGPU/local-64.ll
M llvm/test/CodeGen/AMDGPU/local-atomics.ll
M llvm/test/CodeGen/AMDGPU/local-atomics64.ll
M llvm/test/CodeGen/AMDGPU/lower-control-flow-live-variables-update.xfail.mir
M llvm/test/CodeGen/AMDGPU/lower-range-metadata-intrinsic-call.ll
Log Message:
-----------
AMDGPU: Avoid default subtarget in hand-written codegen tests (6/9) (#205789)
Introduce -mcpu arguments in tests which didn't require check line
updates.
Co-Authored-By: Claude <noreply at anthropic.com> (Claude-Opus-4.8)
Commit: 0f1abfe0afe13b0fc101721aeef64d2169a32e7e
https://github.com/llvm/llvm-project/commit/0f1abfe0afe13b0fc101721aeef64d2169a32e7e
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M flang/lib/Semantics/check-omp-structure.cpp
M flang/lib/Semantics/check-omp-structure.h
M flang/test/Semantics/OpenMP/clause-validity01.f90
M flang/test/Semantics/OpenMP/clause-validity02.f90
M flang/test/Semantics/OpenMP/declarative-directive01.f90
M flang/test/Semantics/OpenMP/device-constructs.f90
M flang/test/Semantics/OpenMP/sections01.f90
M flang/test/Semantics/OpenMP/single04.f90
M flang/test/Semantics/OpenMP/workshare02.f90
M llvm/include/llvm/Frontend/OpenMP/OMP.h
Log Message:
-----------
[flang][OpenMP] Move clause validity checks into OpenMP-specific code (#205607)
The checks for syntactic properties of clauses (e.g. uniqueness, being
required, etc.) were originally handled by infrastructure common to
OpenMP and OpenACC. That infrastructure, however, is not fully equipped
to handle OpenMP needs: being unable to express version-based properties
or clause set properties being two prominent examples.
The first step towards fulfilling the OpenMP requirements it is to
transfer the handling of clause validity checks into OpenMP-specific
code, which can then be modified without interfering with OpenACC.
In addition to that, this PR also changes the way that clauses on end-
directives are handled: first, a clause appearing on an end-directive is
checked to be allowed to appear on an end-directive, then all clauses
from the begin- and the end-directives are tested together. This unifies
checks for uniqueness of clauses that can appear in both places.
Commit: c002097b9bc07f858edb16947c6500077d2b2b17
https://github.com/llvm/llvm-project/commit/c002097b9bc07f858edb16947c6500077d2b2b17
Author: Florian Hahn <flo at fhahn.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlan.cpp
M llvm/lib/Transforms/Vectorize/VPlanHelpers.h
Log Message:
-----------
[VPlan] Remove unused VPlanPrinter::getOrCreateName(const VPBlockBase*) (#205896)
The block-name printers use getName()/getUID() directly; this overload
has no callers.
Commit: b35c85269e4dc6272c617ddd0925d1e623e5de0e
https://github.com/llvm/llvm-project/commit/b35c85269e4dc6272c617ddd0925d1e623e5de0e
Author: Igor Kudrin <ikudrin at accesssoftek.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M .ci/green-dragon/lldb-windows.groovy
M .github/CODEOWNERS
M .github/new-prs-labeler.yml
M .github/workflows/prune-branches.yml
M .github/workflows/prune-unused-branches.py
M .github/workflows/release-binaries.yml
M .gitignore
M bolt/docs/conf.py
M bolt/include/bolt/Core/BinaryContext.h
M bolt/include/bolt/Core/BinaryFunction.h
M bolt/include/bolt/Core/MCPlusBuilder.h
M bolt/include/bolt/Passes/PatchEntries.h
M bolt/include/bolt/Utils/CommandLineOpts.h
M bolt/lib/Core/BinaryEmitter.cpp
M bolt/lib/Core/BinaryFunction.cpp
M bolt/lib/Passes/Aligner.cpp
M bolt/lib/Passes/CacheMetrics.cpp
M bolt/lib/Passes/LongJmp.cpp
M bolt/lib/Passes/PatchEntries.cpp
M bolt/lib/Passes/TailDuplication.cpp
M bolt/lib/Rewrite/MachORewriteInstance.cpp
M bolt/lib/Rewrite/RewriteInstance.cpp
M bolt/lib/Target/X86/X86MCPlusBuilder.cpp
M bolt/lib/Utils/CommandLineOpts.cpp
M bolt/runtime/common.h
A bolt/test/AArch64/constant-island-reproducible.s
M bolt/test/X86/patch-entries.test
M bolt/test/eh-frame-hdr.test
M clang-tools-extra/clang-tidy/altera/UnrollLoopsCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/MisplacedWideningCastCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/ProTypeMemberInitCheck.cpp
M clang-tools-extra/clang-tidy/misc/ExplicitConstructorCheck.cpp
M clang-tools-extra/clang-tidy/modernize/TypeTraitsCheck.cpp
M clang-tools-extra/clang-tidy/readability/RedundantParenthesesCheck.cpp
M clang-tools-extra/clang-tidy/utils/RenamerClangTidyCheck.cpp
M clang-tools-extra/clang-tidy/utils/TypeTraits.cpp
M clang-tools-extra/clang-tidy/utils/TypeTraits.h
M clang-tools-extra/clangd/CodeCompletionStrings.cpp
M clang-tools-extra/clangd/IncludeFixer.cpp
M clang-tools-extra/clangd/SymbolDocumentation.cpp
M clang-tools-extra/clangd/SymbolDocumentation.h
M clang-tools-extra/clangd/support/Markup.cpp
M clang-tools-extra/clangd/test/did-change-configuration-params.test
M clang-tools-extra/clangd/tool/ClangdMain.cpp
M clang-tools-extra/clangd/unittests/CodeCompleteTests.cpp
M clang-tools-extra/clangd/unittests/CodeCompletionStringsTests.cpp
M clang-tools-extra/clangd/unittests/DiagnosticsTests.cpp
M clang-tools-extra/clangd/unittests/HoverTests.cpp
M clang-tools-extra/clangd/unittests/SymbolDocumentationTests.cpp
M clang-tools-extra/docs/ReleaseNotes.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/assignment-in-selection-statement.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/bad-signal-to-kill-thread.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/copy-constructor-mutates-argument.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/default-operator-new-on-overaligned-type.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/exception-copy-constructor-throws.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/macro-parentheses.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/pointer-arithmetic-on-polymorphic-object.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/random-generator-seed.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/raw-memory-call-on-non-trivial-type.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/reserved-identifier.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/shared-ptr-array-mismatch.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/signal-handler.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/signed-char-misuse.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/sizeof-expression.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/spuriously-wake-up-functions.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/suspicious-memory-comparison.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/unhandled-self-assignment.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/unique-ptr-array-mismatch.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/unsafe-functions.rst
M clang-tools-extra/docs/clang-tidy/checks/cert/err33-c.rst
M clang-tools-extra/docs/clang-tidy/checks/cert/err60-cpp.rst
M clang-tools-extra/docs/clang-tidy/checks/cert/mem57-cpp.rst
M clang-tools-extra/docs/clang-tidy/checks/cert/msc30-c.rst
M clang-tools-extra/docs/clang-tidy/checks/cert/msc32-c.rst
M clang-tools-extra/docs/clang-tidy/checks/cert/msc50-cpp.rst
M clang-tools-extra/docs/clang-tidy/checks/cert/msc51-cpp.rst
M clang-tools-extra/docs/clang-tidy/checks/cert/oop57-cpp.rst
M clang-tools-extra/docs/clang-tidy/checks/concurrency/thread-canceltype-asynchronous.rst
M clang-tools-extra/docs/clang-tidy/checks/misc/anonymous-namespace-in-header.rst
M clang-tools-extra/docs/clang-tidy/checks/misc/no-recursion.rst
M clang-tools-extra/docs/clang-tidy/checks/misc/predictable-rand.rst
M clang-tools-extra/docs/clang-tidy/checks/misc/static-initialization-cycle.rst
M clang-tools-extra/docs/clang-tidy/checks/misc/throw-by-value-catch-by-reference.rst
M clang-tools-extra/docs/clang-tidy/checks/modernize/type-traits.rst
M clang-tools-extra/docs/clang-tidy/checks/readability/enum-initial-value.rst
M clang-tools-extra/docs/conf.py
M clang-tools-extra/modularize/PreprocessorTracker.cpp
M clang-tools-extra/pp-trace/PPCallbacksTracker.cpp
A clang-tools-extra/test/clang-doc/Inputs/array-type.cpp
A clang-tools-extra/test/clang-doc/Inputs/class-partial-specialization.cpp
A clang-tools-extra/test/clang-doc/Inputs/function-pointer-type.cpp
A clang-tools-extra/test/clang-doc/Inputs/member-function-pointer-type.cpp
A clang-tools-extra/test/clang-doc/Inputs/nested-pointer-qualifiers.cpp
A clang-tools-extra/test/clang-doc/array-type.cpp
A clang-tools-extra/test/clang-doc/class-partial-specialization.cpp
A clang-tools-extra/test/clang-doc/function-pointer-type.cpp
A clang-tools-extra/test/clang-doc/json/array-type.cpp
A clang-tools-extra/test/clang-doc/json/class-partial-specialization.cpp
A clang-tools-extra/test/clang-doc/json/function-pointer-type.cpp
A clang-tools-extra/test/clang-doc/json/member-function-pointer-type.cpp
A clang-tools-extra/test/clang-doc/json/nested-pointer-qualifiers.cpp
A clang-tools-extra/test/clang-doc/member-function-pointer-type.cpp
A clang-tools-extra/test/clang-doc/nested-pointer-qualifiers.cpp
A clang-tools-extra/test/clang-tidy/checkers/bugprone/misplaced-widening-cast-bitfield.cpp
A clang-tools-extra/test/clang-tidy/checkers/modernize/type-traits-remove-cvref.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/identifier-naming-member-decl-usage.cpp
M clang-tools-extra/unittests/clang-tidy/CMakeLists.txt
A clang-tools-extra/unittests/clang-tidy/TypeTraitsTest.cpp
M clang/CMakeLists.txt
M clang/docs/ConstantInterpreter.rst
M clang/docs/InternalsManual.rst
M clang/docs/ReleaseNotes.rst
M clang/docs/SanitizerSpecialCaseList.rst
A clang/docs/ScalableStaticAnalysis/developer-docs/ForceLinkerHeaders.rst
A clang/docs/ScalableStaticAnalysis/developer-docs/HowToExtend.rst
A clang/docs/ScalableStaticAnalysis/developer-docs/SummaryExtractionInternals.rst
A clang/docs/ScalableStaticAnalysis/developer-docs/index.rst
A clang/docs/ScalableStaticAnalysis/index.rst
A clang/docs/ScalableStaticAnalysis/user-docs/SummaryExtraction.rst
R clang/docs/ScalableStaticAnalysisFramework/developer-docs/ForceLinkerHeaders.rst
R clang/docs/ScalableStaticAnalysisFramework/developer-docs/HowToExtend.rst
R clang/docs/ScalableStaticAnalysisFramework/developer-docs/SummaryExtractionInternals.rst
R clang/docs/ScalableStaticAnalysisFramework/developer-docs/index.rst
R clang/docs/ScalableStaticAnalysisFramework/index.rst
R clang/docs/ScalableStaticAnalysisFramework/user-docs/SummaryExtraction.rst
M clang/docs/conf.py
M clang/docs/index.rst
M clang/include/clang/APINotes/APINotesManager.h
M clang/include/clang/AST/Comment.h
M clang/include/clang/AST/CommentLexer.h
M clang/include/clang/AST/CommentSema.h
M clang/include/clang/AST/Decl.h
M clang/include/clang/AST/DeclBase.h
M clang/include/clang/AST/Mangle.h
M clang/include/clang/AST/RecursiveASTVisitor.h
M clang/include/clang/AST/TypeBase.h
M clang/include/clang/Analysis/Analyses/LifetimeSafety/Checker.h
M clang/include/clang/Analysis/Analyses/LifetimeSafety/LifetimeSafety.h
M clang/include/clang/Basic/Attr.td
M clang/include/clang/Basic/AttrDocs.td
M clang/include/clang/Basic/BuiltinsRISCV.td
M clang/include/clang/Basic/BuiltinsX86.td
M clang/include/clang/Basic/DarwinSDKInfo.h
M clang/include/clang/Basic/DiagnosticFrontendKinds.td
M clang/include/clang/Basic/DiagnosticGroups.td
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/include/clang/Basic/LangOptions.def
M clang/include/clang/Basic/OffloadArch.h
M clang/include/clang/Basic/SourceManager.h
M clang/include/clang/Basic/TargetInfo.h
M clang/include/clang/Basic/riscv_sifive_vector.td
M clang/include/clang/Basic/riscv_vector_common.td
M clang/include/clang/CIR/Dialect/Builder/CIRBaseBuilder.h
M clang/include/clang/CIR/Dialect/IR/CIRAttrs.td
M clang/include/clang/CIR/Dialect/IR/CIROps.td
M clang/include/clang/CIR/LoweringHelpers.h
M clang/include/clang/CIR/MissingFeatures.h
M clang/include/clang/CodeGen/ModuleBuilder.h
M clang/include/clang/Driver/Action.h
M clang/include/clang/Driver/Compilation.h
M clang/include/clang/Driver/Driver.h
M clang/include/clang/Driver/Job.h
M clang/include/clang/Driver/SanitizerArgs.h
M clang/include/clang/Driver/ToolChain.h
M clang/include/clang/Frontend/CompilerInstance.h
M clang/include/clang/Frontend/CompilerInvocation.h
M clang/include/clang/Frontend/FrontendOptions.h
A clang/include/clang/Frontend/SSAFOptions.h
M clang/include/clang/Lex/Preprocessor.h
M clang/include/clang/Options/Options.td
M clang/include/clang/Parse/Parser.h
A clang/include/clang/ScalableStaticAnalysis/Analyses/CallGraph/CallGraphSummary.h
A clang/include/clang/ScalableStaticAnalysis/Analyses/EntityPointerLevel/EntityPointerLevel.h
A clang/include/clang/ScalableStaticAnalysis/Analyses/EntityPointerLevel/EntityPointerLevelFormat.h
A clang/include/clang/ScalableStaticAnalysis/Analyses/PointerFlow/PointerFlow.h
A clang/include/clang/ScalableStaticAnalysis/Analyses/PointerFlow/PointerFlowAnalysis.h
A clang/include/clang/ScalableStaticAnalysis/Analyses/PointerFlow/PointerFlowFormat.h
A clang/include/clang/ScalableStaticAnalysis/Analyses/UnsafeBufferUsage/UnsafeBufferUsage.h
A clang/include/clang/ScalableStaticAnalysis/Analyses/UnsafeBufferUsage/UnsafeBufferUsageAnalysis.h
A clang/include/clang/ScalableStaticAnalysis/BuiltinAnchorSources.def
A clang/include/clang/ScalableStaticAnalysis/Core/ASTEntityMapping.h
A clang/include/clang/ScalableStaticAnalysis/Core/EntityLinker/EntityLinker.h
A clang/include/clang/ScalableStaticAnalysis/Core/EntityLinker/EntitySummaryEncoding.h
A clang/include/clang/ScalableStaticAnalysis/Core/EntityLinker/LUSummary.h
A clang/include/clang/ScalableStaticAnalysis/Core/EntityLinker/LUSummaryEncoding.h
A clang/include/clang/ScalableStaticAnalysis/Core/EntityLinker/TUSummaryEncoding.h
A clang/include/clang/ScalableStaticAnalysis/Core/Model/BuildNamespace.h
A clang/include/clang/ScalableStaticAnalysis/Core/Model/EntityId.h
A clang/include/clang/ScalableStaticAnalysis/Core/Model/EntityIdTable.h
A clang/include/clang/ScalableStaticAnalysis/Core/Model/EntityLinkage.h
A clang/include/clang/ScalableStaticAnalysis/Core/Model/EntityName.h
A clang/include/clang/ScalableStaticAnalysis/Core/Model/PrivateFieldNames.def
A clang/include/clang/ScalableStaticAnalysis/Core/Model/SummaryName.h
A clang/include/clang/ScalableStaticAnalysis/Core/Serialization/JSONFormat.h
A clang/include/clang/ScalableStaticAnalysis/Core/Serialization/SerializationFormat.h
A clang/include/clang/ScalableStaticAnalysis/Core/Serialization/SerializationFormatRegistry.h
A clang/include/clang/ScalableStaticAnalysis/Core/SummaryData/LUSummaryConsumer.h
A clang/include/clang/ScalableStaticAnalysis/Core/SummaryData/SummaryData.h
A clang/include/clang/ScalableStaticAnalysis/Core/SummaryData/SummaryDataBuilder.h
A clang/include/clang/ScalableStaticAnalysis/Core/SummaryData/SummaryDataBuilderRegistry.h
A clang/include/clang/ScalableStaticAnalysis/Core/SummaryData/SummaryDataStore.h
A clang/include/clang/ScalableStaticAnalysis/Core/SummaryData/SummaryDataTraits.h
A clang/include/clang/ScalableStaticAnalysis/Core/Support/ErrorBuilder.h
A clang/include/clang/ScalableStaticAnalysis/Core/Support/FormatProviders.h
A clang/include/clang/ScalableStaticAnalysis/Core/TUSummary/EntitySummary.h
A clang/include/clang/ScalableStaticAnalysis/Core/TUSummary/ExtractorRegistry.h
A clang/include/clang/ScalableStaticAnalysis/Core/TUSummary/TUSummary.h
A clang/include/clang/ScalableStaticAnalysis/Core/TUSummary/TUSummaryBuilder.h
A clang/include/clang/ScalableStaticAnalysis/Core/TUSummary/TUSummaryExtractor.h
A clang/include/clang/ScalableStaticAnalysis/Core/WholeProgramAnalysis/AnalysisBase.h
A clang/include/clang/ScalableStaticAnalysis/Core/WholeProgramAnalysis/AnalysisDriver.h
A clang/include/clang/ScalableStaticAnalysis/Core/WholeProgramAnalysis/AnalysisName.h
A clang/include/clang/ScalableStaticAnalysis/Core/WholeProgramAnalysis/AnalysisRegistry.h
A clang/include/clang/ScalableStaticAnalysis/Core/WholeProgramAnalysis/AnalysisResult.h
A clang/include/clang/ScalableStaticAnalysis/Core/WholeProgramAnalysis/AnalysisTraits.h
A clang/include/clang/ScalableStaticAnalysis/Core/WholeProgramAnalysis/DerivedAnalysis.h
A clang/include/clang/ScalableStaticAnalysis/Core/WholeProgramAnalysis/SummaryAnalysis.h
A clang/include/clang/ScalableStaticAnalysis/Core/WholeProgramAnalysis/WPASuite.h
A clang/include/clang/ScalableStaticAnalysis/Frontend/TUSummaryExtractorFrontendAction.h
A clang/include/clang/ScalableStaticAnalysis/SSAFBuiltinForceLinker.h
A clang/include/clang/ScalableStaticAnalysis/SSAFForceLinker.h
A clang/include/clang/ScalableStaticAnalysis/SourceTransformation/SourceEditEmitter.h
A clang/include/clang/ScalableStaticAnalysis/SourceTransformation/Transformation.h
A clang/include/clang/ScalableStaticAnalysis/SourceTransformation/TransformationRegistry.h
A clang/include/clang/ScalableStaticAnalysis/SourceTransformation/TransformationReportEmitter.h
A clang/include/clang/ScalableStaticAnalysis/Tool/Utils.h
R clang/include/clang/ScalableStaticAnalysisFramework/Analyses/CallGraph/CallGraphSummary.h
R clang/include/clang/ScalableStaticAnalysisFramework/Analyses/EntityPointerLevel/EntityPointerLevel.h
R clang/include/clang/ScalableStaticAnalysisFramework/Analyses/EntityPointerLevel/EntityPointerLevelFormat.h
R clang/include/clang/ScalableStaticAnalysisFramework/Analyses/PointerFlow/PointerFlow.h
R clang/include/clang/ScalableStaticAnalysisFramework/Analyses/PointerFlow/PointerFlowAnalysis.h
R clang/include/clang/ScalableStaticAnalysisFramework/Analyses/PointerFlow/PointerFlowFormat.h
R clang/include/clang/ScalableStaticAnalysisFramework/Analyses/UnsafeBufferUsage/UnsafeBufferUsage.h
R clang/include/clang/ScalableStaticAnalysisFramework/Analyses/UnsafeBufferUsage/UnsafeBufferUsageAnalysis.h
R clang/include/clang/ScalableStaticAnalysisFramework/BuiltinAnchorSources.def
R clang/include/clang/ScalableStaticAnalysisFramework/Core/ASTEntityMapping.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/EntityLinker/EntityLinker.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/EntityLinker/EntitySummaryEncoding.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/EntityLinker/LUSummary.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/EntityLinker/LUSummaryEncoding.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/EntityLinker/TUSummaryEncoding.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/Model/BuildNamespace.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/Model/EntityId.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/Model/EntityIdTable.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/Model/EntityLinkage.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/Model/EntityName.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/Model/PrivateFieldNames.def
R clang/include/clang/ScalableStaticAnalysisFramework/Core/Model/SummaryName.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/Serialization/JSONFormat.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/Serialization/SerializationFormat.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/Serialization/SerializationFormatRegistry.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/SummaryData/LUSummaryConsumer.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/SummaryData/SummaryData.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/SummaryData/SummaryDataBuilder.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/SummaryData/SummaryDataBuilderRegistry.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/SummaryData/SummaryDataStore.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/SummaryData/SummaryDataTraits.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/Support/ErrorBuilder.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/Support/FormatProviders.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/TUSummary/EntitySummary.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/TUSummary/ExtractorRegistry.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/TUSummary/TUSummary.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/TUSummary/TUSummaryBuilder.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/TUSummary/TUSummaryExtractor.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/WholeProgramAnalysis/AnalysisBase.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/WholeProgramAnalysis/AnalysisDriver.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/WholeProgramAnalysis/AnalysisName.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/WholeProgramAnalysis/AnalysisRegistry.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/WholeProgramAnalysis/AnalysisResult.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/WholeProgramAnalysis/AnalysisTraits.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/WholeProgramAnalysis/DerivedAnalysis.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/WholeProgramAnalysis/SummaryAnalysis.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/WholeProgramAnalysis/WPASuite.h
R clang/include/clang/ScalableStaticAnalysisFramework/Frontend/TUSummaryExtractorFrontendAction.h
R clang/include/clang/ScalableStaticAnalysisFramework/SSAFBuiltinForceLinker.h
R clang/include/clang/ScalableStaticAnalysisFramework/SSAFForceLinker.h
R clang/include/clang/ScalableStaticAnalysisFramework/SourceTransformation/SourceEditEmitter.h
R clang/include/clang/ScalableStaticAnalysisFramework/SourceTransformation/Transformation.h
R clang/include/clang/ScalableStaticAnalysisFramework/SourceTransformation/TransformationRegistry.h
R clang/include/clang/ScalableStaticAnalysisFramework/SourceTransformation/TransformationReportEmitter.h
R clang/include/clang/ScalableStaticAnalysisFramework/Tool/Utils.h
M clang/include/clang/Sema/MultiplexExternalSemaSource.h
M clang/include/clang/Sema/SemaOpenCL.h
M clang/include/clang/StaticAnalyzer/Core/BugReporter/BugReporter.h
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/SVals.h
M clang/include/clang/Support/RISCVVIntrinsicUtils.h
M clang/include/module.modulemap
M clang/lib/APINotes/APINotesManager.cpp
M clang/lib/AST/ByteCode/Compiler.cpp
M clang/lib/AST/ByteCode/Compiler.h
M clang/lib/AST/ByteCode/Context.cpp
M clang/lib/AST/ByteCode/EvalEmitter.cpp
M clang/lib/AST/ByteCode/Floating.h
M clang/lib/AST/ByteCode/Interp.cpp
M clang/lib/AST/ByteCode/Interp.h
M clang/lib/AST/ByteCode/InterpBuiltin.cpp
M clang/lib/AST/ByteCode/InterpFrame.cpp
M clang/lib/AST/ByteCode/InterpHelpers.h
M clang/lib/AST/ByteCode/InterpState.h
M clang/lib/AST/CommentLexer.cpp
M clang/lib/AST/CommentParser.cpp
M clang/lib/AST/CommentSema.cpp
M clang/lib/AST/Decl.cpp
M clang/lib/AST/ExprConstant.cpp
M clang/lib/AST/Mangle.cpp
M clang/lib/AST/Type.cpp
M clang/lib/Analysis/FlowSensitive/WatchedLiteralsSolver.cpp
M clang/lib/Analysis/LifetimeSafety/Checker.cpp
M clang/lib/Analysis/LifetimeSafety/FactsGenerator.cpp
M clang/lib/Analysis/LifetimeSafety/LifetimeSafety.cpp
M clang/lib/Basic/Builtins.cpp
M clang/lib/Basic/DarwinSDKInfo.cpp
M clang/lib/Basic/OffloadArch.cpp
M clang/lib/Basic/SourceManager.cpp
M clang/lib/Basic/Targets/AArch64.cpp
M clang/lib/Basic/Targets/AArch64.h
M clang/lib/Basic/Targets/AMDGPU.cpp
M clang/lib/Basic/Targets/AMDGPU.h
M clang/lib/Basic/Targets/ARM.cpp
M clang/lib/Basic/Targets/ARM.h
M clang/lib/Basic/Targets/AVR.cpp
M clang/lib/Basic/Targets/AVR.h
M clang/lib/Basic/Targets/BPF.h
M clang/lib/Basic/Targets/CSKY.cpp
M clang/lib/Basic/Targets/CSKY.h
M clang/lib/Basic/Targets/Hexagon.h
M clang/lib/Basic/Targets/Lanai.cpp
M clang/lib/Basic/Targets/Lanai.h
M clang/lib/Basic/Targets/LoongArch.h
M clang/lib/Basic/Targets/M68k.cpp
M clang/lib/Basic/Targets/M68k.h
M clang/lib/Basic/Targets/Mips.h
M clang/lib/Basic/Targets/NVPTX.h
M clang/lib/Basic/Targets/PPC.h
M clang/lib/Basic/Targets/RISCV.h
M clang/lib/Basic/Targets/Sparc.h
M clang/lib/Basic/Targets/SystemZ.h
M clang/lib/Basic/Targets/WebAssembly.cpp
M clang/lib/Basic/Targets/WebAssembly.h
M clang/lib/Basic/Targets/X86.h
M clang/lib/Basic/Targets/Xtensa.h
M clang/lib/CIR/CodeGen/CIRGenAtomic.cpp
M clang/lib/CIR/CodeGen/CIRGenBuilder.h
M clang/lib/CIR/CodeGen/CIRGenBuiltin.cpp
M clang/lib/CIR/CodeGen/CIRGenBuiltinNVPTX.cpp
M clang/lib/CIR/CodeGen/CIRGenCall.cpp
M clang/lib/CIR/CodeGen/CIRGenExpr.cpp
M clang/lib/CIR/CodeGen/CIRGenExprCXX.cpp
M clang/lib/CIR/CodeGen/CIRGenExprConstant.cpp
M clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
M clang/lib/CIR/CodeGen/CIRGenFunction.cpp
M clang/lib/CIR/CodeGen/CIRGenFunction.h
M clang/lib/CIR/CodeGen/CIRGenModule.cpp
M clang/lib/CIR/CodeGen/CIRGenModule.h
M clang/lib/CIR/CodeGen/CIRGenOpenACC.cpp
M clang/lib/CIR/CodeGen/CIRGenOpenACCRecipe.cpp
M clang/lib/CIR/CodeGen/CIRGenOpenMPClause.cpp
A clang/lib/CIR/CodeGen/CIRGenOpenMPClause.h
M clang/lib/CIR/CodeGen/CIRGenRecordLayoutBuilder.cpp
M clang/lib/CIR/CodeGen/CIRGenStmt.cpp
M clang/lib/CIR/CodeGen/CIRGenStmtOpenACC.cpp
M clang/lib/CIR/CodeGen/CIRGenStmtOpenMP.cpp
M clang/lib/CIR/CodeGen/CIRGenTypes.h
M clang/lib/CIR/CodeGen/CIRGenValue.h
M clang/lib/CIR/Dialect/IR/CIRAttrs.cpp
M clang/lib/CIR/Dialect/IR/CIRDialect.cpp
M clang/lib/CIR/Dialect/IR/CIRMemorySlot.cpp
M clang/lib/CIR/Dialect/Transforms/CIRCanonicalize.cpp
M clang/lib/CIR/Dialect/Transforms/CXXABILowering.cpp
M clang/lib/CIR/Dialect/Transforms/EHABILowering.cpp
M clang/lib/CIR/Dialect/Transforms/FlattenCFG.cpp
M clang/lib/CIR/Dialect/Transforms/GotoSolver.cpp
M clang/lib/CIR/Dialect/Transforms/TargetLowering/CIRABIRewriteContext.cpp
M clang/lib/CIR/Dialect/Transforms/TargetLowering/LowerItaniumCXXABI.cpp
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.h
M clang/lib/CIR/Lowering/LoweringHelpers.cpp
M clang/lib/CMakeLists.txt
M clang/lib/CodeGen/CGCall.cpp
M clang/lib/CodeGen/CGExpr.cpp
M clang/lib/CodeGen/CGExprConstant.cpp
M clang/lib/CodeGen/CGExprScalar.cpp
M clang/lib/CodeGen/CGOpenMPRuntimeGPU.cpp
M clang/lib/CodeGen/CGStmtOpenMP.cpp
M clang/lib/CodeGen/CodeGenModule.cpp
M clang/lib/CodeGen/CodeGenModule.h
M clang/lib/CodeGen/CodeGenTypes.cpp
M clang/lib/CodeGen/ModuleBuilder.cpp
M clang/lib/CodeGen/TargetBuiltins/ARM.cpp
M clang/lib/CodeGen/TargetBuiltins/RISCV.cpp
M clang/lib/CodeGen/Targets/RISCV.cpp
M clang/lib/CodeGen/Targets/X86.cpp
M clang/lib/Driver/Action.cpp
M clang/lib/Driver/CMakeLists.txt
M clang/lib/Driver/Compilation.cpp
M clang/lib/Driver/Driver.cpp
M clang/lib/Driver/SanitizerArgs.cpp
M clang/lib/Driver/ToolChain.cpp
M clang/lib/Driver/ToolChains/AIX.cpp
M clang/lib/Driver/ToolChains/AIX.h
M clang/lib/Driver/ToolChains/AMDGPU.cpp
M clang/lib/Driver/ToolChains/AMDGPU.h
M clang/lib/Driver/ToolChains/AMDGPUOpenMP.cpp
M clang/lib/Driver/ToolChains/AMDGPUOpenMP.h
M clang/lib/Driver/ToolChains/AVR.cpp
M clang/lib/Driver/ToolChains/AVR.h
M clang/lib/Driver/ToolChains/BareMetal.cpp
M clang/lib/Driver/ToolChains/BareMetal.h
M clang/lib/Driver/ToolChains/CSKYToolChain.cpp
M clang/lib/Driver/ToolChains/CSKYToolChain.h
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/lib/Driver/ToolChains/CommonArgs.cpp
M clang/lib/Driver/ToolChains/CrossWindows.cpp
M clang/lib/Driver/ToolChains/CrossWindows.h
M clang/lib/Driver/ToolChains/Cuda.cpp
M clang/lib/Driver/ToolChains/Cuda.h
M clang/lib/Driver/ToolChains/Darwin.cpp
M clang/lib/Driver/ToolChains/Darwin.h
M clang/lib/Driver/ToolChains/Flang.cpp
M clang/lib/Driver/ToolChains/Flang.h
M clang/lib/Driver/ToolChains/FreeBSD.cpp
M clang/lib/Driver/ToolChains/FreeBSD.h
M clang/lib/Driver/ToolChains/Fuchsia.cpp
M clang/lib/Driver/ToolChains/Fuchsia.h
M clang/lib/Driver/ToolChains/Gnu.cpp
M clang/lib/Driver/ToolChains/Gnu.h
M clang/lib/Driver/ToolChains/HIPAMD.cpp
M clang/lib/Driver/ToolChains/HIPAMD.h
M clang/lib/Driver/ToolChains/HIPSPV.cpp
M clang/lib/Driver/ToolChains/HIPSPV.h
M clang/lib/Driver/ToolChains/HIPUtility.cpp
M clang/lib/Driver/ToolChains/HLSL.cpp
M clang/lib/Driver/ToolChains/HLSL.h
M clang/lib/Driver/ToolChains/Haiku.cpp
M clang/lib/Driver/ToolChains/Haiku.h
M clang/lib/Driver/ToolChains/Hexagon.cpp
M clang/lib/Driver/ToolChains/Hexagon.h
M clang/lib/Driver/ToolChains/Linux.cpp
M clang/lib/Driver/ToolChains/Linux.h
M clang/lib/Driver/ToolChains/MSP430.cpp
M clang/lib/Driver/ToolChains/MSP430.h
M clang/lib/Driver/ToolChains/MSVC.cpp
M clang/lib/Driver/ToolChains/MSVC.h
M clang/lib/Driver/ToolChains/Managarm.cpp
M clang/lib/Driver/ToolChains/Managarm.h
M clang/lib/Driver/ToolChains/MinGW.cpp
M clang/lib/Driver/ToolChains/MinGW.h
M clang/lib/Driver/ToolChains/NetBSD.cpp
M clang/lib/Driver/ToolChains/NetBSD.h
M clang/lib/Driver/ToolChains/OHOS.cpp
M clang/lib/Driver/ToolChains/OHOS.h
M clang/lib/Driver/ToolChains/OpenBSD.cpp
M clang/lib/Driver/ToolChains/OpenBSD.h
M clang/lib/Driver/ToolChains/PS4CPU.cpp
M clang/lib/Driver/ToolChains/PS4CPU.h
M clang/lib/Driver/ToolChains/SPIRVOpenMP.cpp
M clang/lib/Driver/ToolChains/SPIRVOpenMP.h
M clang/lib/Driver/ToolChains/SYCL.cpp
M clang/lib/Driver/ToolChains/SYCL.h
M clang/lib/Driver/ToolChains/Serenity.cpp
M clang/lib/Driver/ToolChains/Serenity.h
M clang/lib/Driver/ToolChains/Solaris.cpp
M clang/lib/Driver/ToolChains/Solaris.h
M clang/lib/Driver/ToolChains/VEToolchain.cpp
M clang/lib/Driver/ToolChains/VEToolchain.h
M clang/lib/Driver/ToolChains/WebAssembly.cpp
M clang/lib/Driver/ToolChains/WebAssembly.h
M clang/lib/Driver/ToolChains/XCore.cpp
M clang/lib/Driver/ToolChains/XCore.h
M clang/lib/Driver/ToolChains/ZOS.cpp
M clang/lib/Driver/ToolChains/ZOS.h
M clang/lib/Format/CMakeLists.txt
M clang/lib/Format/FormatToken.h
M clang/lib/Format/TokenAnnotator.cpp
M clang/lib/Format/UnwrappedLineParser.cpp
M clang/lib/Frontend/CompilerInvocation.cpp
M clang/lib/FrontendTool/CMakeLists.txt
M clang/lib/FrontendTool/ExecuteCompilerInvocation.cpp
M clang/lib/Headers/__clang_hip_libdevice_declares.h
M clang/lib/Headers/avx512vlvnniintrin.h
M clang/lib/Headers/avx512vnniintrin.h
M clang/lib/Headers/avxvnniintrin.h
M clang/lib/Headers/riscv_packed_simd.h
M clang/lib/Lex/PPCaching.cpp
M clang/lib/Lex/PPLexerChange.cpp
M clang/lib/Lex/Preprocessor.cpp
M clang/lib/Parse/ParseCXXInlineMethods.cpp
M clang/lib/Parse/ParseDecl.cpp
A clang/lib/ScalableStaticAnalysis/Analyses/CMakeLists.txt
A clang/lib/ScalableStaticAnalysis/Analyses/CallGraph/CallGraphExtractor.cpp
A clang/lib/ScalableStaticAnalysis/Analyses/CallGraph/CallGraphJSONFormat.cpp
A clang/lib/ScalableStaticAnalysis/Analyses/EntityPointerLevel/EntityPointerLevel.cpp
A clang/lib/ScalableStaticAnalysis/Analyses/EntityPointerLevel/EntityPointerLevelFormat.cpp
A clang/lib/ScalableStaticAnalysis/Analyses/PointerFlow/PointerFlow.cpp
A clang/lib/ScalableStaticAnalysis/Analyses/PointerFlow/PointerFlowAnalysis.cpp
A clang/lib/ScalableStaticAnalysis/Analyses/PointerFlow/PointerFlowExtractor.cpp
A clang/lib/ScalableStaticAnalysis/Analyses/PointerFlow/PointerFlowFormat.cpp
A clang/lib/ScalableStaticAnalysis/Analyses/SSAFAnalysesCommon.cpp
A clang/lib/ScalableStaticAnalysis/Analyses/SSAFAnalysesCommon.h
A clang/lib/ScalableStaticAnalysis/Analyses/UnsafeBufferUsage/UnsafeBufferUsage.cpp
A clang/lib/ScalableStaticAnalysis/Analyses/UnsafeBufferUsage/UnsafeBufferUsageAnalysis.cpp
A clang/lib/ScalableStaticAnalysis/Analyses/UnsafeBufferUsage/UnsafeBufferUsageExtractor.cpp
A clang/lib/ScalableStaticAnalysis/Analyses/UnsafeBufferUsage/UnsafeBufferUsageFormat.cpp
A clang/lib/ScalableStaticAnalysis/CMakeLists.txt
A clang/lib/ScalableStaticAnalysis/Core/ASTEntityMapping.cpp
A clang/lib/ScalableStaticAnalysis/Core/CMakeLists.txt
A clang/lib/ScalableStaticAnalysis/Core/EntityLinker/EntityLinker.cpp
A clang/lib/ScalableStaticAnalysis/Core/Model/BuildNamespace.cpp
A clang/lib/ScalableStaticAnalysis/Core/Model/EntityId.cpp
A clang/lib/ScalableStaticAnalysis/Core/Model/EntityIdTable.cpp
A clang/lib/ScalableStaticAnalysis/Core/Model/EntityLinkage.cpp
A clang/lib/ScalableStaticAnalysis/Core/Model/EntityName.cpp
A clang/lib/ScalableStaticAnalysis/Core/Model/SummaryName.cpp
A clang/lib/ScalableStaticAnalysis/Core/ModelStringConversions.h
A clang/lib/ScalableStaticAnalysis/Core/Serialization/JSONFormat/Artifact.cpp
A clang/lib/ScalableStaticAnalysis/Core/Serialization/JSONFormat/JSONEntitySummaryEncoding.cpp
A clang/lib/ScalableStaticAnalysis/Core/Serialization/JSONFormat/JSONEntitySummaryEncoding.h
A clang/lib/ScalableStaticAnalysis/Core/Serialization/JSONFormat/JSONFormatImpl.cpp
A clang/lib/ScalableStaticAnalysis/Core/Serialization/JSONFormat/JSONFormatImpl.h
A clang/lib/ScalableStaticAnalysis/Core/Serialization/JSONFormat/LUSummary.cpp
A clang/lib/ScalableStaticAnalysis/Core/Serialization/JSONFormat/LUSummaryEncoding.cpp
A clang/lib/ScalableStaticAnalysis/Core/Serialization/JSONFormat/TUSummary.cpp
A clang/lib/ScalableStaticAnalysis/Core/Serialization/JSONFormat/TUSummaryEncoding.cpp
A clang/lib/ScalableStaticAnalysis/Core/Serialization/JSONFormat/WPASuite.cpp
A clang/lib/ScalableStaticAnalysis/Core/Serialization/SerializationFormatRegistry.cpp
A clang/lib/ScalableStaticAnalysis/Core/SummaryData/LUSummaryConsumer.cpp
A clang/lib/ScalableStaticAnalysis/Core/SummaryData/SummaryDataBuilderRegistry.cpp
A clang/lib/ScalableStaticAnalysis/Core/Support/ErrorBuilder.cpp
A clang/lib/ScalableStaticAnalysis/Core/TUSummary/ExtractorRegistry.cpp
A clang/lib/ScalableStaticAnalysis/Core/TUSummary/TUSummaryBuilder.cpp
A clang/lib/ScalableStaticAnalysis/Core/TUSummary/TUSummaryExtractor.cpp
A clang/lib/ScalableStaticAnalysis/Core/WholeProgramAnalysis/AnalysisDriver.cpp
A clang/lib/ScalableStaticAnalysis/Core/WholeProgramAnalysis/AnalysisName.cpp
A clang/lib/ScalableStaticAnalysis/Core/WholeProgramAnalysis/AnalysisRegistry.cpp
A clang/lib/ScalableStaticAnalysis/Frontend/CMakeLists.txt
A clang/lib/ScalableStaticAnalysis/Frontend/TUSummaryExtractorFrontendAction.cpp
A clang/lib/ScalableStaticAnalysis/Plugins/CMakeLists.txt
A clang/lib/ScalableStaticAnalysis/Plugins/ExamplePlugin/AnalysisResults.h
A clang/lib/ScalableStaticAnalysis/Plugins/ExamplePlugin/CMakeLists.txt
A clang/lib/ScalableStaticAnalysis/Plugins/ExamplePlugin/PairsAnalysis.cpp
A clang/lib/ScalableStaticAnalysis/Plugins/ExamplePlugin/TagsAnalysis.cpp
A clang/lib/ScalableStaticAnalysis/Plugins/ExamplePlugin/TagsPairsAnalysis.cpp
A clang/lib/ScalableStaticAnalysis/SourceTransformation/CMakeLists.txt
A clang/lib/ScalableStaticAnalysis/SourceTransformation/TransformationRegistry.cpp
A clang/lib/ScalableStaticAnalysis/Tool/CMakeLists.txt
A clang/lib/ScalableStaticAnalysis/Tool/Utils.cpp
R clang/lib/ScalableStaticAnalysisFramework/Analyses/CMakeLists.txt
R clang/lib/ScalableStaticAnalysisFramework/Analyses/CallGraph/CallGraphExtractor.cpp
R clang/lib/ScalableStaticAnalysisFramework/Analyses/CallGraph/CallGraphJSONFormat.cpp
R clang/lib/ScalableStaticAnalysisFramework/Analyses/EntityPointerLevel/EntityPointerLevel.cpp
R clang/lib/ScalableStaticAnalysisFramework/Analyses/EntityPointerLevel/EntityPointerLevelFormat.cpp
R clang/lib/ScalableStaticAnalysisFramework/Analyses/PointerFlow/PointerFlow.cpp
R clang/lib/ScalableStaticAnalysisFramework/Analyses/PointerFlow/PointerFlowAnalysis.cpp
R clang/lib/ScalableStaticAnalysisFramework/Analyses/PointerFlow/PointerFlowExtractor.cpp
R clang/lib/ScalableStaticAnalysisFramework/Analyses/PointerFlow/PointerFlowFormat.cpp
R clang/lib/ScalableStaticAnalysisFramework/Analyses/SSAFAnalysesCommon.cpp
R clang/lib/ScalableStaticAnalysisFramework/Analyses/SSAFAnalysesCommon.h
R clang/lib/ScalableStaticAnalysisFramework/Analyses/UnsafeBufferUsage/UnsafeBufferUsage.cpp
R clang/lib/ScalableStaticAnalysisFramework/Analyses/UnsafeBufferUsage/UnsafeBufferUsageAnalysis.cpp
R clang/lib/ScalableStaticAnalysisFramework/Analyses/UnsafeBufferUsage/UnsafeBufferUsageExtractor.cpp
R clang/lib/ScalableStaticAnalysisFramework/Analyses/UnsafeBufferUsage/UnsafeBufferUsageFormat.cpp
R clang/lib/ScalableStaticAnalysisFramework/CMakeLists.txt
R clang/lib/ScalableStaticAnalysisFramework/Core/ASTEntityMapping.cpp
R clang/lib/ScalableStaticAnalysisFramework/Core/CMakeLists.txt
R clang/lib/ScalableStaticAnalysisFramework/Core/EntityLinker/EntityLinker.cpp
R clang/lib/ScalableStaticAnalysisFramework/Core/Model/BuildNamespace.cpp
R clang/lib/ScalableStaticAnalysisFramework/Core/Model/EntityId.cpp
R clang/lib/ScalableStaticAnalysisFramework/Core/Model/EntityIdTable.cpp
R clang/lib/ScalableStaticAnalysisFramework/Core/Model/EntityLinkage.cpp
R clang/lib/ScalableStaticAnalysisFramework/Core/Model/EntityName.cpp
R clang/lib/ScalableStaticAnalysisFramework/Core/Model/SummaryName.cpp
R clang/lib/ScalableStaticAnalysisFramework/Core/ModelStringConversions.h
R clang/lib/ScalableStaticAnalysisFramework/Core/Serialization/JSONFormat/Artifact.cpp
R clang/lib/ScalableStaticAnalysisFramework/Core/Serialization/JSONFormat/JSONEntitySummaryEncoding.cpp
R clang/lib/ScalableStaticAnalysisFramework/Core/Serialization/JSONFormat/JSONEntitySummaryEncoding.h
R clang/lib/ScalableStaticAnalysisFramework/Core/Serialization/JSONFormat/JSONFormatImpl.cpp
R clang/lib/ScalableStaticAnalysisFramework/Core/Serialization/JSONFormat/JSONFormatImpl.h
R clang/lib/ScalableStaticAnalysisFramework/Core/Serialization/JSONFormat/LUSummary.cpp
R clang/lib/ScalableStaticAnalysisFramework/Core/Serialization/JSONFormat/LUSummaryEncoding.cpp
R clang/lib/ScalableStaticAnalysisFramework/Core/Serialization/JSONFormat/TUSummary.cpp
R clang/lib/ScalableStaticAnalysisFramework/Core/Serialization/JSONFormat/TUSummaryEncoding.cpp
R clang/lib/ScalableStaticAnalysisFramework/Core/Serialization/JSONFormat/WPASuite.cpp
R clang/lib/ScalableStaticAnalysisFramework/Core/Serialization/SerializationFormatRegistry.cpp
R clang/lib/ScalableStaticAnalysisFramework/Core/SummaryData/LUSummaryConsumer.cpp
R clang/lib/ScalableStaticAnalysisFramework/Core/SummaryData/SummaryDataBuilderRegistry.cpp
R clang/lib/ScalableStaticAnalysisFramework/Core/Support/ErrorBuilder.cpp
R clang/lib/ScalableStaticAnalysisFramework/Core/TUSummary/ExtractorRegistry.cpp
R clang/lib/ScalableStaticAnalysisFramework/Core/TUSummary/TUSummaryBuilder.cpp
R clang/lib/ScalableStaticAnalysisFramework/Core/TUSummary/TUSummaryExtractor.cpp
R clang/lib/ScalableStaticAnalysisFramework/Core/WholeProgramAnalysis/AnalysisDriver.cpp
R clang/lib/ScalableStaticAnalysisFramework/Core/WholeProgramAnalysis/AnalysisName.cpp
R clang/lib/ScalableStaticAnalysisFramework/Core/WholeProgramAnalysis/AnalysisRegistry.cpp
R clang/lib/ScalableStaticAnalysisFramework/Frontend/CMakeLists.txt
R clang/lib/ScalableStaticAnalysisFramework/Frontend/TUSummaryExtractorFrontendAction.cpp
R clang/lib/ScalableStaticAnalysisFramework/Plugins/CMakeLists.txt
R clang/lib/ScalableStaticAnalysisFramework/Plugins/ExamplePlugin/AnalysisResults.h
R clang/lib/ScalableStaticAnalysisFramework/Plugins/ExamplePlugin/CMakeLists.txt
R clang/lib/ScalableStaticAnalysisFramework/Plugins/ExamplePlugin/PairsAnalysis.cpp
R clang/lib/ScalableStaticAnalysisFramework/Plugins/ExamplePlugin/TagsAnalysis.cpp
R clang/lib/ScalableStaticAnalysisFramework/Plugins/ExamplePlugin/TagsPairsAnalysis.cpp
R clang/lib/ScalableStaticAnalysisFramework/SourceTransformation/CMakeLists.txt
R clang/lib/ScalableStaticAnalysisFramework/SourceTransformation/TransformationRegistry.cpp
R clang/lib/ScalableStaticAnalysisFramework/Tool/CMakeLists.txt
R clang/lib/ScalableStaticAnalysisFramework/Tool/Utils.cpp
M clang/lib/Sema/AnalysisBasedWarnings.cpp
M clang/lib/Sema/MultiplexExternalSemaSource.cpp
M clang/lib/Sema/SemaAMDGPU.cpp
M clang/lib/Sema/SemaAPINotes.cpp
M clang/lib/Sema/SemaChecking.cpp
M clang/lib/Sema/SemaDeclCXX.cpp
M clang/lib/Sema/SemaExpr.cpp
M clang/lib/Sema/SemaLifetimeSafety.h
M clang/lib/Sema/SemaOpenCL.cpp
M clang/lib/Sema/SemaTemplate.cpp
M clang/lib/Sema/SemaTemplateInstantiate.cpp
M clang/lib/Sema/SemaType.cpp
M clang/lib/Sema/TreeTransform.h
M clang/lib/Serialization/ASTWriter.cpp
M clang/lib/StaticAnalyzer/Checkers/CXXDeleteChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/MacOSKeychainAPIChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/NonNullParamChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/StdLibraryFunctionsChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/UndefCapturedBlockVarChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/UndefinedNewArraySizeChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/UnixAPIChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/VLASizeChecker.cpp
M clang/lib/StaticAnalyzer/Core/BugReporter.cpp
M clang/lib/StaticAnalyzer/Core/ExprEngine.cpp
M clang/lib/StaticAnalyzer/Core/ExprEngineCallAndReturn.cpp
M clang/lib/Support/RISCVVIntrinsicUtils.cpp
M clang/lib/Tooling/DependencyScanningTool.cpp
M clang/test/AST/ByteCode/builtin-functions.cpp
A clang/test/AST/ByteCode/command-line-options.cpp
M clang/test/AST/ByteCode/dynamic-cast.cpp
A clang/test/AST/ByteCode/evaluate-dtor-codegen.cpp
A clang/test/AST/ByteCode/evaluate-dtor.cpp
M clang/test/AST/ByteCode/new-delete.cpp
R clang/test/AST/ast-dump-openmp-atomic.c
R clang/test/AST/ast-dump-openmp-barrier.c
R clang/test/AST/ast-dump-openmp-cancel.c
R clang/test/AST/ast-dump-openmp-cancellation-point.c
R clang/test/AST/ast-dump-openmp-critical.c
R clang/test/AST/ast-dump-openmp-distribute-parallel-for-simd.c
R clang/test/AST/ast-dump-openmp-distribute-parallel-for.c
R clang/test/AST/ast-dump-openmp-distribute-simd.c
R clang/test/AST/ast-dump-openmp-distribute.c
R clang/test/AST/ast-dump-openmp-flush.c
R clang/test/AST/ast-dump-openmp-for-simd.c
R clang/test/AST/ast-dump-openmp-for.c
R clang/test/AST/ast-dump-openmp-master.c
R clang/test/AST/ast-dump-openmp-ordered.c
R clang/test/AST/ast-dump-openmp-parallel-for-simd.c
R clang/test/AST/ast-dump-openmp-parallel-for.c
R clang/test/AST/ast-dump-openmp-parallel-sections.c
R clang/test/AST/ast-dump-openmp-parallel.c
R clang/test/AST/ast-dump-openmp-section.c
R clang/test/AST/ast-dump-openmp-sections.c
R clang/test/AST/ast-dump-openmp-simd.c
R clang/test/AST/ast-dump-openmp-single.c
R clang/test/AST/ast-dump-openmp-split.c
R clang/test/AST/ast-dump-openmp-target-data.c
R clang/test/AST/ast-dump-openmp-target-enter-data.c
R clang/test/AST/ast-dump-openmp-target-exit-data.c
R clang/test/AST/ast-dump-openmp-target-parallel-for-simd.c
R clang/test/AST/ast-dump-openmp-target-parallel-for.c
R clang/test/AST/ast-dump-openmp-target-parallel.c
R clang/test/AST/ast-dump-openmp-target-simd.c
R clang/test/AST/ast-dump-openmp-target-teams-distribute-parallel-for-simd.c
R clang/test/AST/ast-dump-openmp-target-teams-distribute-parallel-for.c
R clang/test/AST/ast-dump-openmp-target-teams-distribute-simd.c
R clang/test/AST/ast-dump-openmp-target-teams-distribute.c
R clang/test/AST/ast-dump-openmp-target-teams.c
R clang/test/AST/ast-dump-openmp-target-update.c
R clang/test/AST/ast-dump-openmp-target.c
R clang/test/AST/ast-dump-openmp-task.c
R clang/test/AST/ast-dump-openmp-taskgroup.c
R clang/test/AST/ast-dump-openmp-taskloop-simd.c
R clang/test/AST/ast-dump-openmp-taskloop.c
R clang/test/AST/ast-dump-openmp-taskwait.c
R clang/test/AST/ast-dump-openmp-taskyield.c
R clang/test/AST/ast-dump-openmp-teams-distribute-parallel-for-simd.c
R clang/test/AST/ast-dump-openmp-teams-distribute-parallel-for.c
R clang/test/AST/ast-dump-openmp-teams-distribute-simd.c
R clang/test/AST/ast-dump-openmp-teams-distribute.c
R clang/test/AST/ast-dump-openmp-teams.c
A clang/test/AST/builtin-name-registration.c
A clang/test/AST/pr198903.cpp
M clang/test/AST/undocumented-attrs.cpp
A clang/test/Analysis/Scalable/PointerFlow/entity-name-no-conflict.cpp
A clang/test/Analysis/Scalable/PointerFlow/multi-decl-contributor.cpp
M clang/test/Analysis/bstring.c
M clang/test/Analysis/malloc.c
A clang/test/Analysis/pr169302.cpp
M clang/test/Analysis/pr22954.c
M clang/test/C/C23/n3037.c
A clang/test/CIR/CodeGen/atomic-libcall.c
A clang/test/CIR/CodeGen/builtin-atomic-is-lock-free.c
A clang/test/CIR/CodeGen/cleanup-scope-throw-caught.cpp
A clang/test/CIR/CodeGen/const-label-addr.c
M clang/test/CIR/CodeGen/constant-inits.cpp
A clang/test/CIR/CodeGen/member-pointer-null-init.cpp
A clang/test/CIR/CodeGen/new-array-init.cpp
M clang/test/CIR/CodeGen/new.cpp
M clang/test/CIR/CodeGen/no-unique-address.cpp
M clang/test/CIR/CodeGen/nonzeroinit-struct.cpp
M clang/test/CIR/CodeGen/paren-list-agg-init.cpp
M clang/test/CIR/CodeGen/pointer-to-data-member.cpp
M clang/test/CIR/CodeGen/record-zero-init-padding.c
A clang/test/CIR/CodeGen/trivially-recursive-skip.cpp
A clang/test/CIR/CodeGen/unary-expr-or-type-trait-32bit.cpp
A clang/test/CIR/CodeGenBuiltins/builtin-nontemporal.cpp
A clang/test/CIR/CodeGenBuiltins/builtin-reduce-bitwise.c
M clang/test/CIR/CodeGenBuiltins/builtin-undef-rvalue.cpp
A clang/test/CIR/CodeGenBuiltins/builtins-elementwise-bool-nyi.c
M clang/test/CIR/CodeGenBuiltins/builtins-elementwise.c
M clang/test/CIR/CodeGenCXX/new-array-init.cpp
M clang/test/CIR/CodeGenOpenACC/cache.c
M clang/test/CIR/CodeGenOpenACC/combined-copy.c
M clang/test/CIR/CodeGenOpenACC/combined-copy.cpp
M clang/test/CIR/CodeGenOpenACC/combined-firstprivate-clause.cpp
M clang/test/CIR/CodeGenOpenACC/combined-private-clause.cpp
M clang/test/CIR/CodeGenOpenACC/combined-reduction-clause-default-ops.cpp
M clang/test/CIR/CodeGenOpenACC/combined-reduction-clause-float.cpp
M clang/test/CIR/CodeGenOpenACC/combined-reduction-clause-inline-ops.cpp
M clang/test/CIR/CodeGenOpenACC/combined-reduction-clause-int.cpp
M clang/test/CIR/CodeGenOpenACC/combined-reduction-clause-outline-ops.cpp
M clang/test/CIR/CodeGenOpenACC/combined.cpp
M clang/test/CIR/CodeGenOpenACC/compute-copy.c
M clang/test/CIR/CodeGenOpenACC/compute-copy.cpp
M clang/test/CIR/CodeGenOpenACC/compute-firstprivate-clause.c
M clang/test/CIR/CodeGenOpenACC/compute-firstprivate-clause.cpp
M clang/test/CIR/CodeGenOpenACC/compute-private-clause.c
M clang/test/CIR/CodeGenOpenACC/compute-private-clause.cpp
M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-default-ops.c
M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-default-ops.cpp
M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-float.c
M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-float.cpp
M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-inline-ops.cpp
M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-int.c
M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-int.cpp
M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-outline-ops.cpp
M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-unsigned-int.c
M clang/test/CIR/CodeGenOpenACC/data.c
M clang/test/CIR/CodeGenOpenACC/declare-copy.cpp
M clang/test/CIR/CodeGenOpenACC/declare-copyin.cpp
M clang/test/CIR/CodeGenOpenACC/declare-copyout.cpp
M clang/test/CIR/CodeGenOpenACC/declare-create.cpp
M clang/test/CIR/CodeGenOpenACC/declare-deviceresident.cpp
M clang/test/CIR/CodeGenOpenACC/declare-link.cpp
M clang/test/CIR/CodeGenOpenACC/declare-present.cpp
M clang/test/CIR/CodeGenOpenACC/enter-data.c
M clang/test/CIR/CodeGenOpenACC/exit-data.c
M clang/test/CIR/CodeGenOpenACC/firstprivate-clause-recipes.cpp
M clang/test/CIR/CodeGenOpenACC/host_data.c
M clang/test/CIR/CodeGenOpenACC/init.c
M clang/test/CIR/CodeGenOpenACC/kernels.c
M clang/test/CIR/CodeGenOpenACC/loop-private-clause.cpp
M clang/test/CIR/CodeGenOpenACC/loop-reduction-clause-default-ops.cpp
M clang/test/CIR/CodeGenOpenACC/loop-reduction-clause-float.cpp
M clang/test/CIR/CodeGenOpenACC/loop-reduction-clause-inline-ops.cpp
M clang/test/CIR/CodeGenOpenACC/loop-reduction-clause-int.cpp
M clang/test/CIR/CodeGenOpenACC/loop-reduction-clause-outline-ops.cpp
M clang/test/CIR/CodeGenOpenACC/loop.cpp
M clang/test/CIR/CodeGenOpenACC/parallel.c
M clang/test/CIR/CodeGenOpenACC/private-clause-array-recipes-CtorDtor.cpp
M clang/test/CIR/CodeGenOpenACC/private-clause-array-recipes-NoOps.cpp
M clang/test/CIR/CodeGenOpenACC/private-clause-pointer-array-recipes-CtorDtor.cpp
M clang/test/CIR/CodeGenOpenACC/private-clause-pointer-array-recipes-NoOps.cpp
M clang/test/CIR/CodeGenOpenACC/private-clause-pointer-array-recipes-int.cpp
M clang/test/CIR/CodeGenOpenACC/private-clause-pointer-recipes-CtorDtor.cpp
M clang/test/CIR/CodeGenOpenACC/private-clause-pointer-recipes-NoOps.cpp
M clang/test/CIR/CodeGenOpenACC/private-clause-pointer-recipes-int.cpp
M clang/test/CIR/CodeGenOpenACC/reduction-clause-recipes.cpp
M clang/test/CIR/CodeGenOpenACC/serial.c
M clang/test/CIR/CodeGenOpenACC/set.c
M clang/test/CIR/CodeGenOpenACC/shutdown.c
M clang/test/CIR/CodeGenOpenACC/update.c
M clang/test/CIR/CodeGenOpenACC/wait.c
M clang/test/CIR/CodeGenOpenMP/not-yet-implemented.c
A clang/test/CIR/CodeGenOpenMP/target-map-llvm-device.c
A clang/test/CIR/CodeGenOpenMP/target-map-llvm-host.c
A clang/test/CIR/CodeGenOpenMP/target-map.c
A clang/test/CIR/IR/builtin-int-cast.cir
A clang/test/CIR/IR/invalid-builtin-int-cast.cir
M clang/test/CIR/IR/invalid-data-member.cir
A clang/test/CIR/Lowering/builtin-int-cast.cir
M clang/test/CIR/Lowering/const-array-bulk-lowering-fallbacks.cir
M clang/test/CIR/Lowering/const-array-of-pointers.cir
M clang/test/CIR/Lowering/omp-target-map.cir
A clang/test/CIR/Transforms/abi-lowering/indirect-byval.cir
A clang/test/CIR/Transforms/builtin-int-cast-fold.cir
M clang/test/CIR/Transforms/omp-mark-declare-target.cir
M clang/test/CXX/drs/cwg5xx.cpp
M clang/test/CXX/expr/expr.const/p6-2a.cpp
M clang/test/ClangScanDeps/modules-full-by-mult-mod-names-diagnostics.c
M clang/test/CodeGen/AArch64/fp8-intrinsics/acle_neon_fp8_reinterpret.c
M clang/test/CodeGen/AArch64/neon-intrinsics.c
M clang/test/CodeGen/AArch64/neon/bf16-getset.c
M clang/test/CodeGen/AArch64/neon/subtraction.c
M clang/test/CodeGen/AArch64/sme2p3-intrinsics/acle_sme2p3_luti6.c
M clang/test/CodeGen/AArch64/sve2p3-intrinsics/acle_sve2p3_luti6.c
M clang/test/CodeGen/AArch64/sve2p3-intrinsics/acle_sve2p3_luti6_lane_x2.c
M clang/test/CodeGen/RISCV/riscv-vector-callingconv-llvm-ir.c
M clang/test/CodeGen/RISCV/riscv-vector-callingconv-llvm-ir.cpp
M clang/test/CodeGen/RISCV/rvp-intrinsics.c
M clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/non-overloaded/sf_mm_e4m3_e4m3.c
M clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/non-overloaded/sf_mm_e4m3_e5m2.c
M clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/non-overloaded/sf_mm_e5m2_e4m3.c
M clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/non-overloaded/sf_mm_e5m2_e5m2.c
M clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/overloaded/sf_mm_e4m3_e4m3.c
M clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/overloaded/sf_mm_e4m3_e5m2.c
M clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/overloaded/sf_mm_e5m2_e4m3.c
M clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/overloaded/sf_mm_e5m2_e5m2.c
M clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/overloaded/sf_mm_f_f.c
M clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/overloaded/sf_mm_s_s.c
M clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/overloaded/sf_mm_s_u.c
M clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/overloaded/sf_mm_u_s.c
M clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/overloaded/sf_mm_u_u.c
M clang/test/CodeGen/WebAssembly/builtins-table-externref.c
M clang/test/CodeGen/WebAssembly/builtins-table-funcref.c
M clang/test/CodeGen/WebAssembly/builtins-test-fp-sig.c
M clang/test/CodeGen/WebAssembly/wasm-externref.c
A clang/test/CodeGen/WebAssembly/wasm-funcref-to-ptr-error.c
M clang/test/CodeGen/WebAssembly/wasm-funcref.c
M clang/test/CodeGen/X86/avx-cxx-record.cpp
M clang/test/CodeGen/X86/avx2-builtins.c
M clang/test/CodeGen/X86/avx512vlvnni-builtins.c
M clang/test/CodeGen/X86/avx512vnni-builtins.c
M clang/test/CodeGen/X86/avxvnni-builtins.c
M clang/test/CodeGen/X86/sse41-builtins.c
R clang/test/CodeGen/amdgpu-feature-builtins-invalid-use.cpp
M clang/test/CodeGen/attr-arm-sve-vector-bits-bitcast.c
M clang/test/CodeGen/attr-arm-sve-vector-bits-codegen.c
M clang/test/CodeGen/attr-arm-sve-vector-bits-globals.c
M clang/test/CodeGen/attr-arm-sve-vector-bits-types.c
M clang/test/CodeGen/builtins-wasm.c
M clang/test/CodeGen/convergent-functions.cpp
M clang/test/CodeGen/svboolx2_t.cpp
M clang/test/CodeGen/svboolx4_t.cpp
M clang/test/CodeGenCXX/aarch64-mangle-sve-fixed-vectors.cpp
M clang/test/CodeGenCXX/aarch64-mangle-sve-vectors.cpp
M clang/test/CodeGenCXX/aarch64-sve-fixedtypeinfo.cpp
M clang/test/CodeGenCXX/const-init-cxx2a.cpp
M clang/test/CodeGenCXX/dynamic-cast-exact.cpp
M clang/test/CodeGenCXX/mangle-neon-vectors.cpp
M clang/test/CodeGenCXX/non-const-init-cxx2a.cpp
M clang/test/CodeGenCXX/wasm-reftypes-mangle.cpp
A clang/test/CodeGenHLSL/BasicFeatures/OutArgLifetime.hlsl
M clang/test/CodeGenOpenCL/address-spaces-conversions.cl
M clang/test/CodeGenOpenCL/address-spaces.cl
M clang/test/CodeGenOpenCL/amdgpu-sizeof-alignof.cl
M clang/test/CodeGenOpenCL/builtins-amdgcn-gfx11.cl
M clang/test/CodeGenOpenCL/func-call-dbg-loc.cl
M clang/test/CodeGenSYCL/address-space-conversions.cpp
M clang/test/CodeGenSYCL/amd-address-space-conversions.cpp
M clang/test/CodeGenSYCL/cuda-address-space-conversions.cpp
M clang/test/DebugInfo/Generic/macro.c
M clang/test/Driver/amdgpu-macros.cl
M clang/test/Driver/amdgpu-mcpu.cl
M clang/test/Driver/baremetal-multilib.yaml
M clang/test/Driver/driverkit-path.c
M clang/test/Driver/hip-binding.hip
M clang/test/Driver/hip-device-compile.hip
M clang/test/Driver/hip-link-bundle-archive.hip
M clang/test/Driver/hip-phases.hip
M clang/test/Driver/hip-target-id.hip
M clang/test/Driver/hip-toolchain-no-rdc.hip
M clang/test/Driver/incompatible_sysroot.c
M clang/test/Driver/openmp-offload-gpu.c
M clang/test/Driver/print-enabled-extensions/aarch64-hip12.c
M clang/test/Driver/print-multi-selection-flags.c
A clang/test/Driver/sycl-print-internal-defines.cpp
M clang/test/Driver/wasm-toolchain.c
M clang/test/Driver/zos-ld.c
M clang/test/Index/index-builtin-sve.cpp
M clang/test/Misc/target-invalid-cpu-note/amdgcn.c
M clang/test/Misc/target-invalid-cpu-note/nvptx.c
M clang/test/OpenMP/bug60602.cpp
M clang/test/OpenMP/declare_target_local_codegen.cpp
M clang/test/OpenMP/distribute_codegen.cpp
M clang/test/OpenMP/distribute_firstprivate_codegen.cpp
M clang/test/OpenMP/distribute_lastprivate_codegen.cpp
M clang/test/OpenMP/distribute_parallel_for_codegen.cpp
M clang/test/OpenMP/distribute_parallel_for_firstprivate_codegen.cpp
M clang/test/OpenMP/distribute_parallel_for_if_codegen.cpp
M clang/test/OpenMP/distribute_parallel_for_lastprivate_codegen.cpp
M clang/test/OpenMP/distribute_parallel_for_num_threads_codegen.cpp
M clang/test/OpenMP/distribute_parallel_for_private_codegen.cpp
M clang/test/OpenMP/distribute_parallel_for_proc_bind_codegen.cpp
M clang/test/OpenMP/distribute_parallel_for_simd_codegen.cpp
M clang/test/OpenMP/distribute_parallel_for_simd_firstprivate_codegen.cpp
M clang/test/OpenMP/distribute_parallel_for_simd_if_codegen.cpp
M clang/test/OpenMP/distribute_parallel_for_simd_lastprivate_codegen.cpp
M clang/test/OpenMP/distribute_parallel_for_simd_num_threads_codegen.cpp
M clang/test/OpenMP/distribute_parallel_for_simd_private_codegen.cpp
M clang/test/OpenMP/distribute_parallel_for_simd_proc_bind_codegen.cpp
M clang/test/OpenMP/distribute_private_codegen.cpp
M clang/test/OpenMP/distribute_simd_codegen.cpp
M clang/test/OpenMP/distribute_simd_firstprivate_codegen.cpp
M clang/test/OpenMP/distribute_simd_lastprivate_codegen.cpp
M clang/test/OpenMP/distribute_simd_private_codegen.cpp
M clang/test/OpenMP/distribute_simd_reduction_codegen.cpp
M clang/test/OpenMP/map_struct_ordering.cpp
M clang/test/OpenMP/nvptx_lambda_capturing.cpp
R clang/test/OpenMP/nvptx_teams_reduction_codegen.cpp
M clang/test/OpenMP/reduction_implicit_map.cpp
M clang/test/OpenMP/spirv_target_teams_reduction_addrspace.c
M clang/test/OpenMP/target_codegen_global_capture.cpp
M clang/test/OpenMP/target_default_codegen.cpp
M clang/test/OpenMP/target_defaultmap_codegen_03.cpp
M clang/test/OpenMP/target_dyn_groupprivate_codegen.cpp
M clang/test/OpenMP/target_firstprivate_codegen.cpp
M clang/test/OpenMP/target_has_device_addr_codegen.cpp
M clang/test/OpenMP/target_has_device_addr_codegen_01.cpp
M clang/test/OpenMP/target_is_device_ptr_codegen.cpp
M clang/test/OpenMP/target_map_array_of_structs_with_nested_mapper_codegen.cpp
M clang/test/OpenMP/target_map_array_section_no_length_codegen.cpp
M clang/test/OpenMP/target_map_array_section_of_structs_with_nested_mapper_codegen.cpp
M clang/test/OpenMP/target_map_codegen_03.cpp
M clang/test/OpenMP/target_map_codegen_hold.cpp
M clang/test/OpenMP/target_map_deref_array_codegen.cpp
M clang/test/OpenMP/target_map_member_expr_codegen.cpp
M clang/test/OpenMP/target_offload_mandatory_codegen.cpp
M clang/test/OpenMP/target_ompx_dyn_cgroup_mem_codegen.cpp
M clang/test/OpenMP/target_parallel_codegen.cpp
M clang/test/OpenMP/target_parallel_for_codegen.cpp
M clang/test/OpenMP/target_parallel_for_simd_codegen.cpp
M clang/test/OpenMP/target_parallel_generic_loop_codegen-1.cpp
M clang/test/OpenMP/target_parallel_generic_loop_codegen-2.cpp
M clang/test/OpenMP/target_parallel_generic_loop_uses_allocators_codegen.cpp
M clang/test/OpenMP/target_parallel_if_codegen.cpp
M clang/test/OpenMP/target_parallel_num_threads_codegen.cpp
M clang/test/OpenMP/target_parallel_num_threads_strict_codegen.cpp
M clang/test/OpenMP/target_private_codegen.cpp
M clang/test/OpenMP/target_task_affinity_codegen.cpp
M clang/test/OpenMP/target_teams_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_collapse_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_dist_schedule_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_firstprivate_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_lastprivate_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_collapse_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_dist_schedule_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_firstprivate_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_if_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_lastprivate_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_order_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_private_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_proc_bind_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_reduction_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_schedule_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_collapse_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_dist_schedule_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_firstprivate_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_if_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_lastprivate_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_private_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_proc_bind_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_reduction_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_schedule_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_private_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_reduction_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_simd_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_simd_collapse_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_simd_dist_schedule_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_simd_firstprivate_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_simd_lastprivate_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_simd_private_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_simd_reduction_codegen.cpp
M clang/test/OpenMP/target_teams_generic_loop_codegen-1.cpp
M clang/test/OpenMP/target_teams_generic_loop_codegen.cpp
M clang/test/OpenMP/target_teams_generic_loop_collapse_codegen.cpp
M clang/test/OpenMP/target_teams_generic_loop_if_codegen.cpp
M clang/test/OpenMP/target_teams_generic_loop_order_codegen.cpp
M clang/test/OpenMP/target_teams_generic_loop_private_codegen.cpp
M clang/test/OpenMP/target_teams_generic_loop_reduction_codegen.cpp
M clang/test/OpenMP/target_teams_generic_loop_uses_allocators_codegen.cpp
M clang/test/OpenMP/target_teams_map_codegen.cpp
M clang/test/OpenMP/target_teams_num_teams_codegen.cpp
A clang/test/OpenMP/target_teams_reduction_codegen.cpp
M clang/test/OpenMP/target_teams_thread_limit_codegen.cpp
M clang/test/OpenMP/teams_codegen.cpp
M clang/test/OpenMP/teams_distribute_codegen.cpp
M clang/test/OpenMP/teams_distribute_collapse_codegen.cpp
M clang/test/OpenMP/teams_distribute_dist_schedule_codegen.cpp
M clang/test/OpenMP/teams_distribute_firstprivate_codegen.cpp
M clang/test/OpenMP/teams_distribute_lastprivate_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_collapse_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_copyin_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_dist_schedule_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_firstprivate_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_if_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_lastprivate_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_num_threads_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_private_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_proc_bind_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_reduction_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_schedule_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_simd_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_simd_collapse_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_simd_dist_schedule_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_simd_firstprivate_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_simd_if_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_simd_lastprivate_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_simd_num_threads_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_simd_private_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_simd_proc_bind_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_simd_reduction_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_simd_schedule_codegen.cpp
M clang/test/OpenMP/teams_distribute_private_codegen.cpp
M clang/test/OpenMP/teams_distribute_reduction_codegen.cpp
M clang/test/OpenMP/teams_distribute_simd_codegen.cpp
M clang/test/OpenMP/teams_distribute_simd_collapse_codegen.cpp
M clang/test/OpenMP/teams_distribute_simd_dist_schedule_codegen.cpp
M clang/test/OpenMP/teams_distribute_simd_firstprivate_codegen.cpp
M clang/test/OpenMP/teams_distribute_simd_lastprivate_codegen.cpp
M clang/test/OpenMP/teams_distribute_simd_private_codegen.cpp
M clang/test/OpenMP/teams_distribute_simd_reduction_codegen.cpp
M clang/test/OpenMP/teams_firstprivate_codegen.cpp
M clang/test/OpenMP/teams_generic_loop_codegen-1.cpp
M clang/test/OpenMP/teams_generic_loop_collapse_codegen.cpp
M clang/test/OpenMP/teams_generic_loop_private_codegen.cpp
M clang/test/OpenMP/teams_generic_loop_reduction_codegen.cpp
M clang/test/OpenMP/teams_private_codegen.cpp
A clang/test/PCH/pch-debuginfo-vtable.cpp
A clang/test/Preprocessor/hardlink-include-names.c
M clang/test/Rewriter/objc-modern-getclass-proto.mm
M clang/test/Sema/LifetimeSafety/annotation-suggestions-fixits.cpp
M clang/test/Sema/LifetimeSafety/annotation-suggestions.cpp
M clang/test/Sema/LifetimeSafety/dangling-global.cpp
M clang/test/Sema/LifetimeSafety/invalidations.cpp
M clang/test/Sema/LifetimeSafety/lifetimebound-violation.cpp
M clang/test/Sema/LifetimeSafety/safety-c.c
M clang/test/Sema/LifetimeSafety/safety.cpp
M clang/test/Sema/aarch64-bf16-ldst-intrinsics.c
M clang/test/Sema/aarch64-incompat-sm-builtin-calls.cpp
M clang/test/Sema/aarch64-sme-func-attrs.c
M clang/test/Sema/aarch64-sme-streaming-nonstreaming-vl-checks.c
M clang/test/Sema/aarch64-sme2p1-diagnostics.c
M clang/test/Sema/aarch64-sme2p1-intrinsics/acle_sme2p1_imm.cpp
M clang/test/Sema/aarch64-sme2p3-intrinsics/acle_sme2p3_imm.c
M clang/test/Sema/attr-arm-sve-vector-bits.c
A clang/test/Sema/builtin-abs-invalid.c
M clang/test/Sema/builtin-memcpy.c
M clang/test/Sema/builtin-object-size.c
M clang/test/Sema/sifive-xsfmm.c
M clang/test/Sema/warn-fortify-source.c
A clang/test/Sema/warn-stringop-overread.c
A clang/test/SemaCXX/amdgpu-feature-builtins-invalid-use.cpp
M clang/test/SemaCXX/attr-arm-sve-vector-bits.cpp
M clang/test/SemaCXX/constant-expression-p2280r4.cpp
M clang/test/SemaCXX/ext-int.cpp
A clang/test/SemaCXX/gh147127.cpp
M clang/test/SemaCXX/warn-memset-bad-sizeof.cpp
M clang/test/SemaHIP/amdgpu-feature-predicates-guard-use.hip
A clang/test/SemaOpenCL/read-image-integer-linear-filter.cl
M clang/test/SemaOpenCL/usm-address-spaces-conversions.cl
M clang/test/SemaSYCL/address-space-conversions.cpp
M clang/test/SemaTemplate/concepts.cpp
M clang/test/SemaTemplate/instantiate-member-template.cpp
M clang/tools/clang-ssaf-analyzer/CMakeLists.txt
M clang/tools/clang-ssaf-analyzer/SSAFAnalyzer.cpp
M clang/tools/clang-ssaf-format/CMakeLists.txt
M clang/tools/clang-ssaf-format/SSAFFormat.cpp
M clang/tools/clang-ssaf-linker/CMakeLists.txt
M clang/tools/clang-ssaf-linker/SSAFLinker.cpp
M clang/unittests/AST/ASTImporterFixtures.cpp
M clang/unittests/AST/CommentLexer.cpp
M clang/unittests/Basic/DarwinSDKInfoTest.cpp
M clang/unittests/Basic/DiagnosticTest.cpp
M clang/unittests/Basic/SourceManagerTest.cpp
M clang/unittests/CMakeLists.txt
M clang/unittests/CodeGen/CodeGenExternalTest.cpp
M clang/unittests/Driver/DXCModeTest.cpp
M clang/unittests/Format/TokenAnnotatorTest.cpp
M clang/unittests/Interpreter/CodeCompletionTest.cpp
A clang/unittests/ScalableStaticAnalysis/ASTEntityMappingTest.cpp
A clang/unittests/ScalableStaticAnalysis/Analyses/CallGraph/CallGraphExtractorTest.cpp
A clang/unittests/ScalableStaticAnalysis/Analyses/PointerFlow/PointerFlowTest.cpp
A clang/unittests/ScalableStaticAnalysis/Analyses/PointerFlow/PointerFlowWPATest.cpp
A clang/unittests/ScalableStaticAnalysis/Analyses/UnsafeBufferUsage/UnsafeBufferUsageTest.cpp
A clang/unittests/ScalableStaticAnalysis/Analyses/UnsafeBufferUsage/UnsafeBufferUsageWPATest.cpp
A clang/unittests/ScalableStaticAnalysis/BuildNamespaceTest.cpp
A clang/unittests/ScalableStaticAnalysis/CMakeLists.txt
A clang/unittests/ScalableStaticAnalysis/EntityIdTableTest.cpp
A clang/unittests/ScalableStaticAnalysis/EntityIdTest.cpp
A clang/unittests/ScalableStaticAnalysis/EntityLinkageTest.cpp
A clang/unittests/ScalableStaticAnalysis/EntityLinkerTest.cpp
A clang/unittests/ScalableStaticAnalysis/EntityNameTest.cpp
A clang/unittests/ScalableStaticAnalysis/ErrorBuilderTest.cpp
A clang/unittests/ScalableStaticAnalysis/FindDecl.h
A clang/unittests/ScalableStaticAnalysis/Frontend/TUSummaryExtractorFrontendActionTest.cpp
A clang/unittests/ScalableStaticAnalysis/LUSummaryTest.cpp
A clang/unittests/ScalableStaticAnalysis/ModelStringConversionsTest.cpp
A clang/unittests/ScalableStaticAnalysis/Registries/FancyAnalysisData.cpp
A clang/unittests/ScalableStaticAnalysis/Registries/MockSerializationFormat.cpp
A clang/unittests/ScalableStaticAnalysis/Registries/MockSerializationFormat.h
A clang/unittests/ScalableStaticAnalysis/Registries/MockSummaryExtractor1.cpp
A clang/unittests/ScalableStaticAnalysis/Registries/MockSummaryExtractor2.cpp
A clang/unittests/ScalableStaticAnalysis/Registries/MockTUSummaryBuilder.h
A clang/unittests/ScalableStaticAnalysis/Registries/SerializationFormatRegistryTest.cpp
A clang/unittests/ScalableStaticAnalysis/Registries/SummaryExtractorRegistryTest.cpp
A clang/unittests/ScalableStaticAnalysis/Serialization/JSONFormatTest/JSONFormatTest.cpp
A clang/unittests/ScalableStaticAnalysis/Serialization/JSONFormatTest/JSONFormatTest.h
A clang/unittests/ScalableStaticAnalysis/Serialization/JSONFormatTest/LUSummaryTest.cpp
A clang/unittests/ScalableStaticAnalysis/Serialization/JSONFormatTest/TUSummaryTest.cpp
A clang/unittests/ScalableStaticAnalysis/SourceTransformation/EmitterTest.cpp
A clang/unittests/ScalableStaticAnalysis/SourceTransformation/RegistryTest.cpp
A clang/unittests/ScalableStaticAnalysis/SummaryData/SummaryDataTest.cpp
A clang/unittests/ScalableStaticAnalysis/SummaryNameTest.cpp
A clang/unittests/ScalableStaticAnalysis/TUSummaryBuilderTest.cpp
A clang/unittests/ScalableStaticAnalysis/TestFixture.cpp
A clang/unittests/ScalableStaticAnalysis/TestFixture.h
A clang/unittests/ScalableStaticAnalysis/WholeProgramAnalysis/AnalysisDriverTest.cpp
A clang/unittests/ScalableStaticAnalysis/WholeProgramAnalysis/UnsafeBufferReachableAnalysisTest.cpp
R clang/unittests/ScalableStaticAnalysisFramework/ASTEntityMappingTest.cpp
R clang/unittests/ScalableStaticAnalysisFramework/Analyses/CallGraph/CallGraphExtractorTest.cpp
R clang/unittests/ScalableStaticAnalysisFramework/Analyses/PointerFlow/PointerFlowTest.cpp
R clang/unittests/ScalableStaticAnalysisFramework/Analyses/PointerFlow/PointerFlowWPATest.cpp
R clang/unittests/ScalableStaticAnalysisFramework/Analyses/UnsafeBufferUsage/UnsafeBufferUsageTest.cpp
R clang/unittests/ScalableStaticAnalysisFramework/Analyses/UnsafeBufferUsage/UnsafeBufferUsageWPATest.cpp
R clang/unittests/ScalableStaticAnalysisFramework/BuildNamespaceTest.cpp
R clang/unittests/ScalableStaticAnalysisFramework/CMakeLists.txt
R clang/unittests/ScalableStaticAnalysisFramework/EntityIdTableTest.cpp
R clang/unittests/ScalableStaticAnalysisFramework/EntityIdTest.cpp
R clang/unittests/ScalableStaticAnalysisFramework/EntityLinkageTest.cpp
R clang/unittests/ScalableStaticAnalysisFramework/EntityLinkerTest.cpp
R clang/unittests/ScalableStaticAnalysisFramework/EntityNameTest.cpp
R clang/unittests/ScalableStaticAnalysisFramework/ErrorBuilderTest.cpp
R clang/unittests/ScalableStaticAnalysisFramework/FindDecl.h
R clang/unittests/ScalableStaticAnalysisFramework/Frontend/TUSummaryExtractorFrontendActionTest.cpp
R clang/unittests/ScalableStaticAnalysisFramework/LUSummaryTest.cpp
R clang/unittests/ScalableStaticAnalysisFramework/ModelStringConversionsTest.cpp
R clang/unittests/ScalableStaticAnalysisFramework/Registries/FancyAnalysisData.cpp
R clang/unittests/ScalableStaticAnalysisFramework/Registries/MockSerializationFormat.cpp
R clang/unittests/ScalableStaticAnalysisFramework/Registries/MockSerializationFormat.h
R clang/unittests/ScalableStaticAnalysisFramework/Registries/MockSummaryExtractor1.cpp
R clang/unittests/ScalableStaticAnalysisFramework/Registries/MockSummaryExtractor2.cpp
R clang/unittests/ScalableStaticAnalysisFramework/Registries/MockTUSummaryBuilder.h
R clang/unittests/ScalableStaticAnalysisFramework/Registries/SerializationFormatRegistryTest.cpp
R clang/unittests/ScalableStaticAnalysisFramework/Registries/SummaryExtractorRegistryTest.cpp
R clang/unittests/ScalableStaticAnalysisFramework/Serialization/JSONFormatTest/JSONFormatTest.cpp
R clang/unittests/ScalableStaticAnalysisFramework/Serialization/JSONFormatTest/JSONFormatTest.h
R clang/unittests/ScalableStaticAnalysisFramework/Serialization/JSONFormatTest/LUSummaryTest.cpp
R clang/unittests/ScalableStaticAnalysisFramework/Serialization/JSONFormatTest/TUSummaryTest.cpp
R clang/unittests/ScalableStaticAnalysisFramework/SourceTransformation/EmitterTest.cpp
R clang/unittests/ScalableStaticAnalysisFramework/SourceTransformation/RegistryTest.cpp
R clang/unittests/ScalableStaticAnalysisFramework/SummaryData/SummaryDataTest.cpp
R clang/unittests/ScalableStaticAnalysisFramework/SummaryNameTest.cpp
R clang/unittests/ScalableStaticAnalysisFramework/TUSummaryBuilderTest.cpp
R clang/unittests/ScalableStaticAnalysisFramework/TestFixture.cpp
R clang/unittests/ScalableStaticAnalysisFramework/TestFixture.h
R clang/unittests/ScalableStaticAnalysisFramework/WholeProgramAnalysis/AnalysisDriverTest.cpp
R clang/unittests/ScalableStaticAnalysisFramework/WholeProgramAnalysis/UnsafeBufferReachableAnalysisTest.cpp
M clang/unittests/Tooling/HeaderIncludesTest.cpp
M clang/utils/TableGen/CIRLoweringEmitter.cpp
M clang/www/cxx_dr_status.html
M cmake/Modules/FindLibcCommonUtils.cmake
M compiler-rt/lib/builtins/arm/divdf3.S
M compiler-rt/lib/profile/CMakeLists.txt
M compiler-rt/lib/profile/InstrProfilingPlatformROCm.cpp
A compiler-rt/lib/profile/InstrProfilingPlatformROCmHSA.cpp
A compiler-rt/lib/profile/InstrProfilingPlatformROCmHSADefs.h
A compiler-rt/lib/profile/InstrProfilingPlatformROCmInternal.h
M compiler-rt/lib/tsan/rtl/tsan_platform.h
M compiler-rt/lib/tysan/tysan.cpp
M compiler-rt/lib/tysan/tysan_interceptors.cpp
M compiler-rt/test/asan/TestCases/Windows/issue64990.cpp
M compiler-rt/test/builtins/Unit/divdf3new_test.c
A compiler-rt/test/profile/AMDGPU/device-basic.hip
A compiler-rt/test/profile/AMDGPU/device-early-collect.hip
A compiler-rt/test/profile/AMDGPU/device-no-kernel.hip
A compiler-rt/test/profile/AMDGPU/device-symbols.hip
A compiler-rt/test/profile/AMDGPU/lit.local.cfg.py
A compiler-rt/test/profile/GPU/instrprof-hip-basic.hip
A compiler-rt/test/profile/GPU/instrprof-hip-collect-after.hip
A compiler-rt/test/profile/GPU/instrprof-hip-counter-correctness.hip
A compiler-rt/test/profile/GPU/instrprof-hip-coverage.hip
A compiler-rt/test/profile/GPU/instrprof-hip-device-branching.hip
A compiler-rt/test/profile/GPU/instrprof-hip-fork-safety.hip
A compiler-rt/test/profile/GPU/instrprof-hip-multi-gpu.hip
A compiler-rt/test/profile/GPU/instrprof-hip-multi-process-merge.hip
A compiler-rt/test/profile/GPU/instrprof-hip-multiple-kernels.hip
A compiler-rt/test/profile/GPU/instrprof-hip-nondefault-device.hip
A compiler-rt/test/profile/GPU/instrprof-hip-pgo-use.hip
A compiler-rt/test/profile/GPU/lit.local.cfg.py
A compiler-rt/test/profile/instrprof-rocm-bounds-dedup.cpp
A compiler-rt/test/profile/instrprof-rocm-grow-array.cpp
M compiler-rt/test/profile/lit.cfg.py
M compiler-rt/test/tysan/global.c
A compiler-rt/test/tysan/memcpy_doesnt_change_shadow.c
M cross-project-tests/intrinsic-header-tests/riscv_packed_simd.c
M flang-rt/lib/runtime/CMakeLists.txt
M flang-rt/lib/runtime/__cuda_device.f90
M flang-rt/lib/runtime/__fortran_type_info.f90
M flang-rt/lib/runtime/cooperative_groups.f90
M flang-rt/lib/runtime/cuda_runtime_api.f90
M flang-rt/lib/runtime/cudadevice.f90
A flang/cmake/caches/BOLT-PGO.cmake
A flang/cmake/caches/BOLT.cmake
A flang/cmake/caches/PGO-stage2-instrumented.cmake
A flang/cmake/caches/PGO-stage2.cmake
A flang/cmake/caches/PGO.cmake
M flang/docs/Directives.md
M flang/docs/FlangDriver.md
M flang/docs/conf.py
M flang/include/flang/Frontend/CodeGenOptions.def
M flang/include/flang/Lower/Support/ReductionProcessor.h
M flang/include/flang/Optimizer/Analysis/AliasAnalysis.h
M flang/include/flang/Optimizer/Analysis/ArraySectionAnalyzer.h
M flang/include/flang/Optimizer/Builder/FIRBuilder.h
M flang/include/flang/Optimizer/Dialect/FIROps.td
M flang/include/flang/Optimizer/Transforms/Passes.td
M flang/include/flang/Parser/dump-parse-tree.h
M flang/include/flang/Parser/parse-tree.h
M flang/include/flang/Semantics/expression.h
M flang/include/flang/Semantics/openmp-utils.h
M flang/include/flang/Semantics/symbol.h
M flang/lib/Frontend/CompilerInvocation.cpp
M flang/lib/Frontend/FrontendActions.cpp
M flang/lib/Lower/Bridge.cpp
M flang/lib/Lower/OpenMP/ClauseProcessor.cpp
M flang/lib/Lower/OpenMP/ClauseProcessor.h
M flang/lib/Lower/OpenMP/Clauses.cpp
M flang/lib/Lower/OpenMP/OpenMP.cpp
M flang/lib/Lower/OpenMP/Utils.cpp
M flang/lib/Lower/OpenMP/Utils.h
M flang/lib/Lower/Support/ReductionProcessor.cpp
M flang/lib/Optimizer/Analysis/AliasAnalysis.cpp
M flang/lib/Optimizer/Builder/FIRBuilder.cpp
M flang/lib/Optimizer/Dialect/FIROps.cpp
M flang/lib/Optimizer/HLFIR/Transforms/InlineHLFIRAssign.cpp
M flang/lib/Optimizer/OpenACC/Support/FIROpenACCTypeInterfaces.cpp
M flang/lib/Optimizer/OpenMP/DoConcurrentConversion.cpp
M flang/lib/Optimizer/OpenMP/LowerWorkdistribute.cpp
M flang/lib/Optimizer/OpenMP/LowerWorkshare.cpp
M flang/lib/Optimizer/Passes/Pipelines.cpp
M flang/lib/Optimizer/Transforms/AddDebugInfo.cpp
M flang/lib/Optimizer/Transforms/FIRToMemRef.cpp
M flang/lib/Optimizer/Transforms/MIFOpConversion.cpp
M flang/lib/Parser/executable-parsers.cpp
M flang/lib/Parser/openmp-parsers.cpp
M flang/lib/Parser/openmp-utils.cpp
M flang/lib/Parser/program-parsers.cpp
M flang/lib/Parser/unparse.cpp
M flang/lib/Semantics/check-call.cpp
M flang/lib/Semantics/check-call.h
M flang/lib/Semantics/check-cuda.cpp
M flang/lib/Semantics/check-omp-atomic.cpp
M flang/lib/Semantics/check-omp-loop.cpp
M flang/lib/Semantics/check-omp-structure.cpp
M flang/lib/Semantics/check-omp-structure.h
M flang/lib/Semantics/check-omp-variant.cpp
M flang/lib/Semantics/expression.cpp
M flang/lib/Semantics/mod-file.cpp
M flang/lib/Semantics/openmp-utils.cpp
M flang/lib/Semantics/program-tree.cpp
M flang/lib/Semantics/resolve-directives.cpp
M flang/lib/Semantics/resolve-names-utils.cpp
M flang/lib/Semantics/resolve-names-utils.h
M flang/lib/Semantics/resolve-names.cpp
M flang/lib/Semantics/rewrite-parse-tree.cpp
M flang/test/Analysis/AliasAnalysis/alias-analysis-host-assoc.fir
M flang/test/Analysis/AliasAnalysis/alias-analysis-omp-target-1.fir
M flang/test/Analysis/AliasAnalysis/alias-analysis-omp-target-2.fir
M flang/test/Analysis/AliasAnalysis/alias-analysis-scoped-origins.fir
M flang/test/CMakeLists.txt
A flang/test/Driver/fpseudo-probe-for-profiling.f90
M flang/test/Driver/offload-device.f90
M flang/test/Fir/MIF/change_team.mlir
M flang/test/Fir/MIF/change_team2.mlir
M flang/test/Fir/MIF/co_broadcast.mlir
M flang/test/Fir/MIF/co_max.mlir
M flang/test/Fir/MIF/co_min.mlir
M flang/test/Fir/MIF/co_sum.mlir
M flang/test/Fir/MIF/coarray-alloc.mlir
M flang/test/Fir/MIF/form_team.mlir
M flang/test/Fir/MIF/get_team.mlir
M flang/test/Fir/MIF/init.mlir
M flang/test/Fir/MIF/num_images.mlir
M flang/test/Fir/MIF/sync_all.mlir
M flang/test/Fir/MIF/sync_images.mlir
M flang/test/Fir/MIF/sync_memory.mlir
M flang/test/Fir/MIF/sync_team.mlir
M flang/test/Fir/MIF/team_number.mlir
M flang/test/Fir/MIF/this_image.mlir
M flang/test/Fir/OpenACC/openacc-mappable.fir
M flang/test/Fir/OpenMP/bounds-generation-for-char-arrays.f90
M flang/test/Fir/convert-to-llvm-openmp-and-fir.fir
A flang/test/Fir/present-absent-if-fold.fir
A flang/test/HLFIR/inline-hlfir-assign-pointer-overlap.fir
A flang/test/HLFIR/inline-hlfir-assign-scalar-index.fir
A flang/test/HLFIR/inline-hlfir-assign-self-copy-runtime-stride.fir
A flang/test/HLFIR/inline-hlfir-assign-self-copy.fir
M flang/test/Integration/OpenMP/workshare-array-array-assign.f90
M flang/test/Integration/OpenMP/workshare-axpy.f90
M flang/test/Integration/OpenMP/workshare-forall-sliced-array.f90
M flang/test/Integration/OpenMP/workshare-scalar-array-assign.f90
M flang/test/Integration/OpenMP/workshare-scalar-array-mul.f90
A flang/test/Integration/pseudo-probe-for-profiling.f90
M flang/test/Integration/split-lto-unit-2.f90
M flang/test/Lower/CUDA/cuda-data-transfer.cuf
M flang/test/Lower/CUDA/cuda-gpu-managed.cuf
M flang/test/Lower/OpenMP/DelayedPrivatization/target-private-allocatable.f90
M flang/test/Lower/OpenMP/DelayedPrivatization/target-private-implicit-scalar-map-2.f90
M flang/test/Lower/OpenMP/DelayedPrivatization/target-private-implicit-scalar-map.f90
M flang/test/Lower/OpenMP/DelayedPrivatization/target-private-simple.f90
M flang/test/Lower/OpenMP/DelayedPrivatization/target-teams-private-implicit-scalar-map.f90
M flang/test/Lower/OpenMP/KernelLanguage/bare-clause.f90
A flang/test/Lower/OpenMP/Todo/declare-reduction-operator-multiple-types.f90
A flang/test/Lower/OpenMP/Todo/declare-reduction-operator-use-assoc.f90
A flang/test/Lower/OpenMP/Todo/locator-call-affinity.f90
A flang/test/Lower/OpenMP/Todo/locator-call-from.f90
A flang/test/Lower/OpenMP/Todo/locator-call-map.f90
A flang/test/Lower/OpenMP/Todo/locator-call-to.f90
A flang/test/Lower/OpenMP/Todo/locator-reserved.f90
R flang/test/Lower/OpenMP/Todo/reduction-task.f90
M flang/test/Lower/OpenMP/allocatable-dtype-intermediate-map-gen.f90
M flang/test/Lower/OpenMP/allocatable-map.f90
M flang/test/Lower/OpenMP/array-bounds.f90
M flang/test/Lower/OpenMP/attach-and-ref-modifier.f90
M flang/test/Lower/OpenMP/common-block-map.f90
A flang/test/Lower/OpenMP/compound.f90
M flang/test/Lower/OpenMP/declare-mapper.f90
A flang/test/Lower/OpenMP/declare-reduction-operator-derived.f90
A flang/test/Lower/OpenMP/declare-reduction-operator.f90
M flang/test/Lower/OpenMP/default-mapper-no-pointer-map.f90
M flang/test/Lower/OpenMP/defaultmap.f90
M flang/test/Lower/OpenMP/depend-iterator.f90
M flang/test/Lower/OpenMP/derived-type-allocatable-map.f90
M flang/test/Lower/OpenMP/derived-type-map.f90
M flang/test/Lower/OpenMP/distribute-parallel-do-simd.f90
M flang/test/Lower/OpenMP/dyn-groupprivate-clause.f90
M flang/test/Lower/OpenMP/groupprivate.f90
M flang/test/Lower/OpenMP/implicit-mapper-no-pointer-map.f90
M flang/test/Lower/OpenMP/local-intrinsic-sized-array-map.f90
M flang/test/Lower/OpenMP/location.f90
M flang/test/Lower/OpenMP/map-character.f90
M flang/test/Lower/OpenMP/map-component-ref.f90
M flang/test/Lower/OpenMP/map-descriptor-deferral.f90
M flang/test/Lower/OpenMP/map-mapper.f90
M flang/test/Lower/OpenMP/metadirective-construct.f90
M flang/test/Lower/OpenMP/multiple-entry-points.f90
M flang/test/Lower/OpenMP/optional-argument-map-2.f90
M flang/test/Lower/OpenMP/optional-argument-map-3.f90
A flang/test/Lower/OpenMP/parallel-reduction-task.f90
M flang/test/Lower/OpenMP/target-map-complex.f90
M flang/test/Lower/OpenMP/target-parallel-private.f90
M flang/test/Lower/OpenMP/target-scope.f90
M flang/test/Lower/OpenMP/target-spmd.f90
M flang/test/Lower/OpenMP/target-teams-private.f90
M flang/test/Lower/OpenMP/target.f90
M flang/test/Lower/OpenMP/workdistribute-target-teams-clauses.f90
M flang/test/Lower/OpenMP/workdistribute.f90
M flang/test/Lower/OpenMP/workshare.f90
M flang/test/Parser/OpenMP/allocate-align-tree.f90
M flang/test/Parser/OpenMP/allocate-tree-spec-part.f90
M flang/test/Parser/OpenMP/allocate-tree.f90
M flang/test/Parser/OpenMP/declare-variant.f90
M flang/test/Parser/OpenMP/depobj-construct.f90
M flang/test/Parser/OpenMP/groupprivate.f90
M flang/test/Parser/OpenMP/metadirective-dirspec.f90
M flang/test/Parser/OpenMP/metadirective-flush.f90
M flang/test/Parser/OpenMP/openmp6-directive-spellings.f90
M flang/test/Parser/OpenMP/threadprivate.f90
A flang/test/Semantics/OpenACC/acc-routine-bad.f90
M flang/test/Semantics/OpenMP/affinity-invalid.f90
M flang/test/Semantics/OpenMP/clause-validity01.f90
M flang/test/Semantics/OpenMP/clause-validity02.f90
M flang/test/Semantics/OpenMP/declarative-directive01.f90
A flang/test/Semantics/OpenMP/declare-reduction-overbroad-lookup.f90
A flang/test/Semantics/OpenMP/declare-reduction-use-mixed-merged.f90
A flang/test/Semantics/OpenMP/declare-reduction-use-only-defined-op.f90
A flang/test/Semantics/OpenMP/declare-reduction-use-only-merged.f90
A flang/test/Semantics/OpenMP/declare-reduction-use-only-renamed.f90
A flang/test/Semantics/OpenMP/declare-reduction-use-only.f90
A flang/test/Semantics/OpenMP/declare-reduction-use-reexport-merged.f90
A flang/test/Semantics/OpenMP/declare-reduction-use-reexport-remerge.f90
A flang/test/Semantics/OpenMP/declare-reduction-use-shadow-merged.f90
A flang/test/Semantics/OpenMP/declare-reduction-use-shadow.f90
M flang/test/Semantics/OpenMP/depend-substring.f90
M flang/test/Semantics/OpenMP/device-constructs.f90
A flang/test/Semantics/OpenMP/if-clause-45-suggestion.f90
M flang/test/Semantics/OpenMP/if-clause-45.f90
A flang/test/Semantics/OpenMP/if-clause-50-suggestion.f90
M flang/test/Semantics/OpenMP/if-clause-50.f90
A flang/test/Semantics/OpenMP/if-clause-60.f90
M flang/test/Semantics/OpenMP/if-clause.f90
A flang/test/Semantics/OpenMP/reserved-locator.f90
M flang/test/Semantics/OpenMP/sections01.f90
M flang/test/Semantics/OpenMP/single03.f90
M flang/test/Semantics/OpenMP/single04.f90
A flang/test/Semantics/OpenMP/target-enter-data-temp-descriptor-omp61.f90
A flang/test/Semantics/OpenMP/target-enter-data-temp-descriptor.f90
M flang/test/Semantics/OpenMP/workshare02.f90
A flang/test/Semantics/call03-ignore-tkr-c-relaxed.f90
A flang/test/Semantics/call03-ignore-tkr-c-strict.f90
M flang/test/Semantics/call47.f90
M flang/test/Semantics/cuf23.cuf
A flang/test/Semantics/cuf29.cuf
A flang/test/Semantics/cuf30.cuf
M flang/test/Transforms/DoConcurrent/basic_device.f90
M flang/test/Transforms/DoConcurrent/basic_host.f90
M flang/test/Transforms/DoConcurrent/basic_host.mlir
M flang/test/Transforms/DoConcurrent/host_eval.f90
M flang/test/Transforms/DoConcurrent/local_device.mlir
M flang/test/Transforms/DoConcurrent/locality_specifiers_simple.mlir
M flang/test/Transforms/DoConcurrent/map_shape_info.f90
M flang/test/Transforms/DoConcurrent/multiple_iteration_ranges.f90
M flang/test/Transforms/DoConcurrent/non_const_bounds.f90
M flang/test/Transforms/DoConcurrent/non_reference_to_device.f90
M flang/test/Transforms/DoConcurrent/reduce_add.mlir
M flang/test/Transforms/DoConcurrent/reduce_all_regions.mlir
M flang/test/Transforms/DoConcurrent/reduce_device.mlir
M flang/test/Transforms/DoConcurrent/reduce_device_min.f90
M flang/test/Transforms/DoConcurrent/reduce_local.mlir
M flang/test/Transforms/DoConcurrent/reduction_symbol_resultion.f90
M flang/test/Transforms/DoConcurrent/runtime_sized_array.f90
M flang/test/Transforms/DoConcurrent/skip_all_nested_loops.f90
M flang/test/Transforms/DoConcurrent/use_loop_bounds_in_body.f90
M flang/test/Transforms/FIRToMemRef/slice-projected.mlir
M flang/test/Transforms/OpenMP/delete-unreachable-targets.mlir
M flang/test/Transforms/OpenMP/function-filtering-host-ops.mlir
M flang/test/Transforms/OpenMP/function-filtering.mlir
M flang/test/Transforms/OpenMP/lower-workdistribute-doloop.mlir
M flang/test/Transforms/OpenMP/lower-workdistribute-fission-host.mlir
M flang/test/Transforms/OpenMP/lower-workdistribute-fission-target.mlir
M flang/test/Transforms/OpenMP/lower-workdistribute-fission.mlir
M flang/test/Transforms/OpenMP/lower-workdistribute-runtime-assign-scalar.mlir
M flang/test/Transforms/OpenMP/simd-only.mlir
A flang/test/Transforms/debug-fake-use-multiple-dimensions.fir
A flang/test/Transforms/debug-fake-use-multiple-returns.fir
M flang/test/Transforms/debug-fake-use.fir
M flang/test/Transforms/debug-omp-target-op-1.fir
M flang/test/Transforms/debug-omp-target-op-2.fir
M flang/test/Transforms/omp-function-filtering-todo.mlir
M flang/test/Transforms/omp-map-info-finalization-implicit-field.fir
M flang/test/Transforms/omp-map-info-finalization-member-record.fir
M flang/test/Transforms/omp-map-info-finalization-name-loc.fir
M flang/test/Transforms/omp-map-info-finalization-usm.fir
M flang/test/Transforms/omp-map-info-finalization.fir
M flang/test/Transforms/omp-maps-for-privatized-symbols.fir
A flang/test/bolt.lit.cfg
M flang/test/lit.cfg.py
M flang/test/lit.site.cfg.py.in
A flang/test/pgo.lit.cfg
A flang/test/test.lit.cfg
M libc/benchmarks/CMakeLists.txt
M libc/benchmarks/JSON.cpp
M libc/benchmarks/JSONTest.cpp
M libc/benchmarks/LibcBenchmark.cpp
M libc/benchmarks/LibcBenchmark.h
M libc/benchmarks/LibcBenchmarkTest.cpp
M libc/benchmarks/LibcFunctionPrototypes.h
M libc/benchmarks/LibcMemoryBenchmark.cpp
M libc/benchmarks/LibcMemoryBenchmark.h
M libc/benchmarks/LibcMemoryBenchmarkMain.cpp
M libc/benchmarks/LibcMemoryGoogleBenchmarkMain.cpp
M libc/benchmarks/MemorySizeDistributions.cpp
M libc/benchmarks/MemorySizeDistributions.h
M libc/config/baremetal/aarch64/entrypoints.txt
M libc/config/baremetal/arm/entrypoints.txt
M libc/config/baremetal/riscv/entrypoints.txt
M libc/config/darwin/aarch64/entrypoints.txt
M libc/config/darwin/x86_64/entrypoints.txt
M libc/config/freebsd/x86_64/entrypoints.txt
M libc/config/gpu/amdgpu/entrypoints.txt
M libc/config/gpu/nvptx/entrypoints.txt
M libc/config/linux/aarch64/entrypoints.txt
M libc/config/linux/aarch64/headers.txt
M libc/config/linux/arm/entrypoints.txt
M libc/config/linux/arm/headers.txt
M libc/config/linux/riscv/entrypoints.txt
M libc/config/linux/riscv/headers.txt
M libc/config/linux/x86_64/entrypoints.txt
M libc/config/linux/x86_64/headers.txt
M libc/config/windows/entrypoints.txt
M libc/docs/CMakeLists.txt
M libc/docs/conf.py
A libc/docs/dev/builtin_compatibility.rst
M libc/docs/dev/index.rst
M libc/docs/headers/complex.rst
M libc/docs/headers/index.rst
M libc/docs/headers/math/index.rst
M libc/hdr/types/CMakeLists.txt
A libc/hdr/types/struct_ip_mreq.h
A libc/hdr/types/struct_ip_mreq_source.h
A libc/hdr/types/struct_ip_mreqn.h
A libc/hdr/types/struct_ip_msfilter.h
A libc/hdr/types/struct_ip_opts.h
M libc/include/CMakeLists.txt
M libc/include/complex.yaml
A libc/include/libgen.yaml
M libc/include/llvm-libc-macros/linux/sched-macros.h
M libc/include/llvm-libc-types/CMakeLists.txt
A libc/include/llvm-libc-types/linux/CMakeLists.txt
A libc/include/llvm-libc-types/linux/loff_t.h
A libc/include/llvm-libc-types/loff_t.h
A libc/include/llvm-libc-types/struct_ip_mreq.h
A libc/include/llvm-libc-types/struct_ip_mreq_source.h
A libc/include/llvm-libc-types/struct_ip_mreqn.h
A libc/include/llvm-libc-types/struct_ip_msfilter.h
A libc/include/llvm-libc-types/struct_ip_opts.h
M libc/include/netinet/in.yaml
M libc/include/sched.yaml
M libc/include/stdlib.yaml
M libc/include/sys/types.yaml
M libc/shared/math.h
A libc/shared/math/tanbf16.h
M libc/src/CMakeLists.txt
M libc/src/__support/CPP/string_view.h
M libc/src/__support/FPUtil/x86_64/fenv_x87_utils.h
M libc/src/__support/OSUtil/linux/CMakeLists.txt
A libc/src/__support/OSUtil/linux/stat/CMakeLists.txt
A libc/src/__support/OSUtil/linux/stat/kernel_statx_types.h
A libc/src/__support/OSUtil/linux/stat/stat_via_statx.h
M libc/src/__support/OSUtil/linux/syscall_wrappers/CMakeLists.txt
A libc/src/__support/OSUtil/linux/syscall_wrappers/ioctl.h
M libc/src/__support/macros/sanitizer.h
M libc/src/__support/math/CMakeLists.txt
M libc/src/__support/math/atan2f_float.h
A libc/src/__support/math/tanbf16.h
M libc/src/complex/CMakeLists.txt
A libc/src/complex/carg.h
A libc/src/complex/cargf.h
M libc/src/complex/generic/CMakeLists.txt
A libc/src/complex/generic/carg.cpp
A libc/src/complex/generic/cargf.cpp
A libc/src/libgen/CMakeLists.txt
A libc/src/libgen/basename.cpp
A libc/src/libgen/basename.h
A libc/src/libgen/dirname.cpp
A libc/src/libgen/dirname.h
M libc/src/math/CMakeLists.txt
M libc/src/math/docs/add_math_function.md
M libc/src/math/generic/CMakeLists.txt
A libc/src/math/generic/tanbf16.cpp
A libc/src/math/tanbf16.h
M libc/src/sched/CMakeLists.txt
M libc/src/sched/linux/CMakeLists.txt
A libc/src/sched/linux/sched_clrcpuset.cpp
A libc/src/sched/sched_clrcpuset.h
M libc/src/stdlib/CMakeLists.txt
M libc/src/stdlib/environ_internal.cpp
M libc/src/stdlib/environ_internal.h
M libc/src/stdlib/linux/CMakeLists.txt
A libc/src/stdlib/linux/unsetenv.cpp
M libc/src/stdlib/qsort.cpp
M libc/src/stdlib/qsort_r.cpp
M libc/src/stdlib/qsort_util.h
A libc/src/stdlib/unsetenv.h
M libc/src/sys/epoll/linux/epoll_pwait.cpp
M libc/src/sys/epoll/linux/epoll_pwait2.cpp
M libc/src/sys/epoll/linux/epoll_wait.cpp
M libc/src/sys/ioctl/linux/CMakeLists.txt
M libc/src/sys/ioctl/linux/ioctl.cpp
M libc/src/sys/socket/linux/recv.cpp
M libc/src/sys/socket/linux/recvfrom.cpp
M libc/src/sys/socket/linux/recvmsg.cpp
M libc/src/sys/socket/linux/socketpair.cpp
M libc/src/sys/stat/linux/CMakeLists.txt
M libc/src/sys/stat/linux/fstat.cpp
R libc/src/sys/stat/linux/kernel_statx.h
M libc/src/sys/stat/linux/lstat.cpp
M libc/src/sys/stat/linux/stat.cpp
M libc/src/termios/linux/CMakeLists.txt
M libc/src/termios/linux/tcdrain.cpp
M libc/src/termios/linux/tcflow.cpp
M libc/src/termios/linux/tcflush.cpp
M libc/src/termios/linux/tcgetattr.cpp
M libc/src/termios/linux/tcgetsid.cpp
M libc/src/termios/linux/tcsendbreak.cpp
M libc/src/termios/linux/tcsetattr.cpp
M libc/src/unistd/linux/CMakeLists.txt
M libc/src/unistd/linux/isatty.cpp
M libc/src/unistd/linux/pipe.cpp
M libc/src/unistd/linux/pipe2.cpp
M libc/src/unistd/linux/pread.cpp
M libc/src/unistd/linux/read.cpp
M libc/src/wchar/wcslcat.cpp
M libc/src/wchar/wcsncat.cpp
M libc/test/integration/src/stdlib/CMakeLists.txt
A libc/test/integration/src/stdlib/unsetenv_test.cpp
M libc/test/shared/CMakeLists.txt
M libc/test/shared/shared_math_test.cpp
M libc/test/src/CMakeLists.txt
A libc/test/src/complex/CArgTest.h
M libc/test/src/complex/CMakeLists.txt
A libc/test/src/complex/carg_test.cpp
A libc/test/src/complex/cargf_test.cpp
A libc/test/src/libgen/CMakeLists.txt
A libc/test/src/libgen/basename_death_test.cpp
A libc/test/src/libgen/basename_test.cpp
A libc/test/src/libgen/dirname_death_test.cpp
A libc/test/src/libgen/dirname_test.cpp
M libc/test/src/math/CMakeLists.txt
M libc/test/src/math/smoke/CMakeLists.txt
A libc/test/src/math/smoke/tanbf16_test.cpp
A libc/test/src/math/tanbf16_test.cpp
M libc/test/src/netinet/CMakeLists.txt
M libc/test/src/netinet/in_test.cpp
M libc/test/src/sched/CMakeLists.txt
M libc/test/src/sched/cpu_count_test.cpp
M libc/test/src/stdlib/CMakeLists.txt
A libc/test/src/stdlib/QsortReentrantTest.h
M libc/test/src/stdlib/qsort_r_test.cpp
M libc/test/src/string/memory_utils/memory_check_utils.h
M libc/test/src/wchar/wcslcat_test.cpp
M libc/test/src/wchar/wcsncat_test.cpp
M libc/utils/MPFRWrapper/MPCommon.cpp
A libc/utils/docgen/libgen.yaml
M libclc/clc/lib/nvptx/CMakeLists.txt
R libclc/clc/lib/nvptx/relational/clc_isinf.cl
M libcxx/docs/ABIGuarantees.rst
M libcxx/docs/FeatureTestMacroTable.rst
M libcxx/docs/ReleaseNotes/23.rst
M libcxx/docs/Status/Cxx23Papers.csv
M libcxx/docs/Status/Cxx26Issues.csv
M libcxx/docs/Status/Cxx26Papers.csv
M libcxx/docs/Status/Cxx29Papers.csv
M libcxx/docs/conf.py
M libcxx/include/CMakeLists.txt
M libcxx/include/__algorithm/simd_utils.h
M libcxx/include/__config
M libcxx/include/__configuration/attributes.h
M libcxx/include/__configuration/availability.h
M libcxx/include/__configuration/language.h
M libcxx/include/__configuration/platform.h
M libcxx/include/__configuration/utility.h
M libcxx/include/__cxx03/__config
M libcxx/include/__cxx03/__type_traits/datasizeof.h
M libcxx/include/__expected/expected.h
M libcxx/include/__functional/function.h
M libcxx/include/__locale
M libcxx/include/__locale_dir/locale_base_api.h
M libcxx/include/__locale_dir/num.h
M libcxx/include/__locale_dir/support/aix.h
M libcxx/include/__locale_dir/support/bsd_like.h
M libcxx/include/__locale_dir/support/fuchsia.h
M libcxx/include/__locale_dir/support/linux.h
M libcxx/include/__locale_dir/support/llvm_libc.h
M libcxx/include/__locale_dir/support/newlib.h
M libcxx/include/__locale_dir/support/windows.h
M libcxx/include/__locale_dir/wbuffer_convert.h
M libcxx/include/__locale_dir/wstring_convert.h
M libcxx/include/__math/abs.h
M libcxx/include/__memory/compressed_pair.h
M libcxx/include/__memory/is_sufficiently_aligned.h
M libcxx/include/__memory/shared_ptr.h
M libcxx/include/__memory/unique_ptr.h
M libcxx/include/__random/bernoulli_distribution.h
M libcxx/include/__random/binomial_distribution.h
M libcxx/include/__random/cauchy_distribution.h
M libcxx/include/__random/chi_squared_distribution.h
M libcxx/include/__random/discard_block_engine.h
M libcxx/include/__random/discrete_distribution.h
M libcxx/include/__random/exponential_distribution.h
M libcxx/include/__random/extreme_value_distribution.h
M libcxx/include/__random/fisher_f_distribution.h
M libcxx/include/__random/gamma_distribution.h
M libcxx/include/__random/generate_canonical.h
M libcxx/include/__random/geometric_distribution.h
M libcxx/include/__random/independent_bits_engine.h
M libcxx/include/__random/linear_congruential_engine.h
M libcxx/include/__random/lognormal_distribution.h
M libcxx/include/__random/mersenne_twister_engine.h
M libcxx/include/__random/negative_binomial_distribution.h
M libcxx/include/__random/normal_distribution.h
M libcxx/include/__random/piecewise_constant_distribution.h
M libcxx/include/__random/piecewise_linear_distribution.h
M libcxx/include/__random/poisson_distribution.h
M libcxx/include/__random/random_device.h
M libcxx/include/__random/seed_seq.h
M libcxx/include/__random/shuffle_order_engine.h
M libcxx/include/__random/student_t_distribution.h
M libcxx/include/__random/subtract_with_carry_engine.h
M libcxx/include/__random/uniform_int_distribution.h
M libcxx/include/__random/uniform_real_distribution.h
M libcxx/include/__random/weibull_distribution.h
M libcxx/include/__ranges/drop_view.h
M libcxx/include/__ranges/drop_while_view.h
M libcxx/include/__ranges/filter_view.h
M libcxx/include/__ranges/iota_view.h
M libcxx/include/__ranges/lazy_split_view.h
M libcxx/include/__ranges/reverse_view.h
M libcxx/include/__ranges/split_view.h
M libcxx/include/__ranges/take_view.h
M libcxx/include/__ranges/take_while_view.h
M libcxx/include/__ranges/transform_view.h
M libcxx/include/__tree
M libcxx/include/__utility/constant_wrapper.h
M libcxx/include/map
M libcxx/include/module.modulemap.in
A libcxx/include/text_encoding
M libcxx/include/utility
M libcxx/include/variant
M libcxx/include/version
M libcxx/lib/abi/CHANGELOG.TXT
M libcxx/lib/abi/arm64-apple-darwin.libcxxabi.v1.stable.exceptions.nonew.abilist
M libcxx/lib/abi/i686-linux-android23.libcxxabi.v1.stable.exceptions.nonew.abilist
M libcxx/lib/abi/powerpc-ibm-aix.libcxxabi.v1.stable.exceptions.nonew.abilist
M libcxx/lib/abi/powerpc64-ibm-aix.libcxxabi.v1.stable.exceptions.nonew.abilist
M libcxx/lib/abi/x86_64-linux-android23.libcxxabi.v1.stable.exceptions.nonew.abilist
M libcxx/lib/abi/x86_64-unknown-freebsd.libcxxabi.v1.stable.exceptions.nonew.abilist
M libcxx/lib/abi/x86_64-unknown-linux-gnu.libcxxabi.v1.stable.exceptions.nonew.abilist
M libcxx/lib/abi/x86_64-unknown-linux-gnu.libcxxabi.v1.stable.noexceptions.nonew.abilist
M libcxx/modules/std.compat.cppm.in
M libcxx/modules/std.cppm.in
M libcxx/modules/std/text_encoding.inc
M libcxx/src/CMakeLists.txt
M libcxx/src/include/to_chars_floating_point.h
M libcxx/src/support/win32/locale_win32.cpp
A libcxx/src/text_encoding.cpp
M libcxx/test/configs/llvm-libc++-llvm-libc.cfg.in
M libcxx/test/extensions/libcxx/localization/locale.convenience/conversions/conversions.string/ctor_move.pass.cpp
M libcxx/test/libcxx-03/type_traits/datasizeof.compile.pass.cpp
M libcxx/test/libcxx/clang_tidy.gen.py
M libcxx/test/libcxx/localization/nodiscard.verify.cpp
M libcxx/test/libcxx/module_std_compat.gen.py
A libcxx/test/libcxx/numerics/rand/nodiscard.verify.cpp
M libcxx/test/libcxx/numerics/rand/rand.dist/rand.dist.bern/rand.dist.bern.bernoulli/bad_engine.verify.cpp
M libcxx/test/libcxx/numerics/rand/rand.dist/rand.dist.bern/rand.dist.bern.bin/bad_engine.verify.cpp
M libcxx/test/libcxx/numerics/rand/rand.dist/rand.dist.bern/rand.dist.bern.geo/bad_engine.verify.cpp
M libcxx/test/libcxx/numerics/rand/rand.dist/rand.dist.bern/rand.dist.bern.negbin/bad_engine.verify.cpp
M libcxx/test/libcxx/numerics/rand/rand.dist/rand.dist.norm/rand.dist.norm.cauchy/bad_engine.verify.cpp
M libcxx/test/libcxx/numerics/rand/rand.dist/rand.dist.norm/rand.dist.norm.chisq/bad_engine.verify.cpp
M libcxx/test/libcxx/numerics/rand/rand.dist/rand.dist.norm/rand.dist.norm.f/bad_engine.verify.cpp
M libcxx/test/libcxx/numerics/rand/rand.dist/rand.dist.norm/rand.dist.norm.lognormal/bad_engine.verify.cpp
M libcxx/test/libcxx/numerics/rand/rand.dist/rand.dist.norm/rand.dist.norm.normal/bad_engine.verify.cpp
M libcxx/test/libcxx/numerics/rand/rand.dist/rand.dist.norm/rand.dist.norm.t/bad_engine.verify.cpp
M libcxx/test/libcxx/numerics/rand/rand.dist/rand.dist.pois/rand.dist.pois.exp/bad_engine.verify.cpp
M libcxx/test/libcxx/numerics/rand/rand.dist/rand.dist.pois/rand.dist.pois.extreme/bad_engine.verify.cpp
M libcxx/test/libcxx/numerics/rand/rand.dist/rand.dist.pois/rand.dist.pois.gamma/bad_engine.verify.cpp
M libcxx/test/libcxx/numerics/rand/rand.dist/rand.dist.pois/rand.dist.pois.poisson/bad_engine.verify.cpp
M libcxx/test/libcxx/numerics/rand/rand.dist/rand.dist.pois/rand.dist.pois.weibull/bad_engine.verify.cpp
M libcxx/test/libcxx/numerics/rand/rand.dist/rand.dist.samp/rand.dist.samp.discrete/bad_engine.verify.cpp
M libcxx/test/libcxx/numerics/rand/rand.dist/rand.dist.samp/rand.dist.samp.pconst/bad_engine.verify.cpp
M libcxx/test/libcxx/numerics/rand/rand.dist/rand.dist.samp/rand.dist.samp.plinear/bad_engine.verify.cpp
M libcxx/test/libcxx/numerics/rand/rand.dist/rand.dist.uni/rand.dist.uni.int/bad_engine.verify.cpp
M libcxx/test/libcxx/numerics/rand/rand.dist/rand.dist.uni/rand.dist.uni.real/bad_engine.verify.cpp
R libcxx/test/libcxx/ranges/range.adaptors/range.reverse/adaptor.nodiscard.verify.cpp
A libcxx/test/libcxx/ranges/range.adaptors/range.reverse/nodiscard.verify.cpp
R libcxx/test/libcxx/ranges/range.adaptors/range.transform/adaptor.nodiscard.verify.cpp
A libcxx/test/libcxx/ranges/range.adaptors/range.transform/nodiscard.verify.cpp
A libcxx/test/libcxx/text/text_encoding/environment.android.pass.cpp
A libcxx/test/libcxx/text/text_encoding/environment.pass.cpp
A libcxx/test/libcxx/text/text_encoding/environment.windows.pass.cpp
A libcxx/test/libcxx/text/text_encoding/nodiscard.verify.cpp
A libcxx/test/libcxx/text/text_encoding/text_encoding.ctor/assert.id.pass.cpp
A libcxx/test/libcxx/text/text_encoding/text_encoding.ctor/assert.string_view.pass.cpp
A libcxx/test/libcxx/text/text_encoding/text_encoding.members/environment.delete.verify.cpp
M libcxx/test/libcxx/transitive_includes/cxx03.csv
M libcxx/test/libcxx/transitive_includes/cxx11.csv
M libcxx/test/libcxx/transitive_includes/cxx14.csv
M libcxx/test/libcxx/transitive_includes/cxx17.csv
M libcxx/test/libcxx/transitive_includes/cxx20.csv
M libcxx/test/libcxx/transitive_includes/cxx23.csv
M libcxx/test/libcxx/transitive_includes/cxx26.csv
M libcxx/test/libcxx/utilities/expected/nodiscard.verify.cpp
R libcxx/test/libcxx/utilities/memory/util.smartptr/util.smartptr.shared/libcxx.control_block_layout.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/expected.version.compile.pass.cpp
A libcxx/test/std/language.support/support.limits/support.limits.general/text_encoding.version.compile.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/utility.version.compile.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/version.version.compile.pass.cpp
M libcxx/test/std/localization/locale.categories/category.monetary/locale.money.get/locale.money.get.members/get_long_double_fr_FR.pass.cpp
M libcxx/test/std/localization/locale.categories/category.monetary/locale.money.put/locale.money.put.members/put_long_double_fr_FR.pass.cpp
A libcxx/test/std/localization/locales/locale/locale.members/encoding.pass.cpp
M libcxx/test/std/numerics/c.math/abs.pass.cpp
M libcxx/test/std/ranges/range.adaptors/range.drop.while/ctor.view.pass.cpp
M libcxx/test/std/ranges/range.adaptors/range.drop/ctor.view.pass.cpp
M libcxx/test/std/ranges/range.adaptors/range.filter/ctor.view_pred.pass.cpp
M libcxx/test/std/ranges/range.adaptors/range.lazy.split/ctor.range.pass.cpp
M libcxx/test/std/ranges/range.adaptors/range.lazy.split/ctor.view.pass.cpp
M libcxx/test/std/ranges/range.adaptors/range.split/ctor.range.pass.cpp
M libcxx/test/std/ranges/range.adaptors/range.split/ctor.view.pass.cpp
M libcxx/test/std/ranges/range.adaptors/range.take.while/ctor.view.pass.cpp
M libcxx/test/std/ranges/range.adaptors/range.take/ctor.view_count.pass.cpp
M libcxx/test/std/ranges/range.adaptors/range.transform/ctor.view_function.pass.cpp
M libcxx/test/std/ranges/range.factories/range.iota.view/ctor.first.last.pass.cpp
M libcxx/test/std/ranges/range.factories/range.iota.view/ctor.value.bound.pass.cpp
A libcxx/test/std/text/text_encoding/test_text_encoding.h
A libcxx/test/std/text/text_encoding/text_encoding.ctor/default.pass.cpp
A libcxx/test/std/text/text_encoding/text_encoding.ctor/id.pass.cpp
A libcxx/test/std/text/text_encoding/text_encoding.ctor/string_view.pass.cpp
A libcxx/test/std/text/text_encoding/text_encoding.eq/equal.id.pass.cpp
A libcxx/test/std/text/text_encoding/text_encoding.eq/equal.pass.cpp
A libcxx/test/std/text/text_encoding/text_encoding.hash/enabled_hash.pass.cpp
A libcxx/test/std/text/text_encoding/text_encoding.hash/hash.pass.cpp
A libcxx/test/std/text/text_encoding/text_encoding.members/aliases.pass.cpp
A libcxx/test/std/text/text_encoding/text_encoding.members/aliases_view.compile.pass.cpp
A libcxx/test/std/text/text_encoding/text_encoding.members/environment.pass.cpp
A libcxx/test/std/text/text_encoding/text_encoding.members/id.compile.pass.cpp
A libcxx/test/std/text/text_encoding/text_encoding.members/literal.pass.cpp
A libcxx/test/std/text/text_encoding/text_encoding.members/text_encoding.aliases_view/begin.pass.cpp
A libcxx/test/std/text/text_encoding/text_encoding.members/text_encoding.aliases_view/empty.pass.cpp
A libcxx/test/std/text/text_encoding/text_encoding.members/text_encoding.aliases_view/end.pass.cpp
A libcxx/test/std/text/text_encoding/text_encoding.members/text_encoding.aliases_view/front.pass.cpp
A libcxx/test/std/text/text_encoding/text_encoding.members/text_encoding.aliases_view/index.pass.cpp
A libcxx/test/std/text/text_encoding/text_encoding.members/text_encoding.aliases_view/iterator.pass.cpp
A libcxx/test/std/text/text_encoding/text_encoding.members/text_encoding.aliases_view/operator-bool.pass.cpp
A libcxx/test/std/text/text_encoding/trivially_copyable.compile.pass.cpp
M libcxx/test/std/utilities/const.wrap.class/convert.pass.cpp
R libcxx/test/std/utilities/const.wrap.class/ctad.compile.pass.cpp
M libcxx/test/std/utilities/const.wrap.class/cw.pass.cpp
R libcxx/test/std/utilities/const.wrap.class/cw_fixed.array.ctor.pass.cpp
R libcxx/test/std/utilities/const.wrap.class/cw_fixed.ctor.pass.cpp
M libcxx/test/std/utilities/const.wrap.class/subscript.pass.cpp
A libcxx/test/std/utilities/const.wrap.class/template.verify.cpp
M libcxx/test/std/utilities/const.wrap.class/types.compile.pass.cpp
M libcxx/test/std/utilities/const.wrap.class/unary_ops.pass.cpp
A libcxx/test/std/utilities/expected/expected.expected/observers/has_error.pass.cpp
A libcxx/test/std/utilities/expected/expected.void/observers/has_error.pass.cpp
A libcxx/test/std/utilities/memory/util.smartptr/util.smartptr.shared/pointer_destruction.pass.cpp
M libcxx/test/std/utilities/memory/util.smartptr/util.smartptr.shared/util.smartptr.shared.create/allocate_shared.lwg2070.pass.cpp
M libcxx/test/std/utilities/memory/util.smartptr/util.smartptr.shared/util.smartptr.shared.create/make_shared.pass.cpp
M libcxx/test/tools/clang_tidy_checks/hide_from_abi.cpp
M libcxx/utils/ci/lnt/README.md
M libcxx/utils/ci/lnt/run-benchbot
M libcxx/utils/ci/lnt/run-benchmarks
M libcxx/utils/ci/run-buildbot
M libcxx/utils/generate_feature_test_macro_components.py
M libcxx/utils/libcxx/header_information.py
M libcxx/utils/libcxx/test/features/availability.py
M libcxxabi/include/cxxabi.h
M libcxxabi/test/configs/llvm-libc++abi-llvm-libc.cfg.in
M libsycl/docs/index.rst
M libsycl/include/sycl/__impl/index_space_classes.hpp
M libsycl/include/sycl/__impl/queue.hpp
M libsycl/src/detail/global_objects.cpp
M libsycl/src/detail/global_objects.hpp
M libsycl/src/detail/offload/offload_topology.cpp
M libsycl/src/detail/platform_impl.cpp
M libsycl/src/detail/platform_impl.hpp
M libsycl/src/detail/program_manager.cpp
M libsycl/src/detail/program_manager.hpp
M libsycl/src/device_selector.cpp
A libsycl/test/basic/index_space_classes.cpp
A libsycl/test/basic/index_space_classes_negative.cpp
M libsycl/unittests/CMakeLists.txt
A libsycl/unittests/common/unittests_helper.hpp
A libsycl/unittests/device_selector/CMakeLists.txt
A libsycl/unittests/device_selector/get_device_preference.cpp
M libsycl/unittests/mock/helpers.cpp
M libsycl/unittests/mock/helpers.hpp
M libsycl/unittests/mock/mock.cpp
M libsycl/unittests/queue/CMakeLists.txt
A libsycl/unittests/queue/sycl_kernel_launch.cpp
M libunwind/docs/conf.py
M libunwind/src/UnwindRegistersSave.S
M lld/MachO/ICF.cpp
M lld/docs/conf.py
A lld/test/MachO/icf-safe-data-addrsig.s
A lld/test/wasm/cooperative-threading.s
M lld/test/wasm/stack-pointer-abi.s
M lld/test/wasm/thread-context-abi-mismatch.s
M lld/test/wasm/tls-libcall.s
M lld/wasm/Config.h
M lld/wasm/Driver.cpp
M lld/wasm/Options.td
M lld/wasm/Relocations.cpp
M lld/wasm/SyntheticSections.cpp
M lld/wasm/Writer.cpp
M lldb/cmake/modules/LLDBConfig.cmake
M lldb/docs/_ext/lldb_setting.py
M lldb/docs/conf.py
M lldb/examples/python/templates/scripted_process.py
M lldb/include/lldb/Breakpoint/Breakpoint.h
M lldb/include/lldb/Breakpoint/BreakpointList.h
M lldb/include/lldb/Core/Address.h
M lldb/include/lldb/Core/AddressRange.h
M lldb/include/lldb/Core/Declaration.h
M lldb/include/lldb/Core/Mangled.h
M lldb/include/lldb/Core/Module.h
M lldb/include/lldb/Core/ModuleSpec.h
M lldb/include/lldb/Core/Section.h
M lldb/include/lldb/Symbol/Block.h
M lldb/include/lldb/Symbol/Function.h
M lldb/include/lldb/Symbol/Variable.h
M lldb/include/lldb/Symbol/VariableList.h
M lldb/include/lldb/Target/DynamicLoader.h
M lldb/include/lldb/Target/Language.h
M lldb/include/lldb/Target/Process.h
M lldb/include/lldb/Utility/FileSpec.h
M lldb/include/lldb/Utility/FileSpecList.h
M lldb/source/Breakpoint/Breakpoint.cpp
M lldb/source/Breakpoint/BreakpointList.cpp
M lldb/source/Breakpoint/BreakpointResolverName.cpp
M lldb/source/Commands/CommandObjectBreakpoint.cpp
M lldb/source/Commands/CommandObjectCommands.cpp
M lldb/source/Commands/CommandObjectHelp.cpp
M lldb/source/Core/Address.cpp
M lldb/source/Core/Declaration.cpp
M lldb/source/Core/DynamicLoader.cpp
M lldb/source/Core/Mangled.cpp
M lldb/source/Core/Module.cpp
M lldb/source/Core/ModuleList.cpp
M lldb/source/Core/PluginManager.cpp
M lldb/source/Core/Section.cpp
M lldb/source/Expression/DWARFExpression.cpp
M lldb/source/Host/macosx/objcxx/HostInfoMacOSX.mm
M lldb/source/Interpreter/CommandInterpreter.cpp
M lldb/source/Plugins/DynamicLoader/Hexagon-DYLD/HexagonDYLDRendezvous.cpp
M lldb/source/Plugins/DynamicLoader/POSIX-DYLD/DYLDRendezvous.cpp
M lldb/source/Plugins/DynamicLoader/POSIX-DYLD/DynamicLoaderPOSIXDYLD.cpp
M lldb/source/Plugins/Language/ObjC/ObjCLanguage.cpp
M lldb/source/Plugins/Language/ObjC/ObjCLanguage.h
M lldb/source/Plugins/ObjectContainer/Universal-Mach-O/ObjectContainerUniversalMachO.cpp
M lldb/source/Plugins/ObjectFile/ELF/ObjectFileELF.cpp
M lldb/source/Plugins/Platform/MacOSX/PlatformDarwinKernel.cpp
M lldb/source/Plugins/Process/Linux/NativeRegisterContextLinux_arm64.cpp
M lldb/source/Plugins/Process/elf-core/CMakeLists.txt
M lldb/source/Plugins/Process/elf-core/ProcessElfCore.cpp
M lldb/source/Plugins/Process/elf-core/ProcessElfCore.h
M lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.cpp
M lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerPlatform.cpp
M lldb/source/Plugins/Protocol/MCP/ProtocolServerMCP.cpp
M lldb/source/Plugins/ScriptInterpreter/Lua/LuaState.cpp
M lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp
M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
M lldb/source/Plugins/SymbolVendor/ELF/SymbolVendorELF.cpp
M lldb/source/Plugins/SymbolVendor/PECOFF/SymbolVendorPECOFF.cpp
M lldb/source/Plugins/SymbolVendor/wasm/SymbolVendorWasm.cpp
M lldb/source/Symbol/Block.cpp
M lldb/source/Symbol/Function.cpp
M lldb/source/Symbol/Symtab.cpp
M lldb/source/Symbol/Variable.cpp
M lldb/source/Symbol/VariableList.cpp
M lldb/source/Target/Memory.cpp
M lldb/source/Target/Platform.cpp
M lldb/source/Target/Process.cpp
M lldb/source/Target/StackFrameList.cpp
M lldb/source/Target/Target.cpp
M lldb/source/Utility/FileSpec.cpp
M lldb/source/Utility/FileSpecList.cpp
M lldb/source/Utility/VirtualDataExtractor.cpp
M lldb/test/API/functionalities/postmortem/elf-core/TestLinuxCore.py
A lldb/test/API/functionalities/postmortem/elf-core/elf-dyld-nt-file-mismatch.yaml
M lldb/test/API/functionalities/rerun_and_expr_dylib/TestRerunAndExprDylib.py
M lldb/test/API/functionalities/thread/concurrent_events/TestConcurrentManyBreakpoints.py
M lldb/test/API/lang/objc/hidden-ivars/Makefile
M lldb/test/API/macosx/thread_suspend/main.c
M lldb/test/API/tools/lldb-dap/attach/TestDAP_attach.py
A lldb/test/Shell/ObjectFile/ELF/build-id-case-debug-only.yaml
A lldb/test/Shell/SymbolFile/DWARF/wasm-function-display-name.yaml
M lldb/tools/debugserver/source/RNBRemote.cpp
M lldb/tools/yaml2macho-core/yaml2macho.cpp
M lldb/unittests/Core/ModuleTest.cpp
M lldb/unittests/Expression/DWARFExpressionTest.cpp
M lldb/unittests/ObjectContainer/ObjectContainerUniversalMachOTest.cpp
M lldb/unittests/Utility/VirtualDataExtractorTest.cpp
M llvm/CMakeLists.txt
M llvm/README.txt
M llvm/benchmarks/CMakeLists.txt
A llvm/benchmarks/ImmutableSetIteratorBM.cpp
M llvm/cmake/modules/AddSphinxTarget.cmake
M llvm/docs/AMDGPUAsyncOperations.rst
M llvm/docs/AMDGPUExecutionSynchronization.rst
M llvm/docs/AMDGPUUsage.rst
M llvm/docs/AdvancedBuilds.rst
A llvm/docs/CMake.md
R llvm/docs/CMake.rst
A llvm/docs/CodeGenerator.md
R llvm/docs/CodeGenerator.rst
A llvm/docs/CodingStandards.md
R llvm/docs/CodingStandards.rst
A llvm/docs/CommandGuide/index.md
R llvm/docs/CommandGuide/index.rst
M llvm/docs/CommandGuide/llvm-objdump.rst
M llvm/docs/CommandGuide/llvm-offload-binary.rst
M llvm/docs/CommandGuide/llvm-symbolizer.rst
A llvm/docs/Contributing.md
R llvm/docs/Contributing.rst
A llvm/docs/DeveloperPolicy.md
R llvm/docs/DeveloperPolicy.rst
M llvm/docs/Docker.rst
A llvm/docs/GettingInvolved.md
R llvm/docs/GettingInvolved.rst
A llvm/docs/GettingStarted.md
R llvm/docs/GettingStarted.rst
A llvm/docs/GettingStartedTutorials.md
R llvm/docs/GettingStartedTutorials.rst
A llvm/docs/GitHub.md
R llvm/docs/GitHub.rst
M llvm/docs/GitRepositoryPolicy.md
M llvm/docs/GlobalISel/Pipeline.rst
M llvm/docs/GlobalISel/Porting.rst
M llvm/docs/GlobalISel/index.rst
M llvm/docs/InstrRefDebugInfo.md
M llvm/docs/LangRef.rst
A llvm/docs/Passes.md
R llvm/docs/Passes.rst
A llvm/docs/ProgrammersManual.md
R llvm/docs/ProgrammersManual.rst
M llvm/docs/ProjectGovernance.rst
A llvm/docs/RFCProcess.md
R llvm/docs/RFCProcess.rst
A llvm/docs/Reference.md
R llvm/docs/Reference.rst
M llvm/docs/ReleaseNotes.md
M llvm/docs/RemoveDIsDebugInfo.md
A llvm/docs/SourceLevelDebugging.md
R llvm/docs/SourceLevelDebugging.rst
M llvm/docs/SphinxQuickstartTemplate.md
A llvm/docs/TableGen/index.md
R llvm/docs/TableGen/index.rst
A llvm/docs/TestingGuide.md
R llvm/docs/TestingGuide.rst
A llvm/docs/UserGuides.md
R llvm/docs/UserGuides.rst
A llvm/docs/WritingAnLLVMBackend.md
R llvm/docs/WritingAnLLVMBackend.rst
A llvm/docs/WritingAnLLVMNewPMPass.md
R llvm/docs/WritingAnLLVMNewPMPass.rst
A llvm/docs/WritingAnLLVMPass.md
R llvm/docs/WritingAnLLVMPass.rst
M llvm/docs/conf.py
A llvm/docs/index.md
R llvm/docs/index.rst
R llvm/docs/llvm_slug.py
M llvm/docs/tutorial/MyFirstLanguageFrontend/index.rst
M llvm/include/llvm-c/Core.h
M llvm/include/llvm/ADT/APFloat.h
M llvm/include/llvm/ADT/APInt.h
M llvm/include/llvm/ADT/ImmutableSet.h
M llvm/include/llvm/ADT/STLExtras.h
M llvm/include/llvm/ADT/StringRef.h
M llvm/include/llvm/ADT/iterator_range.h
M llvm/include/llvm/Analysis/BlockFrequencyInfoImpl.h
M llvm/include/llvm/Analysis/ConstantFolding.h
M llvm/include/llvm/Analysis/InstSimplifyFolder.h
M llvm/include/llvm/Analysis/InstructionSimplify.h
M llvm/include/llvm/Analysis/LoopAccessAnalysis.h
M llvm/include/llvm/Analysis/MemoryBuiltins.h
M llvm/include/llvm/Analysis/ProfileSummaryInfo.h
M llvm/include/llvm/Analysis/ScalarEvolution.h
M llvm/include/llvm/Analysis/TargetFolder.h
M llvm/include/llvm/Analysis/VectorUtils.h
M llvm/include/llvm/BinaryFormat/ELF.h
M llvm/include/llvm/Bitcode/LLVMBitCodes.h
M llvm/include/llvm/CodeGen/BasicTTIImpl.h
M llvm/include/llvm/CodeGen/LiveInterval.h
M llvm/include/llvm/CodeGen/SelectionDAGNodes.h
M llvm/include/llvm/CodeGen/TargetSubtargetInfo.h
M llvm/include/llvm/CodeGen/ValueTypes.td
M llvm/include/llvm/DWARFLinker/Classic/DWARFLinker.h
M llvm/include/llvm/DWARFLinker/DWARFLinkerBase.h
M llvm/include/llvm/DebugInfo/Symbolize/Symbolize.h
M llvm/include/llvm/ExecutionEngine/Orc/TargetProcess/SimpleRemoteEPCServer.h
M llvm/include/llvm/ExecutionEngine/Orc/TaskDispatch.h
M llvm/include/llvm/Frontend/OpenMP/OMP.h
M llvm/include/llvm/Frontend/OpenMP/OMP.td
M llvm/include/llvm/Frontend/OpenMP/OMPConstants.h
M llvm/include/llvm/Frontend/OpenMP/OMPIRBuilder.h
M llvm/include/llvm/Frontend/OpenMP/OMPKinds.def
M llvm/include/llvm/IR/Attributes.td
M llvm/include/llvm/IR/BundleAttributes.h
M llvm/include/llvm/IR/ConstantFolder.h
M llvm/include/llvm/IR/Constants.h
M llvm/include/llvm/IR/DiagnosticInfo.h
M llvm/include/llvm/IR/Function.h
M llvm/include/llvm/IR/GlobalValue.h
M llvm/include/llvm/IR/IRBuilder.h
M llvm/include/llvm/IR/IRBuilderFolder.h
M llvm/include/llvm/IR/Intrinsics.h
M llvm/include/llvm/IR/Intrinsics.td
M llvm/include/llvm/IR/IntrinsicsAArch64.td
M llvm/include/llvm/IR/IntrinsicsNVVM.td
M llvm/include/llvm/IR/IntrinsicsRISCV.td
M llvm/include/llvm/IR/IntrinsicsWebAssembly.td
M llvm/include/llvm/IR/NoFolder.h
M llvm/include/llvm/IR/PatternMatch.h
M llvm/include/llvm/MC/MCObjectStreamer.h
M llvm/include/llvm/MC/MCStreamer.h
M llvm/include/llvm/Option/OptParser.td
M llvm/include/llvm/ProfileData/MemProf.h
M llvm/include/llvm/ProfileData/SampleProfReader.h
M llvm/include/llvm/Support/Allocator.h
M llvm/include/llvm/Support/CHERICapabilityFormat.h
M llvm/include/llvm/Support/ConvertUTF.h
M llvm/include/llvm/Support/GlobPattern.h
M llvm/include/llvm/Support/KnownBits.h
M llvm/include/llvm/Target/Target.td
M llvm/include/llvm/TargetParser/AMDGPUTargetParser.def
M llvm/include/llvm/TargetParser/AMDGPUTargetParser.h
M llvm/include/llvm/TargetParser/RISCVTargetParser.h
M llvm/include/llvm/Transforms/IPO/Instrumentor.h
M llvm/include/llvm/Transforms/IPO/InstrumentorRuntimeHelper.h
M llvm/include/llvm/Transforms/IPO/SampleProfileMatcher.h
M llvm/include/llvm/Transforms/Scalar/NaryReassociate.h
M llvm/include/llvm/Transforms/Utils/SampleProfileLoaderBaseImpl.h
R llvm/include/llvm/Transforms/Utils/UnifyFunctionExitNodes.h
M llvm/include/llvm/Transforms/Vectorize/LoopVectorizationLegality.h
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Scheduler.h
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/VecUtils.h
M llvm/lib/Analysis/AliasAnalysis.cpp
M llvm/lib/Analysis/AssumptionCache.cpp
M llvm/lib/Analysis/BasicAliasAnalysis.cpp
M llvm/lib/Analysis/BlockFrequencyInfo.cpp
M llvm/lib/Analysis/BlockFrequencyInfoImpl.cpp
M llvm/lib/Analysis/ConstantFolding.cpp
M llvm/lib/Analysis/DependenceAnalysis.cpp
M llvm/lib/Analysis/InlineCost.cpp
M llvm/lib/Analysis/InstructionSimplify.cpp
M llvm/lib/Analysis/LoopAccessAnalysis.cpp
M llvm/lib/Analysis/MemoryBuiltins.cpp
M llvm/lib/Analysis/ProfileSummaryInfo.cpp
M llvm/lib/Analysis/ScalarEvolution.cpp
M llvm/lib/Analysis/ValueLatticeUtils.cpp
M llvm/lib/Analysis/ValueTracking.cpp
M llvm/lib/Analysis/VectorUtils.cpp
M llvm/lib/Bitcode/Reader/BitcodeReader.cpp
M llvm/lib/Bitcode/Writer/BitcodeWriter.cpp
M llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
M llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
M llvm/lib/CodeGen/AsmPrinter/DwarfExpression.cpp
M llvm/lib/CodeGen/AsmPrinter/DwarfExpression.h
M llvm/lib/CodeGen/AtomicExpandPass.cpp
M llvm/lib/CodeGen/ComplexDeinterleavingPass.cpp
M llvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp
M llvm/lib/CodeGen/LiveInterval.cpp
M llvm/lib/CodeGen/LiveIntervals.cpp
M llvm/lib/CodeGen/MIRSampleProfile.cpp
M llvm/lib/CodeGen/MachineFunction.cpp
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
M llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
M llvm/lib/CodeGen/SelectionDAG/LegalizeTypes.h
M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
M llvm/lib/CodeGen/ValueTypes.cpp
M llvm/lib/DWARFCFIChecker/DWARFCFIState.cpp
M llvm/lib/DWARFLinker/Parallel/DWARFLinkerImpl.cpp
M llvm/lib/DWARFLinker/Parallel/DWARFLinkerImpl.h
M llvm/lib/DebugInfo/DWARF/DWARFAcceleratorTable.cpp
M llvm/lib/DebugInfo/PDB/Native/TpiStream.cpp
M llvm/lib/DebugInfo/Symbolize/Symbolize.cpp
M llvm/lib/Frontend/OpenMP/OMP.cpp
M llvm/lib/Frontend/OpenMP/OMPContext.cpp
M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
M llvm/lib/IR/BundleAttributes.cpp
M llvm/lib/IR/CMakeLists.txt
M llvm/lib/IR/Core.cpp
M llvm/lib/IR/DebugInfo.cpp
M llvm/lib/IR/Function.cpp
M llvm/lib/IR/Globals.cpp
M llvm/lib/IR/IRBuilder.cpp
M llvm/lib/IR/Intrinsics.cpp
M llvm/lib/IR/ProfDataUtils.cpp
M llvm/lib/IR/Type.cpp
M llvm/lib/IR/Verifier.cpp
A llvm/lib/IR/VerifierAMDGPU.cpp
A llvm/lib/IR/VerifierInternal.h
M llvm/lib/MC/MCAsmStreamer.cpp
M llvm/lib/MC/MCELFStreamer.cpp
M llvm/lib/MC/MCObjectStreamer.cpp
M llvm/lib/MC/MCParser/AsmParser.cpp
M llvm/lib/MC/MCParser/MasmParser.cpp
M llvm/lib/MC/MCStreamer.cpp
M llvm/lib/MC/MCWinCOFFStreamer.cpp
M llvm/lib/ObjectYAML/ELFEmitter.cpp
M llvm/lib/ObjectYAML/MachOEmitter.cpp
M llvm/lib/Passes/PassBuilder.cpp
M llvm/lib/Passes/PassRegistry.def
M llvm/lib/ProfileData/MemProfReader.cpp
M llvm/lib/ProfileData/SampleProfReader.cpp
M llvm/lib/Support/APInt.cpp
M llvm/lib/Support/CHERICapabilityFormat.cpp
M llvm/lib/Support/ConvertUTFWrapper.cpp
M llvm/lib/Support/GlobPattern.cpp
M llvm/lib/Support/KnownBits.cpp
M llvm/lib/Support/SpecialCaseList.cpp
M llvm/lib/Target/AArch64/AArch64.h
M llvm/lib/Target/AArch64/AArch64AsmPrinter.cpp
M llvm/lib/Target/AArch64/AArch64Features.td
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.h
M llvm/lib/Target/AArch64/AArch64InstrFormats.td
M llvm/lib/Target/AArch64/AArch64InstrInfo.cpp
M llvm/lib/Target/AArch64/AArch64InstrInfo.td
M llvm/lib/Target/AArch64/AArch64PassRegistry.def
M llvm/lib/Target/AArch64/AArch64PointerAuth.cpp
M llvm/lib/Target/AArch64/AArch64Processors.td
M llvm/lib/Target/AArch64/AArch64SRLTDefineSuperRegs.cpp
M llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td
M llvm/lib/Target/AArch64/AArch64SchedA510.td
M llvm/lib/Target/AArch64/AArch64TargetMachine.cpp
M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.h
M llvm/lib/Target/AArch64/GISel/AArch64InstructionSelector.cpp
M llvm/lib/Target/AArch64/SVEInstrFormats.td
M llvm/lib/Target/AMDGPU/AMDGPU.td
M llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.cpp
M llvm/lib/Target/AMDGPU/AMDGPUCodeGenPrepare.cpp
M llvm/lib/Target/AMDGPU/AMDGPUHSAMetadataStreamer.cpp
M llvm/lib/Target/AMDGPU/AMDGPUHSAMetadataStreamer.h
M llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp
M llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.h
M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp
M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.h
M llvm/lib/Target/AMDGPU/AMDGPUInstructions.td
M llvm/lib/Target/AMDGPU/AMDGPULaneMaskUtils.h
M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.h
M llvm/lib/Target/AMDGPU/AMDGPULibCalls.cpp
M llvm/lib/Target/AMDGPU/AMDGPURegBankCombiner.cpp
M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalize.cpp
M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeHelper.cpp
M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeHelper.h
M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeRules.cpp
M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeRules.h
M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
M llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.cpp
M llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
M llvm/lib/Target/AMDGPU/GCNProcessors.td
M llvm/lib/Target/AMDGPU/GCNSubtarget.cpp
M llvm/lib/Target/AMDGPU/GCNSubtarget.h
M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUTargetStreamer.cpp
M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUTargetStreamer.h
M llvm/lib/Target/AMDGPU/R600ISelLowering.cpp
M llvm/lib/Target/AMDGPU/R600ISelLowering.h
M llvm/lib/Target/AMDGPU/SIFixSGPRCopies.cpp
M llvm/lib/Target/AMDGPU/SIFoldOperands.cpp
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
M llvm/lib/Target/AMDGPU/SIISelLowering.h
M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
M llvm/lib/Target/AMDGPU/SIInstructions.td
M llvm/lib/Target/AMDGPU/SIMachineScheduler.h
M llvm/lib/Target/AMDGPU/SIOptimizeExecMasking.cpp
M llvm/lib/Target/AMDGPU/SIWholeQuadMode.cpp
M llvm/lib/Target/AMDGPU/SOPInstructions.td
M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp
M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.h
M llvm/lib/Target/AMDGPU/VOP1Instructions.td
M llvm/lib/Target/AMDGPU/VOP2Instructions.td
M llvm/lib/Target/ARM/ARMAsmPrinter.cpp
M llvm/lib/Target/ARM/ARMBaseInstrInfo.cpp
M llvm/lib/Target/ARM/ARMExpandPseudoInsts.cpp
M llvm/lib/Target/ARM/ARMISelLowering.cpp
M llvm/lib/Target/ARM/ARMMCInstLower.cpp
M llvm/lib/Target/ARM/ARMRegisterInfo.td
M llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
M llvm/lib/Target/BPF/BPFAbstractMemberAccess.cpp
M llvm/lib/Target/BPF/BPFCORE.h
M llvm/lib/Target/BPF/BPFFrameLowering.cpp
M llvm/lib/Target/BPF/BPFFrameLowering.h
M llvm/lib/Target/BPF/BPFSelectionDAGInfo.cpp
M llvm/lib/Target/BPF/BTFDebug.cpp
M llvm/lib/Target/BPF/BTFDebug.h
M llvm/lib/Target/CSKY/MCTargetDesc/CSKYTargetStreamer.cpp
M llvm/lib/Target/DirectX/DXILDataScalarization.cpp
M llvm/lib/Target/Hexagon/AsmParser/HexagonAsmParser.cpp
M llvm/lib/Target/Hexagon/CMakeLists.txt
M llvm/lib/Target/Hexagon/Hexagon.h
M llvm/lib/Target/Hexagon/HexagonAsmPrinter.cpp
M llvm/lib/Target/Hexagon/HexagonAsmPrinter.h
A llvm/lib/Target/Hexagon/HexagonHVXSaveRemark.cpp
M llvm/lib/Target/Hexagon/HexagonISelLowering.cpp
M llvm/lib/Target/Hexagon/HexagonISelLowering.h
M llvm/lib/Target/Hexagon/HexagonMCInstLower.cpp
M llvm/lib/Target/Hexagon/HexagonPseudo.td
M llvm/lib/Target/Hexagon/HexagonTargetMachine.cpp
M llvm/lib/Target/LoongArch/LoongArchAsmPrinter.cpp
M llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
M llvm/lib/Target/LoongArch/LoongArchISelLowering.h
M llvm/lib/Target/LoongArch/LoongArchInstrInfo.td
M llvm/lib/Target/Mips/AsmParser/MipsAsmParser.cpp
M llvm/lib/Target/Mips/MCTargetDesc/MipsTargetStreamer.cpp
M llvm/lib/Target/Mips/MipsAsmPrinter.cpp
M llvm/lib/Target/Mips/MipsInstrInfo.td
M llvm/lib/Target/NVPTX/NVPTX.h
M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
M llvm/lib/Target/NVPTX/NVPTXInstrInfo.td
M llvm/lib/Target/NVPTX/NVPTXLowerArgs.cpp
M llvm/lib/Target/NVPTX/NVPTXPassRegistry.def
M llvm/lib/Target/PowerPC/MCTargetDesc/PPCELFStreamer.cpp
M llvm/lib/Target/PowerPC/MCTargetDesc/PPCXCOFFStreamer.cpp
M llvm/lib/Target/PowerPC/PPCAsmPrinter.cpp
M llvm/lib/Target/PowerPC/PPCISelLowering.cpp
M llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
M llvm/lib/Target/RISCV/CMakeLists.txt
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVAsmBackend.cpp
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVBaseInfo.h
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCCodeEmitter.cpp
M llvm/lib/Target/RISCV/RISCV.h
M llvm/lib/Target/RISCV/RISCVAsmPrinter.cpp
M llvm/lib/Target/RISCV/RISCVFrameLowering.cpp
M llvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/lib/Target/RISCV/RISCVInstrInfo.cpp
M llvm/lib/Target/RISCV/RISCVInstrInfo.td
M llvm/lib/Target/RISCV/RISCVInstrInfoP.td
M llvm/lib/Target/RISCV/RISCVInstrInfoXCV.td
M llvm/lib/Target/RISCV/RISCVInstrInfoXqci.td
M llvm/lib/Target/RISCV/RISCVInstrPredicates.td
M llvm/lib/Target/RISCV/RISCVMoveMerger.cpp
A llvm/lib/Target/RISCV/RISCVQCRelaxMarking.cpp
M llvm/lib/Target/RISCV/RISCVTargetMachine.cpp
M llvm/lib/Target/SPIRV/SPIRVCombinerHelper.cpp
M llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.cpp
M llvm/lib/Target/Sparc/SparcAsmPrinter.cpp
M llvm/lib/Target/Sparc/SparcISelDAGToDAG.cpp
M llvm/lib/Target/Sparc/SparcISelLowering.cpp
M llvm/lib/Target/Sparc/SparcISelLowering.h
M llvm/lib/Target/Sparc/SparcInstr64Bit.td
M llvm/lib/Target/Sparc/SparcInstrInfo.td
M llvm/lib/Target/SystemZ/MCTargetDesc/SystemZHLASMAsmStreamer.cpp
M llvm/lib/Target/SystemZ/MCTargetDesc/SystemZHLASMAsmStreamer.h
M llvm/lib/Target/SystemZ/SystemZInstrInfo.cpp
M llvm/lib/Target/SystemZ/SystemZMachineScheduler.cpp
M llvm/lib/Target/SystemZ/SystemZMachineScheduler.h
M llvm/lib/Target/WebAssembly/CMakeLists.txt
M llvm/lib/Target/WebAssembly/GISel/WebAssemblyCallLowering.cpp
M llvm/lib/Target/WebAssembly/Utils/WasmAddressSpaces.h
M llvm/lib/Target/WebAssembly/Utils/WebAssemblyTypeUtilities.h
M llvm/lib/Target/WebAssembly/WebAssembly.h
M llvm/lib/Target/WebAssembly/WebAssemblyFastISel.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyISelDAGToDAG.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.h
R llvm/lib/Target/WebAssembly/WebAssemblyLowerRefTypesIntPtrConv.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyRefTypeMem2Local.cpp
M llvm/lib/Target/WebAssembly/WebAssemblySubtarget.cpp
M llvm/lib/Target/WebAssembly/WebAssemblySubtarget.h
M llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp
M llvm/lib/Target/X86/AsmParser/X86AsmParser.cpp
M llvm/lib/Target/X86/GISel/X86InstructionSelector.cpp
M llvm/lib/Target/X86/X86.td
M llvm/lib/Target/X86/X86FastISel.cpp
M llvm/lib/Target/X86/X86FrameLowering.cpp
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/lib/Target/X86/X86InstrAVX512.td
M llvm/lib/Target/X86/X86InstrFragments.td
M llvm/lib/Target/X86/X86InstrInfo.cpp
M llvm/lib/Target/X86/X86InstrInfo.h
M llvm/lib/Target/X86/X86InstrMisc.td
M llvm/lib/Target/X86/X86MCInstLower.cpp
M llvm/lib/Target/X86/X86TargetTransformInfo.cpp
M llvm/lib/Target/X86/X86TargetTransformInfo.h
M llvm/lib/Target/Xtensa/AsmParser/XtensaAsmParser.cpp
M llvm/lib/Target/Xtensa/MCTargetDesc/XtensaInstPrinter.cpp
M llvm/lib/Target/Xtensa/MCTargetDesc/XtensaMCCodeEmitter.cpp
M llvm/lib/Target/Xtensa/MCTargetDesc/XtensaMCTargetDesc.cpp
M llvm/lib/Target/Xtensa/MCTargetDesc/XtensaTargetStreamer.h
M llvm/lib/Target/Xtensa/XtensaISelLowering.cpp
M llvm/lib/Target/Xtensa/XtensaInstrInfo.td
M llvm/lib/Target/Xtensa/XtensaSubtarget.h
M llvm/lib/TargetParser/AMDGPUTargetParser.cpp
M llvm/lib/Transforms/AggressiveInstCombine/AggressiveInstCombine.cpp
M llvm/lib/Transforms/IPO/ArgumentPromotion.cpp
M llvm/lib/Transforms/IPO/AttributorAttributes.cpp
M llvm/lib/Transforms/IPO/DeadArgumentElimination.cpp
M llvm/lib/Transforms/IPO/FunctionSpecialization.cpp
M llvm/lib/Transforms/IPO/GlobalOpt.cpp
M llvm/lib/Transforms/IPO/Instrumentor.cpp
M llvm/lib/Transforms/IPO/InstrumentorStubPrinter.cpp
M llvm/lib/Transforms/IPO/MergeFunctions.cpp
M llvm/lib/Transforms/IPO/OpenMPOpt.cpp
M llvm/lib/Transforms/IPO/PartialInlining.cpp
M llvm/lib/Transforms/IPO/SampleProfile.cpp
M llvm/lib/Transforms/IPO/SampleProfileMatcher.cpp
M llvm/lib/Transforms/IPO/WholeProgramDevirt.cpp
M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
M llvm/lib/Transforms/InstCombine/InstCombineCasts.cpp
M llvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
M llvm/lib/Transforms/Instrumentation/BoundsChecking.cpp
M llvm/lib/Transforms/Instrumentation/NumericalStabilitySanitizer.cpp
M llvm/lib/Transforms/Instrumentation/PGOInstrumentation.cpp
M llvm/lib/Transforms/Scalar/LoopFuse.cpp
M llvm/lib/Transforms/Scalar/LoopInterchange.cpp
M llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp
M llvm/lib/Transforms/Scalar/NaryReassociate.cpp
M llvm/lib/Transforms/Scalar/Reassociate.cpp
M llvm/lib/Transforms/Scalar/SROA.cpp
M llvm/lib/Transforms/Scalar/SimpleLoopUnswitch.cpp
M llvm/lib/Transforms/Scalar/TailRecursionElimination.cpp
M llvm/lib/Transforms/Utils/CMakeLists.txt
M llvm/lib/Transforms/Utils/CodeExtractor.cpp
M llvm/lib/Transforms/Utils/FixIrreducible.cpp
M llvm/lib/Transforms/Utils/InlineFunction.cpp
M llvm/lib/Transforms/Utils/LowerMemIntrinsics.cpp
M llvm/lib/Transforms/Utils/ProfileVerify.cpp
M llvm/lib/Transforms/Utils/ScalarEvolutionExpander.cpp
M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
R llvm/lib/Transforms/Utils/UnifyFunctionExitNodes.cpp
M llvm/lib/Transforms/Vectorize/LoopVectorizationLegality.cpp
M llvm/lib/Transforms/Vectorize/LoopVectorizationPlanner.cpp
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/lib/Transforms/Vectorize/SandboxVectorizer/DependencyGraph.cpp
M llvm/lib/Transforms/Vectorize/SandboxVectorizer/Scheduler.cpp
M llvm/lib/Transforms/Vectorize/VPRecipeBuilder.h
M llvm/lib/Transforms/Vectorize/VPlan.cpp
M llvm/lib/Transforms/Vectorize/VPlan.h
M llvm/lib/Transforms/Vectorize/VPlanAnalysis.cpp
M llvm/lib/Transforms/Vectorize/VPlanConstruction.cpp
M llvm/lib/Transforms/Vectorize/VPlanHelpers.h
M llvm/lib/Transforms/Vectorize/VPlanPatternMatch.h
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/lib/Transforms/Vectorize/VPlanTransforms.h
M llvm/lib/Transforms/Vectorize/VPlanUnroll.cpp
M llvm/lib/Transforms/Vectorize/VPlanUtils.cpp
M llvm/lib/Transforms/Vectorize/VPlanUtils.h
M llvm/lib/Transforms/Vectorize/VPlanValue.h
M llvm/lib/Transforms/Vectorize/VPlanVerifier.cpp
M llvm/runtimes/CMakeLists.txt
M llvm/test/Analysis/BasicAA/phi-aa.ll
M llvm/test/Analysis/BasicAA/phi-and-select.ll
M llvm/test/Analysis/BasicAA/recphi.ll
M llvm/test/Analysis/CostModel/AMDGPU/maximumnum.ll
M llvm/test/Analysis/CostModel/AMDGPU/minimumnum.ll
M llvm/test/Analysis/Delinearization/global_array_bounds.ll
M llvm/test/Analysis/DependenceAnalysis/Banerjee.ll
M llvm/test/Analysis/DependenceAnalysis/BasePtrBug.ll
M llvm/test/Analysis/DependenceAnalysis/Constraints.ll
M llvm/test/Analysis/DependenceAnalysis/DifferentOffsets.ll
M llvm/test/Analysis/DependenceAnalysis/NonCanonicalizedSubscript.ll
M llvm/test/Analysis/DependenceAnalysis/Propagating.ll
A llvm/test/Analysis/DependenceAnalysis/find-gcd-overflow.ll
M llvm/test/Analysis/LoopAccessAnalysis/clamped-access-pattern.ll
M llvm/test/Analysis/LoopAccessAnalysis/inbounds-gep-in-predicated-blocks.ll
M llvm/test/Analysis/LoopAccessAnalysis/nssw-predicate-implied.ll
M llvm/test/Analysis/LoopAccessAnalysis/retry-runtime-checks-after-dependence-analysis.ll
M llvm/test/Analysis/LoopAccessAnalysis/symbolic-stride.ll
A llvm/test/Analysis/MemorySSA/invariant-load-intrinsic.ll
M llvm/test/Analysis/ScalarEvolution/addrec-computed-during-addrec-calculation.ll
M llvm/test/Analysis/ScalarEvolution/backedge-taken-count-guard-info.ll
M llvm/test/Analysis/ScalarEvolution/becount-invalidation.ll
M llvm/test/Analysis/ScalarEvolution/different-loops-recs.ll
M llvm/test/Analysis/ScalarEvolution/exit-count-non-strict.ll
M llvm/test/Analysis/ScalarEvolution/exit-count-select-safe.ll
M llvm/test/Analysis/ScalarEvolution/incorrect-exit-count.ll
M llvm/test/Analysis/ScalarEvolution/increasing-or-decreasing-iv.ll
M llvm/test/Analysis/ScalarEvolution/limit-depth.ll
M llvm/test/Analysis/ScalarEvolution/max-backedge-taken-count-guard-info-operand-order.ll
M llvm/test/Analysis/ScalarEvolution/max-backedge-taken-count-guard-info-rewrite-expressions.ll
M llvm/test/Analysis/ScalarEvolution/max-backedge-taken-count-guard-info.ll
M llvm/test/Analysis/ScalarEvolution/mul-udiv-folds.ll
M llvm/test/Analysis/ScalarEvolution/pr123550.ll
M llvm/test/Analysis/ScalarEvolution/pr22641.ll
M llvm/test/Analysis/ScalarEvolution/ptrtoint.ll
M llvm/test/Analysis/ScalarEvolution/sext-iv-2.ll
M llvm/test/Analysis/ScalarEvolution/sext-mul.ll
M llvm/test/Analysis/ScalarEvolution/trip-count-negative-stride.ll
M llvm/test/Analysis/ScalarEvolution/umin-umax-folds.ll
A llvm/test/Analysis/ValueTracking/knownbits-pdep.ll
A llvm/test/Analysis/ValueTracking/knownbits-pext.ll
M llvm/test/Bitcode/attributes.ll
M llvm/test/CodeGen/AArch64/GlobalISel/legalize-and.mir
M llvm/test/CodeGen/AArch64/GlobalISel/legalize-or.mir
M llvm/test/CodeGen/AArch64/GlobalISel/legalize-xor.mir
A llvm/test/CodeGen/AArch64/GlobalISel/pr204118.mir
M llvm/test/CodeGen/AArch64/aarch64-bf16-ldst-intrinsics.ll
A llvm/test/CodeGen/AArch64/aarch64-fmuladd.ll
M llvm/test/CodeGen/AArch64/andorbrcompare.ll
M llvm/test/CodeGen/AArch64/arm64-build-vector.ll
M llvm/test/CodeGen/AArch64/arm64-ccmp.ll
M llvm/test/CodeGen/AArch64/arm64-fpenv.ll
M llvm/test/CodeGen/AArch64/arm64_32.ll
M llvm/test/CodeGen/AArch64/bf16-select.ll
M llvm/test/CodeGen/AArch64/bf16-shuffle.ll
M llvm/test/CodeGen/AArch64/bf16-vector-bitcast.ll
M llvm/test/CodeGen/AArch64/bf16-vector-shuffle.ll
M llvm/test/CodeGen/AArch64/bf16.ll
A llvm/test/CodeGen/AArch64/br-cond-merging-cbz-tbnz.ll
A llvm/test/CodeGen/AArch64/br-cond-merging-fccmp.ll
M llvm/test/CodeGen/AArch64/br-cond-not-merge.ll
A llvm/test/CodeGen/AArch64/complex-deinterleaving-reassoc-duplicates.ll
A llvm/test/CodeGen/AArch64/extend-bool-vector-load.ll
M llvm/test/CodeGen/AArch64/fcvt-i256.ll
M llvm/test/CodeGen/AArch64/framelayout-scavengingslot-stack-hazard.mir
M llvm/test/CodeGen/AArch64/framelayout-scavengingslot.mir
M llvm/test/CodeGen/AArch64/i128-cmp.ll
M llvm/test/CodeGen/AArch64/irg_sp_tagp.ll
A llvm/test/CodeGen/AArch64/large-stack-offset-calcs.mir
M llvm/test/CodeGen/AArch64/load-insert-undef.ll
M llvm/test/CodeGen/AArch64/load-insert-zero.ll
M llvm/test/CodeGen/AArch64/lr-reserved-for-ra-live-in.ll
M llvm/test/CodeGen/AArch64/luti-with-sme2.ll
M llvm/test/CodeGen/AArch64/machine_cse.ll
M llvm/test/CodeGen/AArch64/neon-luti.ll
M llvm/test/CodeGen/AArch64/pauth-lr-tail-call-fpdiff.ll
M llvm/test/CodeGen/AArch64/peephole-and-tst.ll
A llvm/test/CodeGen/AArch64/peephole-substitute-cmp-adcs.mir
M llvm/test/CodeGen/AArch64/pr166870.ll
A llvm/test/CodeGen/AArch64/pr204118.ll
M llvm/test/CodeGen/AArch64/ragreedy-csr.ll
M llvm/test/CodeGen/AArch64/spillfill-sve.ll
M llvm/test/CodeGen/AArch64/stack-guard-sve.ll
M llvm/test/CodeGen/AArch64/subreg-liveness-fix-subreg-to-reg-implicit-def.mir
M llvm/test/CodeGen/AArch64/sve-extract-fixed-vector.ll
M llvm/test/CodeGen/AArch64/sve-extract-scalable-vector.ll
M llvm/test/CodeGen/AArch64/sve-insert-element.ll
M llvm/test/CodeGen/AArch64/sve-insert-vector.ll
M llvm/test/CodeGen/AArch64/sve-intrinsics-int-arith-undef.ll
M llvm/test/CodeGen/AArch64/sve-intrinsics-loads.ll
M llvm/test/CodeGen/AArch64/sve-ld1-addressing-mode-reg-reg.ll
A llvm/test/CodeGen/AArch64/sve-mul-imm-add-adr.ll
M llvm/test/CodeGen/AArch64/sve-st1-addressing-mode-reg-reg.ll
A llvm/test/CodeGen/AArch64/sve2-fixed-length-sra-flag.ll
A llvm/test/CodeGen/AArch64/sve2-fixed-length-sra.ll
M llvm/test/CodeGen/AArch64/sve2-histcnt.ll
M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-gather-loads-128bit-index.ll
M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-gather-loads-128bit-unscaled-offset.ll
M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-scatter-stores-128bit-index.ll
M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-scatter-stores-128bit-unscaled-offset.ll
M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-tblq.ll
M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-tbxq.ll
M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-uzpq1.ll
M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-uzpq2.ll
M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-zipq1.ll
M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-zipq2.ll
M llvm/test/CodeGen/AArch64/sve2p1-vector-shuffles.ll
M llvm/test/CodeGen/AArch64/swiftself-scavenger.ll
M llvm/test/CodeGen/AArch64/swifttail-ptrauth.ll
M llvm/test/CodeGen/AArch64/tbl-loops.ll
M llvm/test/CodeGen/AArch64/tbz-tbnz.ll
M llvm/test/CodeGen/AArch64/umulo-128-legalisation-lowering.ll
M llvm/test/CodeGen/AArch64/vector-extract-last-active.ll
M llvm/test/CodeGen/AArch64/zeroing-forms-counts-not.ll
M llvm/test/CodeGen/AArch64/zext-to-tbl.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/add.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/add.v2i16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/add.vni16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/add_shl.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/addo.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/addsubu64.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/and.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/andn2.i1.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/andn2.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/artifact-combiner-asserts.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/ashr.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/assert-align.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/atomic_load_flat.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/atomic_load_global.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/atomic_load_local.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/atomic_load_local_2.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/atomic_optimizations_mul_one.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/atomic_store_local.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw-add-sub.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw-and.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw-fmin-fmax.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw-or.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw-xchg.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw-xor.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw_fmax.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw_fmin.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw_minmax.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw_udec_wrap.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw_uinc_wrap.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/bitcast_38_i16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/bool-legalization.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/br-constant-invalid-sgpr-copy.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/bswap.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/buffer-atomic-fadd.f32-no-rtn.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/buffer-atomic-fadd.f32-rtn.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/buffer-atomic-fadd.f64.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/buffer-atomic-fadd.v2f16-no-rtn.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/buffer-atomic-fadd.v2f16-rtn.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/buffer-load-byte-short.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/buffer-load-store-pointers.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/buffer-schedule.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/bug-legalization-artifact-combiner-dead-def.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/bug_shuffle_vector_to_scalar.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/call-outgoing-stack-args.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/clamp-fmed3-const-combine.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/clamp-minmax-const-combine.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-add-nullptr.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-ashr-narrow.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-extract-vector-load.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-fabs-fneg.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-fcanonicalize.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-fma-add-ext-fma.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-fma-add-ext-mul.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-fma-add-fma-mul.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-fma-add-mul.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-fma-sub-ext-mul.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-fma-sub-ext-neg-mul.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-fma-sub-mul.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-fma-sub-neg-mul.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-fsh.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-fsub-fneg.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-itofp.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-lshr-narrow.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-or-redundant.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-redundant-and.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-redundant-neg.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-rot.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-rsq.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-shift-amount-zext.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-shift-imm-chain-illegal-types.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-shift-imm-chain-shlsat.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-shift-imm-chain.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-shift-of-shifted-logic-shlsat.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-shift-of-shifted-logic.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-shifts.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-shl-narrow.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-short-clamp.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-trunc-shift.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/combiner-crash.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/constant-bus-restriction.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/crash-stack-address-O0.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/cvt_f32_ubyte.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/dereferenceable-declaration.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/divergence-divergent-i1-phis-no-lane-mask-merging.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/divergence-divergent-i1-used-outside-loop.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/divergence-structurizer.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/divergence-temporal-divergent-i1.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/divergence-temporal-divergent-reg.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/divergent-control-flow.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/dropped_debug_info_assert.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/dummy-target.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/dynamic-alloca-uniform.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/extractelement-stack-lower.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/extractelement.i128.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/extractelement.i16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/extractelement.i8.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/extractelement.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/fabs.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/fadd.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/fceil.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/fcmp.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/fdiv.f16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/fdiv.f32.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/fdiv.f64.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/ffloor.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/flat-atomic-fadd.f32.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/flat-atomic-fadd.f64.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/flat-atomic-fadd.v2f16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/flat-scratch-init.gfx.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/flat-scratch.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/floor.f64.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/fma.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/fmad.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/fmamix-constant-bus-violation.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/fmax_legacy.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/fmed3-min-max-const-combine.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/fmed3.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/fmin3-fmax3-combine.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/fmin_legacy.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/fmul.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/fmul.v2f16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/fneg.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/fp-atomics-gfx942.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/fp-int-conversions.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/fp64-atomics-gfx90a.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/fpext.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/fpow.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/fptrunc.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/frem.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/fshl.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/fshr-new-regbank-select.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/fshr.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/fsub.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/global-atomic-fadd.f32-no-rtn.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/global-atomic-fadd.f32-rtn.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/global-atomic-fadd.f64.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/global-atomic-fadd.v2f16-no-rtn.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/global-atomic-fadd.v2f16-rtn.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/global-value-addrspaces.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/global-value.illegal.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/hip.extern.shared.array.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/i1-copy.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/icmp.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/image-waterfall-loop-O0.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/implicit-kernarg-backend-usage-global-isel.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/insertelement-stack-lower.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/insertelement.i16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/insertelement.i8.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/insertelement.large.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/insertelement.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-amdgcn.exp.compr.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-amdgcn.exp.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-amdgcn.s.barrier.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-amdgcn.s.sendmsg.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-amdgpu-ffbh-u32.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-amdgpu-ffbl-b32.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-anyext.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-bitcast.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-br.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-brcond.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-copy-scc-vcc.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-frame-index.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-phi.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-sext.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-trunc.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-zext.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/intrinsic-trunc.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-amdgcn-sendmsg.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-atomicrmw.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-constantexpr.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-constrained-fp.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-fence.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-fixed-function-abi-vgpr-args.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-getelementptr.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-invariant.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-memory-intrinsics.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-prefetch.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-ptrmask.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-readnone-intrinsic-callsite.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-sat.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-struct-return-intrinsics.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-zext-vec-index.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/is-safe-to-sink-bug.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/knownbits-ptrtoint.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/lds-global-value.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/lds-misaligned-bug.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/lds-relocs.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/lds-zero-initializer.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-build-vector.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-extractelement-crash.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-insert.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-intrinsic-amdgcn-fdiv-fast.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-inttoptr.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-jump-table.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-memcpy.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-memcpyinline.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-memmove.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-memset.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-memsetinline.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-merge-values-build-vector.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-ptrtoint.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-unmerge-values.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.abs.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.ballot.i32.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.ballot.i64.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.dispatch.ptr.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.div.fmas.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.div.scale.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.end.cf.i32.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.end.cf.i64.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.fdot2.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.fmul.legacy.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.fract.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.frexp.mant.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.if.break.i32.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.if.break.i64.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.atomic.dim.a16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.atomic.dim.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.gather4.a16.dim.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.gather4.dim.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.gather4.o.dim.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.getresinfo.a16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.getresinfo.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.load.1d.d16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.load.1d.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.load.2d.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.load.2darraymsaa.a16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.load.2darraymsaa.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.load.3d.a16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.load.3d.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.sample.cd.g16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.sample.g16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.store.2d.d16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.store.2d.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.implicit.ptr.buffer.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.interp.inreg.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.interp.p1.f16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.intersect_ray.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.kernarg.segment.ptr.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.live.mask.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.make.buffer.rsrc.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.mfma.gfx90a.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.mov.dpp.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.mul24.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.queue.ptr.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.buffer.atomic.add.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.buffer.atomic.cmpswap.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.buffer.atomic.fadd-with-ret.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.buffer.atomic.fadd.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.buffer.atomic.integer-minmax.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.buffer.atomic.sub.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.buffer.atomic.swap.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.buffer.load.format.f16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.buffer.load.format.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.buffer.load.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.buffer.load.tfe.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.buffer.store.format.f16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.buffer.store.format.f32.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.buffer.store.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.ptr.buffer.atomic.add.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.ptr.buffer.atomic.cmpswap.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.ptr.buffer.atomic.fadd-with-ret.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.ptr.buffer.atomic.fadd.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.ptr.buffer.atomic.sub.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.ptr.buffer.atomic.swap.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.ptr.buffer.load.format.f16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.ptr.buffer.load.format.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.ptr.buffer.load.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.ptr.buffer.store.format.f16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.ptr.buffer.store.format.f32.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.ptr.buffer.store.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.ptr.tbuffer.load.f16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.ptr.tbuffer.load.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.ptr.tbuffer.store.f16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.ptr.tbuffer.store.i8.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.ptr.tbuffer.store.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.tbuffer.load.f16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.tbuffer.load.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.tbuffer.store.f16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.tbuffer.store.i8.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.tbuffer.store.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.rsq.clamp.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.s.buffer.load.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.s.setreg.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.s.sleep.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.sbfe.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.sdot2.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.sdot4.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.sdot8.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.set.inactive.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.softwqm.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.strictwqm.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.buffer.atomic.add.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.buffer.atomic.cmpswap.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.buffer.atomic.fadd-with-ret.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.buffer.atomic.fadd.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.buffer.atomic.sub.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.buffer.atomic.swap.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.buffer.load.format.f16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.buffer.load.format.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.buffer.load.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.buffer.load.tfe.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.buffer.store.format.f16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.buffer.store.format.f32.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.buffer.store.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.ptr.buffer.atomic.add.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.ptr.buffer.atomic.cmpswap.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.ptr.buffer.atomic.fadd-with-ret.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.ptr.buffer.atomic.fadd.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.ptr.buffer.atomic.sub.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.ptr.buffer.atomic.swap.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.ptr.buffer.load.format.f16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.ptr.buffer.load.format.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.ptr.buffer.load.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.ptr.buffer.store.format.f16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.ptr.buffer.store.format.f32.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.ptr.buffer.store.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.ptr.tbuffer.load.f16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.ptr.tbuffer.load.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.tbuffer.load.f16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.tbuffer.load.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.sudot4.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.sudot8.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.trig.preop.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.ubfe.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.udot2.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.udot4.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.udot8.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.update.dpp.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.wmma_32.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.wmma_64.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.workgroup.id.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.workitem.id.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.wqm.demote.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.wqm.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.writelane.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.wwm.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.atomic.cmpxchg.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.memcpy.inline.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.memcpy.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.memmove.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.memset.inline.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.memset.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.powi.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/load-constant.96.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/load-constant32bit.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/load-d16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/load-divergent.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/load-local.128.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/load-local.96.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/load-unaligned.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/load-uniform-in-vgpr.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/load-uniform.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/load-zero-and-sign-extending-divergent.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/load-zero-and-sign-extending-uniform-in-vgpr.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/load-zero-and-sign-extending-uniform.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/localizer.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/lshr.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/mad.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/madmix-constant-bus-violation.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/memory-legalizer-atomic-fence.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/merge-buffer-stores.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/minmaxabs-i64.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/minmaxabs.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/mmra.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/mubuf-global.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/mul-known-bits.i64.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/mul.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/mul.v2i16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/no-ctlz-from-umul-to-lshr-in-postlegalizer.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/non-entry-alloca.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/or.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/orn2.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/postlegalizer-combiner-reassoc.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/postlegalizercombiner-select.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/readanylane-combines.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbanklegalize-amdgcn.s.buffer.load.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbanklegalize-amdgcn.s.buffer.load.subdword.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-amdgcn.image.load.1d.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-amdgcn.image.sample.1d.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-amdgcn.raw.buffer.load.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-amdgcn.raw.ptr.buffer.load.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-amdgcn.readlane.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-amdgcn.s.buffer.load.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-amdgcn.struct.buffer.load.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-amdgcn.struct.buffer.store.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-amdgcn.struct.ptr.buffer.load.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-amdgcn.struct.ptr.buffer.store.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-call.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-fabs.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-fneg.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-illegal-copy.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-inttoptr.mir
R llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-mui-salu-float.ll
R llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-mui.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-ptr-add.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-ptrtoint.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/saddsat.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/sbfx.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/sdiv.i32.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/sdiv.i64.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/sdivrem.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/select-to-fmin-fmax.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/selected-inst-flags.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/sext_inreg.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/shader-epilogs.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/shl-ext-reduce.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/shl.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/shufflevector-pointer-crash.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/shufflevector.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/smed3.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/smrd.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/smul.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/srem.i32.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/srem.i64.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/ssubsat.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/store-divergent-addr.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/store-local.128.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/store-local.96.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/store-uniform-addr.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/strict_fma.f16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/strict_fma.f32.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/strict_fma.f64.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/sub.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/sub.v2i16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/subo.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/true16-merge-values-s16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/trunc-brc.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/trunc.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/uaddsat.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/ubfx.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/udiv.i32.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/udiv.i64.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/udivrem.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/umed3.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/unmerge-sgpr-s16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/unsupported-load.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/unsupported-ptr-add.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/urem.i32.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/urem.i64.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/usubsat.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/v_bfe_i32.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/vni8-across-blocks.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/widen-i8-i16-scalar-loads.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/wmma-gfx12-w32-f16-f32-matrix-modifiers.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/wmma-gfx12-w32-imm.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/wmma-gfx12-w32-iu-modifiers.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/wmma-gfx12-w32-swmmac-index_key.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/wmma-gfx12-w32.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/wmma-gfx12-w64-f16-f32-matrix-modifiers.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/wmma-gfx12-w64-imm.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/wmma-gfx12-w64-iu-modifiers.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/wmma-gfx12-w64-swmmac-index_key.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/wmma-gfx12-w64.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/xnor.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/xor.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/zextload.ll
M llvm/test/CodeGen/AMDGPU/InlineAsmCrash.ll
M llvm/test/CodeGen/AMDGPU/abi-attribute-hints-undefined-behavior.ll
M llvm/test/CodeGen/AMDGPU/absdiff.ll
M llvm/test/CodeGen/AMDGPU/add-max.ll
M llvm/test/CodeGen/AMDGPU/add_i128.ll
M llvm/test/CodeGen/AMDGPU/add_i64.ll
M llvm/test/CodeGen/AMDGPU/addrspacecast-gas.ll
M llvm/test/CodeGen/AMDGPU/addrspacecast-initializer-unsupported.ll
M llvm/test/CodeGen/AMDGPU/addrspacecast-initializer.ll
M llvm/test/CodeGen/AMDGPU/addrspacecast-known-non-null.ll
M llvm/test/CodeGen/AMDGPU/addrspacecast.gfx6.ll
M llvm/test/CodeGen/AMDGPU/alignbit-pat.ll
M llvm/test/CodeGen/AMDGPU/allow-check.ll
M llvm/test/CodeGen/AMDGPU/amd.endpgm.ll
M llvm/test/CodeGen/AMDGPU/amdgcn-call-whole-wave.ll
M llvm/test/CodeGen/AMDGPU/amdgcn-cs-chain-intrinsic-dyn-vgpr-w32.ll
M llvm/test/CodeGen/AMDGPU/amdgcn-sin-cos-f16-f32.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.private-memory.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-codegenprepare-break-large-phis.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-codegenprepare-idiv.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-cs-chain-cc.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-cs-chain-preserve-cc.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-function-calls-option.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-reloc-const.ll
M llvm/test/CodeGen/AMDGPU/amdgpu.private-memory.ll
M llvm/test/CodeGen/AMDGPU/amdgpu.work-item-intrinsics.deprecated.ll
M llvm/test/CodeGen/AMDGPU/amdpal-callable.ll
M llvm/test/CodeGen/AMDGPU/amdpal-cs.ll
M llvm/test/CodeGen/AMDGPU/amdpal-es.ll
M llvm/test/CodeGen/AMDGPU/amdpal-gs.ll
M llvm/test/CodeGen/AMDGPU/amdpal-hs.ll
M llvm/test/CodeGen/AMDGPU/amdpal-ls.ll
M llvm/test/CodeGen/AMDGPU/amdpal-msgpack-cs.ll
M llvm/test/CodeGen/AMDGPU/amdpal-msgpack-default.ll
M llvm/test/CodeGen/AMDGPU/amdpal-msgpack-denormal.ll
M llvm/test/CodeGen/AMDGPU/amdpal-msgpack-dx10-clamp-on.ll
M llvm/test/CodeGen/AMDGPU/amdpal-msgpack-dx10-clamp.ll
M llvm/test/CodeGen/AMDGPU/amdpal-msgpack-es.ll
M llvm/test/CodeGen/AMDGPU/amdpal-msgpack-gs.ll
M llvm/test/CodeGen/AMDGPU/amdpal-msgpack-hs.ll
M llvm/test/CodeGen/AMDGPU/amdpal-msgpack-ieee.ll
M llvm/test/CodeGen/AMDGPU/amdpal-msgpack-ls.ll
M llvm/test/CodeGen/AMDGPU/amdpal-msgpack-ps.ll
M llvm/test/CodeGen/AMDGPU/amdpal-msgpack-psenable.ll
M llvm/test/CodeGen/AMDGPU/amdpal-msgpack-vs.ll
M llvm/test/CodeGen/AMDGPU/amdpal-ps.ll
M llvm/test/CodeGen/AMDGPU/amdpal-psenable.ll
M llvm/test/CodeGen/AMDGPU/amdpal-vs.ll
M llvm/test/CodeGen/AMDGPU/any_extend_vector_inreg.ll
M llvm/test/CodeGen/AMDGPU/array-ptr-calc-i64.ll
M llvm/test/CodeGen/AMDGPU/async-buffer-loads.ll
M llvm/test/CodeGen/AMDGPU/asyncmark-gfx12plus.ll
M llvm/test/CodeGen/AMDGPU/asyncmark-max-pregfx12.ll
M llvm/test/CodeGen/AMDGPU/asyncmark-pregfx12.ll
M llvm/test/CodeGen/AMDGPU/atomic_cmp_swap_local.ll
M llvm/test/CodeGen/AMDGPU/atomic_load_add.ll
M llvm/test/CodeGen/AMDGPU/atomic_load_sub.ll
M llvm/test/CodeGen/AMDGPU/atomic_optimizations_buffer.ll
M llvm/test/CodeGen/AMDGPU/atomic_optimizations_global_pointer.ll
M llvm/test/CodeGen/AMDGPU/atomic_optimizations_local_pointer.ll
M llvm/test/CodeGen/AMDGPU/atomic_optimizations_pixelshader.ll
M llvm/test/CodeGen/AMDGPU/atomic_optimizations_raw_buffer.ll
M llvm/test/CodeGen/AMDGPU/atomic_optimizations_struct_buffer.ll
M llvm/test/CodeGen/AMDGPU/atomicrmw_usub_cond.ll
M llvm/test/CodeGen/AMDGPU/atomicrmw_usub_sat.ll
M llvm/test/CodeGen/AMDGPU/atomics_cond_sub.ll
M llvm/test/CodeGen/AMDGPU/barrier-elimination-gfx12.ll
M llvm/test/CodeGen/AMDGPU/barrier-elimination.ll
M llvm/test/CodeGen/AMDGPU/basic-branch.ll
M llvm/test/CodeGen/AMDGPU/bf16.ll
M llvm/test/CodeGen/AMDGPU/bfe-patterns.ll
M llvm/test/CodeGen/AMDGPU/bfi_int.ll
M llvm/test/CodeGen/AMDGPU/bfi_nested.ll
M llvm/test/CodeGen/AMDGPU/bfm.ll
M llvm/test/CodeGen/AMDGPU/bitop3-shared-operand.ll
M llvm/test/CodeGen/AMDGPU/bitop3.ll
M llvm/test/CodeGen/AMDGPU/bitreverse-inline-immediates.ll
M llvm/test/CodeGen/AMDGPU/bitreverse.ll
M llvm/test/CodeGen/AMDGPU/branch-relax-indirect-branch.mir
M llvm/test/CodeGen/AMDGPU/branch-relaxation.ll
M llvm/test/CodeGen/AMDGPU/branch-uniformity.ll
M llvm/test/CodeGen/AMDGPU/break-vmem-soft-clauses.mir
M llvm/test/CodeGen/AMDGPU/bswap.ll
M llvm/test/CodeGen/AMDGPU/buffer-fat-pointer-atomicrmw-fadd.ll
M llvm/test/CodeGen/AMDGPU/buffer-fat-pointer-atomicrmw-fmax.ll
M llvm/test/CodeGen/AMDGPU/buffer-fat-pointer-atomicrmw-fmin.ll
M llvm/test/CodeGen/AMDGPU/buffer-fat-pointers-contents-legalization.ll
M llvm/test/CodeGen/AMDGPU/buffer-fat-pointers-memcpy.ll
M llvm/test/CodeGen/AMDGPU/buffer-rsrc-ptr-ops.ll
M llvm/test/CodeGen/AMDGPU/build-vector-packed-partial-undef.ll
M llvm/test/CodeGen/AMDGPU/bypass-div.ll
M llvm/test/CodeGen/AMDGPU/call-args-inreg.ll
M llvm/test/CodeGen/AMDGPU/call-argument-types.ll
M llvm/test/CodeGen/AMDGPU/call-c-function.ll
M llvm/test/CodeGen/AMDGPU/call-constant.ll
M llvm/test/CodeGen/AMDGPU/call-constexpr.ll
M llvm/test/CodeGen/AMDGPU/call-defs-mode-register.ll
M llvm/test/CodeGen/AMDGPU/call-encoding.ll
M llvm/test/CodeGen/AMDGPU/call-graph-register-usage.ll
M llvm/test/CodeGen/AMDGPU/call-preserved-registers.ll
M llvm/test/CodeGen/AMDGPU/call-reqd-group-size.ll
M llvm/test/CodeGen/AMDGPU/call-return-types.ll
M llvm/test/CodeGen/AMDGPU/call-skip.ll
M llvm/test/CodeGen/AMDGPU/call-waitcnt.ll
M llvm/test/CodeGen/AMDGPU/callbr-intrinsics.ll
M llvm/test/CodeGen/AMDGPU/calling-conventions.ll
M llvm/test/CodeGen/AMDGPU/carryout-selection.ll
M llvm/test/CodeGen/AMDGPU/cc-inreg-sgpr0-3-mismatch.ll
M llvm/test/CodeGen/AMDGPU/cf-loop-on-constant.ll
M llvm/test/CodeGen/AMDGPU/cgp-bitfield-extract.ll
M llvm/test/CodeGen/AMDGPU/check-subtarget-features.ll
M llvm/test/CodeGen/AMDGPU/clamp-omod-special-case.mir
M llvm/test/CodeGen/AMDGPU/cluster-dims.ll
M llvm/test/CodeGen/AMDGPU/cndmask-no-def-vcc.ll
M llvm/test/CodeGen/AMDGPU/coalescer-early-clobber-subreg.mir
M llvm/test/CodeGen/AMDGPU/coalescer-identical-values-undef.mir
M llvm/test/CodeGen/AMDGPU/coalescer-subreg-join.mir
M llvm/test/CodeGen/AMDGPU/coalescer-subregjoin-fullcopy.mir
M llvm/test/CodeGen/AMDGPU/coalescer_remat.ll
M llvm/test/CodeGen/AMDGPU/codegen-prepare-addrspacecast-non-null.ll
M llvm/test/CodeGen/AMDGPU/collapse-endcf-broken.mir
M llvm/test/CodeGen/AMDGPU/collapse-endcf.mir
M llvm/test/CodeGen/AMDGPU/collapse-endcf2.mir
M llvm/test/CodeGen/AMDGPU/combine-and-sext-bool.ll
M llvm/test/CodeGen/AMDGPU/combine-cond-add-sub.ll
M llvm/test/CodeGen/AMDGPU/combine-reg-or-const.ll
M llvm/test/CodeGen/AMDGPU/combine-sreg64-inits.mir
M llvm/test/CodeGen/AMDGPU/commute-compares-scalar-float.ll
M llvm/test/CodeGen/AMDGPU/commute-compares.ll
M llvm/test/CodeGen/AMDGPU/commute_modifiers.ll
M llvm/test/CodeGen/AMDGPU/concat_vectors.ll
M llvm/test/CodeGen/AMDGPU/constrained-shift.ll
M llvm/test/CodeGen/AMDGPU/control-flow-fastregalloc.ll
M llvm/test/CodeGen/AMDGPU/control-flow-optnone.ll
M llvm/test/CodeGen/AMDGPU/convergent-inlineasm.ll
M llvm/test/CodeGen/AMDGPU/copyprop_regsequence_with_undef.mir
M llvm/test/CodeGen/AMDGPU/ctlz.ll
M llvm/test/CodeGen/AMDGPU/ctlz_zero_poison.ll
M llvm/test/CodeGen/AMDGPU/ctpop.ll
M llvm/test/CodeGen/AMDGPU/ctpop16.ll
M llvm/test/CodeGen/AMDGPU/ctpop64.ll
M llvm/test/CodeGen/AMDGPU/cttz-elts.ll
M llvm/test/CodeGen/AMDGPU/cttz.ll
M llvm/test/CodeGen/AMDGPU/cttz_zero_poison.ll
M llvm/test/CodeGen/AMDGPU/cube.ll
M llvm/test/CodeGen/AMDGPU/cvt_flr_i32_f32.ll
M llvm/test/CodeGen/AMDGPU/cvt_rpi_i32_f32.ll
M llvm/test/CodeGen/AMDGPU/dagcomb-shuffle-vecextend-non2.ll
M llvm/test/CodeGen/AMDGPU/dagcombine-lshr-and-cmp.ll
M llvm/test/CodeGen/AMDGPU/dagcombine-reassociate-bug.ll
M llvm/test/CodeGen/AMDGPU/dce-disjoint-intervals.mir
M llvm/test/CodeGen/AMDGPU/debug-value.ll
M llvm/test/CodeGen/AMDGPU/debug-value2.ll
M llvm/test/CodeGen/AMDGPU/debug_frame.ll
M llvm/test/CodeGen/AMDGPU/default_amdhsa_code_object_version.ll
M llvm/test/CodeGen/AMDGPU/detect-dead-lanes.mir
M llvm/test/CodeGen/AMDGPU/directive-amdgcn-target.ll
M llvm/test/CodeGen/AMDGPU/div_i128.ll
M llvm/test/CodeGen/AMDGPU/div_v2i128.ll
M llvm/test/CodeGen/AMDGPU/diverge-interp-mov-lower.ll
M llvm/test/CodeGen/AMDGPU/divergence-driven-abs.ll
M llvm/test/CodeGen/AMDGPU/divergence-driven-bfe-isel.ll
M llvm/test/CodeGen/AMDGPU/divergence-driven-bitreverse.ll
M llvm/test/CodeGen/AMDGPU/divergence-driven-buildvector.ll
M llvm/test/CodeGen/AMDGPU/divergence-driven-ctlz-cttz.ll
M llvm/test/CodeGen/AMDGPU/divergence-driven-ctpop.ll
M llvm/test/CodeGen/AMDGPU/divergence-driven-min-max.ll
M llvm/test/CodeGen/AMDGPU/divergence-driven-negsubinlineconst.ll
M llvm/test/CodeGen/AMDGPU/divergence-driven-not-isel.ll
M llvm/test/CodeGen/AMDGPU/divergence-driven-sext-inreg.ll
M llvm/test/CodeGen/AMDGPU/divergence-driven-trunc-to-i1.ll
M llvm/test/CodeGen/AMDGPU/divergence-driven-xnor.ll
M llvm/test/CodeGen/AMDGPU/dpp_combine_gfx11.mir
M llvm/test/CodeGen/AMDGPU/ds-alignment.ll
M llvm/test/CodeGen/AMDGPU/ds-negative-offset-addressing-mode-loop.ll
M llvm/test/CodeGen/AMDGPU/dynamic_stackalloc.ll
M llvm/test/CodeGen/AMDGPU/eh_frame.ll
M llvm/test/CodeGen/AMDGPU/elf-header-flags-mach.ll
M llvm/test/CodeGen/AMDGPU/elf-notes.ll
M llvm/test/CodeGen/AMDGPU/elf.ll
M llvm/test/CodeGen/AMDGPU/enable-no-signed-zeros-fp-math.ll
M llvm/test/CodeGen/AMDGPU/endcf-loop-header.ll
R orc-rt/lib/executor/TaskDispatcher.cpp
Log Message:
-----------
Merge branch 'main' into users/ikudrin/clang-findallocationfunction-simplify
Commit: c675ecd81392118d809eb96b7f506c26671614dc
https://github.com/llvm/llvm-project/commit/c675ecd81392118d809eb96b7f506c26671614dc
Author: Igor Kudrin <ikudrin at accesssoftek.com>
Date: 2026-06-25 (Thu, 25 Jun 2026)
Changed paths:
M .ci/green-dragon/lldb-windows.groovy
M .github/CODEOWNERS
M .github/new-prs-labeler.yml
M .github/workflows/new-prs.yml
M .github/workflows/prune-branches.yml
M .github/workflows/prune-unused-branches.py
M .github/workflows/release-binaries.yml
M .gitignore
M bolt/docs/conf.py
M bolt/include/bolt/Core/BinaryContext.h
M bolt/include/bolt/Core/BinaryFunction.h
M bolt/include/bolt/Core/MCPlusBuilder.h
M bolt/include/bolt/Passes/PatchEntries.h
M bolt/include/bolt/Utils/CommandLineOpts.h
M bolt/lib/Core/BinaryEmitter.cpp
M bolt/lib/Core/BinaryFunction.cpp
M bolt/lib/Passes/Aligner.cpp
M bolt/lib/Passes/CacheMetrics.cpp
M bolt/lib/Passes/LongJmp.cpp
M bolt/lib/Passes/PatchEntries.cpp
M bolt/lib/Passes/TailDuplication.cpp
M bolt/lib/Rewrite/MachORewriteInstance.cpp
M bolt/lib/Rewrite/RewriteInstance.cpp
M bolt/lib/Target/X86/X86MCPlusBuilder.cpp
M bolt/lib/Utils/CommandLineOpts.cpp
M bolt/runtime/common.h
A bolt/test/AArch64/constant-island-reproducible.s
M bolt/test/X86/patch-entries.test
M bolt/test/eh-frame-hdr.test
M clang-tools-extra/clang-tidy/altera/UnrollLoopsCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/MisplacedWideningCastCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/ProTypeMemberInitCheck.cpp
M clang-tools-extra/clang-tidy/misc/ExplicitConstructorCheck.cpp
M clang-tools-extra/clang-tidy/modernize/TypeTraitsCheck.cpp
M clang-tools-extra/clang-tidy/readability/RedundantParenthesesCheck.cpp
M clang-tools-extra/clang-tidy/utils/RenamerClangTidyCheck.cpp
M clang-tools-extra/clang-tidy/utils/TypeTraits.cpp
M clang-tools-extra/clang-tidy/utils/TypeTraits.h
M clang-tools-extra/clangd/CodeCompletionStrings.cpp
M clang-tools-extra/clangd/CompileCommands.cpp
M clang-tools-extra/clangd/IncludeFixer.cpp
M clang-tools-extra/clangd/SymbolDocumentation.cpp
M clang-tools-extra/clangd/SymbolDocumentation.h
M clang-tools-extra/clangd/support/Markup.cpp
M clang-tools-extra/clangd/test/did-change-configuration-params.test
M clang-tools-extra/clangd/tool/ClangdMain.cpp
M clang-tools-extra/clangd/unittests/CodeCompleteTests.cpp
M clang-tools-extra/clangd/unittests/CodeCompletionStringsTests.cpp
M clang-tools-extra/clangd/unittests/DiagnosticsTests.cpp
M clang-tools-extra/clangd/unittests/HoverTests.cpp
M clang-tools-extra/clangd/unittests/SymbolDocumentationTests.cpp
M clang-tools-extra/docs/ReleaseNotes.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/assignment-in-selection-statement.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/bad-signal-to-kill-thread.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/copy-constructor-mutates-argument.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/default-operator-new-on-overaligned-type.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/exception-copy-constructor-throws.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/macro-parentheses.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/pointer-arithmetic-on-polymorphic-object.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/random-generator-seed.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/raw-memory-call-on-non-trivial-type.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/reserved-identifier.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/shared-ptr-array-mismatch.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/signal-handler.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/signed-char-misuse.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/sizeof-expression.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/spuriously-wake-up-functions.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/suspicious-memory-comparison.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/unhandled-self-assignment.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/unique-ptr-array-mismatch.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/unsafe-functions.rst
M clang-tools-extra/docs/clang-tidy/checks/cert/err33-c.rst
M clang-tools-extra/docs/clang-tidy/checks/cert/err60-cpp.rst
M clang-tools-extra/docs/clang-tidy/checks/cert/mem57-cpp.rst
M clang-tools-extra/docs/clang-tidy/checks/cert/msc30-c.rst
M clang-tools-extra/docs/clang-tidy/checks/cert/msc32-c.rst
M clang-tools-extra/docs/clang-tidy/checks/cert/msc50-cpp.rst
M clang-tools-extra/docs/clang-tidy/checks/cert/msc51-cpp.rst
M clang-tools-extra/docs/clang-tidy/checks/cert/oop57-cpp.rst
M clang-tools-extra/docs/clang-tidy/checks/concurrency/thread-canceltype-asynchronous.rst
M clang-tools-extra/docs/clang-tidy/checks/misc/anonymous-namespace-in-header.rst
M clang-tools-extra/docs/clang-tidy/checks/misc/no-recursion.rst
M clang-tools-extra/docs/clang-tidy/checks/misc/predictable-rand.rst
M clang-tools-extra/docs/clang-tidy/checks/misc/static-initialization-cycle.rst
M clang-tools-extra/docs/clang-tidy/checks/misc/throw-by-value-catch-by-reference.rst
M clang-tools-extra/docs/clang-tidy/checks/modernize/type-traits.rst
M clang-tools-extra/docs/clang-tidy/checks/readability/enum-initial-value.rst
M clang-tools-extra/docs/conf.py
M clang-tools-extra/modularize/PreprocessorTracker.cpp
M clang-tools-extra/pp-trace/PPCallbacksTracker.cpp
A clang-tools-extra/test/clang-doc/Inputs/array-type.cpp
A clang-tools-extra/test/clang-doc/Inputs/class-partial-specialization.cpp
A clang-tools-extra/test/clang-doc/Inputs/function-pointer-type.cpp
A clang-tools-extra/test/clang-doc/Inputs/member-function-pointer-type.cpp
A clang-tools-extra/test/clang-doc/Inputs/nested-pointer-qualifiers.cpp
A clang-tools-extra/test/clang-doc/array-type.cpp
A clang-tools-extra/test/clang-doc/class-partial-specialization.cpp
A clang-tools-extra/test/clang-doc/function-pointer-type.cpp
A clang-tools-extra/test/clang-doc/json/array-type.cpp
A clang-tools-extra/test/clang-doc/json/class-partial-specialization.cpp
A clang-tools-extra/test/clang-doc/json/function-pointer-type.cpp
A clang-tools-extra/test/clang-doc/json/member-function-pointer-type.cpp
A clang-tools-extra/test/clang-doc/json/nested-pointer-qualifiers.cpp
A clang-tools-extra/test/clang-doc/member-function-pointer-type.cpp
A clang-tools-extra/test/clang-doc/nested-pointer-qualifiers.cpp
A clang-tools-extra/test/clang-tidy/checkers/bugprone/misplaced-widening-cast-bitfield.cpp
A clang-tools-extra/test/clang-tidy/checkers/modernize/type-traits-remove-cvref.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/identifier-naming-member-decl-usage.cpp
M clang-tools-extra/unittests/clang-tidy/CMakeLists.txt
A clang-tools-extra/unittests/clang-tidy/TypeTraitsTest.cpp
M clang/CMakeLists.txt
M clang/docs/ConstantInterpreter.rst
M clang/docs/InternalsManual.rst
M clang/docs/LanguageExtensions.rst
M clang/docs/ReleaseNotes.rst
M clang/docs/SanitizerSpecialCaseList.rst
A clang/docs/ScalableStaticAnalysis/developer-docs/ForceLinkerHeaders.rst
A clang/docs/ScalableStaticAnalysis/developer-docs/HowToExtend.rst
A clang/docs/ScalableStaticAnalysis/developer-docs/SummaryExtractionInternals.rst
A clang/docs/ScalableStaticAnalysis/developer-docs/index.rst
A clang/docs/ScalableStaticAnalysis/index.rst
A clang/docs/ScalableStaticAnalysis/user-docs/SummaryExtraction.rst
R clang/docs/ScalableStaticAnalysisFramework/developer-docs/ForceLinkerHeaders.rst
R clang/docs/ScalableStaticAnalysisFramework/developer-docs/HowToExtend.rst
R clang/docs/ScalableStaticAnalysisFramework/developer-docs/SummaryExtractionInternals.rst
R clang/docs/ScalableStaticAnalysisFramework/developer-docs/index.rst
R clang/docs/ScalableStaticAnalysisFramework/index.rst
R clang/docs/ScalableStaticAnalysisFramework/user-docs/SummaryExtraction.rst
M clang/docs/conf.py
M clang/docs/index.rst
M clang/include/clang/APINotes/APINotesManager.h
M clang/include/clang/AST/Comment.h
M clang/include/clang/AST/CommentLexer.h
M clang/include/clang/AST/CommentSema.h
M clang/include/clang/AST/Decl.h
M clang/include/clang/AST/DeclBase.h
M clang/include/clang/AST/Mangle.h
M clang/include/clang/AST/RecursiveASTVisitor.h
M clang/include/clang/AST/TypeBase.h
M clang/include/clang/Analysis/Analyses/LifetimeSafety/Checker.h
M clang/include/clang/Analysis/Analyses/LifetimeSafety/LifetimeSafety.h
M clang/include/clang/Basic/Attr.td
M clang/include/clang/Basic/AttrDocs.td
M clang/include/clang/Basic/Builtins.td
M clang/include/clang/Basic/BuiltinsRISCV.td
M clang/include/clang/Basic/BuiltinsX86.td
M clang/include/clang/Basic/DarwinSDKInfo.h
M clang/include/clang/Basic/DiagnosticFrontendKinds.td
M clang/include/clang/Basic/DiagnosticGroups.td
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/include/clang/Basic/LangOptions.def
M clang/include/clang/Basic/OffloadArch.h
M clang/include/clang/Basic/SourceManager.h
M clang/include/clang/Basic/TargetInfo.h
M clang/include/clang/Basic/riscv_sifive_vector.td
M clang/include/clang/Basic/riscv_vector_common.td
M clang/include/clang/CIR/Dialect/Builder/CIRBaseBuilder.h
M clang/include/clang/CIR/Dialect/IR/CIRAttrs.td
M clang/include/clang/CIR/Dialect/IR/CIROps.td
M clang/include/clang/CIR/LoweringHelpers.h
M clang/include/clang/CIR/MissingFeatures.h
M clang/include/clang/CodeGen/ModuleBuilder.h
M clang/include/clang/Driver/Action.h
M clang/include/clang/Driver/Compilation.h
M clang/include/clang/Driver/Driver.h
M clang/include/clang/Driver/Job.h
M clang/include/clang/Driver/SanitizerArgs.h
M clang/include/clang/Driver/ToolChain.h
M clang/include/clang/Frontend/CompilerInstance.h
M clang/include/clang/Frontend/CompilerInvocation.h
M clang/include/clang/Frontend/FrontendOptions.h
A clang/include/clang/Frontend/SSAFOptions.h
M clang/include/clang/Lex/Preprocessor.h
M clang/include/clang/Options/Options.td
M clang/include/clang/Parse/Parser.h
A clang/include/clang/ScalableStaticAnalysis/Analyses/CallGraph/CallGraphSummary.h
A clang/include/clang/ScalableStaticAnalysis/Analyses/EntityPointerLevel/EntityPointerLevel.h
A clang/include/clang/ScalableStaticAnalysis/Analyses/EntityPointerLevel/EntityPointerLevelFormat.h
A clang/include/clang/ScalableStaticAnalysis/Analyses/PointerFlow/PointerFlow.h
A clang/include/clang/ScalableStaticAnalysis/Analyses/PointerFlow/PointerFlowAnalysis.h
A clang/include/clang/ScalableStaticAnalysis/Analyses/PointerFlow/PointerFlowFormat.h
A clang/include/clang/ScalableStaticAnalysis/Analyses/UnsafeBufferUsage/UnsafeBufferUsage.h
A clang/include/clang/ScalableStaticAnalysis/Analyses/UnsafeBufferUsage/UnsafeBufferUsageAnalysis.h
A clang/include/clang/ScalableStaticAnalysis/BuiltinAnchorSources.def
A clang/include/clang/ScalableStaticAnalysis/Core/ASTEntityMapping.h
A clang/include/clang/ScalableStaticAnalysis/Core/EntityLinker/EntityLinker.h
A clang/include/clang/ScalableStaticAnalysis/Core/EntityLinker/EntitySummaryEncoding.h
A clang/include/clang/ScalableStaticAnalysis/Core/EntityLinker/LUSummary.h
A clang/include/clang/ScalableStaticAnalysis/Core/EntityLinker/LUSummaryEncoding.h
A clang/include/clang/ScalableStaticAnalysis/Core/EntityLinker/TUSummaryEncoding.h
A clang/include/clang/ScalableStaticAnalysis/Core/Model/BuildNamespace.h
A clang/include/clang/ScalableStaticAnalysis/Core/Model/EntityId.h
A clang/include/clang/ScalableStaticAnalysis/Core/Model/EntityIdTable.h
A clang/include/clang/ScalableStaticAnalysis/Core/Model/EntityLinkage.h
A clang/include/clang/ScalableStaticAnalysis/Core/Model/EntityName.h
A clang/include/clang/ScalableStaticAnalysis/Core/Model/PrivateFieldNames.def
A clang/include/clang/ScalableStaticAnalysis/Core/Model/SummaryName.h
A clang/include/clang/ScalableStaticAnalysis/Core/Serialization/JSONFormat.h
A clang/include/clang/ScalableStaticAnalysis/Core/Serialization/SerializationFormat.h
A clang/include/clang/ScalableStaticAnalysis/Core/Serialization/SerializationFormatRegistry.h
A clang/include/clang/ScalableStaticAnalysis/Core/SummaryData/LUSummaryConsumer.h
A clang/include/clang/ScalableStaticAnalysis/Core/SummaryData/SummaryData.h
A clang/include/clang/ScalableStaticAnalysis/Core/SummaryData/SummaryDataBuilder.h
A clang/include/clang/ScalableStaticAnalysis/Core/SummaryData/SummaryDataBuilderRegistry.h
A clang/include/clang/ScalableStaticAnalysis/Core/SummaryData/SummaryDataStore.h
A clang/include/clang/ScalableStaticAnalysis/Core/SummaryData/SummaryDataTraits.h
A clang/include/clang/ScalableStaticAnalysis/Core/Support/ErrorBuilder.h
A clang/include/clang/ScalableStaticAnalysis/Core/Support/FormatProviders.h
A clang/include/clang/ScalableStaticAnalysis/Core/TUSummary/EntitySummary.h
A clang/include/clang/ScalableStaticAnalysis/Core/TUSummary/ExtractorRegistry.h
A clang/include/clang/ScalableStaticAnalysis/Core/TUSummary/TUSummary.h
A clang/include/clang/ScalableStaticAnalysis/Core/TUSummary/TUSummaryBuilder.h
A clang/include/clang/ScalableStaticAnalysis/Core/TUSummary/TUSummaryExtractor.h
A clang/include/clang/ScalableStaticAnalysis/Core/WholeProgramAnalysis/AnalysisBase.h
A clang/include/clang/ScalableStaticAnalysis/Core/WholeProgramAnalysis/AnalysisDriver.h
A clang/include/clang/ScalableStaticAnalysis/Core/WholeProgramAnalysis/AnalysisName.h
A clang/include/clang/ScalableStaticAnalysis/Core/WholeProgramAnalysis/AnalysisRegistry.h
A clang/include/clang/ScalableStaticAnalysis/Core/WholeProgramAnalysis/AnalysisResult.h
A clang/include/clang/ScalableStaticAnalysis/Core/WholeProgramAnalysis/AnalysisTraits.h
A clang/include/clang/ScalableStaticAnalysis/Core/WholeProgramAnalysis/DerivedAnalysis.h
A clang/include/clang/ScalableStaticAnalysis/Core/WholeProgramAnalysis/SummaryAnalysis.h
A clang/include/clang/ScalableStaticAnalysis/Core/WholeProgramAnalysis/WPASuite.h
A clang/include/clang/ScalableStaticAnalysis/Frontend/TUSummaryExtractorFrontendAction.h
A clang/include/clang/ScalableStaticAnalysis/SSAFBuiltinForceLinker.h
A clang/include/clang/ScalableStaticAnalysis/SSAFForceLinker.h
A clang/include/clang/ScalableStaticAnalysis/SourceTransformation/SourceEditEmitter.h
A clang/include/clang/ScalableStaticAnalysis/SourceTransformation/Transformation.h
A clang/include/clang/ScalableStaticAnalysis/SourceTransformation/TransformationRegistry.h
A clang/include/clang/ScalableStaticAnalysis/SourceTransformation/TransformationReportEmitter.h
A clang/include/clang/ScalableStaticAnalysis/Tool/Utils.h
R clang/include/clang/ScalableStaticAnalysisFramework/Analyses/CallGraph/CallGraphSummary.h
R clang/include/clang/ScalableStaticAnalysisFramework/Analyses/EntityPointerLevel/EntityPointerLevel.h
R clang/include/clang/ScalableStaticAnalysisFramework/Analyses/EntityPointerLevel/EntityPointerLevelFormat.h
R clang/include/clang/ScalableStaticAnalysisFramework/Analyses/PointerFlow/PointerFlow.h
R clang/include/clang/ScalableStaticAnalysisFramework/Analyses/PointerFlow/PointerFlowAnalysis.h
R clang/include/clang/ScalableStaticAnalysisFramework/Analyses/PointerFlow/PointerFlowFormat.h
R clang/include/clang/ScalableStaticAnalysisFramework/Analyses/UnsafeBufferUsage/UnsafeBufferUsage.h
R clang/include/clang/ScalableStaticAnalysisFramework/Analyses/UnsafeBufferUsage/UnsafeBufferUsageAnalysis.h
R clang/include/clang/ScalableStaticAnalysisFramework/BuiltinAnchorSources.def
R clang/include/clang/ScalableStaticAnalysisFramework/Core/ASTEntityMapping.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/EntityLinker/EntityLinker.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/EntityLinker/EntitySummaryEncoding.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/EntityLinker/LUSummary.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/EntityLinker/LUSummaryEncoding.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/EntityLinker/TUSummaryEncoding.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/Model/BuildNamespace.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/Model/EntityId.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/Model/EntityIdTable.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/Model/EntityLinkage.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/Model/EntityName.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/Model/PrivateFieldNames.def
R clang/include/clang/ScalableStaticAnalysisFramework/Core/Model/SummaryName.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/Serialization/JSONFormat.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/Serialization/SerializationFormat.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/Serialization/SerializationFormatRegistry.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/SummaryData/LUSummaryConsumer.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/SummaryData/SummaryData.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/SummaryData/SummaryDataBuilder.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/SummaryData/SummaryDataBuilderRegistry.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/SummaryData/SummaryDataStore.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/SummaryData/SummaryDataTraits.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/Support/ErrorBuilder.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/Support/FormatProviders.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/TUSummary/EntitySummary.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/TUSummary/ExtractorRegistry.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/TUSummary/TUSummary.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/TUSummary/TUSummaryBuilder.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/TUSummary/TUSummaryExtractor.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/WholeProgramAnalysis/AnalysisBase.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/WholeProgramAnalysis/AnalysisDriver.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/WholeProgramAnalysis/AnalysisName.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/WholeProgramAnalysis/AnalysisRegistry.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/WholeProgramAnalysis/AnalysisResult.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/WholeProgramAnalysis/AnalysisTraits.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/WholeProgramAnalysis/DerivedAnalysis.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/WholeProgramAnalysis/SummaryAnalysis.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/WholeProgramAnalysis/WPASuite.h
R clang/include/clang/ScalableStaticAnalysisFramework/Frontend/TUSummaryExtractorFrontendAction.h
R clang/include/clang/ScalableStaticAnalysisFramework/SSAFBuiltinForceLinker.h
R clang/include/clang/ScalableStaticAnalysisFramework/SSAFForceLinker.h
R clang/include/clang/ScalableStaticAnalysisFramework/SourceTransformation/SourceEditEmitter.h
R clang/include/clang/ScalableStaticAnalysisFramework/SourceTransformation/Transformation.h
R clang/include/clang/ScalableStaticAnalysisFramework/SourceTransformation/TransformationRegistry.h
R clang/include/clang/ScalableStaticAnalysisFramework/SourceTransformation/TransformationReportEmitter.h
R clang/include/clang/ScalableStaticAnalysisFramework/Tool/Utils.h
M clang/include/clang/Sema/MultiplexExternalSemaSource.h
M clang/include/clang/Sema/Sema.h
M clang/include/clang/Sema/SemaOpenCL.h
M clang/include/clang/StaticAnalyzer/Core/BugReporter/BugReporter.h
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/SVals.h
M clang/include/clang/Support/RISCVVIntrinsicUtils.h
M clang/include/module.modulemap
M clang/lib/APINotes/APINotesManager.cpp
M clang/lib/AST/ByteCode/Compiler.cpp
M clang/lib/AST/ByteCode/Compiler.h
M clang/lib/AST/ByteCode/Context.cpp
M clang/lib/AST/ByteCode/EvalEmitter.cpp
M clang/lib/AST/ByteCode/Floating.h
M clang/lib/AST/ByteCode/Interp.cpp
M clang/lib/AST/ByteCode/Interp.h
M clang/lib/AST/ByteCode/InterpBuiltin.cpp
M clang/lib/AST/ByteCode/InterpFrame.cpp
M clang/lib/AST/ByteCode/InterpHelpers.h
M clang/lib/AST/ByteCode/InterpState.h
M clang/lib/AST/CommentLexer.cpp
M clang/lib/AST/CommentParser.cpp
M clang/lib/AST/CommentSema.cpp
M clang/lib/AST/Decl.cpp
M clang/lib/AST/ExprConstant.cpp
M clang/lib/AST/Mangle.cpp
M clang/lib/AST/Type.cpp
M clang/lib/Analysis/FlowSensitive/WatchedLiteralsSolver.cpp
M clang/lib/Analysis/LifetimeSafety/Checker.cpp
M clang/lib/Analysis/LifetimeSafety/FactsGenerator.cpp
M clang/lib/Analysis/LifetimeSafety/LifetimeSafety.cpp
M clang/lib/Basic/Builtins.cpp
M clang/lib/Basic/DarwinSDKInfo.cpp
M clang/lib/Basic/OffloadArch.cpp
M clang/lib/Basic/SourceManager.cpp
M clang/lib/Basic/Targets/AArch64.cpp
M clang/lib/Basic/Targets/AArch64.h
M clang/lib/Basic/Targets/AMDGPU.cpp
M clang/lib/Basic/Targets/AMDGPU.h
M clang/lib/Basic/Targets/ARM.cpp
M clang/lib/Basic/Targets/ARM.h
M clang/lib/Basic/Targets/AVR.cpp
M clang/lib/Basic/Targets/AVR.h
M clang/lib/Basic/Targets/BPF.h
M clang/lib/Basic/Targets/CSKY.cpp
M clang/lib/Basic/Targets/CSKY.h
M clang/lib/Basic/Targets/Hexagon.h
M clang/lib/Basic/Targets/Lanai.cpp
M clang/lib/Basic/Targets/Lanai.h
M clang/lib/Basic/Targets/LoongArch.h
M clang/lib/Basic/Targets/M68k.cpp
M clang/lib/Basic/Targets/M68k.h
M clang/lib/Basic/Targets/Mips.h
M clang/lib/Basic/Targets/NVPTX.h
M clang/lib/Basic/Targets/PPC.h
M clang/lib/Basic/Targets/RISCV.h
M clang/lib/Basic/Targets/Sparc.h
M clang/lib/Basic/Targets/SystemZ.h
M clang/lib/Basic/Targets/WebAssembly.cpp
M clang/lib/Basic/Targets/WebAssembly.h
M clang/lib/Basic/Targets/X86.h
M clang/lib/Basic/Targets/Xtensa.h
M clang/lib/CIR/CodeGen/CIRGenAtomic.cpp
M clang/lib/CIR/CodeGen/CIRGenBuilder.h
M clang/lib/CIR/CodeGen/CIRGenBuiltin.cpp
M clang/lib/CIR/CodeGen/CIRGenBuiltinNVPTX.cpp
M clang/lib/CIR/CodeGen/CIRGenCall.cpp
M clang/lib/CIR/CodeGen/CIRGenExpr.cpp
M clang/lib/CIR/CodeGen/CIRGenExprCXX.cpp
M clang/lib/CIR/CodeGen/CIRGenExprConstant.cpp
M clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
M clang/lib/CIR/CodeGen/CIRGenFunction.cpp
M clang/lib/CIR/CodeGen/CIRGenFunction.h
M clang/lib/CIR/CodeGen/CIRGenModule.cpp
M clang/lib/CIR/CodeGen/CIRGenModule.h
M clang/lib/CIR/CodeGen/CIRGenOpenACC.cpp
M clang/lib/CIR/CodeGen/CIRGenOpenACCRecipe.cpp
M clang/lib/CIR/CodeGen/CIRGenOpenMPClause.cpp
A clang/lib/CIR/CodeGen/CIRGenOpenMPClause.h
M clang/lib/CIR/CodeGen/CIRGenRecordLayoutBuilder.cpp
M clang/lib/CIR/CodeGen/CIRGenStmt.cpp
M clang/lib/CIR/CodeGen/CIRGenStmtOpenACC.cpp
M clang/lib/CIR/CodeGen/CIRGenStmtOpenMP.cpp
M clang/lib/CIR/CodeGen/CIRGenTypes.h
M clang/lib/CIR/CodeGen/CIRGenValue.h
M clang/lib/CIR/Dialect/IR/CIRAttrs.cpp
M clang/lib/CIR/Dialect/IR/CIRDialect.cpp
M clang/lib/CIR/Dialect/IR/CIRMemorySlot.cpp
M clang/lib/CIR/Dialect/Transforms/CIRCanonicalize.cpp
M clang/lib/CIR/Dialect/Transforms/CXXABILowering.cpp
M clang/lib/CIR/Dialect/Transforms/EHABILowering.cpp
M clang/lib/CIR/Dialect/Transforms/FlattenCFG.cpp
M clang/lib/CIR/Dialect/Transforms/GotoSolver.cpp
M clang/lib/CIR/Dialect/Transforms/TargetLowering/CIRABIRewriteContext.cpp
M clang/lib/CIR/Dialect/Transforms/TargetLowering/LowerItaniumCXXABI.cpp
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.h
M clang/lib/CIR/Lowering/LoweringHelpers.cpp
M clang/lib/CMakeLists.txt
M clang/lib/CodeGen/CGBuiltin.cpp
M clang/lib/CodeGen/CGCall.cpp
M clang/lib/CodeGen/CGExpr.cpp
M clang/lib/CodeGen/CGExprConstant.cpp
M clang/lib/CodeGen/CGExprScalar.cpp
M clang/lib/CodeGen/CGOpenMPRuntimeGPU.cpp
M clang/lib/CodeGen/CGStmtOpenMP.cpp
M clang/lib/CodeGen/CodeGenModule.cpp
M clang/lib/CodeGen/CodeGenModule.h
M clang/lib/CodeGen/CodeGenTypes.cpp
M clang/lib/CodeGen/ModuleBuilder.cpp
M clang/lib/CodeGen/TargetBuiltins/ARM.cpp
M clang/lib/CodeGen/TargetBuiltins/RISCV.cpp
M clang/lib/CodeGen/Targets/RISCV.cpp
M clang/lib/CodeGen/Targets/X86.cpp
M clang/lib/Driver/Action.cpp
M clang/lib/Driver/CMakeLists.txt
M clang/lib/Driver/Compilation.cpp
M clang/lib/Driver/Driver.cpp
M clang/lib/Driver/SanitizerArgs.cpp
M clang/lib/Driver/ToolChain.cpp
M clang/lib/Driver/ToolChains/AIX.cpp
M clang/lib/Driver/ToolChains/AIX.h
M clang/lib/Driver/ToolChains/AMDGPU.cpp
M clang/lib/Driver/ToolChains/AMDGPU.h
M clang/lib/Driver/ToolChains/AMDGPUOpenMP.cpp
M clang/lib/Driver/ToolChains/AMDGPUOpenMP.h
M clang/lib/Driver/ToolChains/AVR.cpp
M clang/lib/Driver/ToolChains/AVR.h
M clang/lib/Driver/ToolChains/BareMetal.cpp
M clang/lib/Driver/ToolChains/BareMetal.h
M clang/lib/Driver/ToolChains/CSKYToolChain.cpp
M clang/lib/Driver/ToolChains/CSKYToolChain.h
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/lib/Driver/ToolChains/CommonArgs.cpp
M clang/lib/Driver/ToolChains/CrossWindows.cpp
M clang/lib/Driver/ToolChains/CrossWindows.h
M clang/lib/Driver/ToolChains/Cuda.cpp
M clang/lib/Driver/ToolChains/Cuda.h
M clang/lib/Driver/ToolChains/Darwin.cpp
M clang/lib/Driver/ToolChains/Darwin.h
M clang/lib/Driver/ToolChains/Flang.cpp
M clang/lib/Driver/ToolChains/Flang.h
M clang/lib/Driver/ToolChains/FreeBSD.cpp
M clang/lib/Driver/ToolChains/FreeBSD.h
M clang/lib/Driver/ToolChains/Fuchsia.cpp
M clang/lib/Driver/ToolChains/Fuchsia.h
M clang/lib/Driver/ToolChains/Gnu.cpp
M clang/lib/Driver/ToolChains/Gnu.h
M clang/lib/Driver/ToolChains/HIPAMD.cpp
M clang/lib/Driver/ToolChains/HIPAMD.h
M clang/lib/Driver/ToolChains/HIPSPV.cpp
M clang/lib/Driver/ToolChains/HIPSPV.h
M clang/lib/Driver/ToolChains/HIPUtility.cpp
M clang/lib/Driver/ToolChains/HLSL.cpp
M clang/lib/Driver/ToolChains/HLSL.h
M clang/lib/Driver/ToolChains/Haiku.cpp
M clang/lib/Driver/ToolChains/Haiku.h
M clang/lib/Driver/ToolChains/Hexagon.cpp
M clang/lib/Driver/ToolChains/Hexagon.h
M clang/lib/Driver/ToolChains/Linux.cpp
M clang/lib/Driver/ToolChains/Linux.h
M clang/lib/Driver/ToolChains/MSP430.cpp
M clang/lib/Driver/ToolChains/MSP430.h
M clang/lib/Driver/ToolChains/MSVC.cpp
M clang/lib/Driver/ToolChains/MSVC.h
M clang/lib/Driver/ToolChains/Managarm.cpp
M clang/lib/Driver/ToolChains/Managarm.h
M clang/lib/Driver/ToolChains/MinGW.cpp
M clang/lib/Driver/ToolChains/MinGW.h
M clang/lib/Driver/ToolChains/NetBSD.cpp
M clang/lib/Driver/ToolChains/NetBSD.h
M clang/lib/Driver/ToolChains/OHOS.cpp
M clang/lib/Driver/ToolChains/OHOS.h
M clang/lib/Driver/ToolChains/OpenBSD.cpp
M clang/lib/Driver/ToolChains/OpenBSD.h
M clang/lib/Driver/ToolChains/PS4CPU.cpp
M clang/lib/Driver/ToolChains/PS4CPU.h
M clang/lib/Driver/ToolChains/SPIRVOpenMP.cpp
M clang/lib/Driver/ToolChains/SPIRVOpenMP.h
M clang/lib/Driver/ToolChains/SYCL.cpp
M clang/lib/Driver/ToolChains/SYCL.h
M clang/lib/Driver/ToolChains/Serenity.cpp
M clang/lib/Driver/ToolChains/Serenity.h
M clang/lib/Driver/ToolChains/Solaris.cpp
M clang/lib/Driver/ToolChains/Solaris.h
M clang/lib/Driver/ToolChains/VEToolchain.cpp
M clang/lib/Driver/ToolChains/VEToolchain.h
M clang/lib/Driver/ToolChains/WebAssembly.cpp
M clang/lib/Driver/ToolChains/WebAssembly.h
M clang/lib/Driver/ToolChains/XCore.cpp
M clang/lib/Driver/ToolChains/XCore.h
M clang/lib/Driver/ToolChains/ZOS.cpp
M clang/lib/Driver/ToolChains/ZOS.h
M clang/lib/Format/CMakeLists.txt
M clang/lib/Format/FormatToken.h
M clang/lib/Format/TokenAnnotator.cpp
M clang/lib/Format/UnwrappedLineParser.cpp
M clang/lib/Format/UnwrappedLineParser.h
M clang/lib/Frontend/CompilerInvocation.cpp
M clang/lib/FrontendTool/CMakeLists.txt
M clang/lib/FrontendTool/ExecuteCompilerInvocation.cpp
M clang/lib/Headers/__clang_hip_libdevice_declares.h
M clang/lib/Headers/avx512vlvnniintrin.h
M clang/lib/Headers/avx512vnniintrin.h
M clang/lib/Headers/avxvnniintrin.h
M clang/lib/Headers/riscv_packed_simd.h
M clang/lib/Lex/PPCaching.cpp
M clang/lib/Lex/PPLexerChange.cpp
M clang/lib/Lex/Preprocessor.cpp
M clang/lib/Parse/ParseCXXInlineMethods.cpp
M clang/lib/Parse/ParseDecl.cpp
A clang/lib/ScalableStaticAnalysis/Analyses/CMakeLists.txt
A clang/lib/ScalableStaticAnalysis/Analyses/CallGraph/CallGraphExtractor.cpp
A clang/lib/ScalableStaticAnalysis/Analyses/CallGraph/CallGraphJSONFormat.cpp
A clang/lib/ScalableStaticAnalysis/Analyses/EntityPointerLevel/EntityPointerLevel.cpp
A clang/lib/ScalableStaticAnalysis/Analyses/EntityPointerLevel/EntityPointerLevelFormat.cpp
A clang/lib/ScalableStaticAnalysis/Analyses/PointerFlow/PointerFlow.cpp
A clang/lib/ScalableStaticAnalysis/Analyses/PointerFlow/PointerFlowAnalysis.cpp
A clang/lib/ScalableStaticAnalysis/Analyses/PointerFlow/PointerFlowExtractor.cpp
A clang/lib/ScalableStaticAnalysis/Analyses/PointerFlow/PointerFlowFormat.cpp
A clang/lib/ScalableStaticAnalysis/Analyses/SSAFAnalysesCommon.cpp
A clang/lib/ScalableStaticAnalysis/Analyses/SSAFAnalysesCommon.h
A clang/lib/ScalableStaticAnalysis/Analyses/UnsafeBufferUsage/UnsafeBufferUsage.cpp
A clang/lib/ScalableStaticAnalysis/Analyses/UnsafeBufferUsage/UnsafeBufferUsageAnalysis.cpp
A clang/lib/ScalableStaticAnalysis/Analyses/UnsafeBufferUsage/UnsafeBufferUsageExtractor.cpp
A clang/lib/ScalableStaticAnalysis/Analyses/UnsafeBufferUsage/UnsafeBufferUsageFormat.cpp
A clang/lib/ScalableStaticAnalysis/CMakeLists.txt
A clang/lib/ScalableStaticAnalysis/Core/ASTEntityMapping.cpp
A clang/lib/ScalableStaticAnalysis/Core/CMakeLists.txt
A clang/lib/ScalableStaticAnalysis/Core/EntityLinker/EntityLinker.cpp
A clang/lib/ScalableStaticAnalysis/Core/Model/BuildNamespace.cpp
A clang/lib/ScalableStaticAnalysis/Core/Model/EntityId.cpp
A clang/lib/ScalableStaticAnalysis/Core/Model/EntityIdTable.cpp
A clang/lib/ScalableStaticAnalysis/Core/Model/EntityLinkage.cpp
A clang/lib/ScalableStaticAnalysis/Core/Model/EntityName.cpp
A clang/lib/ScalableStaticAnalysis/Core/Model/SummaryName.cpp
A clang/lib/ScalableStaticAnalysis/Core/ModelStringConversions.h
A clang/lib/ScalableStaticAnalysis/Core/Serialization/JSONFormat/Artifact.cpp
A clang/lib/ScalableStaticAnalysis/Core/Serialization/JSONFormat/JSONEntitySummaryEncoding.cpp
A clang/lib/ScalableStaticAnalysis/Core/Serialization/JSONFormat/JSONEntitySummaryEncoding.h
A clang/lib/ScalableStaticAnalysis/Core/Serialization/JSONFormat/JSONFormatImpl.cpp
A clang/lib/ScalableStaticAnalysis/Core/Serialization/JSONFormat/JSONFormatImpl.h
A clang/lib/ScalableStaticAnalysis/Core/Serialization/JSONFormat/LUSummary.cpp
A clang/lib/ScalableStaticAnalysis/Core/Serialization/JSONFormat/LUSummaryEncoding.cpp
A clang/lib/ScalableStaticAnalysis/Core/Serialization/JSONFormat/TUSummary.cpp
A clang/lib/ScalableStaticAnalysis/Core/Serialization/JSONFormat/TUSummaryEncoding.cpp
A clang/lib/ScalableStaticAnalysis/Core/Serialization/JSONFormat/WPASuite.cpp
A clang/lib/ScalableStaticAnalysis/Core/Serialization/SerializationFormatRegistry.cpp
A clang/lib/ScalableStaticAnalysis/Core/SummaryData/LUSummaryConsumer.cpp
A clang/lib/ScalableStaticAnalysis/Core/SummaryData/SummaryDataBuilderRegistry.cpp
A clang/lib/ScalableStaticAnalysis/Core/Support/ErrorBuilder.cpp
A clang/lib/ScalableStaticAnalysis/Core/TUSummary/ExtractorRegistry.cpp
A clang/lib/ScalableStaticAnalysis/Core/TUSummary/TUSummaryBuilder.cpp
A clang/lib/ScalableStaticAnalysis/Core/TUSummary/TUSummaryExtractor.cpp
A clang/lib/ScalableStaticAnalysis/Core/WholeProgramAnalysis/AnalysisDriver.cpp
A clang/lib/ScalableStaticAnalysis/Core/WholeProgramAnalysis/AnalysisName.cpp
A clang/lib/ScalableStaticAnalysis/Core/WholeProgramAnalysis/AnalysisRegistry.cpp
A clang/lib/ScalableStaticAnalysis/Frontend/CMakeLists.txt
A clang/lib/ScalableStaticAnalysis/Frontend/TUSummaryExtractorFrontendAction.cpp
A clang/lib/ScalableStaticAnalysis/Plugins/CMakeLists.txt
A clang/lib/ScalableStaticAnalysis/Plugins/ExamplePlugin/AnalysisResults.h
A clang/lib/ScalableStaticAnalysis/Plugins/ExamplePlugin/CMakeLists.txt
A clang/lib/ScalableStaticAnalysis/Plugins/ExamplePlugin/PairsAnalysis.cpp
A clang/lib/ScalableStaticAnalysis/Plugins/ExamplePlugin/TagsAnalysis.cpp
A clang/lib/ScalableStaticAnalysis/Plugins/ExamplePlugin/TagsPairsAnalysis.cpp
A clang/lib/ScalableStaticAnalysis/SourceTransformation/CMakeLists.txt
A clang/lib/ScalableStaticAnalysis/SourceTransformation/TransformationRegistry.cpp
A clang/lib/ScalableStaticAnalysis/Tool/CMakeLists.txt
A clang/lib/ScalableStaticAnalysis/Tool/Utils.cpp
R clang/lib/ScalableStaticAnalysisFramework/Analyses/CMakeLists.txt
R clang/lib/ScalableStaticAnalysisFramework/Analyses/CallGraph/CallGraphExtractor.cpp
R clang/lib/ScalableStaticAnalysisFramework/Analyses/CallGraph/CallGraphJSONFormat.cpp
R clang/lib/ScalableStaticAnalysisFramework/Analyses/EntityPointerLevel/EntityPointerLevel.cpp
R clang/lib/ScalableStaticAnalysisFramework/Analyses/EntityPointerLevel/EntityPointerLevelFormat.cpp
R clang/lib/ScalableStaticAnalysisFramework/Analyses/PointerFlow/PointerFlow.cpp
R clang/lib/ScalableStaticAnalysisFramework/Analyses/PointerFlow/PointerFlowAnalysis.cpp
R clang/lib/ScalableStaticAnalysisFramework/Analyses/PointerFlow/PointerFlowExtractor.cpp
R clang/lib/ScalableStaticAnalysisFramework/Analyses/PointerFlow/PointerFlowFormat.cpp
R clang/lib/ScalableStaticAnalysisFramework/Analyses/SSAFAnalysesCommon.cpp
R clang/lib/ScalableStaticAnalysisFramework/Analyses/SSAFAnalysesCommon.h
R clang/lib/ScalableStaticAnalysisFramework/Analyses/UnsafeBufferUsage/UnsafeBufferUsage.cpp
R clang/lib/ScalableStaticAnalysisFramework/Analyses/UnsafeBufferUsage/UnsafeBufferUsageAnalysis.cpp
R clang/lib/ScalableStaticAnalysisFramework/Analyses/UnsafeBufferUsage/UnsafeBufferUsageExtractor.cpp
R clang/lib/ScalableStaticAnalysisFramework/Analyses/UnsafeBufferUsage/UnsafeBufferUsageFormat.cpp
R clang/lib/ScalableStaticAnalysisFramework/CMakeLists.txt
R clang/lib/ScalableStaticAnalysisFramework/Core/ASTEntityMapping.cpp
R clang/lib/ScalableStaticAnalysisFramework/Core/CMakeLists.txt
R clang/lib/ScalableStaticAnalysisFramework/Core/EntityLinker/EntityLinker.cpp
R clang/lib/ScalableStaticAnalysisFramework/Core/Model/BuildNamespace.cpp
R clang/lib/ScalableStaticAnalysisFramework/Core/Model/EntityId.cpp
R clang/lib/ScalableStaticAnalysisFramework/Core/Model/EntityIdTable.cpp
R clang/lib/ScalableStaticAnalysisFramework/Core/Model/EntityLinkage.cpp
R clang/lib/ScalableStaticAnalysisFramework/Core/Model/EntityName.cpp
R clang/lib/ScalableStaticAnalysisFramework/Core/Model/SummaryName.cpp
R clang/lib/ScalableStaticAnalysisFramework/Core/ModelStringConversions.h
R clang/lib/ScalableStaticAnalysisFramework/Core/Serialization/JSONFormat/Artifact.cpp
R clang/lib/ScalableStaticAnalysisFramework/Core/Serialization/JSONFormat/JSONEntitySummaryEncoding.cpp
R clang/lib/ScalableStaticAnalysisFramework/Core/Serialization/JSONFormat/JSONEntitySummaryEncoding.h
R clang/lib/ScalableStaticAnalysisFramework/Core/Serialization/JSONFormat/JSONFormatImpl.cpp
R clang/lib/ScalableStaticAnalysisFramework/Core/Serialization/JSONFormat/JSONFormatImpl.h
R clang/lib/ScalableStaticAnalysisFramework/Core/Serialization/JSONFormat/LUSummary.cpp
R clang/lib/ScalableStaticAnalysisFramework/Core/Serialization/JSONFormat/LUSummaryEncoding.cpp
R clang/lib/ScalableStaticAnalysisFramework/Core/Serialization/JSONFormat/TUSummary.cpp
R clang/lib/ScalableStaticAnalysisFramework/Core/Serialization/JSONFormat/TUSummaryEncoding.cpp
R clang/lib/ScalableStaticAnalysisFramework/Core/Serialization/JSONFormat/WPASuite.cpp
R clang/lib/ScalableStaticAnalysisFramework/Core/Serialization/SerializationFormatRegistry.cpp
R clang/lib/ScalableStaticAnalysisFramework/Core/SummaryData/LUSummaryConsumer.cpp
R clang/lib/ScalableStaticAnalysisFramework/Core/SummaryData/SummaryDataBuilderRegistry.cpp
R clang/lib/ScalableStaticAnalysisFramework/Core/Support/ErrorBuilder.cpp
R clang/lib/ScalableStaticAnalysisFramework/Core/TUSummary/ExtractorRegistry.cpp
R clang/lib/ScalableStaticAnalysisFramework/Core/TUSummary/TUSummaryBuilder.cpp
R clang/lib/ScalableStaticAnalysisFramework/Core/TUSummary/TUSummaryExtractor.cpp
R clang/lib/ScalableStaticAnalysisFramework/Core/WholeProgramAnalysis/AnalysisDriver.cpp
R clang/lib/ScalableStaticAnalysisFramework/Core/WholeProgramAnalysis/AnalysisName.cpp
R clang/lib/ScalableStaticAnalysisFramework/Core/WholeProgramAnalysis/AnalysisRegistry.cpp
R clang/lib/ScalableStaticAnalysisFramework/Frontend/CMakeLists.txt
R clang/lib/ScalableStaticAnalysisFramework/Frontend/TUSummaryExtractorFrontendAction.cpp
R clang/lib/ScalableStaticAnalysisFramework/Plugins/CMakeLists.txt
R clang/lib/ScalableStaticAnalysisFramework/Plugins/ExamplePlugin/AnalysisResults.h
R clang/lib/ScalableStaticAnalysisFramework/Plugins/ExamplePlugin/CMakeLists.txt
R clang/lib/ScalableStaticAnalysisFramework/Plugins/ExamplePlugin/PairsAnalysis.cpp
R clang/lib/ScalableStaticAnalysisFramework/Plugins/ExamplePlugin/TagsAnalysis.cpp
R clang/lib/ScalableStaticAnalysisFramework/Plugins/ExamplePlugin/TagsPairsAnalysis.cpp
R clang/lib/ScalableStaticAnalysisFramework/SourceTransformation/CMakeLists.txt
R clang/lib/ScalableStaticAnalysisFramework/SourceTransformation/TransformationRegistry.cpp
R clang/lib/ScalableStaticAnalysisFramework/Tool/CMakeLists.txt
R clang/lib/ScalableStaticAnalysisFramework/Tool/Utils.cpp
M clang/lib/Sema/AnalysisBasedWarnings.cpp
M clang/lib/Sema/MultiplexExternalSemaSource.cpp
M clang/lib/Sema/SemaAMDGPU.cpp
M clang/lib/Sema/SemaAPINotes.cpp
M clang/lib/Sema/SemaChecking.cpp
M clang/lib/Sema/SemaDeclCXX.cpp
M clang/lib/Sema/SemaExpr.cpp
M clang/lib/Sema/SemaExprCXX.cpp
M clang/lib/Sema/SemaLifetimeSafety.h
M clang/lib/Sema/SemaOpenCL.cpp
M clang/lib/Sema/SemaOverload.cpp
M clang/lib/Sema/SemaTemplate.cpp
M clang/lib/Sema/SemaTemplateInstantiate.cpp
M clang/lib/Sema/SemaType.cpp
M clang/lib/Sema/TreeTransform.h
M clang/lib/Serialization/ASTWriter.cpp
M clang/lib/StaticAnalyzer/Checkers/CXXDeleteChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/MacOSKeychainAPIChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/NonNullParamChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/StdLibraryFunctionsChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/UndefCapturedBlockVarChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/UndefinedNewArraySizeChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/UnixAPIChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/VLASizeChecker.cpp
M clang/lib/StaticAnalyzer/Core/BugReporter.cpp
M clang/lib/StaticAnalyzer/Core/ExprEngine.cpp
M clang/lib/StaticAnalyzer/Core/ExprEngineCallAndReturn.cpp
M clang/lib/Support/RISCVVIntrinsicUtils.cpp
M clang/lib/Tooling/DependencyScanningTool.cpp
M clang/test/AST/ByteCode/builtin-functions.cpp
A clang/test/AST/ByteCode/command-line-options.cpp
M clang/test/AST/ByteCode/dynamic-cast.cpp
A clang/test/AST/ByteCode/evaluate-dtor-codegen.cpp
A clang/test/AST/ByteCode/evaluate-dtor.cpp
M clang/test/AST/ByteCode/new-delete.cpp
R clang/test/AST/ast-dump-openmp-atomic.c
R clang/test/AST/ast-dump-openmp-barrier.c
R clang/test/AST/ast-dump-openmp-cancel.c
R clang/test/AST/ast-dump-openmp-cancellation-point.c
R clang/test/AST/ast-dump-openmp-critical.c
R clang/test/AST/ast-dump-openmp-distribute-parallel-for-simd.c
R clang/test/AST/ast-dump-openmp-distribute-parallel-for.c
R clang/test/AST/ast-dump-openmp-distribute-simd.c
R clang/test/AST/ast-dump-openmp-distribute.c
R clang/test/AST/ast-dump-openmp-flush.c
R clang/test/AST/ast-dump-openmp-for-simd.c
R clang/test/AST/ast-dump-openmp-for.c
R clang/test/AST/ast-dump-openmp-master.c
R clang/test/AST/ast-dump-openmp-ordered.c
R clang/test/AST/ast-dump-openmp-parallel-for-simd.c
R clang/test/AST/ast-dump-openmp-parallel-for.c
R clang/test/AST/ast-dump-openmp-parallel-sections.c
R clang/test/AST/ast-dump-openmp-parallel.c
R clang/test/AST/ast-dump-openmp-section.c
R clang/test/AST/ast-dump-openmp-sections.c
R clang/test/AST/ast-dump-openmp-simd.c
R clang/test/AST/ast-dump-openmp-single.c
R clang/test/AST/ast-dump-openmp-split.c
R clang/test/AST/ast-dump-openmp-target-data.c
R clang/test/AST/ast-dump-openmp-target-enter-data.c
R clang/test/AST/ast-dump-openmp-target-exit-data.c
R clang/test/AST/ast-dump-openmp-target-parallel-for-simd.c
R clang/test/AST/ast-dump-openmp-target-parallel-for.c
R clang/test/AST/ast-dump-openmp-target-parallel.c
R clang/test/AST/ast-dump-openmp-target-simd.c
R clang/test/AST/ast-dump-openmp-target-teams-distribute-parallel-for-simd.c
R clang/test/AST/ast-dump-openmp-target-teams-distribute-parallel-for.c
R clang/test/AST/ast-dump-openmp-target-teams-distribute-simd.c
R clang/test/AST/ast-dump-openmp-target-teams-distribute.c
R clang/test/AST/ast-dump-openmp-target-teams.c
R clang/test/AST/ast-dump-openmp-target-update.c
R clang/test/AST/ast-dump-openmp-target.c
R clang/test/AST/ast-dump-openmp-task.c
R clang/test/AST/ast-dump-openmp-taskgroup.c
R clang/test/AST/ast-dump-openmp-taskloop-simd.c
R clang/test/AST/ast-dump-openmp-taskloop.c
R clang/test/AST/ast-dump-openmp-taskwait.c
R clang/test/AST/ast-dump-openmp-taskyield.c
R clang/test/AST/ast-dump-openmp-teams-distribute-parallel-for-simd.c
R clang/test/AST/ast-dump-openmp-teams-distribute-parallel-for.c
R clang/test/AST/ast-dump-openmp-teams-distribute-simd.c
R clang/test/AST/ast-dump-openmp-teams-distribute.c
R clang/test/AST/ast-dump-openmp-teams.c
A clang/test/AST/builtin-name-registration.c
A clang/test/AST/pr198903.cpp
M clang/test/AST/undocumented-attrs.cpp
A clang/test/Analysis/Scalable/PointerFlow/entity-name-no-conflict.cpp
A clang/test/Analysis/Scalable/PointerFlow/multi-decl-contributor.cpp
M clang/test/Analysis/bstring.c
M clang/test/Analysis/malloc.c
A clang/test/Analysis/pr169302.cpp
M clang/test/Analysis/pr22954.c
M clang/test/C/C23/n3037.c
A clang/test/CIR/CodeGen/atomic-libcall.c
A clang/test/CIR/CodeGen/builtin-atomic-is-lock-free.c
A clang/test/CIR/CodeGen/cleanup-scope-throw-caught.cpp
A clang/test/CIR/CodeGen/const-label-addr.c
M clang/test/CIR/CodeGen/constant-inits.cpp
A clang/test/CIR/CodeGen/member-pointer-null-init.cpp
A clang/test/CIR/CodeGen/new-array-init.cpp
M clang/test/CIR/CodeGen/new.cpp
M clang/test/CIR/CodeGen/no-unique-address.cpp
M clang/test/CIR/CodeGen/nonzeroinit-struct.cpp
M clang/test/CIR/CodeGen/paren-list-agg-init.cpp
M clang/test/CIR/CodeGen/pointer-to-data-member.cpp
M clang/test/CIR/CodeGen/record-zero-init-padding.c
A clang/test/CIR/CodeGen/trivially-recursive-skip.cpp
A clang/test/CIR/CodeGen/unary-expr-or-type-trait-32bit.cpp
A clang/test/CIR/CodeGenBuiltins/builtin-nontemporal.cpp
A clang/test/CIR/CodeGenBuiltins/builtin-reduce-bitwise.c
M clang/test/CIR/CodeGenBuiltins/builtin-undef-rvalue.cpp
A clang/test/CIR/CodeGenBuiltins/builtins-elementwise-bool-nyi.c
M clang/test/CIR/CodeGenBuiltins/builtins-elementwise.c
M clang/test/CIR/CodeGenCXX/new-array-init.cpp
M clang/test/CIR/CodeGenOpenACC/cache.c
M clang/test/CIR/CodeGenOpenACC/combined-copy.c
M clang/test/CIR/CodeGenOpenACC/combined-copy.cpp
M clang/test/CIR/CodeGenOpenACC/combined-firstprivate-clause.cpp
M clang/test/CIR/CodeGenOpenACC/combined-private-clause.cpp
M clang/test/CIR/CodeGenOpenACC/combined-reduction-clause-default-ops.cpp
M clang/test/CIR/CodeGenOpenACC/combined-reduction-clause-float.cpp
M clang/test/CIR/CodeGenOpenACC/combined-reduction-clause-inline-ops.cpp
M clang/test/CIR/CodeGenOpenACC/combined-reduction-clause-int.cpp
M clang/test/CIR/CodeGenOpenACC/combined-reduction-clause-outline-ops.cpp
M clang/test/CIR/CodeGenOpenACC/combined.cpp
M clang/test/CIR/CodeGenOpenACC/compute-copy.c
M clang/test/CIR/CodeGenOpenACC/compute-copy.cpp
M clang/test/CIR/CodeGenOpenACC/compute-firstprivate-clause.c
M clang/test/CIR/CodeGenOpenACC/compute-firstprivate-clause.cpp
M clang/test/CIR/CodeGenOpenACC/compute-private-clause.c
M clang/test/CIR/CodeGenOpenACC/compute-private-clause.cpp
M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-default-ops.c
M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-default-ops.cpp
M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-float.c
M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-float.cpp
M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-inline-ops.cpp
M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-int.c
M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-int.cpp
M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-outline-ops.cpp
M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-unsigned-int.c
M clang/test/CIR/CodeGenOpenACC/data.c
M clang/test/CIR/CodeGenOpenACC/declare-copy.cpp
M clang/test/CIR/CodeGenOpenACC/declare-copyin.cpp
M clang/test/CIR/CodeGenOpenACC/declare-copyout.cpp
M clang/test/CIR/CodeGenOpenACC/declare-create.cpp
M clang/test/CIR/CodeGenOpenACC/declare-deviceresident.cpp
M clang/test/CIR/CodeGenOpenACC/declare-link.cpp
M clang/test/CIR/CodeGenOpenACC/declare-present.cpp
M clang/test/CIR/CodeGenOpenACC/enter-data.c
M clang/test/CIR/CodeGenOpenACC/exit-data.c
M clang/test/CIR/CodeGenOpenACC/firstprivate-clause-recipes.cpp
M clang/test/CIR/CodeGenOpenACC/host_data.c
M clang/test/CIR/CodeGenOpenACC/init.c
M clang/test/CIR/CodeGenOpenACC/kernels.c
M clang/test/CIR/CodeGenOpenACC/loop-private-clause.cpp
M clang/test/CIR/CodeGenOpenACC/loop-reduction-clause-default-ops.cpp
M clang/test/CIR/CodeGenOpenACC/loop-reduction-clause-float.cpp
M clang/test/CIR/CodeGenOpenACC/loop-reduction-clause-inline-ops.cpp
M clang/test/CIR/CodeGenOpenACC/loop-reduction-clause-int.cpp
M clang/test/CIR/CodeGenOpenACC/loop-reduction-clause-outline-ops.cpp
M clang/test/CIR/CodeGenOpenACC/loop.cpp
M clang/test/CIR/CodeGenOpenACC/parallel.c
M clang/test/CIR/CodeGenOpenACC/private-clause-array-recipes-CtorDtor.cpp
M clang/test/CIR/CodeGenOpenACC/private-clause-array-recipes-NoOps.cpp
M clang/test/CIR/CodeGenOpenACC/private-clause-pointer-array-recipes-CtorDtor.cpp
M clang/test/CIR/CodeGenOpenACC/private-clause-pointer-array-recipes-NoOps.cpp
M clang/test/CIR/CodeGenOpenACC/private-clause-pointer-array-recipes-int.cpp
M clang/test/CIR/CodeGenOpenACC/private-clause-pointer-recipes-CtorDtor.cpp
M clang/test/CIR/CodeGenOpenACC/private-clause-pointer-recipes-NoOps.cpp
M clang/test/CIR/CodeGenOpenACC/private-clause-pointer-recipes-int.cpp
M clang/test/CIR/CodeGenOpenACC/reduction-clause-recipes.cpp
M clang/test/CIR/CodeGenOpenACC/serial.c
M clang/test/CIR/CodeGenOpenACC/set.c
M clang/test/CIR/CodeGenOpenACC/shutdown.c
M clang/test/CIR/CodeGenOpenACC/update.c
M clang/test/CIR/CodeGenOpenACC/wait.c
M clang/test/CIR/CodeGenOpenMP/not-yet-implemented.c
A clang/test/CIR/CodeGenOpenMP/target-map-llvm-device.c
A clang/test/CIR/CodeGenOpenMP/target-map-llvm-host.c
A clang/test/CIR/CodeGenOpenMP/target-map.c
A clang/test/CIR/IR/builtin-int-cast.cir
A clang/test/CIR/IR/invalid-builtin-int-cast.cir
M clang/test/CIR/IR/invalid-data-member.cir
A clang/test/CIR/Lowering/builtin-int-cast.cir
M clang/test/CIR/Lowering/const-array-bulk-lowering-fallbacks.cir
M clang/test/CIR/Lowering/const-array-of-pointers.cir
M clang/test/CIR/Lowering/omp-target-map.cir
A clang/test/CIR/Transforms/abi-lowering/indirect-byval.cir
A clang/test/CIR/Transforms/builtin-int-cast-fold.cir
M clang/test/CIR/Transforms/omp-mark-declare-target.cir
M clang/test/CMakeLists.txt
M clang/test/CXX/drs/cwg5xx.cpp
M clang/test/CXX/expr/expr.const/p6-2a.cpp
M clang/test/ClangScanDeps/modules-full-by-mult-mod-names-diagnostics.c
M clang/test/CodeGen/AArch64/fp8-intrinsics/acle_neon_fp8_reinterpret.c
M clang/test/CodeGen/AArch64/neon-intrinsics.c
M clang/test/CodeGen/AArch64/neon/bf16-getset.c
M clang/test/CodeGen/AArch64/neon/subtraction.c
M clang/test/CodeGen/AArch64/sme2p3-intrinsics/acle_sme2p3_luti6.c
M clang/test/CodeGen/AArch64/sve2p3-intrinsics/acle_sve2p3_luti6.c
M clang/test/CodeGen/AArch64/sve2p3-intrinsics/acle_sve2p3_luti6_lane_x2.c
M clang/test/CodeGen/RISCV/riscv-vector-callingconv-llvm-ir.c
M clang/test/CodeGen/RISCV/riscv-vector-callingconv-llvm-ir.cpp
M clang/test/CodeGen/RISCV/rvp-intrinsics.c
M clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/non-overloaded/sf_mm_e4m3_e4m3.c
M clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/non-overloaded/sf_mm_e4m3_e5m2.c
M clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/non-overloaded/sf_mm_e5m2_e4m3.c
M clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/non-overloaded/sf_mm_e5m2_e5m2.c
M clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/overloaded/sf_mm_e4m3_e4m3.c
M clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/overloaded/sf_mm_e4m3_e5m2.c
M clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/overloaded/sf_mm_e5m2_e4m3.c
M clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/overloaded/sf_mm_e5m2_e5m2.c
M clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/overloaded/sf_mm_f_f.c
M clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/overloaded/sf_mm_s_s.c
M clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/overloaded/sf_mm_s_u.c
M clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/overloaded/sf_mm_u_s.c
M clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/overloaded/sf_mm_u_u.c
M clang/test/CodeGen/WebAssembly/builtins-table-externref.c
M clang/test/CodeGen/WebAssembly/builtins-table-funcref.c
M clang/test/CodeGen/WebAssembly/builtins-test-fp-sig.c
M clang/test/CodeGen/WebAssembly/wasm-externref.c
A clang/test/CodeGen/WebAssembly/wasm-funcref-to-ptr-error.c
M clang/test/CodeGen/WebAssembly/wasm-funcref.c
M clang/test/CodeGen/X86/avx-cxx-record.cpp
M clang/test/CodeGen/X86/avx2-builtins.c
M clang/test/CodeGen/X86/avx512vlvnni-builtins.c
M clang/test/CodeGen/X86/avx512vnni-builtins.c
M clang/test/CodeGen/X86/avxvnni-builtins.c
M clang/test/CodeGen/X86/sse41-builtins.c
R clang/test/CodeGen/amdgpu-feature-builtins-invalid-use.cpp
M clang/test/CodeGen/attr-arm-sve-vector-bits-bitcast.c
M clang/test/CodeGen/attr-arm-sve-vector-bits-codegen.c
M clang/test/CodeGen/attr-arm-sve-vector-bits-globals.c
M clang/test/CodeGen/attr-arm-sve-vector-bits-types.c
M clang/test/CodeGen/builtins-elementwise-math.c
M clang/test/CodeGen/builtins-wasm.c
M clang/test/CodeGen/convergent-functions.cpp
M clang/test/CodeGen/svboolx2_t.cpp
M clang/test/CodeGen/svboolx4_t.cpp
M clang/test/CodeGenCXX/aarch64-mangle-sve-fixed-vectors.cpp
M clang/test/CodeGenCXX/aarch64-mangle-sve-vectors.cpp
M clang/test/CodeGenCXX/aarch64-sve-fixedtypeinfo.cpp
M clang/test/CodeGenCXX/const-init-cxx2a.cpp
M clang/test/CodeGenCXX/dynamic-cast-exact.cpp
M clang/test/CodeGenCXX/mangle-neon-vectors.cpp
M clang/test/CodeGenCXX/non-const-init-cxx2a.cpp
M clang/test/CodeGenCXX/wasm-reftypes-mangle.cpp
A clang/test/CodeGenHLSL/BasicFeatures/OutArgLifetime.hlsl
M clang/test/CodeGenOpenCL/address-spaces-conversions.cl
M clang/test/CodeGenOpenCL/address-spaces.cl
M clang/test/CodeGenOpenCL/amdgpu-sizeof-alignof.cl
M clang/test/CodeGenOpenCL/builtins-amdgcn-gfx11.cl
M clang/test/CodeGenOpenCL/func-call-dbg-loc.cl
M clang/test/CodeGenSYCL/address-space-conversions.cpp
M clang/test/CodeGenSYCL/amd-address-space-conversions.cpp
M clang/test/CodeGenSYCL/cuda-address-space-conversions.cpp
M clang/test/DebugInfo/Generic/macro.c
M clang/test/Driver/amdgpu-macros.cl
M clang/test/Driver/amdgpu-mcpu.cl
M clang/test/Driver/baremetal-multilib.yaml
M clang/test/Driver/driverkit-path.c
M clang/test/Driver/hip-binding.hip
M clang/test/Driver/hip-device-compile.hip
M clang/test/Driver/hip-link-bundle-archive.hip
M clang/test/Driver/hip-phases.hip
M clang/test/Driver/hip-target-id.hip
M clang/test/Driver/hip-toolchain-no-rdc.hip
M clang/test/Driver/incompatible_sysroot.c
M clang/test/Driver/openmp-offload-gpu.c
M clang/test/Driver/print-enabled-extensions/aarch64-hip12.c
M clang/test/Driver/print-multi-selection-flags.c
A clang/test/Driver/sycl-print-internal-defines.cpp
M clang/test/Driver/wasm-toolchain.c
M clang/test/Driver/zos-ld.c
M clang/test/Index/index-builtin-sve.cpp
M clang/test/Misc/target-invalid-cpu-note/amdgcn.c
M clang/test/Misc/target-invalid-cpu-note/nvptx.c
M clang/test/OpenMP/bug60602.cpp
M clang/test/OpenMP/declare_target_local_codegen.cpp
M clang/test/OpenMP/distribute_codegen.cpp
M clang/test/OpenMP/distribute_firstprivate_codegen.cpp
M clang/test/OpenMP/distribute_lastprivate_codegen.cpp
M clang/test/OpenMP/distribute_parallel_for_codegen.cpp
M clang/test/OpenMP/distribute_parallel_for_firstprivate_codegen.cpp
M clang/test/OpenMP/distribute_parallel_for_if_codegen.cpp
M clang/test/OpenMP/distribute_parallel_for_lastprivate_codegen.cpp
M clang/test/OpenMP/distribute_parallel_for_num_threads_codegen.cpp
M clang/test/OpenMP/distribute_parallel_for_private_codegen.cpp
M clang/test/OpenMP/distribute_parallel_for_proc_bind_codegen.cpp
M clang/test/OpenMP/distribute_parallel_for_simd_codegen.cpp
M clang/test/OpenMP/distribute_parallel_for_simd_firstprivate_codegen.cpp
M clang/test/OpenMP/distribute_parallel_for_simd_if_codegen.cpp
M clang/test/OpenMP/distribute_parallel_for_simd_lastprivate_codegen.cpp
M clang/test/OpenMP/distribute_parallel_for_simd_num_threads_codegen.cpp
M clang/test/OpenMP/distribute_parallel_for_simd_private_codegen.cpp
M clang/test/OpenMP/distribute_parallel_for_simd_proc_bind_codegen.cpp
M clang/test/OpenMP/distribute_private_codegen.cpp
M clang/test/OpenMP/distribute_simd_codegen.cpp
M clang/test/OpenMP/distribute_simd_firstprivate_codegen.cpp
M clang/test/OpenMP/distribute_simd_lastprivate_codegen.cpp
M clang/test/OpenMP/distribute_simd_private_codegen.cpp
M clang/test/OpenMP/distribute_simd_reduction_codegen.cpp
M clang/test/OpenMP/map_struct_ordering.cpp
M clang/test/OpenMP/nvptx_lambda_capturing.cpp
R clang/test/OpenMP/nvptx_teams_reduction_codegen.cpp
M clang/test/OpenMP/reduction_implicit_map.cpp
M clang/test/OpenMP/spirv_target_teams_reduction_addrspace.c
M clang/test/OpenMP/target_codegen_global_capture.cpp
M clang/test/OpenMP/target_default_codegen.cpp
M clang/test/OpenMP/target_defaultmap_codegen_03.cpp
M clang/test/OpenMP/target_dyn_groupprivate_codegen.cpp
M clang/test/OpenMP/target_firstprivate_codegen.cpp
M clang/test/OpenMP/target_has_device_addr_codegen.cpp
M clang/test/OpenMP/target_has_device_addr_codegen_01.cpp
M clang/test/OpenMP/target_is_device_ptr_codegen.cpp
M clang/test/OpenMP/target_map_array_of_structs_with_nested_mapper_codegen.cpp
M clang/test/OpenMP/target_map_array_section_no_length_codegen.cpp
M clang/test/OpenMP/target_map_array_section_of_structs_with_nested_mapper_codegen.cpp
M clang/test/OpenMP/target_map_codegen_03.cpp
M clang/test/OpenMP/target_map_codegen_hold.cpp
M clang/test/OpenMP/target_map_deref_array_codegen.cpp
M clang/test/OpenMP/target_map_member_expr_codegen.cpp
M clang/test/OpenMP/target_offload_mandatory_codegen.cpp
M clang/test/OpenMP/target_ompx_dyn_cgroup_mem_codegen.cpp
M clang/test/OpenMP/target_parallel_codegen.cpp
M clang/test/OpenMP/target_parallel_for_codegen.cpp
M clang/test/OpenMP/target_parallel_for_simd_codegen.cpp
M clang/test/OpenMP/target_parallel_generic_loop_codegen-1.cpp
M clang/test/OpenMP/target_parallel_generic_loop_codegen-2.cpp
M clang/test/OpenMP/target_parallel_generic_loop_uses_allocators_codegen.cpp
M clang/test/OpenMP/target_parallel_if_codegen.cpp
M clang/test/OpenMP/target_parallel_num_threads_codegen.cpp
M clang/test/OpenMP/target_parallel_num_threads_strict_codegen.cpp
M clang/test/OpenMP/target_private_codegen.cpp
M clang/test/OpenMP/target_task_affinity_codegen.cpp
M clang/test/OpenMP/target_teams_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_collapse_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_dist_schedule_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_firstprivate_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_lastprivate_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_collapse_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_dist_schedule_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_firstprivate_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_if_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_lastprivate_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_order_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_private_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_proc_bind_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_reduction_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_schedule_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_collapse_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_dist_schedule_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_firstprivate_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_if_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_lastprivate_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_private_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_proc_bind_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_reduction_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_schedule_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_private_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_reduction_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_simd_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_simd_collapse_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_simd_dist_schedule_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_simd_firstprivate_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_simd_lastprivate_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_simd_private_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_simd_reduction_codegen.cpp
M clang/test/OpenMP/target_teams_generic_loop_codegen-1.cpp
M clang/test/OpenMP/target_teams_generic_loop_codegen.cpp
M clang/test/OpenMP/target_teams_generic_loop_collapse_codegen.cpp
M clang/test/OpenMP/target_teams_generic_loop_if_codegen.cpp
M clang/test/OpenMP/target_teams_generic_loop_order_codegen.cpp
M clang/test/OpenMP/target_teams_generic_loop_private_codegen.cpp
M clang/test/OpenMP/target_teams_generic_loop_reduction_codegen.cpp
M clang/test/OpenMP/target_teams_generic_loop_uses_allocators_codegen.cpp
M clang/test/OpenMP/target_teams_map_codegen.cpp
M clang/test/OpenMP/target_teams_num_teams_codegen.cpp
A clang/test/OpenMP/target_teams_reduction_codegen.cpp
M clang/test/OpenMP/target_teams_thread_limit_codegen.cpp
M clang/test/OpenMP/teams_codegen.cpp
M clang/test/OpenMP/teams_distribute_codegen.cpp
M clang/test/OpenMP/teams_distribute_collapse_codegen.cpp
M clang/test/OpenMP/teams_distribute_dist_schedule_codegen.cpp
M clang/test/OpenMP/teams_distribute_firstprivate_codegen.cpp
M clang/test/OpenMP/teams_distribute_lastprivate_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_collapse_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_copyin_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_dist_schedule_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_firstprivate_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_if_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_lastprivate_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_num_threads_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_private_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_proc_bind_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_reduction_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_schedule_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_simd_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_simd_collapse_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_simd_dist_schedule_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_simd_firstprivate_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_simd_if_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_simd_lastprivate_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_simd_num_threads_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_simd_private_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_simd_proc_bind_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_simd_reduction_codegen.cpp
M clang/test/OpenMP/teams_distribute_parallel_for_simd_schedule_codegen.cpp
M clang/test/OpenMP/teams_distribute_private_codegen.cpp
M clang/test/OpenMP/teams_distribute_reduction_codegen.cpp
M clang/test/OpenMP/teams_distribute_simd_codegen.cpp
M clang/test/OpenMP/teams_distribute_simd_collapse_codegen.cpp
M clang/test/OpenMP/teams_distribute_simd_dist_schedule_codegen.cpp
M clang/test/OpenMP/teams_distribute_simd_firstprivate_codegen.cpp
M clang/test/OpenMP/teams_distribute_simd_lastprivate_codegen.cpp
M clang/test/OpenMP/teams_distribute_simd_private_codegen.cpp
M clang/test/OpenMP/teams_distribute_simd_reduction_codegen.cpp
M clang/test/OpenMP/teams_firstprivate_codegen.cpp
M clang/test/OpenMP/teams_generic_loop_codegen-1.cpp
M clang/test/OpenMP/teams_generic_loop_collapse_codegen.cpp
M clang/test/OpenMP/teams_generic_loop_private_codegen.cpp
M clang/test/OpenMP/teams_generic_loop_reduction_codegen.cpp
M clang/test/OpenMP/teams_private_codegen.cpp
A clang/test/PCH/pch-debuginfo-vtable.cpp
A clang/test/Preprocessor/hardlink-include-names.c
M clang/test/Rewriter/objc-modern-getclass-proto.mm
M clang/test/Sema/LifetimeSafety/annotation-suggestions-fixits.cpp
M clang/test/Sema/LifetimeSafety/annotation-suggestions.cpp
M clang/test/Sema/LifetimeSafety/dangling-global.cpp
M clang/test/Sema/LifetimeSafety/invalidations.cpp
M clang/test/Sema/LifetimeSafety/lifetimebound-violation.cpp
M clang/test/Sema/LifetimeSafety/safety-c.c
M clang/test/Sema/LifetimeSafety/safety.cpp
M clang/test/Sema/aarch64-bf16-ldst-intrinsics.c
M clang/test/Sema/aarch64-incompat-sm-builtin-calls.cpp
M clang/test/Sema/aarch64-sme-func-attrs.c
M clang/test/Sema/aarch64-sme-streaming-nonstreaming-vl-checks.c
M clang/test/Sema/aarch64-sme2p1-diagnostics.c
M clang/test/Sema/aarch64-sme2p1-intrinsics/acle_sme2p1_imm.cpp
M clang/test/Sema/aarch64-sme2p3-intrinsics/acle_sme2p3_imm.c
M clang/test/Sema/attr-arm-sve-vector-bits.c
A clang/test/Sema/builtin-abs-invalid.c
M clang/test/Sema/builtin-memcpy.c
M clang/test/Sema/builtin-object-size.c
M clang/test/Sema/builtins-elementwise-math.c
M clang/test/Sema/sifive-xsfmm.c
M clang/test/Sema/warn-fortify-source.c
A clang/test/Sema/warn-stringop-overread.c
A clang/test/SemaCXX/amdgpu-feature-builtins-invalid-use.cpp
M clang/test/SemaCXX/attr-arm-sve-vector-bits.cpp
M clang/test/SemaCXX/constant-expression-p2280r4.cpp
M clang/test/SemaCXX/ext-int.cpp
A clang/test/SemaCXX/gh147127.cpp
M clang/test/SemaCXX/warn-memset-bad-sizeof.cpp
M clang/test/SemaHIP/amdgpu-feature-predicates-guard-use.hip
A clang/test/SemaOpenCL/read-image-integer-linear-filter.cl
M clang/test/SemaOpenCL/usm-address-spaces-conversions.cl
M clang/test/SemaSYCL/address-space-conversions.cpp
M clang/test/SemaTemplate/concepts.cpp
M clang/test/SemaTemplate/instantiate-member-template.cpp
M clang/tools/clang-ssaf-analyzer/CMakeLists.txt
M clang/tools/clang-ssaf-analyzer/SSAFAnalyzer.cpp
M clang/tools/clang-ssaf-format/CMakeLists.txt
M clang/tools/clang-ssaf-format/SSAFFormat.cpp
M clang/tools/clang-ssaf-linker/CMakeLists.txt
M clang/tools/clang-ssaf-linker/SSAFLinker.cpp
M clang/unittests/AST/ASTImporterFixtures.cpp
M clang/unittests/AST/CommentLexer.cpp
M clang/unittests/Basic/DarwinSDKInfoTest.cpp
M clang/unittests/Basic/DiagnosticTest.cpp
M clang/unittests/Basic/SourceManagerTest.cpp
M clang/unittests/CMakeLists.txt
M clang/unittests/CodeGen/CodeGenExternalTest.cpp
M clang/unittests/Driver/DXCModeTest.cpp
M clang/unittests/Format/FormatTest.cpp
M clang/unittests/Format/TokenAnnotatorTest.cpp
M clang/unittests/Interpreter/CodeCompletionTest.cpp
A clang/unittests/ScalableStaticAnalysis/ASTEntityMappingTest.cpp
A clang/unittests/ScalableStaticAnalysis/Analyses/CallGraph/CallGraphExtractorTest.cpp
A clang/unittests/ScalableStaticAnalysis/Analyses/PointerFlow/PointerFlowTest.cpp
A clang/unittests/ScalableStaticAnalysis/Analyses/PointerFlow/PointerFlowWPATest.cpp
A clang/unittests/ScalableStaticAnalysis/Analyses/UnsafeBufferUsage/UnsafeBufferUsageTest.cpp
A clang/unittests/ScalableStaticAnalysis/Analyses/UnsafeBufferUsage/UnsafeBufferUsageWPATest.cpp
A clang/unittests/ScalableStaticAnalysis/BuildNamespaceTest.cpp
A clang/unittests/ScalableStaticAnalysis/CMakeLists.txt
A clang/unittests/ScalableStaticAnalysis/EntityIdTableTest.cpp
A clang/unittests/ScalableStaticAnalysis/EntityIdTest.cpp
A clang/unittests/ScalableStaticAnalysis/EntityLinkageTest.cpp
A clang/unittests/ScalableStaticAnalysis/EntityLinkerTest.cpp
A clang/unittests/ScalableStaticAnalysis/EntityNameTest.cpp
A clang/unittests/ScalableStaticAnalysis/ErrorBuilderTest.cpp
A clang/unittests/ScalableStaticAnalysis/FindDecl.h
A clang/unittests/ScalableStaticAnalysis/Frontend/TUSummaryExtractorFrontendActionTest.cpp
A clang/unittests/ScalableStaticAnalysis/LUSummaryTest.cpp
A clang/unittests/ScalableStaticAnalysis/ModelStringConversionsTest.cpp
A clang/unittests/ScalableStaticAnalysis/Registries/FancyAnalysisData.cpp
A clang/unittests/ScalableStaticAnalysis/Registries/MockSerializationFormat.cpp
A clang/unittests/ScalableStaticAnalysis/Registries/MockSerializationFormat.h
A clang/unittests/ScalableStaticAnalysis/Registries/MockSummaryExtractor1.cpp
A clang/unittests/ScalableStaticAnalysis/Registries/MockSummaryExtractor2.cpp
A clang/unittests/ScalableStaticAnalysis/Registries/MockTUSummaryBuilder.h
A clang/unittests/ScalableStaticAnalysis/Registries/SerializationFormatRegistryTest.cpp
A clang/unittests/ScalableStaticAnalysis/Registries/SummaryExtractorRegistryTest.cpp
A clang/unittests/ScalableStaticAnalysis/Serialization/JSONFormatTest/JSONFormatTest.cpp
A clang/unittests/ScalableStaticAnalysis/Serialization/JSONFormatTest/JSONFormatTest.h
A clang/unittests/ScalableStaticAnalysis/Serialization/JSONFormatTest/LUSummaryTest.cpp
A clang/unittests/ScalableStaticAnalysis/Serialization/JSONFormatTest/TUSummaryTest.cpp
A clang/unittests/ScalableStaticAnalysis/SourceTransformation/EmitterTest.cpp
A clang/unittests/ScalableStaticAnalysis/SourceTransformation/RegistryTest.cpp
A clang/unittests/ScalableStaticAnalysis/SummaryData/SummaryDataTest.cpp
A clang/unittests/ScalableStaticAnalysis/SummaryNameTest.cpp
A clang/unittests/ScalableStaticAnalysis/TUSummaryBuilderTest.cpp
A clang/unittests/ScalableStaticAnalysis/TestFixture.cpp
A clang/unittests/ScalableStaticAnalysis/TestFixture.h
A clang/unittests/ScalableStaticAnalysis/WholeProgramAnalysis/AnalysisDriverTest.cpp
A clang/unittests/ScalableStaticAnalysis/WholeProgramAnalysis/UnsafeBufferReachableAnalysisTest.cpp
R clang/unittests/ScalableStaticAnalysisFramework/ASTEntityMappingTest.cpp
R clang/unittests/ScalableStaticAnalysisFramework/Analyses/CallGraph/CallGraphExtractorTest.cpp
R clang/unittests/ScalableStaticAnalysisFramework/Analyses/PointerFlow/PointerFlowTest.cpp
R clang/unittests/ScalableStaticAnalysisFramework/Analyses/PointerFlow/PointerFlowWPATest.cpp
R clang/unittests/ScalableStaticAnalysisFramework/Analyses/UnsafeBufferUsage/UnsafeBufferUsageTest.cpp
R clang/unittests/ScalableStaticAnalysisFramework/Analyses/UnsafeBufferUsage/UnsafeBufferUsageWPATest.cpp
R clang/unittests/ScalableStaticAnalysisFramework/BuildNamespaceTest.cpp
R clang/unittests/ScalableStaticAnalysisFramework/CMakeLists.txt
R clang/unittests/ScalableStaticAnalysisFramework/EntityIdTableTest.cpp
R clang/unittests/ScalableStaticAnalysisFramework/EntityIdTest.cpp
R clang/unittests/ScalableStaticAnalysisFramework/EntityLinkageTest.cpp
R clang/unittests/ScalableStaticAnalysisFramework/EntityLinkerTest.cpp
R clang/unittests/ScalableStaticAnalysisFramework/EntityNameTest.cpp
R clang/unittests/ScalableStaticAnalysisFramework/ErrorBuilderTest.cpp
R clang/unittests/ScalableStaticAnalysisFramework/FindDecl.h
R clang/unittests/ScalableStaticAnalysisFramework/Frontend/TUSummaryExtractorFrontendActionTest.cpp
R clang/unittests/ScalableStaticAnalysisFramework/LUSummaryTest.cpp
R clang/unittests/ScalableStaticAnalysisFramework/ModelStringConversionsTest.cpp
R clang/unittests/ScalableStaticAnalysisFramework/Registries/FancyAnalysisData.cpp
R clang/unittests/ScalableStaticAnalysisFramework/Registries/MockSerializationFormat.cpp
R clang/unittests/ScalableStaticAnalysisFramework/Registries/MockSerializationFormat.h
R clang/unittests/ScalableStaticAnalysisFramework/Registries/MockSummaryExtractor1.cpp
R clang/unittests/ScalableStaticAnalysisFramework/Registries/MockSummaryExtractor2.cpp
R clang/unittests/ScalableStaticAnalysisFramework/Registries/MockTUSummaryBuilder.h
R clang/unittests/ScalableStaticAnalysisFramework/Registries/SerializationFormatRegistryTest.cpp
R clang/unittests/ScalableStaticAnalysisFramework/Registries/SummaryExtractorRegistryTest.cpp
R clang/unittests/ScalableStaticAnalysisFramework/Serialization/JSONFormatTest/JSONFormatTest.cpp
R clang/unittests/ScalableStaticAnalysisFramework/Serialization/JSONFormatTest/JSONFormatTest.h
R clang/unittests/ScalableStaticAnalysisFramework/Serialization/JSONFormatTest/LUSummaryTest.cpp
R clang/unittests/ScalableStaticAnalysisFramework/Serialization/JSONFormatTest/TUSummaryTest.cpp
R clang/unittests/ScalableStaticAnalysisFramework/SourceTransformation/EmitterTest.cpp
R clang/unittests/ScalableStaticAnalysisFramework/SourceTransformation/RegistryTest.cpp
R clang/unittests/ScalableStaticAnalysisFramework/SummaryData/SummaryDataTest.cpp
R clang/unittests/ScalableStaticAnalysisFramework/SummaryNameTest.cpp
R clang/unittests/ScalableStaticAnalysisFramework/TUSummaryBuilderTest.cpp
R clang/unittests/ScalableStaticAnalysisFramework/TestFixture.cpp
R clang/unittests/ScalableStaticAnalysisFramework/TestFixture.h
R clang/unittests/ScalableStaticAnalysisFramework/WholeProgramAnalysis/AnalysisDriverTest.cpp
R clang/unittests/ScalableStaticAnalysisFramework/WholeProgramAnalysis/UnsafeBufferReachableAnalysisTest.cpp
M clang/unittests/Tooling/HeaderIncludesTest.cpp
M clang/utils/TableGen/CIRLoweringEmitter.cpp
M clang/www/cxx_dr_status.html
M cmake/Modules/FindLibcCommonUtils.cmake
M compiler-rt/lib/builtins/arm/divdf3.S
M compiler-rt/lib/profile/CMakeLists.txt
M compiler-rt/lib/profile/InstrProfilingPlatformROCm.cpp
A compiler-rt/lib/profile/InstrProfilingPlatformROCmHSA.cpp
A compiler-rt/lib/profile/InstrProfilingPlatformROCmHSADefs.h
A compiler-rt/lib/profile/InstrProfilingPlatformROCmInternal.h
M compiler-rt/lib/tsan/rtl/tsan_platform.h
M compiler-rt/lib/tysan/tysan.cpp
M compiler-rt/lib/tysan/tysan_interceptors.cpp
M compiler-rt/test/asan/TestCases/Windows/issue64990.cpp
M compiler-rt/test/builtins/Unit/divdf3new_test.c
A compiler-rt/test/profile/AMDGPU/device-basic.hip
A compiler-rt/test/profile/AMDGPU/device-early-collect.hip
A compiler-rt/test/profile/AMDGPU/device-no-kernel.hip
A compiler-rt/test/profile/AMDGPU/device-symbols.hip
A compiler-rt/test/profile/AMDGPU/lit.local.cfg.py
A compiler-rt/test/profile/GPU/instrprof-hip-basic.hip
A compiler-rt/test/profile/GPU/instrprof-hip-collect-after.hip
A compiler-rt/test/profile/GPU/instrprof-hip-counter-correctness.hip
A compiler-rt/test/profile/GPU/instrprof-hip-coverage.hip
A compiler-rt/test/profile/GPU/instrprof-hip-device-branching.hip
A compiler-rt/test/profile/GPU/instrprof-hip-fork-safety.hip
A compiler-rt/test/profile/GPU/instrprof-hip-multi-gpu.hip
A compiler-rt/test/profile/GPU/instrprof-hip-multi-process-merge.hip
A compiler-rt/test/profile/GPU/instrprof-hip-multiple-kernels.hip
A compiler-rt/test/profile/GPU/instrprof-hip-nondefault-device.hip
A compiler-rt/test/profile/GPU/instrprof-hip-pgo-use.hip
A compiler-rt/test/profile/GPU/lit.local.cfg.py
A compiler-rt/test/profile/instrprof-rocm-bounds-dedup.cpp
A compiler-rt/test/profile/instrprof-rocm-grow-array.cpp
M compiler-rt/test/profile/lit.cfg.py
M compiler-rt/test/tysan/global.c
A compiler-rt/test/tysan/memcpy_doesnt_change_shadow.c
M cross-project-tests/intrinsic-header-tests/riscv_packed_simd.c
M flang-rt/lib/runtime/CMakeLists.txt
M flang-rt/lib/runtime/__cuda_device.f90
M flang-rt/lib/runtime/__fortran_type_info.f90
M flang-rt/lib/runtime/cooperative_groups.f90
M flang-rt/lib/runtime/cuda_runtime_api.f90
M flang-rt/lib/runtime/cudadevice.f90
A flang/cmake/caches/BOLT-PGO.cmake
A flang/cmake/caches/BOLT.cmake
A flang/cmake/caches/PGO-stage2-instrumented.cmake
A flang/cmake/caches/PGO-stage2.cmake
A flang/cmake/caches/PGO.cmake
M flang/docs/Directives.md
M flang/docs/FlangDriver.md
M flang/docs/conf.py
M flang/include/flang/Frontend/CodeGenOptions.def
M flang/include/flang/Lower/Support/ReductionProcessor.h
M flang/include/flang/Optimizer/Analysis/AliasAnalysis.h
M flang/include/flang/Optimizer/Analysis/ArraySectionAnalyzer.h
M flang/include/flang/Optimizer/Builder/FIRBuilder.h
M flang/include/flang/Optimizer/Dialect/FIROps.td
M flang/include/flang/Optimizer/Transforms/Passes.td
M flang/include/flang/Parser/dump-parse-tree.h
M flang/include/flang/Parser/parse-tree.h
M flang/include/flang/Semantics/expression.h
M flang/include/flang/Semantics/openmp-utils.h
M flang/include/flang/Semantics/symbol.h
M flang/lib/Frontend/CompilerInvocation.cpp
M flang/lib/Frontend/FrontendActions.cpp
M flang/lib/Lower/Bridge.cpp
M flang/lib/Lower/OpenMP/ClauseProcessor.cpp
M flang/lib/Lower/OpenMP/ClauseProcessor.h
M flang/lib/Lower/OpenMP/Clauses.cpp
M flang/lib/Lower/OpenMP/OpenMP.cpp
M flang/lib/Lower/OpenMP/Utils.cpp
M flang/lib/Lower/OpenMP/Utils.h
M flang/lib/Lower/Support/ReductionProcessor.cpp
M flang/lib/Optimizer/Analysis/AliasAnalysis.cpp
M flang/lib/Optimizer/Builder/FIRBuilder.cpp
M flang/lib/Optimizer/Dialect/FIROps.cpp
M flang/lib/Optimizer/HLFIR/Transforms/InlineHLFIRAssign.cpp
M flang/lib/Optimizer/OpenACC/Support/FIROpenACCTypeInterfaces.cpp
M flang/lib/Optimizer/OpenMP/DoConcurrentConversion.cpp
M flang/lib/Optimizer/OpenMP/LowerWorkdistribute.cpp
M flang/lib/Optimizer/OpenMP/LowerWorkshare.cpp
M flang/lib/Optimizer/Passes/Pipelines.cpp
M flang/lib/Optimizer/Transforms/AddDebugInfo.cpp
M flang/lib/Optimizer/Transforms/FIRToMemRef.cpp
M flang/lib/Optimizer/Transforms/MIFOpConversion.cpp
M flang/lib/Parser/executable-parsers.cpp
M flang/lib/Parser/openmp-parsers.cpp
M flang/lib/Parser/openmp-utils.cpp
M flang/lib/Parser/program-parsers.cpp
M flang/lib/Parser/unparse.cpp
M flang/lib/Semantics/check-call.cpp
M flang/lib/Semantics/check-call.h
M flang/lib/Semantics/check-cuda.cpp
M flang/lib/Semantics/check-omp-atomic.cpp
M flang/lib/Semantics/check-omp-loop.cpp
M flang/lib/Semantics/check-omp-structure.cpp
M flang/lib/Semantics/check-omp-structure.h
M flang/lib/Semantics/check-omp-variant.cpp
M flang/lib/Semantics/expression.cpp
M flang/lib/Semantics/mod-file.cpp
M flang/lib/Semantics/openmp-utils.cpp
M flang/lib/Semantics/program-tree.cpp
M flang/lib/Semantics/resolve-directives.cpp
M flang/lib/Semantics/resolve-names-utils.cpp
M flang/lib/Semantics/resolve-names-utils.h
M flang/lib/Semantics/resolve-names.cpp
M flang/lib/Semantics/rewrite-parse-tree.cpp
M flang/test/Analysis/AliasAnalysis/alias-analysis-host-assoc.fir
M flang/test/Analysis/AliasAnalysis/alias-analysis-omp-target-1.fir
M flang/test/Analysis/AliasAnalysis/alias-analysis-omp-target-2.fir
M flang/test/Analysis/AliasAnalysis/alias-analysis-scoped-origins.fir
M flang/test/CMakeLists.txt
A flang/test/Driver/fpseudo-probe-for-profiling.f90
M flang/test/Driver/offload-device.f90
M flang/test/Fir/MIF/change_team.mlir
M flang/test/Fir/MIF/change_team2.mlir
M flang/test/Fir/MIF/co_broadcast.mlir
M flang/test/Fir/MIF/co_max.mlir
M flang/test/Fir/MIF/co_min.mlir
M flang/test/Fir/MIF/co_sum.mlir
M flang/test/Fir/MIF/coarray-alloc.mlir
M flang/test/Fir/MIF/form_team.mlir
M flang/test/Fir/MIF/get_team.mlir
M flang/test/Fir/MIF/init.mlir
M flang/test/Fir/MIF/num_images.mlir
M flang/test/Fir/MIF/sync_all.mlir
M flang/test/Fir/MIF/sync_images.mlir
M flang/test/Fir/MIF/sync_memory.mlir
M flang/test/Fir/MIF/sync_team.mlir
M flang/test/Fir/MIF/team_number.mlir
M flang/test/Fir/MIF/this_image.mlir
M flang/test/Fir/OpenACC/openacc-mappable.fir
M flang/test/Fir/OpenMP/bounds-generation-for-char-arrays.f90
M flang/test/Fir/convert-to-llvm-openmp-and-fir.fir
A flang/test/Fir/present-absent-if-fold.fir
A flang/test/HLFIR/inline-hlfir-assign-pointer-overlap.fir
A flang/test/HLFIR/inline-hlfir-assign-scalar-index.fir
A flang/test/HLFIR/inline-hlfir-assign-self-copy-runtime-stride.fir
A flang/test/HLFIR/inline-hlfir-assign-self-copy.fir
M flang/test/Integration/OpenMP/workshare-array-array-assign.f90
M flang/test/Integration/OpenMP/workshare-axpy.f90
M flang/test/Integration/OpenMP/workshare-forall-sliced-array.f90
M flang/test/Integration/OpenMP/workshare-scalar-array-assign.f90
M flang/test/Integration/OpenMP/workshare-scalar-array-mul.f90
A flang/test/Integration/pseudo-probe-for-profiling.f90
M flang/test/Integration/split-lto-unit-2.f90
M flang/test/Lower/CUDA/cuda-data-transfer.cuf
M flang/test/Lower/CUDA/cuda-gpu-managed.cuf
M flang/test/Lower/OpenMP/DelayedPrivatization/target-private-allocatable.f90
M flang/test/Lower/OpenMP/DelayedPrivatization/target-private-implicit-scalar-map-2.f90
M flang/test/Lower/OpenMP/DelayedPrivatization/target-private-implicit-scalar-map.f90
M flang/test/Lower/OpenMP/DelayedPrivatization/target-private-simple.f90
M flang/test/Lower/OpenMP/DelayedPrivatization/target-teams-private-implicit-scalar-map.f90
M flang/test/Lower/OpenMP/KernelLanguage/bare-clause.f90
A flang/test/Lower/OpenMP/Todo/declare-reduction-operator-multiple-types.f90
A flang/test/Lower/OpenMP/Todo/declare-reduction-operator-use-assoc.f90
A flang/test/Lower/OpenMP/Todo/locator-call-affinity.f90
A flang/test/Lower/OpenMP/Todo/locator-call-from.f90
A flang/test/Lower/OpenMP/Todo/locator-call-map.f90
A flang/test/Lower/OpenMP/Todo/locator-call-to.f90
A flang/test/Lower/OpenMP/Todo/locator-reserved.f90
R flang/test/Lower/OpenMP/Todo/reduction-task.f90
M flang/test/Lower/OpenMP/allocatable-dtype-intermediate-map-gen.f90
M flang/test/Lower/OpenMP/allocatable-map.f90
M flang/test/Lower/OpenMP/array-bounds.f90
M flang/test/Lower/OpenMP/attach-and-ref-modifier.f90
M flang/test/Lower/OpenMP/common-block-map.f90
A flang/test/Lower/OpenMP/compound.f90
M flang/test/Lower/OpenMP/declare-mapper.f90
A flang/test/Lower/OpenMP/declare-reduction-operator-derived.f90
A flang/test/Lower/OpenMP/declare-reduction-operator.f90
M flang/test/Lower/OpenMP/default-mapper-no-pointer-map.f90
M flang/test/Lower/OpenMP/defaultmap.f90
M flang/test/Lower/OpenMP/depend-iterator.f90
M flang/test/Lower/OpenMP/derived-type-allocatable-map.f90
M flang/test/Lower/OpenMP/derived-type-map.f90
M flang/test/Lower/OpenMP/distribute-parallel-do-simd.f90
M flang/test/Lower/OpenMP/dyn-groupprivate-clause.f90
M flang/test/Lower/OpenMP/groupprivate.f90
M flang/test/Lower/OpenMP/implicit-mapper-no-pointer-map.f90
M flang/test/Lower/OpenMP/local-intrinsic-sized-array-map.f90
M flang/test/Lower/OpenMP/location.f90
M flang/test/Lower/OpenMP/map-character.f90
M flang/test/Lower/OpenMP/map-component-ref.f90
M flang/test/Lower/OpenMP/map-descriptor-deferral.f90
M flang/test/Lower/OpenMP/map-mapper.f90
M flang/test/Lower/OpenMP/metadirective-construct.f90
M flang/test/Lower/OpenMP/multiple-entry-points.f90
M flang/test/Lower/OpenMP/optional-argument-map-2.f90
M flang/test/Lower/OpenMP/optional-argument-map-3.f90
A flang/test/Lower/OpenMP/parallel-reduction-task.f90
M flang/test/Lower/OpenMP/target-map-complex.f90
M flang/test/Lower/OpenMP/target-parallel-private.f90
M flang/test/Lower/OpenMP/target-scope.f90
M flang/test/Lower/OpenMP/target-spmd.f90
M flang/test/Lower/OpenMP/target-teams-private.f90
M flang/test/Lower/OpenMP/target.f90
M flang/test/Lower/OpenMP/workdistribute-target-teams-clauses.f90
M flang/test/Lower/OpenMP/workdistribute.f90
M flang/test/Lower/OpenMP/workshare.f90
M flang/test/Parser/OpenMP/allocate-align-tree.f90
M flang/test/Parser/OpenMP/allocate-tree-spec-part.f90
M flang/test/Parser/OpenMP/allocate-tree.f90
M flang/test/Parser/OpenMP/declare-variant.f90
M flang/test/Parser/OpenMP/depobj-construct.f90
M flang/test/Parser/OpenMP/groupprivate.f90
M flang/test/Parser/OpenMP/metadirective-dirspec.f90
M flang/test/Parser/OpenMP/metadirective-flush.f90
M flang/test/Parser/OpenMP/openmp6-directive-spellings.f90
M flang/test/Parser/OpenMP/threadprivate.f90
A flang/test/Semantics/OpenACC/acc-routine-bad.f90
M flang/test/Semantics/OpenMP/affinity-invalid.f90
M flang/test/Semantics/OpenMP/clause-validity01.f90
M flang/test/Semantics/OpenMP/clause-validity02.f90
M flang/test/Semantics/OpenMP/declarative-directive01.f90
A flang/test/Semantics/OpenMP/declare-reduction-overbroad-lookup.f90
A flang/test/Semantics/OpenMP/declare-reduction-use-mixed-merged.f90
A flang/test/Semantics/OpenMP/declare-reduction-use-only-defined-op.f90
A flang/test/Semantics/OpenMP/declare-reduction-use-only-merged.f90
A flang/test/Semantics/OpenMP/declare-reduction-use-only-renamed.f90
A flang/test/Semantics/OpenMP/declare-reduction-use-only.f90
A flang/test/Semantics/OpenMP/declare-reduction-use-reexport-merged.f90
A flang/test/Semantics/OpenMP/declare-reduction-use-reexport-remerge.f90
A flang/test/Semantics/OpenMP/declare-reduction-use-shadow-merged.f90
A flang/test/Semantics/OpenMP/declare-reduction-use-shadow.f90
M flang/test/Semantics/OpenMP/depend-substring.f90
M flang/test/Semantics/OpenMP/device-constructs.f90
A flang/test/Semantics/OpenMP/if-clause-45-suggestion.f90
M flang/test/Semantics/OpenMP/if-clause-45.f90
A flang/test/Semantics/OpenMP/if-clause-50-suggestion.f90
M flang/test/Semantics/OpenMP/if-clause-50.f90
A flang/test/Semantics/OpenMP/if-clause-60.f90
M flang/test/Semantics/OpenMP/if-clause.f90
A flang/test/Semantics/OpenMP/reserved-locator.f90
M flang/test/Semantics/OpenMP/sections01.f90
M flang/test/Semantics/OpenMP/single03.f90
M flang/test/Semantics/OpenMP/single04.f90
A flang/test/Semantics/OpenMP/target-enter-data-temp-descriptor-omp61.f90
A flang/test/Semantics/OpenMP/target-enter-data-temp-descriptor.f90
M flang/test/Semantics/OpenMP/workshare02.f90
A flang/test/Semantics/call03-ignore-tkr-c-relaxed.f90
A flang/test/Semantics/call03-ignore-tkr-c-strict.f90
M flang/test/Semantics/call47.f90
M flang/test/Semantics/cuf23.cuf
A flang/test/Semantics/cuf29.cuf
A flang/test/Semantics/cuf30.cuf
M flang/test/Transforms/DoConcurrent/basic_device.f90
M flang/test/Transforms/DoConcurrent/basic_host.f90
M flang/test/Transforms/DoConcurrent/basic_host.mlir
M flang/test/Transforms/DoConcurrent/host_eval.f90
M flang/test/Transforms/DoConcurrent/local_device.mlir
M flang/test/Transforms/DoConcurrent/locality_specifiers_simple.mlir
M flang/test/Transforms/DoConcurrent/map_shape_info.f90
M flang/test/Transforms/DoConcurrent/multiple_iteration_ranges.f90
M flang/test/Transforms/DoConcurrent/non_const_bounds.f90
M flang/test/Transforms/DoConcurrent/non_reference_to_device.f90
M flang/test/Transforms/DoConcurrent/reduce_add.mlir
M flang/test/Transforms/DoConcurrent/reduce_all_regions.mlir
M flang/test/Transforms/DoConcurrent/reduce_device.mlir
M flang/test/Transforms/DoConcurrent/reduce_device_min.f90
M flang/test/Transforms/DoConcurrent/reduce_local.mlir
M flang/test/Transforms/DoConcurrent/reduction_symbol_resultion.f90
M flang/test/Transforms/DoConcurrent/runtime_sized_array.f90
M flang/test/Transforms/DoConcurrent/skip_all_nested_loops.f90
M flang/test/Transforms/DoConcurrent/use_loop_bounds_in_body.f90
M flang/test/Transforms/FIRToMemRef/slice-projected.mlir
M flang/test/Transforms/OpenMP/delete-unreachable-targets.mlir
M flang/test/Transforms/OpenMP/function-filtering-host-ops.mlir
M flang/test/Transforms/OpenMP/function-filtering.mlir
M flang/test/Transforms/OpenMP/lower-workdistribute-doloop.mlir
M flang/test/Transforms/OpenMP/lower-workdistribute-fission-host.mlir
M flang/test/Transforms/OpenMP/lower-workdistribute-fission-target.mlir
M flang/test/Transforms/OpenMP/lower-workdistribute-fission.mlir
M flang/test/Transforms/OpenMP/lower-workdistribute-runtime-assign-scalar.mlir
M flang/test/Transforms/OpenMP/simd-only.mlir
A flang/test/Transforms/debug-fake-use-multiple-dimensions.fir
A flang/test/Transforms/debug-fake-use-multiple-returns.fir
M flang/test/Transforms/debug-fake-use.fir
M flang/test/Transforms/debug-omp-target-op-1.fir
M flang/test/Transforms/debug-omp-target-op-2.fir
M flang/test/Transforms/omp-function-filtering-todo.mlir
M flang/test/Transforms/omp-map-info-finalization-implicit-field.fir
M flang/test/Transforms/omp-map-info-finalization-member-record.fir
M flang/test/Transforms/omp-map-info-finalization-name-loc.fir
M flang/test/Transforms/omp-map-info-finalization-usm.fir
M flang/test/Transforms/omp-map-info-finalization.fir
M flang/test/Transforms/omp-maps-for-privatized-symbols.fir
A flang/test/bolt.lit.cfg
M flang/test/lit.cfg.py
M flang/test/lit.site.cfg.py.in
A flang/test/pgo.lit.cfg
A flang/test/test.lit.cfg
M libc/benchmarks/CMakeLists.txt
M libc/benchmarks/JSON.cpp
M libc/benchmarks/JSONTest.cpp
M libc/benchmarks/LibcBenchmark.cpp
M libc/benchmarks/LibcBenchmark.h
M libc/benchmarks/LibcBenchmarkTest.cpp
M libc/benchmarks/LibcFunctionPrototypes.h
M libc/benchmarks/LibcMemoryBenchmark.cpp
M libc/benchmarks/LibcMemoryBenchmark.h
M libc/benchmarks/LibcMemoryBenchmarkMain.cpp
M libc/benchmarks/LibcMemoryGoogleBenchmarkMain.cpp
M libc/benchmarks/MemorySizeDistributions.cpp
M libc/benchmarks/MemorySizeDistributions.h
M libc/config/baremetal/aarch64/entrypoints.txt
M libc/config/baremetal/arm/entrypoints.txt
M libc/config/baremetal/riscv/entrypoints.txt
M libc/config/darwin/aarch64/entrypoints.txt
M libc/config/darwin/x86_64/entrypoints.txt
M libc/config/freebsd/x86_64/entrypoints.txt
M libc/config/gpu/amdgpu/entrypoints.txt
M libc/config/gpu/nvptx/entrypoints.txt
M libc/config/linux/aarch64/entrypoints.txt
M libc/config/linux/aarch64/headers.txt
M libc/config/linux/arm/entrypoints.txt
M libc/config/linux/arm/headers.txt
M libc/config/linux/riscv/entrypoints.txt
M libc/config/linux/riscv/headers.txt
M libc/config/linux/x86_64/entrypoints.txt
M libc/config/linux/x86_64/headers.txt
M libc/config/windows/entrypoints.txt
M libc/docs/CMakeLists.txt
M libc/docs/conf.py
A libc/docs/dev/builtin_compatibility.rst
M libc/docs/dev/index.rst
M libc/docs/headers/complex.rst
M libc/docs/headers/index.rst
M libc/docs/headers/math/index.rst
M libc/hdr/types/CMakeLists.txt
A libc/hdr/types/struct_ip_mreq.h
A libc/hdr/types/struct_ip_mreq_source.h
A libc/hdr/types/struct_ip_mreqn.h
A libc/hdr/types/struct_ip_msfilter.h
A libc/hdr/types/struct_ip_opts.h
M libc/include/CMakeLists.txt
M libc/include/complex.yaml
A libc/include/libgen.yaml
M libc/include/llvm-libc-macros/linux/sched-macros.h
M libc/include/llvm-libc-types/CMakeLists.txt
A libc/include/llvm-libc-types/linux/CMakeLists.txt
A libc/include/llvm-libc-types/linux/loff_t.h
A libc/include/llvm-libc-types/loff_t.h
A libc/include/llvm-libc-types/struct_ip_mreq.h
A libc/include/llvm-libc-types/struct_ip_mreq_source.h
A libc/include/llvm-libc-types/struct_ip_mreqn.h
A libc/include/llvm-libc-types/struct_ip_msfilter.h
A libc/include/llvm-libc-types/struct_ip_opts.h
M libc/include/netinet/in.yaml
M libc/include/sched.yaml
M libc/include/stdlib.yaml
M libc/include/sys/types.yaml
M libc/shared/math.h
A libc/shared/math/tanbf16.h
M libc/src/CMakeLists.txt
M libc/src/__support/CPP/string_view.h
M libc/src/__support/FPUtil/x86_64/fenv_x87_utils.h
M libc/src/__support/OSUtil/linux/CMakeLists.txt
A libc/src/__support/OSUtil/linux/stat/CMakeLists.txt
A libc/src/__support/OSUtil/linux/stat/kernel_statx_types.h
A libc/src/__support/OSUtil/linux/stat/stat_via_statx.h
M libc/src/__support/OSUtil/linux/syscall_wrappers/CMakeLists.txt
A libc/src/__support/OSUtil/linux/syscall_wrappers/ioctl.h
M libc/src/__support/macros/sanitizer.h
M libc/src/__support/math/CMakeLists.txt
M libc/src/__support/math/atan2f_float.h
A libc/src/__support/math/tanbf16.h
M libc/src/complex/CMakeLists.txt
A libc/src/complex/carg.h
A libc/src/complex/cargf.h
M libc/src/complex/generic/CMakeLists.txt
A libc/src/complex/generic/carg.cpp
A libc/src/complex/generic/cargf.cpp
A libc/src/libgen/CMakeLists.txt
A libc/src/libgen/basename.cpp
A libc/src/libgen/basename.h
A libc/src/libgen/dirname.cpp
A libc/src/libgen/dirname.h
M libc/src/math/CMakeLists.txt
M libc/src/math/docs/add_math_function.md
M libc/src/math/generic/CMakeLists.txt
A libc/src/math/generic/tanbf16.cpp
A libc/src/math/tanbf16.h
M libc/src/sched/CMakeLists.txt
M libc/src/sched/linux/CMakeLists.txt
A libc/src/sched/linux/sched_clrcpuset.cpp
A libc/src/sched/sched_clrcpuset.h
M libc/src/stdlib/CMakeLists.txt
M libc/src/stdlib/environ_internal.cpp
M libc/src/stdlib/environ_internal.h
M libc/src/stdlib/linux/CMakeLists.txt
A libc/src/stdlib/linux/unsetenv.cpp
M libc/src/stdlib/qsort.cpp
M libc/src/stdlib/qsort_r.cpp
M libc/src/stdlib/qsort_util.h
A libc/src/stdlib/unsetenv.h
M libc/src/sys/epoll/linux/epoll_pwait.cpp
M libc/src/sys/epoll/linux/epoll_pwait2.cpp
M libc/src/sys/epoll/linux/epoll_wait.cpp
M libc/src/sys/ioctl/linux/CMakeLists.txt
M libc/src/sys/ioctl/linux/ioctl.cpp
M libc/src/sys/socket/linux/recv.cpp
M libc/src/sys/socket/linux/recvfrom.cpp
M libc/src/sys/socket/linux/recvmsg.cpp
M libc/src/sys/socket/linux/socketpair.cpp
M libc/src/sys/stat/linux/CMakeLists.txt
M libc/src/sys/stat/linux/fstat.cpp
R libc/src/sys/stat/linux/kernel_statx.h
M libc/src/sys/stat/linux/lstat.cpp
M libc/src/sys/stat/linux/stat.cpp
M libc/src/termios/linux/CMakeLists.txt
M libc/src/termios/linux/tcdrain.cpp
M libc/src/termios/linux/tcflow.cpp
M libc/src/termios/linux/tcflush.cpp
M libc/src/termios/linux/tcgetattr.cpp
M libc/src/termios/linux/tcgetsid.cpp
M libc/src/termios/linux/tcsendbreak.cpp
M libc/src/termios/linux/tcsetattr.cpp
M libc/src/unistd/linux/CMakeLists.txt
M libc/src/unistd/linux/isatty.cpp
M libc/src/unistd/linux/pipe.cpp
M libc/src/unistd/linux/pipe2.cpp
M libc/src/unistd/linux/pread.cpp
M libc/src/unistd/linux/read.cpp
M libc/src/wchar/wcslcat.cpp
M libc/src/wchar/wcsncat.cpp
M libc/test/integration/src/stdlib/CMakeLists.txt
A libc/test/integration/src/stdlib/unsetenv_test.cpp
M libc/test/shared/CMakeLists.txt
M libc/test/shared/shared_math_test.cpp
M libc/test/src/CMakeLists.txt
A libc/test/src/complex/CArgTest.h
M libc/test/src/complex/CMakeLists.txt
A libc/test/src/complex/carg_test.cpp
A libc/test/src/complex/cargf_test.cpp
A libc/test/src/libgen/CMakeLists.txt
A libc/test/src/libgen/basename_death_test.cpp
A libc/test/src/libgen/basename_test.cpp
A libc/test/src/libgen/dirname_death_test.cpp
A libc/test/src/libgen/dirname_test.cpp
M libc/test/src/math/CMakeLists.txt
M libc/test/src/math/smoke/CMakeLists.txt
A libc/test/src/math/smoke/tanbf16_test.cpp
A libc/test/src/math/tanbf16_test.cpp
M libc/test/src/netinet/CMakeLists.txt
M libc/test/src/netinet/in_test.cpp
M libc/test/src/sched/CMakeLists.txt
M libc/test/src/sched/cpu_count_test.cpp
M libc/test/src/stdlib/CMakeLists.txt
A libc/test/src/stdlib/QsortReentrantTest.h
M libc/test/src/stdlib/qsort_r_test.cpp
M libc/test/src/string/memory_utils/memory_check_utils.h
M libc/test/src/wchar/wcslcat_test.cpp
M libc/test/src/wchar/wcsncat_test.cpp
M libc/utils/MPFRWrapper/MPCommon.cpp
A libc/utils/docgen/libgen.yaml
M libclc/clc/lib/nvptx/CMakeLists.txt
R libclc/clc/lib/nvptx/relational/clc_isinf.cl
M libcxx/docs/ABIGuarantees.rst
M libcxx/docs/FeatureTestMacroTable.rst
M libcxx/docs/ReleaseNotes/23.rst
M libcxx/docs/Status/Cxx23Papers.csv
M libcxx/docs/Status/Cxx26Issues.csv
M libcxx/docs/Status/Cxx26Papers.csv
M libcxx/docs/Status/Cxx29Papers.csv
M libcxx/docs/conf.py
M libcxx/include/CMakeLists.txt
M libcxx/include/__algorithm/simd_utils.h
M libcxx/include/__config
M libcxx/include/__configuration/attributes.h
M libcxx/include/__configuration/availability.h
M libcxx/include/__configuration/language.h
M libcxx/include/__configuration/platform.h
M libcxx/include/__configuration/utility.h
M libcxx/include/__cxx03/__config
M libcxx/include/__cxx03/__type_traits/datasizeof.h
M libcxx/include/__expected/expected.h
M libcxx/include/__functional/function.h
M libcxx/include/__locale
M libcxx/include/__locale_dir/locale_base_api.h
M libcxx/include/__locale_dir/num.h
M libcxx/include/__locale_dir/support/aix.h
M libcxx/include/__locale_dir/support/bsd_like.h
M libcxx/include/__locale_dir/support/fuchsia.h
M libcxx/include/__locale_dir/support/linux.h
M libcxx/include/__locale_dir/support/llvm_libc.h
M libcxx/include/__locale_dir/support/newlib.h
M libcxx/include/__locale_dir/support/windows.h
M libcxx/include/__locale_dir/wbuffer_convert.h
M libcxx/include/__locale_dir/wstring_convert.h
M libcxx/include/__math/abs.h
M libcxx/include/__memory/compressed_pair.h
M libcxx/include/__memory/is_sufficiently_aligned.h
M libcxx/include/__memory/shared_ptr.h
M libcxx/include/__memory/unique_ptr.h
M libcxx/include/__random/bernoulli_distribution.h
M libcxx/include/__random/binomial_distribution.h
M libcxx/include/__random/cauchy_distribution.h
M libcxx/include/__random/chi_squared_distribution.h
M libcxx/include/__random/discard_block_engine.h
M libcxx/include/__random/discrete_distribution.h
M libcxx/include/__random/exponential_distribution.h
M libcxx/include/__random/extreme_value_distribution.h
M libcxx/include/__random/fisher_f_distribution.h
M libcxx/include/__random/gamma_distribution.h
M libcxx/include/__random/generate_canonical.h
M libcxx/include/__random/geometric_distribution.h
M libcxx/include/__random/independent_bits_engine.h
M libcxx/include/__random/linear_congruential_engine.h
M libcxx/include/__random/lognormal_distribution.h
M libcxx/include/__random/mersenne_twister_engine.h
M libcxx/include/__random/negative_binomial_distribution.h
M libcxx/include/__random/normal_distribution.h
M libcxx/include/__random/piecewise_constant_distribution.h
M libcxx/include/__random/piecewise_linear_distribution.h
M libcxx/include/__random/poisson_distribution.h
M libcxx/include/__random/random_device.h
M libcxx/include/__random/seed_seq.h
M libcxx/include/__random/shuffle_order_engine.h
M libcxx/include/__random/student_t_distribution.h
M libcxx/include/__random/subtract_with_carry_engine.h
M libcxx/include/__random/uniform_int_distribution.h
M libcxx/include/__random/uniform_real_distribution.h
M libcxx/include/__random/weibull_distribution.h
M libcxx/include/__ranges/drop_view.h
M libcxx/include/__ranges/drop_while_view.h
M libcxx/include/__ranges/filter_view.h
M libcxx/include/__ranges/iota_view.h
M libcxx/include/__ranges/lazy_split_view.h
M libcxx/include/__ranges/reverse_view.h
M libcxx/include/__ranges/split_view.h
M libcxx/include/__ranges/take_view.h
M libcxx/include/__ranges/take_while_view.h
M libcxx/include/__ranges/transform_view.h
M libcxx/include/__tree
M libcxx/include/__utility/constant_wrapper.h
M libcxx/include/map
M libcxx/include/module.modulemap.in
A libcxx/include/text_encoding
M libcxx/include/utility
M libcxx/include/variant
M libcxx/include/version
M libcxx/lib/abi/CHANGELOG.TXT
M libcxx/lib/abi/arm64-apple-darwin.libcxxabi.v1.stable.exceptions.nonew.abilist
M libcxx/lib/abi/i686-linux-android23.libcxxabi.v1.stable.exceptions.nonew.abilist
M libcxx/lib/abi/powerpc-ibm-aix.libcxxabi.v1.stable.exceptions.nonew.abilist
M libcxx/lib/abi/powerpc64-ibm-aix.libcxxabi.v1.stable.exceptions.nonew.abilist
M libcxx/lib/abi/x86_64-linux-android23.libcxxabi.v1.stable.exceptions.nonew.abilist
M libcxx/lib/abi/x86_64-unknown-freebsd.libcxxabi.v1.stable.exceptions.nonew.abilist
M libcxx/lib/abi/x86_64-unknown-linux-gnu.libcxxabi.v1.stable.exceptions.nonew.abilist
M libcxx/lib/abi/x86_64-unknown-linux-gnu.libcxxabi.v1.stable.noexceptions.nonew.abilist
M libcxx/modules/std.compat.cppm.in
M libcxx/modules/std.cppm.in
M libcxx/modules/std/text_encoding.inc
M libcxx/src/CMakeLists.txt
M libcxx/src/include/to_chars_floating_point.h
M libcxx/src/support/win32/locale_win32.cpp
A libcxx/src/text_encoding.cpp
M libcxx/test/configs/llvm-libc++-llvm-libc.cfg.in
M libcxx/test/extensions/libcxx/localization/locale.convenience/conversions/conversions.string/ctor_move.pass.cpp
M libcxx/test/libcxx-03/type_traits/datasizeof.compile.pass.cpp
M libcxx/test/libcxx/clang_tidy.gen.py
M libcxx/test/libcxx/localization/nodiscard.verify.cpp
M libcxx/test/libcxx/module_std_compat.gen.py
A libcxx/test/libcxx/numerics/rand/nodiscard.verify.cpp
M libcxx/test/libcxx/numerics/rand/rand.dist/rand.dist.bern/rand.dist.bern.bernoulli/bad_engine.verify.cpp
M libcxx/test/libcxx/numerics/rand/rand.dist/rand.dist.bern/rand.dist.bern.bin/bad_engine.verify.cpp
M libcxx/test/libcxx/numerics/rand/rand.dist/rand.dist.bern/rand.dist.bern.geo/bad_engine.verify.cpp
M libcxx/test/libcxx/numerics/rand/rand.dist/rand.dist.bern/rand.dist.bern.negbin/bad_engine.verify.cpp
M libcxx/test/libcxx/numerics/rand/rand.dist/rand.dist.norm/rand.dist.norm.cauchy/bad_engine.verify.cpp
M libcxx/test/libcxx/numerics/rand/rand.dist/rand.dist.norm/rand.dist.norm.chisq/bad_engine.verify.cpp
M libcxx/test/libcxx/numerics/rand/rand.dist/rand.dist.norm/rand.dist.norm.f/bad_engine.verify.cpp
M libcxx/test/libcxx/numerics/rand/rand.dist/rand.dist.norm/rand.dist.norm.lognormal/bad_engine.verify.cpp
M libcxx/test/libcxx/numerics/rand/rand.dist/rand.dist.norm/rand.dist.norm.normal/bad_engine.verify.cpp
M libcxx/test/libcxx/numerics/rand/rand.dist/rand.dist.norm/rand.dist.norm.t/bad_engine.verify.cpp
M libcxx/test/libcxx/numerics/rand/rand.dist/rand.dist.pois/rand.dist.pois.exp/bad_engine.verify.cpp
M libcxx/test/libcxx/numerics/rand/rand.dist/rand.dist.pois/rand.dist.pois.extreme/bad_engine.verify.cpp
M libcxx/test/libcxx/numerics/rand/rand.dist/rand.dist.pois/rand.dist.pois.gamma/bad_engine.verify.cpp
M libcxx/test/libcxx/numerics/rand/rand.dist/rand.dist.pois/rand.dist.pois.poisson/bad_engine.verify.cpp
M libcxx/test/libcxx/numerics/rand/rand.dist/rand.dist.pois/rand.dist.pois.weibull/bad_engine.verify.cpp
M libcxx/test/libcxx/numerics/rand/rand.dist/rand.dist.samp/rand.dist.samp.discrete/bad_engine.verify.cpp
M libcxx/test/libcxx/numerics/rand/rand.dist/rand.dist.samp/rand.dist.samp.pconst/bad_engine.verify.cpp
M libcxx/test/libcxx/numerics/rand/rand.dist/rand.dist.samp/rand.dist.samp.plinear/bad_engine.verify.cpp
M libcxx/test/libcxx/numerics/rand/rand.dist/rand.dist.uni/rand.dist.uni.int/bad_engine.verify.cpp
M libcxx/test/libcxx/numerics/rand/rand.dist/rand.dist.uni/rand.dist.uni.real/bad_engine.verify.cpp
R libcxx/test/libcxx/ranges/range.adaptors/range.reverse/adaptor.nodiscard.verify.cpp
A libcxx/test/libcxx/ranges/range.adaptors/range.reverse/nodiscard.verify.cpp
R libcxx/test/libcxx/ranges/range.adaptors/range.transform/adaptor.nodiscard.verify.cpp
A libcxx/test/libcxx/ranges/range.adaptors/range.transform/nodiscard.verify.cpp
A libcxx/test/libcxx/text/text_encoding/environment.android.pass.cpp
A libcxx/test/libcxx/text/text_encoding/environment.pass.cpp
A libcxx/test/libcxx/text/text_encoding/environment.windows.pass.cpp
A libcxx/test/libcxx/text/text_encoding/nodiscard.verify.cpp
A libcxx/test/libcxx/text/text_encoding/text_encoding.ctor/assert.id.pass.cpp
A libcxx/test/libcxx/text/text_encoding/text_encoding.ctor/assert.string_view.pass.cpp
A libcxx/test/libcxx/text/text_encoding/text_encoding.members/environment.delete.verify.cpp
M libcxx/test/libcxx/transitive_includes/cxx03.csv
M libcxx/test/libcxx/transitive_includes/cxx11.csv
M libcxx/test/libcxx/transitive_includes/cxx14.csv
M libcxx/test/libcxx/transitive_includes/cxx17.csv
M libcxx/test/libcxx/transitive_includes/cxx20.csv
M libcxx/test/libcxx/transitive_includes/cxx23.csv
M libcxx/test/libcxx/transitive_includes/cxx26.csv
M libcxx/test/libcxx/utilities/expected/nodiscard.verify.cpp
R libcxx/test/libcxx/utilities/memory/util.smartptr/util.smartptr.shared/libcxx.control_block_layout.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/expected.version.compile.pass.cpp
A libcxx/test/std/language.support/support.limits/support.limits.general/text_encoding.version.compile.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/utility.version.compile.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/version.version.compile.pass.cpp
A libcxx/test/std/language.support/support.types/byte.compile.pass.cpp
R libcxx/test/std/language.support/support.types/byte.pass.cpp
M libcxx/test/std/language.support/support.types/byteops/and.assign.pass.cpp
M libcxx/test/std/language.support/support.types/byteops/and.pass.cpp
R libcxx/test/std/language.support/support.types/byteops/enum_direct_init.pass.cpp
R libcxx/test/std/language.support/support.types/byteops/lshift.assign.compile.fail.cpp
M libcxx/test/std/language.support/support.types/byteops/lshift.assign.pass.cpp
R libcxx/test/std/language.support/support.types/byteops/lshift.compile.fail.cpp
M libcxx/test/std/language.support/support.types/byteops/lshift.pass.cpp
M libcxx/test/std/language.support/support.types/byteops/not.pass.cpp
M libcxx/test/std/language.support/support.types/byteops/or.assign.pass.cpp
M libcxx/test/std/language.support/support.types/byteops/or.pass.cpp
R libcxx/test/std/language.support/support.types/byteops/rshift.assign.compile.fail.cpp
M libcxx/test/std/language.support/support.types/byteops/rshift.assign.pass.cpp
R libcxx/test/std/language.support/support.types/byteops/rshift.compile.fail.cpp
M libcxx/test/std/language.support/support.types/byteops/rshift.pass.cpp
R libcxx/test/std/language.support/support.types/byteops/to_integer.compile.fail.cpp
M libcxx/test/std/language.support/support.types/byteops/to_integer.pass.cpp
M libcxx/test/std/language.support/support.types/byteops/xor.assign.pass.cpp
M libcxx/test/std/language.support/support.types/byteops/xor.pass.cpp
M libcxx/test/std/localization/locale.categories/category.monetary/locale.money.get/locale.money.get.members/get_long_double_fr_FR.pass.cpp
M libcxx/test/std/localization/locale.categories/category.monetary/locale.money.put/locale.money.put.members/put_long_double_fr_FR.pass.cpp
A libcxx/test/std/localization/locales/locale/locale.members/encoding.pass.cpp
M libcxx/test/std/numerics/c.math/abs.pass.cpp
M libcxx/test/std/ranges/range.adaptors/range.drop.while/ctor.view.pass.cpp
M libcxx/test/std/ranges/range.adaptors/range.drop/ctor.view.pass.cpp
M libcxx/test/std/ranges/range.adaptors/range.filter/ctor.view_pred.pass.cpp
M libcxx/test/std/ranges/range.adaptors/range.lazy.split/ctor.range.pass.cpp
M libcxx/test/std/ranges/range.adaptors/range.lazy.split/ctor.view.pass.cpp
M libcxx/test/std/ranges/range.adaptors/range.split/ctor.range.pass.cpp
M libcxx/test/std/ranges/range.adaptors/range.split/ctor.view.pass.cpp
M libcxx/test/std/ranges/range.adaptors/range.take.while/ctor.view.pass.cpp
M libcxx/test/std/ranges/range.adaptors/range.take/ctor.view_count.pass.cpp
M libcxx/test/std/ranges/range.adaptors/range.transform/ctor.view_function.pass.cpp
M libcxx/test/std/ranges/range.factories/range.iota.view/ctor.first.last.pass.cpp
M libcxx/test/std/ranges/range.factories/range.iota.view/ctor.value.bound.pass.cpp
A libcxx/test/std/text/text_encoding/test_text_encoding.h
A libcxx/test/std/text/text_encoding/text_encoding.ctor/default.pass.cpp
A libcxx/test/std/text/text_encoding/text_encoding.ctor/id.pass.cpp
A libcxx/test/std/text/text_encoding/text_encoding.ctor/string_view.pass.cpp
A libcxx/test/std/text/text_encoding/text_encoding.eq/equal.id.pass.cpp
A libcxx/test/std/text/text_encoding/text_encoding.eq/equal.pass.cpp
A libcxx/test/std/text/text_encoding/text_encoding.hash/enabled_hash.pass.cpp
A libcxx/test/std/text/text_encoding/text_encoding.hash/hash.pass.cpp
A libcxx/test/std/text/text_encoding/text_encoding.members/aliases.pass.cpp
A libcxx/test/std/text/text_encoding/text_encoding.members/aliases_view.compile.pass.cpp
A libcxx/test/std/text/text_encoding/text_encoding.members/environment.pass.cpp
A libcxx/test/std/text/text_encoding/text_encoding.members/id.compile.pass.cpp
A libcxx/test/std/text/text_encoding/text_encoding.members/literal.pass.cpp
A libcxx/test/std/text/text_encoding/text_encoding.members/text_encoding.aliases_view/begin.pass.cpp
A libcxx/test/std/text/text_encoding/text_encoding.members/text_encoding.aliases_view/empty.pass.cpp
A libcxx/test/std/text/text_encoding/text_encoding.members/text_encoding.aliases_view/end.pass.cpp
A libcxx/test/std/text/text_encoding/text_encoding.members/text_encoding.aliases_view/front.pass.cpp
A libcxx/test/std/text/text_encoding/text_encoding.members/text_encoding.aliases_view/index.pass.cpp
A libcxx/test/std/text/text_encoding/text_encoding.members/text_encoding.aliases_view/iterator.pass.cpp
A libcxx/test/std/text/text_encoding/text_encoding.members/text_encoding.aliases_view/operator-bool.pass.cpp
A libcxx/test/std/text/text_encoding/trivially_copyable.compile.pass.cpp
M libcxx/test/std/utilities/const.wrap.class/convert.pass.cpp
R libcxx/test/std/utilities/const.wrap.class/ctad.compile.pass.cpp
M libcxx/test/std/utilities/const.wrap.class/cw.pass.cpp
R libcxx/test/std/utilities/const.wrap.class/cw_fixed.array.ctor.pass.cpp
R libcxx/test/std/utilities/const.wrap.class/cw_fixed.ctor.pass.cpp
M libcxx/test/std/utilities/const.wrap.class/subscript.pass.cpp
A libcxx/test/std/utilities/const.wrap.class/template.verify.cpp
M libcxx/test/std/utilities/const.wrap.class/types.compile.pass.cpp
M libcxx/test/std/utilities/const.wrap.class/unary_ops.pass.cpp
A libcxx/test/std/utilities/expected/expected.expected/observers/has_error.pass.cpp
A libcxx/test/std/utilities/expected/expected.void/observers/has_error.pass.cpp
A libcxx/test/std/utilities/memory/util.smartptr/util.smartptr.shared/pointer_destruction.pass.cpp
M libcxx/test/std/utilities/memory/util.smartptr/util.smartptr.shared/util.smartptr.shared.create/allocate_shared.lwg2070.pass.cpp
M libcxx/test/std/utilities/memory/util.smartptr/util.smartptr.shared/util.smartptr.shared.create/make_shared.pass.cpp
M libcxx/test/tools/clang_tidy_checks/hide_from_abi.cpp
M libcxx/utils/ci/lnt/README.md
M libcxx/utils/ci/lnt/run-benchbot
M libcxx/utils/ci/lnt/run-benchmarks
M libcxx/utils/ci/run-buildbot
M libcxx/utils/generate_feature_test_macro_components.py
M libcxx/utils/libcxx/header_information.py
M libcxx/utils/libcxx/test/features/availability.py
M libcxxabi/include/cxxabi.h
M libcxxabi/test/configs/llvm-libc++abi-llvm-libc.cfg.in
M libsycl/docs/index.rst
M libsycl/include/sycl/__impl/index_space_classes.hpp
M libsycl/include/sycl/__impl/queue.hpp
M libsycl/src/detail/global_objects.cpp
M libsycl/src/detail/global_objects.hpp
M libsycl/src/detail/offload/offload_topology.cpp
M libsycl/src/detail/platform_impl.cpp
M libsycl/src/detail/platform_impl.hpp
M libsycl/src/detail/program_manager.cpp
M libsycl/src/detail/program_manager.hpp
M libsycl/src/device_selector.cpp
A libsycl/test/basic/index_space_classes.cpp
A libsycl/test/basic/index_space_classes_negative.cpp
M libsycl/unittests/CMakeLists.txt
A libsycl/unittests/common/unittests_helper.hpp
A libsycl/unittests/device_selector/CMakeLists.txt
A libsycl/unittests/device_selector/get_device_preference.cpp
M libsycl/unittests/mock/helpers.cpp
M libsycl/unittests/mock/helpers.hpp
M libsycl/unittests/mock/mock.cpp
M libsycl/unittests/queue/CMakeLists.txt
A libsycl/unittests/queue/sycl_kernel_launch.cpp
M libunwind/docs/conf.py
M libunwind/src/UnwindRegistersSave.S
M lld/MachO/ICF.cpp
M lld/docs/conf.py
A lld/test/MachO/icf-safe-data-addrsig.s
A lld/test/wasm/cooperative-threading.s
M lld/test/wasm/stack-pointer-abi.s
M lld/test/wasm/thread-context-abi-mismatch.s
M lld/test/wasm/tls-libcall.s
M lld/wasm/Config.h
M lld/wasm/Driver.cpp
M lld/wasm/Options.td
M lld/wasm/Relocations.cpp
M lld/wasm/SyntheticSections.cpp
M lld/wasm/Writer.cpp
M lldb/cmake/modules/LLDBConfig.cmake
M lldb/docs/_ext/lldb_setting.py
M lldb/docs/conf.py
M lldb/examples/python/templates/scripted_process.py
M lldb/include/lldb/Breakpoint/Breakpoint.h
M lldb/include/lldb/Breakpoint/BreakpointList.h
M lldb/include/lldb/Core/Address.h
M lldb/include/lldb/Core/AddressRange.h
M lldb/include/lldb/Core/Declaration.h
M lldb/include/lldb/Core/Mangled.h
M lldb/include/lldb/Core/Module.h
M lldb/include/lldb/Core/ModuleSpec.h
M lldb/include/lldb/Core/Section.h
M lldb/include/lldb/Symbol/Block.h
M lldb/include/lldb/Symbol/Function.h
M lldb/include/lldb/Symbol/Variable.h
M lldb/include/lldb/Symbol/VariableList.h
M lldb/include/lldb/Target/DynamicLoader.h
M lldb/include/lldb/Target/Language.h
M lldb/include/lldb/Target/Process.h
M lldb/include/lldb/Utility/FileSpec.h
M lldb/include/lldb/Utility/FileSpecList.h
M lldb/source/Breakpoint/Breakpoint.cpp
M lldb/source/Breakpoint/BreakpointList.cpp
M lldb/source/Breakpoint/BreakpointResolverName.cpp
M lldb/source/Commands/CommandObjectBreakpoint.cpp
M lldb/source/Commands/CommandObjectCommands.cpp
M lldb/source/Commands/CommandObjectHelp.cpp
M lldb/source/Core/Address.cpp
M lldb/source/Core/Declaration.cpp
M lldb/source/Core/DynamicLoader.cpp
M lldb/source/Core/Mangled.cpp
M lldb/source/Core/Module.cpp
M lldb/source/Core/ModuleList.cpp
M lldb/source/Core/PluginManager.cpp
M lldb/source/Core/Section.cpp
M lldb/source/Expression/DWARFExpression.cpp
M lldb/source/Host/macosx/objcxx/HostInfoMacOSX.mm
M lldb/source/Interpreter/CommandInterpreter.cpp
M lldb/source/Plugins/DynamicLoader/Hexagon-DYLD/HexagonDYLDRendezvous.cpp
M lldb/source/Plugins/DynamicLoader/POSIX-DYLD/DYLDRendezvous.cpp
M lldb/source/Plugins/DynamicLoader/POSIX-DYLD/DynamicLoaderPOSIXDYLD.cpp
M lldb/source/Plugins/Language/ObjC/ObjCLanguage.cpp
M lldb/source/Plugins/Language/ObjC/ObjCLanguage.h
M lldb/source/Plugins/ObjectContainer/Universal-Mach-O/ObjectContainerUniversalMachO.cpp
M lldb/source/Plugins/ObjectFile/ELF/ObjectFileELF.cpp
M lldb/source/Plugins/Platform/MacOSX/PlatformDarwinKernel.cpp
M lldb/source/Plugins/Process/Linux/NativeRegisterContextLinux_arm64.cpp
M lldb/source/Plugins/Process/elf-core/CMakeLists.txt
M lldb/source/Plugins/Process/elf-core/ProcessElfCore.cpp
M lldb/source/Plugins/Process/elf-core/ProcessElfCore.h
M lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.cpp
M lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerPlatform.cpp
M lldb/source/Plugins/Protocol/MCP/ProtocolServerMCP.cpp
M lldb/source/Plugins/ScriptInterpreter/Lua/LuaState.cpp
M lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp
M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
M lldb/source/Plugins/SymbolVendor/ELF/SymbolVendorELF.cpp
M lldb/source/Plugins/SymbolVendor/PECOFF/SymbolVendorPECOFF.cpp
M lldb/source/Plugins/SymbolVendor/wasm/SymbolVendorWasm.cpp
M lldb/source/Symbol/Block.cpp
M lldb/source/Symbol/Function.cpp
M lldb/source/Symbol/Symtab.cpp
M lldb/source/Symbol/Variable.cpp
M lldb/source/Symbol/VariableList.cpp
M lldb/source/Target/Memory.cpp
M lldb/source/Target/Platform.cpp
M lldb/source/Target/Process.cpp
M lldb/source/Target/StackFrameList.cpp
M lldb/source/Target/Target.cpp
M lldb/source/Utility/FileSpec.cpp
M lldb/source/Utility/FileSpecList.cpp
M lldb/source/Utility/VirtualDataExtractor.cpp
M lldb/test/API/functionalities/postmortem/elf-core/TestLinuxCore.py
A lldb/test/API/functionalities/postmortem/elf-core/elf-dyld-nt-file-mismatch.yaml
M lldb/test/API/functionalities/rerun_and_expr_dylib/TestRerunAndExprDylib.py
M lldb/test/API/functionalities/thread/concurrent_events/TestConcurrentManyBreakpoints.py
M lldb/test/API/lang/objc/hidden-ivars/Makefile
M lldb/test/API/macosx/thread_suspend/main.c
M lldb/test/API/tools/lldb-dap/attach/TestDAP_attach.py
A lldb/test/Shell/ObjectFile/ELF/build-id-case-debug-only.yaml
A lldb/test/Shell/SymbolFile/DWARF/wasm-function-display-name.yaml
M lldb/tools/debugserver/source/RNBRemote.cpp
M lldb/tools/yaml2macho-core/yaml2macho.cpp
M lldb/unittests/Core/ModuleTest.cpp
M lldb/unittests/Expression/DWARFExpressionTest.cpp
M lldb/unittests/ObjectContainer/ObjectContainerUniversalMachOTest.cpp
M lldb/unittests/Utility/VirtualDataExtractorTest.cpp
M llvm/CMakeLists.txt
M llvm/README.txt
M llvm/benchmarks/CMakeLists.txt
A llvm/benchmarks/ImmutableSetIteratorBM.cpp
M llvm/cmake/modules/AddSphinxTarget.cmake
M llvm/docs/AMDGPUAsyncOperations.rst
M llvm/docs/AMDGPUExecutionSynchronization.rst
M llvm/docs/AMDGPUUsage.rst
M llvm/docs/AdvancedBuilds.rst
A llvm/docs/CMake.md
R llvm/docs/CMake.rst
A llvm/docs/CodeGenerator.md
R llvm/docs/CodeGenerator.rst
A llvm/docs/CodingStandards.md
R llvm/docs/CodingStandards.rst
A llvm/docs/CommandGuide/index.md
R llvm/docs/CommandGuide/index.rst
M llvm/docs/CommandGuide/llvm-objdump.rst
M llvm/docs/CommandGuide/llvm-offload-binary.rst
M llvm/docs/CommandGuide/llvm-symbolizer.rst
A llvm/docs/Contributing.md
R llvm/docs/Contributing.rst
A llvm/docs/DeveloperPolicy.md
R llvm/docs/DeveloperPolicy.rst
M llvm/docs/Docker.rst
A llvm/docs/GettingInvolved.md
R llvm/docs/GettingInvolved.rst
A llvm/docs/GettingStarted.md
R llvm/docs/GettingStarted.rst
A llvm/docs/GettingStartedTutorials.md
R llvm/docs/GettingStartedTutorials.rst
A llvm/docs/GitHub.md
R llvm/docs/GitHub.rst
M llvm/docs/GitRepositoryPolicy.md
M llvm/docs/GlobalISel/Pipeline.rst
M llvm/docs/GlobalISel/Porting.rst
M llvm/docs/GlobalISel/index.rst
M llvm/docs/InstrRefDebugInfo.md
M llvm/docs/LangRef.rst
A llvm/docs/Passes.md
R llvm/docs/Passes.rst
A llvm/docs/ProgrammersManual.md
R llvm/docs/ProgrammersManual.rst
M llvm/docs/ProjectGovernance.rst
A llvm/docs/RFCProcess.md
R llvm/docs/RFCProcess.rst
A llvm/docs/Reference.md
R llvm/docs/Reference.rst
M llvm/docs/ReleaseNotes.md
M llvm/docs/RemoveDIsDebugInfo.md
A llvm/docs/SourceLevelDebugging.md
R llvm/docs/SourceLevelDebugging.rst
M llvm/docs/SphinxQuickstartTemplate.md
A llvm/docs/TableGen/index.md
R llvm/docs/TableGen/index.rst
A llvm/docs/TestingGuide.md
R llvm/docs/TestingGuide.rst
A llvm/docs/UserGuides.md
R llvm/docs/UserGuides.rst
A llvm/docs/WritingAnLLVMBackend.md
R llvm/docs/WritingAnLLVMBackend.rst
A llvm/docs/WritingAnLLVMNewPMPass.md
R llvm/docs/WritingAnLLVMNewPMPass.rst
A llvm/docs/WritingAnLLVMPass.md
R llvm/docs/WritingAnLLVMPass.rst
M llvm/docs/conf.py
A llvm/docs/index.md
R llvm/docs/index.rst
R llvm/docs/llvm_slug.py
M llvm/docs/tutorial/MyFirstLanguageFrontend/index.rst
M llvm/include/llvm-c/Core.h
M llvm/include/llvm/ADT/APFloat.h
M llvm/include/llvm/ADT/APInt.h
M llvm/include/llvm/ADT/ImmutableSet.h
M llvm/include/llvm/ADT/STLExtras.h
M llvm/include/llvm/ADT/StringRef.h
M llvm/include/llvm/ADT/iterator_range.h
M llvm/include/llvm/Analysis/BlockFrequencyInfoImpl.h
M llvm/include/llvm/Analysis/ConstantFolding.h
M llvm/include/llvm/Analysis/InstSimplifyFolder.h
M llvm/include/llvm/Analysis/InstructionSimplify.h
M llvm/include/llvm/Analysis/LoopAccessAnalysis.h
M llvm/include/llvm/Analysis/LoopCacheAnalysis.h
M llvm/include/llvm/Analysis/MemoryBuiltins.h
M llvm/include/llvm/Analysis/ProfileSummaryInfo.h
M llvm/include/llvm/Analysis/ScalarEvolution.h
M llvm/include/llvm/Analysis/TargetFolder.h
M llvm/include/llvm/Analysis/VectorUtils.h
M llvm/include/llvm/BinaryFormat/ELF.h
M llvm/include/llvm/Bitcode/LLVMBitCodes.h
M llvm/include/llvm/CodeGen/BasicTTIImpl.h
M llvm/include/llvm/CodeGen/LiveInterval.h
M llvm/include/llvm/CodeGen/SelectionDAGNodes.h
M llvm/include/llvm/CodeGen/TargetSubtargetInfo.h
M llvm/include/llvm/CodeGen/ValueTypes.td
M llvm/include/llvm/DWARFLinker/Classic/DWARFLinker.h
M llvm/include/llvm/DWARFLinker/DWARFLinkerBase.h
M llvm/include/llvm/DebugInfo/Symbolize/Symbolize.h
M llvm/include/llvm/ExecutionEngine/Orc/TargetProcess/SimpleRemoteEPCServer.h
M llvm/include/llvm/ExecutionEngine/Orc/TaskDispatch.h
M llvm/include/llvm/Frontend/OpenMP/OMP.h
M llvm/include/llvm/Frontend/OpenMP/OMP.td
M llvm/include/llvm/Frontend/OpenMP/OMPConstants.h
M llvm/include/llvm/Frontend/OpenMP/OMPIRBuilder.h
M llvm/include/llvm/Frontend/OpenMP/OMPKinds.def
M llvm/include/llvm/IR/Attributes.td
M llvm/include/llvm/IR/BundleAttributes.h
M llvm/include/llvm/IR/ConstantFolder.h
M llvm/include/llvm/IR/Constants.h
M llvm/include/llvm/IR/DiagnosticInfo.h
M llvm/include/llvm/IR/Function.h
M llvm/include/llvm/IR/GlobalValue.h
M llvm/include/llvm/IR/IRBuilder.h
M llvm/include/llvm/IR/IRBuilderFolder.h
M llvm/include/llvm/IR/Intrinsics.h
M llvm/include/llvm/IR/Intrinsics.td
M llvm/include/llvm/IR/IntrinsicsAArch64.td
M llvm/include/llvm/IR/IntrinsicsNVVM.td
M llvm/include/llvm/IR/IntrinsicsRISCV.td
M llvm/include/llvm/IR/IntrinsicsWebAssembly.td
M llvm/include/llvm/IR/NoFolder.h
M llvm/include/llvm/IR/PatternMatch.h
M llvm/include/llvm/MC/MCObjectStreamer.h
M llvm/include/llvm/MC/MCStreamer.h
M llvm/include/llvm/Option/OptParser.td
M llvm/include/llvm/ProfileData/MemProf.h
M llvm/include/llvm/ProfileData/SampleProfReader.h
M llvm/include/llvm/Support/Allocator.h
M llvm/include/llvm/Support/CHERICapabilityFormat.h
M llvm/include/llvm/Support/ConvertUTF.h
M llvm/include/llvm/Support/GlobPattern.h
M llvm/include/llvm/Support/KnownBits.h
M llvm/include/llvm/Target/Target.td
M llvm/include/llvm/TargetParser/AMDGPUTargetParser.def
M llvm/include/llvm/TargetParser/AMDGPUTargetParser.h
M llvm/include/llvm/TargetParser/RISCVTargetParser.h
M llvm/include/llvm/Transforms/IPO/Instrumentor.h
M llvm/include/llvm/Transforms/IPO/InstrumentorRuntimeHelper.h
M llvm/include/llvm/Transforms/IPO/SampleProfileMatcher.h
M llvm/include/llvm/Transforms/Scalar/NaryReassociate.h
M llvm/include/llvm/Transforms/Utils/SampleProfileLoaderBaseImpl.h
R llvm/include/llvm/Transforms/Utils/UnifyFunctionExitNodes.h
M llvm/include/llvm/Transforms/Vectorize/LoopVectorizationLegality.h
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Scheduler.h
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/VecUtils.h
M llvm/lib/Analysis/AliasAnalysis.cpp
M llvm/lib/Analysis/AssumptionCache.cpp
M llvm/lib/Analysis/BasicAliasAnalysis.cpp
M llvm/lib/Analysis/BlockFrequencyInfo.cpp
M llvm/lib/Analysis/BlockFrequencyInfoImpl.cpp
M llvm/lib/Analysis/ConstantFolding.cpp
M llvm/lib/Analysis/DependenceAnalysis.cpp
M llvm/lib/Analysis/InlineCost.cpp
M llvm/lib/Analysis/InstructionSimplify.cpp
M llvm/lib/Analysis/LoopAccessAnalysis.cpp
M llvm/lib/Analysis/LoopCacheAnalysis.cpp
M llvm/lib/Analysis/MemoryBuiltins.cpp
M llvm/lib/Analysis/ProfileSummaryInfo.cpp
M llvm/lib/Analysis/ScalarEvolution.cpp
M llvm/lib/Analysis/ValueLatticeUtils.cpp
M llvm/lib/Analysis/ValueTracking.cpp
M llvm/lib/Analysis/VectorUtils.cpp
M llvm/lib/Bitcode/Reader/BitcodeReader.cpp
M llvm/lib/Bitcode/Writer/BitcodeWriter.cpp
M llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
M llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
M llvm/lib/CodeGen/AsmPrinter/DwarfExpression.cpp
M llvm/lib/CodeGen/AsmPrinter/DwarfExpression.h
M llvm/lib/CodeGen/AtomicExpandPass.cpp
M llvm/lib/CodeGen/ComplexDeinterleavingPass.cpp
M llvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp
M llvm/lib/CodeGen/LiveInterval.cpp
M llvm/lib/CodeGen/LiveIntervals.cpp
M llvm/lib/CodeGen/MIRSampleProfile.cpp
M llvm/lib/CodeGen/MachineFunction.cpp
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
M llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
M llvm/lib/CodeGen/SelectionDAG/LegalizeTypes.h
M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
M llvm/lib/CodeGen/ValueTypes.cpp
M llvm/lib/DWARFCFIChecker/DWARFCFIState.cpp
M llvm/lib/DWARFLinker/Parallel/DWARFLinkerImpl.cpp
M llvm/lib/DWARFLinker/Parallel/DWARFLinkerImpl.h
M llvm/lib/DebugInfo/DWARF/DWARFAcceleratorTable.cpp
M llvm/lib/DebugInfo/PDB/Native/TpiStream.cpp
M llvm/lib/DebugInfo/Symbolize/Symbolize.cpp
M llvm/lib/Frontend/OpenMP/OMP.cpp
M llvm/lib/Frontend/OpenMP/OMPContext.cpp
M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
M llvm/lib/IR/BundleAttributes.cpp
M llvm/lib/IR/CMakeLists.txt
M llvm/lib/IR/Core.cpp
M llvm/lib/IR/DebugInfo.cpp
M llvm/lib/IR/Function.cpp
M llvm/lib/IR/Globals.cpp
M llvm/lib/IR/IRBuilder.cpp
M llvm/lib/IR/Instructions.cpp
M llvm/lib/IR/Intrinsics.cpp
M llvm/lib/IR/ProfDataUtils.cpp
M llvm/lib/IR/Type.cpp
M llvm/lib/IR/Verifier.cpp
A llvm/lib/IR/VerifierAMDGPU.cpp
A llvm/lib/IR/VerifierInternal.h
M llvm/lib/MC/MCAsmStreamer.cpp
M llvm/lib/MC/MCELFStreamer.cpp
M llvm/lib/MC/MCObjectStreamer.cpp
M llvm/lib/MC/MCParser/AsmParser.cpp
M llvm/lib/MC/MCParser/MasmParser.cpp
M llvm/lib/MC/MCStreamer.cpp
M llvm/lib/MC/MCWinCOFFStreamer.cpp
M llvm/lib/ObjCopy/MachO/MachOLayoutBuilder.cpp
M llvm/lib/ObjCopy/MachO/MachOLayoutBuilder.h
M llvm/lib/ObjCopy/MachO/MachOObjcopy.cpp
M llvm/lib/ObjCopy/MachO/MachOWriter.cpp
M llvm/lib/ObjectYAML/ELFEmitter.cpp
M llvm/lib/ObjectYAML/MachOEmitter.cpp
M llvm/lib/Passes/PassBuilder.cpp
M llvm/lib/Passes/PassRegistry.def
M llvm/lib/ProfileData/MemProfReader.cpp
M llvm/lib/ProfileData/SampleProfReader.cpp
M llvm/lib/Support/APInt.cpp
M llvm/lib/Support/CHERICapabilityFormat.cpp
M llvm/lib/Support/ConvertUTFWrapper.cpp
M llvm/lib/Support/GlobPattern.cpp
M llvm/lib/Support/KnownBits.cpp
M llvm/lib/Support/SpecialCaseList.cpp
M llvm/lib/Target/AArch64/AArch64.h
M llvm/lib/Target/AArch64/AArch64AsmPrinter.cpp
M llvm/lib/Target/AArch64/AArch64Features.td
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.h
M llvm/lib/Target/AArch64/AArch64InstrFormats.td
M llvm/lib/Target/AArch64/AArch64InstrInfo.cpp
M llvm/lib/Target/AArch64/AArch64InstrInfo.td
M llvm/lib/Target/AArch64/AArch64PassRegistry.def
M llvm/lib/Target/AArch64/AArch64PointerAuth.cpp
M llvm/lib/Target/AArch64/AArch64Processors.td
M llvm/lib/Target/AArch64/AArch64SRLTDefineSuperRegs.cpp
M llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td
M llvm/lib/Target/AArch64/AArch64SchedA510.td
M llvm/lib/Target/AArch64/AArch64TargetMachine.cpp
M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.h
M llvm/lib/Target/AArch64/GISel/AArch64InstructionSelector.cpp
M llvm/lib/Target/AArch64/SVEInstrFormats.td
M llvm/lib/Target/AMDGPU/AMDGPU.td
M llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.cpp
M llvm/lib/Target/AMDGPU/AMDGPUBarrierLatency.cpp
M llvm/lib/Target/AMDGPU/AMDGPUCodeGenPrepare.cpp
M llvm/lib/Target/AMDGPU/AMDGPUHSAMetadataStreamer.cpp
M llvm/lib/Target/AMDGPU/AMDGPUHSAMetadataStreamer.h
M llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp
M llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.h
M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp
M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.h
M llvm/lib/Target/AMDGPU/AMDGPUInstructions.td
M llvm/lib/Target/AMDGPU/AMDGPULaneMaskUtils.h
M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.h
M llvm/lib/Target/AMDGPU/AMDGPULibCalls.cpp
M llvm/lib/Target/AMDGPU/AMDGPURegBankCombiner.cpp
M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalize.cpp
M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeHelper.cpp
M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeHelper.h
M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeRules.cpp
M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeRules.h
M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
M llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.cpp
M llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
M llvm/lib/Target/AMDGPU/GCNProcessors.td
M llvm/lib/Target/AMDGPU/GCNSubtarget.cpp
M llvm/lib/Target/AMDGPU/GCNSubtarget.h
M llvm/lib/Target/AMDGPU/GCNVOPDUtils.cpp
M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUTargetStreamer.cpp
M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUTargetStreamer.h
M llvm/lib/Target/AMDGPU/R600ISelLowering.cpp
M llvm/lib/Target/AMDGPU/R600ISelLowering.h
M llvm/lib/Target/AMDGPU/SIFixSGPRCopies.cpp
M llvm/lib/Target/AMDGPU/SIFoldOperands.cpp
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
M llvm/lib/Target/AMDGPU/SIISelLowering.h
M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
M llvm/lib/Target/AMDGPU/SIInstructions.td
M llvm/lib/Target/AMDGPU/SIMachineScheduler.h
M llvm/lib/Target/AMDGPU/SIOptimizeExecMasking.cpp
M llvm/lib/Target/AMDGPU/SIWholeQuadMode.cpp
M llvm/lib/Target/AMDGPU/SOPInstructions.td
M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp
M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.h
M llvm/lib/Target/AMDGPU/VOP1Instructions.td
M llvm/lib/Target/AMDGPU/VOP2Instructions.td
M llvm/lib/Target/ARM/ARMAsmPrinter.cpp
M llvm/lib/Target/ARM/ARMBaseInstrInfo.cpp
M llvm/lib/Target/ARM/ARMExpandPseudoInsts.cpp
M llvm/lib/Target/ARM/ARMISelLowering.cpp
M llvm/lib/Target/ARM/ARMMCInstLower.cpp
M llvm/lib/Target/ARM/ARMRegisterInfo.td
M llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
M llvm/lib/Target/BPF/BPFAbstractMemberAccess.cpp
M llvm/lib/Target/BPF/BPFCORE.h
M llvm/lib/Target/BPF/BPFFrameLowering.cpp
M llvm/lib/Target/BPF/BPFFrameLowering.h
M llvm/lib/Target/BPF/BPFSelectionDAGInfo.cpp
M llvm/lib/Target/BPF/BTFDebug.cpp
M llvm/lib/Target/BPF/BTFDebug.h
M llvm/lib/Target/CSKY/MCTargetDesc/CSKYTargetStreamer.cpp
M llvm/lib/Target/DirectX/DXILDataScalarization.cpp
M llvm/lib/Target/Hexagon/AsmParser/HexagonAsmParser.cpp
M llvm/lib/Target/Hexagon/CMakeLists.txt
M llvm/lib/Target/Hexagon/Hexagon.h
M llvm/lib/Target/Hexagon/HexagonAsmPrinter.cpp
M llvm/lib/Target/Hexagon/HexagonAsmPrinter.h
A llvm/lib/Target/Hexagon/HexagonHVXSaveRemark.cpp
M llvm/lib/Target/Hexagon/HexagonISelLowering.cpp
M llvm/lib/Target/Hexagon/HexagonISelLowering.h
M llvm/lib/Target/Hexagon/HexagonMCInstLower.cpp
M llvm/lib/Target/Hexagon/HexagonPseudo.td
M llvm/lib/Target/Hexagon/HexagonTargetMachine.cpp
M llvm/lib/Target/LoongArch/LoongArchAsmPrinter.cpp
M llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
M llvm/lib/Target/LoongArch/LoongArchISelLowering.h
M llvm/lib/Target/LoongArch/LoongArchInstrInfo.td
M llvm/lib/Target/Mips/AsmParser/MipsAsmParser.cpp
M llvm/lib/Target/Mips/MCTargetDesc/MipsTargetStreamer.cpp
M llvm/lib/Target/Mips/MipsAsmPrinter.cpp
M llvm/lib/Target/Mips/MipsInstrInfo.td
M llvm/lib/Target/NVPTX/NVPTX.h
M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
M llvm/lib/Target/NVPTX/NVPTXInstrInfo.td
M llvm/lib/Target/NVPTX/NVPTXLowerArgs.cpp
M llvm/lib/Target/NVPTX/NVPTXPassRegistry.def
M llvm/lib/Target/PowerPC/MCTargetDesc/PPCELFStreamer.cpp
M llvm/lib/Target/PowerPC/MCTargetDesc/PPCXCOFFStreamer.cpp
M llvm/lib/Target/PowerPC/PPCAsmPrinter.cpp
M llvm/lib/Target/PowerPC/PPCISelLowering.cpp
M llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
M llvm/lib/Target/RISCV/CMakeLists.txt
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVAsmBackend.cpp
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVBaseInfo.h
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCCodeEmitter.cpp
M llvm/lib/Target/RISCV/RISCV.h
M llvm/lib/Target/RISCV/RISCVAsmPrinter.cpp
M llvm/lib/Target/RISCV/RISCVFrameLowering.cpp
M llvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/lib/Target/RISCV/RISCVInstrInfo.cpp
M llvm/lib/Target/RISCV/RISCVInstrInfo.td
M llvm/lib/Target/RISCV/RISCVInstrInfoP.td
M llvm/lib/Target/RISCV/RISCVInstrInfoXCV.td
M llvm/lib/Target/RISCV/RISCVInstrInfoXqci.td
M llvm/lib/Target/RISCV/RISCVInstrPredicates.td
M llvm/lib/Target/RISCV/RISCVMoveMerger.cpp
A llvm/lib/Target/RISCV/RISCVQCRelaxMarking.cpp
M llvm/lib/Target/RISCV/RISCVTargetMachine.cpp
M llvm/lib/Target/SPIRV/SPIRVCombinerHelper.cpp
M llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.cpp
M llvm/lib/Target/Sparc/SparcAsmPrinter.cpp
M llvm/lib/Target/Sparc/SparcISelDAGToDAG.cpp
M llvm/lib/Target/Sparc/SparcISelLowering.cpp
M llvm/lib/Target/Sparc/SparcISelLowering.h
M llvm/lib/Target/Sparc/SparcInstr64Bit.td
M llvm/lib/Target/Sparc/SparcInstrInfo.td
M llvm/lib/Target/SystemZ/MCTargetDesc/SystemZHLASMAsmStreamer.cpp
M llvm/lib/Target/SystemZ/MCTargetDesc/SystemZHLASMAsmStreamer.h
M llvm/lib/Target/SystemZ/SystemZInstrInfo.cpp
M llvm/lib/Target/SystemZ/SystemZMachineScheduler.cpp
M llvm/lib/Target/SystemZ/SystemZMachineScheduler.h
M llvm/lib/Target/WebAssembly/CMakeLists.txt
M llvm/lib/Target/WebAssembly/GISel/WebAssemblyCallLowering.cpp
M llvm/lib/Target/WebAssembly/Utils/WasmAddressSpaces.h
M llvm/lib/Target/WebAssembly/Utils/WebAssemblyTypeUtilities.h
M llvm/lib/Target/WebAssembly/WebAssembly.h
M llvm/lib/Target/WebAssembly/WebAssemblyFastISel.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyISelDAGToDAG.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.h
R llvm/lib/Target/WebAssembly/WebAssemblyLowerRefTypesIntPtrConv.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyRefTypeMem2Local.cpp
M llvm/lib/Target/WebAssembly/WebAssemblySubtarget.cpp
M llvm/lib/Target/WebAssembly/WebAssemblySubtarget.h
M llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp
M llvm/lib/Target/X86/AsmParser/X86AsmParser.cpp
M llvm/lib/Target/X86/GISel/X86InstructionSelector.cpp
M llvm/lib/Target/X86/X86.td
M llvm/lib/Target/X86/X86FastISel.cpp
M llvm/lib/Target/X86/X86FrameLowering.cpp
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/lib/Target/X86/X86InstrAVX512.td
M llvm/lib/Target/X86/X86InstrFragments.td
M llvm/lib/Target/X86/X86InstrInfo.cpp
M llvm/lib/Target/X86/X86InstrInfo.h
M llvm/lib/Target/X86/X86InstrMisc.td
M llvm/lib/Target/X86/X86MCInstLower.cpp
M llvm/lib/Target/X86/X86TargetTransformInfo.cpp
M llvm/lib/Target/X86/X86TargetTransformInfo.h
M llvm/lib/Target/Xtensa/AsmParser/XtensaAsmParser.cpp
M llvm/lib/Target/Xtensa/MCTargetDesc/XtensaInstPrinter.cpp
M llvm/lib/Target/Xtensa/MCTargetDesc/XtensaMCCodeEmitter.cpp
M llvm/lib/Target/Xtensa/MCTargetDesc/XtensaMCTargetDesc.cpp
M llvm/lib/Target/Xtensa/MCTargetDesc/XtensaTargetStreamer.h
M llvm/lib/Target/Xtensa/XtensaISelLowering.cpp
M llvm/lib/Target/Xtensa/XtensaInstrInfo.td
M llvm/lib/Target/Xtensa/XtensaSubtarget.h
M llvm/lib/TargetParser/AMDGPUTargetParser.cpp
M llvm/lib/Transforms/AggressiveInstCombine/AggressiveInstCombine.cpp
M llvm/lib/Transforms/IPO/ArgumentPromotion.cpp
M llvm/lib/Transforms/IPO/AttributorAttributes.cpp
M llvm/lib/Transforms/IPO/DeadArgumentElimination.cpp
M llvm/lib/Transforms/IPO/FunctionSpecialization.cpp
M llvm/lib/Transforms/IPO/GlobalOpt.cpp
M llvm/lib/Transforms/IPO/Instrumentor.cpp
M llvm/lib/Transforms/IPO/InstrumentorStubPrinter.cpp
M llvm/lib/Transforms/IPO/MergeFunctions.cpp
M llvm/lib/Transforms/IPO/OpenMPOpt.cpp
M llvm/lib/Transforms/IPO/PartialInlining.cpp
M llvm/lib/Transforms/IPO/SampleProfile.cpp
M llvm/lib/Transforms/IPO/SampleProfileMatcher.cpp
M llvm/lib/Transforms/IPO/WholeProgramDevirt.cpp
M llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
M llvm/lib/Transforms/InstCombine/InstCombineCasts.cpp
M llvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
M llvm/lib/Transforms/Instrumentation/BoundsChecking.cpp
M llvm/lib/Transforms/Instrumentation/NumericalStabilitySanitizer.cpp
M llvm/lib/Transforms/Instrumentation/PGOInstrumentation.cpp
M llvm/lib/Transforms/Scalar/LoopFuse.cpp
M llvm/lib/Transforms/Scalar/LoopInterchange.cpp
M llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp
M llvm/lib/Transforms/Scalar/NaryReassociate.cpp
M llvm/lib/Transforms/Scalar/Reassociate.cpp
M llvm/lib/Transforms/Scalar/SROA.cpp
M llvm/lib/Transforms/Scalar/SimpleLoopUnswitch.cpp
M llvm/lib/Transforms/Scalar/TailRecursionElimination.cpp
M llvm/lib/Transforms/Utils/CMakeLists.txt
M llvm/lib/Transforms/Utils/CodeExtractor.cpp
M llvm/lib/Transforms/Utils/FixIrreducible.cpp
M llvm/lib/Transforms/Utils/InlineFunction.cpp
M llvm/lib/Transforms/Utils/LowerMemIntrinsics.cpp
M llvm/lib/Transforms/Utils/ProfileVerify.cpp
M llvm/lib/Transforms/Utils/ScalarEvolutionExpander.cpp
M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
R llvm/lib/Transforms/Utils/UnifyFunctionExitNodes.cpp
M llvm/lib/Transforms/Vectorize/LoopVectorizationLegality.cpp
M llvm/lib/Transforms/Vectorize/LoopVectorizationPlanner.cpp
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/lib/Transforms/Vectorize/SandboxVectorizer/DependencyGraph.cpp
M llvm/lib/Transforms/Vectorize/SandboxVectorizer/Scheduler.cpp
M llvm/lib/Transforms/Vectorize/VPRecipeBuilder.h
M llvm/lib/Transforms/Vectorize/VPlan.cpp
M llvm/lib/Transforms/Vectorize/VPlan.h
M llvm/lib/Transforms/Vectorize/VPlanAnalysis.cpp
M llvm/lib/Transforms/Vectorize/VPlanConstruction.cpp
M llvm/lib/Transforms/Vectorize/VPlanHelpers.h
M llvm/lib/Transforms/Vectorize/VPlanPatternMatch.h
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/lib/Transforms/Vectorize/VPlanTransforms.h
M llvm/lib/Transforms/Vectorize/VPlanUnroll.cpp
M llvm/lib/Transforms/Vectorize/VPlanUtils.cpp
M llvm/lib/Transforms/Vectorize/VPlanUtils.h
M llvm/lib/Transforms/Vectorize/VPlanValue.h
M llvm/lib/Transforms/Vectorize/VPlanVerifier.cpp
M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
M llvm/runtimes/CMakeLists.txt
M llvm/test/Analysis/BasicAA/phi-aa.ll
M llvm/test/Analysis/BasicAA/phi-and-select.ll
M llvm/test/Analysis/BasicAA/recphi.ll
M llvm/test/Analysis/CostModel/AMDGPU/maximumnum.ll
M llvm/test/Analysis/CostModel/AMDGPU/minimumnum.ll
M llvm/test/Analysis/Delinearization/global_array_bounds.ll
M llvm/test/Analysis/DependenceAnalysis/Banerjee.ll
M llvm/test/Analysis/DependenceAnalysis/BasePtrBug.ll
M llvm/test/Analysis/DependenceAnalysis/Constraints.ll
M llvm/test/Analysis/DependenceAnalysis/DifferentOffsets.ll
M llvm/test/Analysis/DependenceAnalysis/NonCanonicalizedSubscript.ll
M llvm/test/Analysis/DependenceAnalysis/Propagating.ll
A llvm/test/Analysis/DependenceAnalysis/find-gcd-overflow.ll
M llvm/test/Analysis/LoopAccessAnalysis/clamped-access-pattern.ll
M llvm/test/Analysis/LoopAccessAnalysis/inbounds-gep-in-predicated-blocks.ll
M llvm/test/Analysis/LoopAccessAnalysis/nssw-predicate-implied.ll
M llvm/test/Analysis/LoopAccessAnalysis/retry-runtime-checks-after-dependence-analysis.ll
M llvm/test/Analysis/LoopAccessAnalysis/symbolic-stride.ll
M llvm/test/Analysis/LoopCacheAnalysis/PowerPC/LoopnestFixedSize.ll
M llvm/test/Analysis/LoopCacheAnalysis/PowerPC/compute-cost-m32.ll
M llvm/test/Analysis/LoopCacheAnalysis/PowerPC/compute-cost.ll
M llvm/test/Analysis/LoopCacheAnalysis/PowerPC/loads-store.ll
M llvm/test/Analysis/LoopCacheAnalysis/PowerPC/matmul.ll
M llvm/test/Analysis/LoopCacheAnalysis/PowerPC/matvecmul.ll
M llvm/test/Analysis/LoopCacheAnalysis/PowerPC/multi-store.ll
M llvm/test/Analysis/LoopCacheAnalysis/PowerPC/single-store.ll
M llvm/test/Analysis/LoopCacheAnalysis/PowerPC/stencil.ll
M llvm/test/Analysis/LoopCacheAnalysis/compute-cost.ll
M llvm/test/Analysis/LoopCacheAnalysis/interchange-cost-beneficial.ll
M llvm/test/Analysis/LoopCacheAnalysis/interchange-refcost-overflow.ll
M llvm/test/Analysis/LoopCacheAnalysis/partially-perfect-nest.ll
A llvm/test/Analysis/MemorySSA/invariant-load-intrinsic.ll
M llvm/test/Analysis/ScalarEvolution/addrec-computed-during-addrec-calculation.ll
M llvm/test/Analysis/ScalarEvolution/backedge-taken-count-guard-info.ll
M llvm/test/Analysis/ScalarEvolution/becount-invalidation.ll
M llvm/test/Analysis/ScalarEvolution/different-loops-recs.ll
M llvm/test/Analysis/ScalarEvolution/exit-count-non-strict.ll
M llvm/test/Analysis/ScalarEvolution/exit-count-select-safe.ll
M llvm/test/Analysis/ScalarEvolution/incorrect-exit-count.ll
M llvm/test/Analysis/ScalarEvolution/increasing-or-decreasing-iv.ll
M llvm/test/Analysis/ScalarEvolution/limit-depth.ll
M llvm/test/Analysis/ScalarEvolution/max-backedge-taken-count-guard-info-operand-order.ll
M llvm/test/Analysis/ScalarEvolution/max-backedge-taken-count-guard-info-rewrite-expressions.ll
M llvm/test/Analysis/ScalarEvolution/max-backedge-taken-count-guard-info.ll
M llvm/test/Analysis/ScalarEvolution/mul-udiv-folds.ll
M llvm/test/Analysis/ScalarEvolution/pr123550.ll
M llvm/test/Analysis/ScalarEvolution/pr22641.ll
M llvm/test/Analysis/ScalarEvolution/ptrtoint.ll
M llvm/test/Analysis/ScalarEvolution/sext-iv-2.ll
M llvm/test/Analysis/ScalarEvolution/sext-mul.ll
M llvm/test/Analysis/ScalarEvolution/trip-count-negative-stride.ll
M llvm/test/Analysis/ScalarEvolution/umin-umax-folds.ll
A llvm/test/Analysis/ValueTracking/knownbits-pdep.ll
A llvm/test/Analysis/ValueTracking/knownbits-pext.ll
M llvm/test/Bitcode/attributes.ll
M llvm/test/CodeGen/AArch64/GlobalISel/legalize-and.mir
M llvm/test/CodeGen/AArch64/GlobalISel/legalize-or.mir
M llvm/test/CodeGen/AArch64/GlobalISel/legalize-xor.mir
A llvm/test/CodeGen/AArch64/GlobalISel/pr204118.mir
M llvm/test/CodeGen/AArch64/aarch64-bf16-ldst-intrinsics.ll
A llvm/test/CodeGen/AArch64/aarch64-fmuladd.ll
M llvm/test/CodeGen/AArch64/andorbrcompare.ll
M llvm/test/CodeGen/AArch64/arm64-build-vector.ll
M llvm/test/CodeGen/AArch64/arm64-ccmp.ll
M llvm/test/CodeGen/AArch64/arm64-fpenv.ll
M llvm/test/CodeGen/AArch64/arm64_32.ll
M llvm/test/CodeGen/AArch64/bf16-select.ll
M llvm/test/CodeGen/AArch64/bf16-shuffle.ll
M llvm/test/CodeGen/AArch64/bf16-vector-bitcast.ll
M llvm/test/CodeGen/AArch64/bf16-vector-shuffle.ll
M llvm/test/CodeGen/AArch64/bf16.ll
A llvm/test/CodeGen/AArch64/br-cond-merging-cbz-tbnz.ll
A llvm/test/CodeGen/AArch64/br-cond-merging-fccmp.ll
M llvm/test/CodeGen/AArch64/br-cond-not-merge.ll
A llvm/test/CodeGen/AArch64/complex-deinterleaving-reassoc-duplicates.ll
A llvm/test/CodeGen/AArch64/extend-bool-vector-load.ll
M llvm/test/CodeGen/AArch64/fcvt-i256.ll
M llvm/test/CodeGen/AArch64/framelayout-scavengingslot-stack-hazard.mir
M llvm/test/CodeGen/AArch64/framelayout-scavengingslot.mir
M llvm/test/CodeGen/AArch64/i128-cmp.ll
M llvm/test/CodeGen/AArch64/irg_sp_tagp.ll
A llvm/test/CodeGen/AArch64/large-stack-offset-calcs.mir
M llvm/test/CodeGen/AArch64/load-insert-undef.ll
M llvm/test/CodeGen/AArch64/load-insert-zero.ll
M llvm/test/CodeGen/AArch64/lower-range-metadata-func-call.ll
M llvm/test/CodeGen/AArch64/lr-reserved-for-ra-live-in.ll
M llvm/test/CodeGen/AArch64/luti-with-sme2.ll
M llvm/test/CodeGen/AArch64/machine_cse.ll
M llvm/test/CodeGen/AArch64/neon-luti.ll
M llvm/test/CodeGen/AArch64/pauth-lr-tail-call-fpdiff.ll
M llvm/test/CodeGen/AArch64/peephole-and-tst.ll
A llvm/test/CodeGen/AArch64/peephole-substitute-cmp-adcs.mir
M llvm/test/CodeGen/AArch64/pr166870.ll
A llvm/test/CodeGen/AArch64/pr204118.ll
M llvm/test/CodeGen/AArch64/ragreedy-csr.ll
M llvm/test/CodeGen/AArch64/spillfill-sve.ll
M llvm/test/CodeGen/AArch64/stack-guard-sve.ll
M llvm/test/CodeGen/AArch64/subreg-liveness-fix-subreg-to-reg-implicit-def.mir
M llvm/test/CodeGen/AArch64/sve-extract-fixed-vector.ll
M llvm/test/CodeGen/AArch64/sve-extract-scalable-vector.ll
M llvm/test/CodeGen/AArch64/sve-insert-element.ll
M llvm/test/CodeGen/AArch64/sve-insert-vector.ll
M llvm/test/CodeGen/AArch64/sve-intrinsics-int-arith-undef.ll
M llvm/test/CodeGen/AArch64/sve-intrinsics-loads.ll
M llvm/test/CodeGen/AArch64/sve-ld1-addressing-mode-reg-reg.ll
A llvm/test/CodeGen/AArch64/sve-mul-imm-add-adr.ll
M llvm/test/CodeGen/AArch64/sve-st1-addressing-mode-reg-reg.ll
A llvm/test/CodeGen/AArch64/sve2-fixed-length-sra-flag.ll
A llvm/test/CodeGen/AArch64/sve2-fixed-length-sra.ll
M llvm/test/CodeGen/AArch64/sve2-histcnt.ll
M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-gather-loads-128bit-index.ll
M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-gather-loads-128bit-unscaled-offset.ll
M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-scatter-stores-128bit-index.ll
M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-scatter-stores-128bit-unscaled-offset.ll
M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-tblq.ll
M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-tbxq.ll
M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-uzpq1.ll
M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-uzpq2.ll
M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-zipq1.ll
M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-zipq2.ll
M llvm/test/CodeGen/AArch64/sve2p1-vector-shuffles.ll
M llvm/test/CodeGen/AArch64/swiftself-scavenger.ll
M llvm/test/CodeGen/AArch64/swifttail-ptrauth.ll
M llvm/test/CodeGen/AArch64/tbl-loops.ll
M llvm/test/CodeGen/AArch64/tbz-tbnz.ll
M llvm/test/CodeGen/AArch64/umulo-128-legalisation-lowering.ll
M llvm/test/CodeGen/AArch64/vector-extract-last-active.ll
M llvm/test/CodeGen/AArch64/zeroing-forms-counts-not.ll
M llvm/test/CodeGen/AArch64/zext-to-tbl.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/add.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/add.v2i16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/add.vni16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/add_shl.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/addo.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/addsubu64.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/and.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/andn2.i1.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/andn2.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/artifact-combiner-asserts.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/ashr.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/assert-align.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/atomic_load_flat.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/atomic_load_global.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/atomic_load_local.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/atomic_load_local_2.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/atomic_optimizations_mul_one.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/atomic_store_local.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw-add-sub.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw-and.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw-fmin-fmax.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw-or.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw-xchg.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw-xor.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw_fmax.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw_fmin.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw_minmax.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw_udec_wrap.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw_uinc_wrap.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/bitcast_38_i16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/bool-legalization.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/br-constant-invalid-sgpr-copy.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/bswap.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/buffer-atomic-fadd.f32-no-rtn.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/buffer-atomic-fadd.f32-rtn.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/buffer-atomic-fadd.f64.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/buffer-atomic-fadd.v2f16-no-rtn.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/buffer-atomic-fadd.v2f16-rtn.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/buffer-load-byte-short.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/buffer-load-store-pointers.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/buffer-schedule.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/bug-legalization-artifact-combiner-dead-def.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/bug_shuffle_vector_to_scalar.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/call-outgoing-stack-args.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/clamp-fmed3-const-combine.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/clamp-minmax-const-combine.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-add-nullptr.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-ashr-narrow.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-extract-vector-load.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-fabs-fneg.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-fcanonicalize.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-fma-add-ext-fma.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-fma-add-ext-mul.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-fma-add-fma-mul.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-fma-add-mul.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-fma-sub-ext-mul.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-fma-sub-ext-neg-mul.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-fma-sub-mul.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-fma-sub-neg-mul.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-fsh.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-fsub-fneg.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-itofp.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-lshr-narrow.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-or-redundant.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-redundant-and.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-redundant-neg.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-rot.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-rsq.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-shift-amount-zext.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-shift-imm-chain-illegal-types.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-shift-imm-chain-shlsat.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-shift-imm-chain.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-shift-of-shifted-logic-shlsat.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-shift-of-shifted-logic.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-shifts.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-shl-narrow.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-short-clamp.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-trunc-shift.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/combiner-crash.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/constant-bus-restriction.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/crash-stack-address-O0.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/cvt_f32_ubyte.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/dereferenceable-declaration.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/divergence-divergent-i1-phis-no-lane-mask-merging.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/divergence-divergent-i1-used-outside-loop.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/divergence-structurizer.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/divergence-temporal-divergent-i1.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/divergence-temporal-divergent-reg.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/divergent-control-flow.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/dropped_debug_info_assert.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/dummy-target.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/dynamic-alloca-uniform.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/extractelement-stack-lower.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/extractelement.i128.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/extractelement.i16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/extractelement.i8.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/extractelement.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/fabs.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/fadd.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/fceil.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/fcmp.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/fdiv.f16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/fdiv.f32.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/fdiv.f64.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/ffloor.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/flat-atomic-fadd.f32.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/flat-atomic-fadd.f64.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/flat-atomic-fadd.v2f16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/flat-scratch-init.gfx.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/flat-scratch.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/floor.f64.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/fma.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/fmad.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/fmamix-constant-bus-violation.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/fmax_legacy.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/fmed3-min-max-const-combine.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/fmed3.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/fmin3-fmax3-combine.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/fmin_legacy.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/fmul.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/fmul.v2f16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/fneg.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/fp-atomics-gfx942.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/fp-int-conversions.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/fp64-atomics-gfx90a.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/fpext.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/fpow.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/fptrunc.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/frem.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/fshl.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/fshr-new-regbank-select.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/fshr.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/fsub.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/global-atomic-fadd.f32-no-rtn.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/global-atomic-fadd.f32-rtn.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/global-atomic-fadd.f64.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/global-atomic-fadd.v2f16-no-rtn.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/global-atomic-fadd.v2f16-rtn.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/global-value-addrspaces.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/global-value.illegal.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/hip.extern.shared.array.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/i1-copy.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/icmp.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/image-waterfall-loop-O0.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/implicit-kernarg-backend-usage-global-isel.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/insertelement-stack-lower.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/insertelement.i16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/insertelement.i8.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/insertelement.large.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/insertelement.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-amdgcn.exp.compr.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-amdgcn.exp.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-amdgcn.s.barrier.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-amdgcn.s.sendmsg.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-amdgpu-ffbh-u32.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-amdgpu-ffbl-b32.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-anyext.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-bitcast.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-br.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-brcond.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-copy-scc-vcc.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-frame-index.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-phi.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-sext.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-trunc.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-zext.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/intrinsic-trunc.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-amdgcn-sendmsg.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-atomicrmw.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-constantexpr.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-constrained-fp.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-fence.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-fixed-function-abi-vgpr-args.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-getelementptr.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-invariant.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-memory-intrinsics.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-prefetch.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-ptrmask.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-readnone-intrinsic-callsite.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-sat.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-struct-return-intrinsics.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-zext-vec-index.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/is-safe-to-sink-bug.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/knownbits-ptrtoint.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/lds-global-value.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/lds-misaligned-bug.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/lds-relocs.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/lds-zero-initializer.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-build-vector.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-extractelement-crash.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-insert.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-intrinsic-amdgcn-fdiv-fast.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-inttoptr.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-jump-table.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-memcpy.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-memcpyinline.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-memmove.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-memset.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-memsetinline.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-merge-values-build-vector.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-ptrtoint.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-unmerge-values.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.abs.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.ballot.i32.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.ballot.i64.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.dispatch.ptr.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.div.fmas.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.div.scale.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.end.cf.i32.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.end.cf.i64.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.fdot2.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.fmul.legacy.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.fract.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.frexp.mant.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.if.break.i32.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.if.break.i64.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.atomic.dim.a16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.atomic.dim.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.gather4.a16.dim.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.gather4.dim.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.gather4.o.dim.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.getresinfo.a16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.getresinfo.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.load.1d.d16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.load.1d.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.load.2d.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.load.2darraymsaa.a16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.load.2darraymsaa.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.load.3d.a16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.load.3d.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.sample.cd.g16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.sample.g16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.store.2d.d16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.store.2d.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.implicit.ptr.buffer.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.interp.inreg.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.interp.p1.f16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.intersect_ray.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.kernarg.segment.ptr.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.live.mask.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.make.buffer.rsrc.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.mfma.gfx90a.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.mov.dpp.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.mul24.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.queue.ptr.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.buffer.atomic.add.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.buffer.atomic.cmpswap.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.buffer.atomic.fadd-with-ret.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.buffer.atomic.fadd.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.buffer.atomic.integer-minmax.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.buffer.atomic.sub.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.buffer.atomic.swap.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.buffer.load.format.f16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.buffer.load.format.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.buffer.load.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.buffer.load.tfe.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.buffer.store.format.f16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.buffer.store.format.f32.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.buffer.store.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.ptr.buffer.atomic.add.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.ptr.buffer.atomic.cmpswap.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.ptr.buffer.atomic.fadd-with-ret.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.ptr.buffer.atomic.fadd.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.ptr.buffer.atomic.sub.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.ptr.buffer.atomic.swap.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.ptr.buffer.load.format.f16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.ptr.buffer.load.format.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.ptr.buffer.load.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.ptr.buffer.store.format.f16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.ptr.buffer.store.format.f32.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.ptr.buffer.store.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.ptr.tbuffer.load.f16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.ptr.tbuffer.load.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.ptr.tbuffer.store.f16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.ptr.tbuffer.store.i8.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.ptr.tbuffer.store.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.tbuffer.load.f16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.tbuffer.load.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.tbuffer.store.f16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.tbuffer.store.i8.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.tbuffer.store.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.rsq.clamp.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.s.buffer.load.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.s.setreg.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.s.sleep.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.sbfe.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.sdot2.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.sdot4.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.sdot8.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.set.inactive.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.softwqm.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.strictwqm.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.buffer.atomic.add.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.buffer.atomic.cmpswap.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.buffer.atomic.fadd-with-ret.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.buffer.atomic.fadd.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.buffer.atomic.sub.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.buffer.atomic.swap.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.buffer.load.format.f16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.buffer.load.format.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.buffer.load.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.buffer.load.tfe.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.buffer.store.format.f16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.buffer.store.format.f32.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.buffer.store.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.ptr.buffer.atomic.add.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.ptr.buffer.atomic.cmpswap.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.ptr.buffer.atomic.fadd-with-ret.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.ptr.buffer.atomic.fadd.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.ptr.buffer.atomic.sub.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.ptr.buffer.atomic.swap.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.ptr.buffer.load.format.f16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.ptr.buffer.load.format.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.ptr.buffer.load.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.ptr.buffer.store.format.f16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.ptr.buffer.store.format.f32.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.ptr.buffer.store.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.ptr.tbuffer.load.f16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.ptr.tbuffer.load.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.tbuffer.load.f16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.tbuffer.load.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.sudot4.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.sudot8.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.trig.preop.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.ubfe.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.udot2.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.udot4.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.udot8.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.update.dpp.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.wmma_32.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.wmma_64.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.workgroup.id.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.workitem.id.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.wqm.demote.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.wqm.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.writelane.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.wwm.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.atomic.cmpxchg.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.memcpy.inline.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.memcpy.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.memmove.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.memset.inline.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.memset.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.powi.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/load-constant.96.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/load-constant32bit.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/load-d16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/load-divergent.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/load-local.128.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/load-local.96.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/load-unaligned.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/load-uniform-in-vgpr.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/load-uniform.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/load-zero-and-sign-extending-divergent.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/load-zero-and-sign-extending-uniform-in-vgpr.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/load-zero-and-sign-extending-uniform.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/localizer.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/lshr.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/mad.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/madmix-constant-bus-violation.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/memory-legalizer-atomic-fence.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/merge-buffer-stores.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/minmaxabs-i64.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/minmaxabs.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/mmra.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/mubuf-global.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/mul-known-bits.i64.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/mul.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/mul.v2i16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/no-ctlz-from-umul-to-lshr-in-postlegalizer.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/non-entry-alloca.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/or.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/orn2.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/postlegalizer-combiner-reassoc.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/postlegalizercombiner-select.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/readanylane-combines.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbanklegalize-amdgcn.s.buffer.load.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbanklegalize-amdgcn.s.buffer.load.subdword.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-amdgcn.image.load.1d.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-amdgcn.image.sample.1d.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-amdgcn.raw.buffer.load.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-amdgcn.raw.ptr.buffer.load.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-amdgcn.readlane.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-amdgcn.s.buffer.load.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-amdgcn.struct.buffer.load.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-amdgcn.struct.buffer.store.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-amdgcn.struct.ptr.buffer.load.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-amdgcn.struct.ptr.buffer.store.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-call.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-fabs.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-fneg.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-illegal-copy.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-inttoptr.mir
R llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-mui-salu-float.ll
R llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-mui.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-ptr-add.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-ptrtoint.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/saddsat.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/sbfx.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/sdiv.i32.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/sdiv.i64.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/sdivrem.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/select-to-fmin-fmax.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/selected-inst-flags.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/sext_inreg.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/shader-epilogs.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/shl-ext-reduce.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/shl.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/shufflevector-pointer-crash.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/shufflevector.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/smed3.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/smrd.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/smul.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/srem.i32.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/srem.i64.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/ssubsat.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/store-divergent-addr.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/store-local.128.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/store-local.96.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/store-uniform-addr.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/strict_fma.f16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/strict_fma.f32.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/strict_fma.f64.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/sub.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/sub.v2i16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/subo.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/true16-merge-values-s16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/trunc-brc.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/trunc.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/uaddsat.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/ubfx.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/udiv.i32.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/udiv.i64.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/udivrem.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/umed3.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/unmerge-sgpr-s16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/unsupported-load.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/unsupported-ptr-add.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/urem.i32.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/urem.i64.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/usubsat.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/v_bfe_i32.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/vni8-across-blocks.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/widen-i8-i16-scalar-loads.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/wmma-gfx12-w32-f16-f32-matrix-modifiers.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/wmma-gfx12-w32-imm.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/wmma-gfx12-w32-iu-modifiers.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/wmma-gfx12-w32-swmmac-index_key.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/wmma-gfx12-w32.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/wmma-gfx12-w64-f16-f32-matrix-modifiers.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/wmma-gfx12-w64-imm.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/wmma-gfx12-w64-iu-modifiers.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/wmma-gfx12-w64-swmmac-index_key.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/wmma-gfx12-w64.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/xnor.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/xor.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/zextload.ll
M llvm/test/CodeGen/AMDGPU/InlineAsmCrash.ll
M llvm/test/CodeGen/AMDGPU/abi-attribute-hints-undefined-behavior.ll
M llvm/test/CodeGen/AMDGPU/absdiff.ll
M llvm/test/CodeGen/AMDGPU/add-max.ll
M llvm/test/CodeGen/AMDGPU/add_i128.ll
M llvm/test/CodeGen/AMDGPU/add_i64.ll
M llvm/test/CodeGen/AMDGPU/addrspacecast-gas.ll
M llvm/test/CodeGen/AMDGPU/addrspacecast-initializer-unsupported.ll
M llvm/test/CodeGen/AMDGPU/addrspacecast-initializer.ll
M llvm/test/CodeGen/AMDGPU/addrspacecast-known-non-null.ll
M llvm/test/CodeGen/AMDGPU/addrspacecast.gfx6.ll
M llvm/test/CodeGen/AMDGPU/alignbit-pat.ll
M llvm/test/CodeGen/AMDGPU/allow-check.ll
M llvm/test/CodeGen/AMDGPU/amd.endpgm.ll
M llvm/test/CodeGen/AMDGPU/amdgcn-call-whole-wave.ll
M llvm/test/CodeGen/AMDGPU/amdgcn-cs-chain-intrinsic-dyn-vgpr-w32.ll
M llvm/test/CodeGen/AMDGPU/amdgcn-sin-cos-f16-f32.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.private-memory.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-codegenprepare-break-large-phis.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-codegenprepare-idiv.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-cs-chain-cc.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-cs-chain-preserve-cc.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-function-calls-option.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-reloc-const.ll
M llvm/test/CodeGen/AMDGPU/amdgpu.private-memory.ll
M llvm/test/CodeGen/AMDGPU/amdgpu.work-item-intrinsics.deprecated.ll
M llvm/test/CodeGen/AMDGPU/amdpal-callable.ll
M llvm/test/CodeGen/AMDGPU/amdpal-cs.ll
M llvm/test/CodeGen/AMDGPU/amdpal-es.ll
M llvm/test/CodeGen/AMDGPU/amdpal-gs.ll
M llvm/test/CodeGen/AMDGPU/amdpal-hs.ll
M llvm/test/CodeGen/AMDGPU/amdpal-ls.ll
M llvm/test/CodeGen/AMDGPU/amdpal-msgpack-cs.ll
M llvm/test/CodeGen/AMDGPU/amdpal-msgpack-default.ll
M llvm/test/CodeGen/AMDGPU/amdpal-msgpack-denormal.ll
M llvm/test/CodeGen/AMDGPU/amdpal-msgpack-dx10-clamp-on.ll
M llvm/test/CodeGen/AMDGPU/amdpal-msgpack-dx10-clamp.ll
M llvm/test/CodeGen/AMDGPU/amdpal-msgpack-es.ll
M llvm/test/CodeGen/AMDGPU/amdpal-msgpack-gs.ll
M llvm/test/CodeGen/AMDGPU/amdpal-msgpack-hs.ll
M llvm/test/CodeGen/AMDGPU/amdpal-msgpack-ieee.ll
M llvm/test/CodeGen/AMDGPU/amdpal-msgpack-ls.ll
M llvm/test/CodeGen/AMDGPU/amdpal-msgpack-ps.ll
M llvm/test/CodeGen/AMDGPU/amdpal-msgpack-psenable.ll
M llvm/test/CodeGen/AMDGPU/amdpal-msgpack-vs.ll
M llvm/test/CodeGen/AMDGPU/amdpal-ps.ll
M llvm/test/CodeGen/AMDGPU/amdpal-psenable.ll
M llvm/test/CodeGen/AMDGPU/amdpal-vs.ll
M llvm/test/CodeGen/AMDGPU/any_extend_vector_inreg.ll
M llvm/test/CodeGen/AMDGPU/array-ptr-calc-i64.ll
M llvm/test/CodeGen/AMDGPU/async-buffer-loads.ll
M llvm/test/CodeGen/AMDGPU/asyncmark-gfx12plus.ll
M llvm/test/CodeGen/AMDGPU/asyncmark-max-pregfx12.ll
M llvm/test/CodeGen/AMDGPU/asyncmark-pregfx12.ll
M llvm/test/CodeGen/AMDGPU/atomic_cmp_swap_local.ll
M llvm/test/CodeGen/AMDGPU/atomic_load_add.ll
M llvm/test/CodeGen/AMDGPU/atomic_load_sub.ll
M llvm/test/CodeGen/AMDGPU/atomic_optimizations_buffer.ll
M llvm/test/CodeGen/AMDGPU/atomic_optimizations_global_pointer.ll
M llvm/test/CodeGen/AMDGPU/atomic_optimizations_local_pointer.ll
M llvm/test/CodeGen/AMDGPU/atomic_optimizations_pixelshader.ll
M llvm/test/CodeGen/AMDGPU/atomic_optimizations_raw_buffer.ll
M llvm/test/CodeGen/AMDGPU/atomic_optimizations_struct_buffer.ll
M llvm/test/CodeGen/AMDGPU/atomicrmw_usub_cond.ll
M llvm/test/CodeGen/AMDGPU/atomicrmw_usub_sat.ll
M llvm/test/CodeGen/AMDGPU/atomics_cond_sub.ll
M llvm/test/CodeGen/AMDGPU/barrier-elimination-gfx12.ll
M llvm/test/CodeGen/AMDGPU/barrier-elimination.ll
M llvm/test/CodeGen/AMDGPU/basic-branch.ll
M llvm/test/CodeGen/AMDGPU/bf16.ll
M llvm/test/CodeGen/AMDGPU/bfe-patterns.ll
M llvm/test/CodeGen/AMDGPU/bfi_int.ll
M llvm/test/CodeGen/AMDGPU/bfi_nested.ll
M llvm/test/CodeGen/AMDGPU/bfm.ll
M llvm/test/CodeGen/AMDGPU/bitop3-shared-operand.ll
M llvm/test/CodeGen/AMDGPU/bitop3.ll
M llvm/test/CodeGen/AMDGPU/bitreverse-inline-immediates.ll
M llvm/test/CodeGen/AMDGPU/bitreverse.ll
M llvm/test/CodeGen/AMDGPU/branch-relax-indirect-branch.mir
M llvm/test/CodeGen/AMDGPU/branch-relaxation.ll
M llvm/test/CodeGen/AMDGPU/branch-uniformity.ll
M llvm/test/CodeGen/AMDGPU/break-vmem-soft-clauses.mir
M llvm/test/CodeGen/AMDGPU/bswap.ll
M llvm/test/CodeGen/AMDGPU/buffer-fat-pointer-atomicrmw-fadd.ll
M llvm/test/CodeGen/AMDGPU/buffer-fat-pointer-atomicrmw-fmax.ll
M llvm/test/CodeGen/AMDGPU/buffer-fat-pointer-atomicrmw-fmin.ll
M llvm/test/CodeGen/AMDGPU/buffer-fat-pointers-contents-legalization.ll
M llvm/test/CodeGen/AMDGPU/buffer-fat-pointers-memcpy.ll
M llvm/test/CodeGen/AMDGPU/buffer-rsrc-ptr-ops.ll
M llvm/test/CodeGen/AMDGPU/build-vector-packed-partial-undef.ll
M llvm/test/CodeGen/AMDGPU/bypass-div.ll
M llvm/test/CodeGen/AMDGPU/call-args-inreg.ll
M llvm/test/CodeGen/AMDGPU/call-argument-types.ll
M llvm/test/CodeGen/AMDGPU/call-c-function.ll
M llvm/test/CodeGen/AMDGPU/call-constant.ll
M llvm/test/CodeGen/AMDGPU/call-constexpr.ll
M llvm/test/CodeGen/AMDGPU/call-defs-mode-register.ll
M llvm/test/CodeGen/AMDGPU/call-encoding.ll
M llvm/test/CodeGen/AMDGPU/call-graph-register-usage.ll
M llvm/test/CodeGen/AMDGPU/call-preserved-registers.ll
M llvm/test/CodeGen/AMDGPU/call-reqd-group-size.ll
M llvm/test/CodeGen/AMDGPU/call-return-types.ll
M llvm/test/CodeGen/AMDGPU/call-skip.ll
M llvm/test/CodeGen/AMDGPU/call-waitcnt.ll
M llvm/test/CodeGen/AMDGPU/callbr-intrinsics.ll
M llvm/test/CodeGen/AMDGPU/calling-conventions.ll
M llvm/test/CodeGen/AMDGPU/carryout-selection.ll
M llvm/test/CodeGen/AMDGPU/cc-inreg-sgpr0-3-mismatch.ll
M llvm/test/CodeGen/AMDGPU/cf-loop-on-constant.ll
M llvm/test/CodeGen/AMDGPU/cgp-bitfield-extract.ll
M llvm/test/CodeGen/AMDGPU/check-subtarget-features.ll
M llvm/test/CodeGen/AMDGPU/clamp-omod-special-case.mir
M llvm/test/CodeGen/AMDGPU/cluster-dims.ll
M llvm/test/CodeGen/AMDGPU/cndmask-no-def-vcc.ll
M llvm/test/CodeGen/AMDGPU/coalescer-early-clobber-subreg.mir
M llvm/test/CodeGen/AMDGPU/coalescer-identical-values-undef.mir
M llvm/test/CodeGen/AMDGPU/coalescer-subreg-join.mir
M llvm/test/CodeGen/AMDGPU/coalescer-subregjoin-fullcopy.mir
M llvm/test/CodeGen/AMDGPU/coalescer_remat.ll
M llvm/test/CodeGen/AMDGPU/codegen-prepare-addrspacecast-non-null.ll
M llvm/test/CodeGen/AMDGPU/collapse-endcf-broken.mir
M llvm/test/CodeGen/AMDGPU/collapse-endcf.mir
M llvm/test/CodeGen/AMDGPU/collapse-endcf2.mir
M llvm/test/CodeGen/AMDGPU/combine-and-sext-bool.ll
M llvm/test/CodeGen/AMDGPU/combine-cond-add-sub.ll
R orc-rt/lib/executor/TaskDispatcher.cpp
Log Message:
-----------
Merge branch 'users/ikudrin/clang-findallocationfunction-simplify' into users/ikudrin/clang-cwg2282
Compare: https://github.com/llvm/llvm-project/compare/42794a34bc17...c675ecd81392
To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications
More information about the All-commits
mailing list