[all-commits] [llvm/llvm-project] 976282: clang: Remove BoundArch assert in AMDGPUToolChain:...
Krzysztof Parzyszek via All-commits
all-commits at lists.llvm.org
Thu Jun 11 08:59:31 PDT 2026
Branch: refs/heads/users/kparzysz/detach-type-param
Home: https://github.com/llvm/llvm-project
Commit: 976282b5bd3c7aa628c12edaad30b17e07817bc4
https://github.com/llvm/llvm-project/commit/976282b5bd3c7aa628c12edaad30b17e07817bc4
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2026-06-10 (Wed, 10 Jun 2026)
Changed paths:
M clang/lib/Driver/ToolChains/AMDGPU.cpp
Log Message:
-----------
clang: Remove BoundArch assert in AMDGPUToolChain::addClangTargetOptions (#203060)
This was assuming that the offload languages use a subclass, and
only OpenCL hits the AMDGPUToolChain base class. Flang violates this,
and passes in the wrong values. Delete the assert for now.
Commit: 42baf9535ec3874dd53d28e27ca3d7653233605b
https://github.com/llvm/llvm-project/commit/42baf9535ec3874dd53d28e27ca3d7653233605b
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2026-06-10 (Wed, 10 Jun 2026)
Changed paths:
M llvm/lib/Support/SpecialCaseList.cpp
Log Message:
-----------
[NFC][SpecialCaseList] Use helper for version checks (#203023)
Commit: 6ee9d90c58c4c7194f3a552e01a3e44c376cdfbe
https://github.com/llvm/llvm-project/commit/6ee9d90c58c4c7194f3a552e01a3e44c376cdfbe
Author: Raphael Isemann <rise at apple.com>
Date: 2026-06-10 (Wed, 10 Jun 2026)
Changed paths:
M lldb/source/Plugins/ExpressionParser/Clang/IRForTarget.cpp
Log Message:
-----------
[lldb] Fix mod-while-iteration in IRForTarget (#203035)
We modify the IR module here while iterating over it. Use the usual list
trick to delay modification until after the loop.
This was uncovered by bccd1b9cb744e5dd96ee59baa4bf4583457feea3
Commit: 9fa5f887d051c0ab63cfdd41dd15f0b350b20f93
https://github.com/llvm/llvm-project/commit/9fa5f887d051c0ab63cfdd41dd15f0b350b20f93
Author: Miguel A. Arroyo <miguel.arroyo at rockstargames.com>
Date: 2026-06-10 (Wed, 10 Jun 2026)
Changed paths:
M llvm/lib/Passes/StandardInstrumentations.cpp
M llvm/test/Other/dump-before-after.ll
Log Message:
-----------
[llvm] Fix crash with -ir-dump-directory & analysis passes (#202477)
The `StandardInstrumentations` were not filtering out analysis passes
(e.g. `-print-after-all`, etc).
* When printing to `stdout`, this results in additional output that is
unnecessary.
* When using `-ir-dump-directory` because the `PassID` is used for the
filename it results in an invalid file path causing the compiler to
crash. This becomes apparent with `-O1` or higher (e.g. `clang++ -mllvm
-print-before-all -mllvm -ir-dump-directory=dumpdir -O1 -S test.cpp`).
An example of the crash is shown below:
```
fatal error: error in backend: Failed to open dumpdir\18-a1a2011b35962283-module-RequireAnalysisPass<llvm::GlobalsAA, llvm::Module,
llvm::AnalysisManager<Module>>-before.ll to support -ir-dump-directory: invalid argument
```
Note that with `LLVM_ENABLE_IO_SANDBOX` the error is more ambiguous
showing up as `fatal error: error in backend: IO sandbox violation`.
Commit: 52e6b3612a3a27c69be9f86e7272e7ec01df9f9e
https://github.com/llvm/llvm-project/commit/52e6b3612a3a27c69be9f86e7272e7ec01df9f9e
Author: Jonathan L'Work <113400649+Jonathan03ant at users.noreply.github.com>
Date: 2026-06-10 (Wed, 10 Jun 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeRules.cpp
M llvm/test/CodeGen/AMDGPU/llvm.sponentry.ll
Log Message:
-----------
[AMDGPU][GISEL] Adding RegBankLegalize rules for G_AMDGPU_SPONENTRY (#200864)
Commit: 2a6eae60aca0fbf27a151b6f7f44971572cf07ae
https://github.com/llvm/llvm-project/commit/2a6eae60aca0fbf27a151b6f7f44971572cf07ae
Author: Florian Hahn <flo at fhahn.com>
Date: 2026-06-10 (Wed, 10 Jun 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/VPlanAnalysis.cpp
M llvm/lib/Transforms/Vectorize/VPlanConstruction.cpp
M llvm/lib/Transforms/Vectorize/VPlanDominatorTree.h
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/lib/Transforms/Vectorize/VPlanTransforms.h
M llvm/unittests/Transforms/Vectorize/VPlanTestBase.h
Log Message:
-----------
[VPlan] Compute VPDominatorTree upfront, pass to passes (NFC) (#203058)
createHeaderPhiRecipes and replaceSymbolicStrides both run on the
initial plain-CFG VPlan0 before loop regions are created, and each
recomputed its own VPDominatorTree internally. Since the block-level CFG
is unchanged between them, compute the dominator tree once in the caller
and pass it in by const reference, avoiding a redundant recalculation.
Commit: 054a840e0370704c9a9705f5660861f0364d08d8
https://github.com/llvm/llvm-project/commit/054a840e0370704c9a9705f5660861f0364d08d8
Author: Florian Hahn <flo at fhahn.com>
Date: 2026-06-10 (Wed, 10 Jun 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorizationPlanner.h
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/VPRecipeBuilder.h
M llvm/lib/Transforms/Vectorize/VPlan.h
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/lib/Transforms/Vectorize/VPlanUnroll.cpp
M llvm/test/Transforms/LoopVectorize/VPlan/AArch64/single-scalar-cast.ll
M llvm/test/Transforms/LoopVectorize/VPlan/AArch64/sve2-histcnt-vplan.ll
M llvm/test/Transforms/LoopVectorize/VPlan/RISCV/vplan-riscv-vector-reverse.ll
M llvm/test/Transforms/LoopVectorize/as_cast.ll
M llvm/test/Transforms/LoopVectorize/cast-costs.ll
M llvm/test/Transforms/LoopVectorize/cast-induction.ll
M llvm/test/Transforms/LoopVectorize/preserve-inbounds-gep-with-pointer-casts.ll
Log Message:
-----------
Reapply "[VPlan] Use VPInstructionWithType for uniform casts." (#202427) (#203057)
This reverts commit 5eae7dc2ac7d8dde06a943771b792aeb91c31f57.
Recommitted version moved out ::getAsRecipe to the .cpp to avoid
https://lab.llvm.org/buildbot/#/builders/160 build failures.
Original message:
Use VPInstructionWithType instead of VPReplicate recipe for uniform
casts. This is a first step towards breaking up VPReplicateRecipe. Using
the general VPInstructionWithType has the additional benefit that we can
now apply a number of simplifications directly.
Depends on https://github.com/llvm/llvm-project/pull/140621
PR: https://github.com/llvm/llvm-project/pull/140623
Commit: fe4316d67a8bfbaf12a650429fb4c1e5d5003f44
https://github.com/llvm/llvm-project/commit/fe4316d67a8bfbaf12a650429fb4c1e5d5003f44
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2026-06-10 (Wed, 10 Jun 2026)
Changed paths:
M clang/include/clang/Driver/ToolChain.h
M clang/lib/Driver/ToolChain.cpp
M clang/lib/Driver/ToolChains/AMDGPU.cpp
M clang/lib/Driver/ToolChains/AMDGPUOpenMP.cpp
M clang/lib/Driver/ToolChains/AMDGPUOpenMP.h
M clang/lib/Driver/ToolChains/Flang.cpp
M clang/lib/Driver/ToolChains/Flang.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
Log Message:
-----------
clang/AMDGPU: Pass BoundArch through device libs handling (#196586)
Pre-work to consolidate target identification for future target
option bug fixes. Also requires updating flang to match recent
clang changes.
Co-authored-by: Claude Sonnet 4 <noreply at anthropic.com>
Commit: 8d2510ecde24beacb50bff51a1a62c7feae12c00
https://github.com/llvm/llvm-project/commit/8d2510ecde24beacb50bff51a1a62c7feae12c00
Author: Ivan Kosarev <ivan.kosarev at amd.com>
Date: 2026-06-10 (Wed, 10 Jun 2026)
Changed paths:
M llvm/test/MC/AMDGPU/gfx11_asm_vop3_dpp16.s
Log Message:
-----------
[AMDGPU][NFC] Restore clamp modifiers in gfx11_asm_vop3_dpp16.s (#203062)
Were dropped by mistake in
https://github.com/llvm/llvm-project/pull/202721.
Commit: c36815b3e2c42b70923ef6509532640c940dc00d
https://github.com/llvm/llvm-project/commit/c36815b3e2c42b70923ef6509532640c940dc00d
Author: Schrodinger ZHU Yifan <yfzhu at google.com>
Date: 2026-06-10 (Wed, 10 Jun 2026)
Changed paths:
M libc/src/__support/threads/raw_rwlock.h
Log Message:
-----------
[libc][rwlock] fix timeout writer signal stealing problem (#201937)
When a timeout triggers, the waiting thread wakes up, unregisters
itself from the waiting queue, and exits. However, if the timing-out
thread is preempted after waking up but before it can unregister,
and a concurrent unlock occurs during this window, the timing-out
thread may consume the wake-up signal.
For example, assume the lock is in writer-preference mode and a
writer (W0) holds the lock. A reader (R) and another writer (W1,
with a short timeout) arrive and join the queue. W1's timeout
expires, so it wakes up and attempts to acquire the queue lock,
but is preempted before succeeding. W0 then releases the lock and,
preferring writers, sends a wake-up signal to W1. When W1 resumes,
it acquires the queue lock, unregisters, and exits due to the
timeout, ignoring the wake-up signal. As a result, the reader (R)
is left waiting indefinitely, leading to a deadlock.
To fix this, we track whether the serialization number changed
specifically for writers, and propagate the wake signal if it did.
If the timing-out thread is a reader, signal consumption is safe
because:
1. If there are pending writers, they will be woken up first.
2. Otherwise, if there are pending readers, they are all woken up
via broadcasting (notify_all), so one reader timing out does not
steal others' signal.
Assisted-by: AI tools, manually checked
Commit: 79aaf537bda3cefbd778dc92b533bbf6e8e5d435
https://github.com/llvm/llvm-project/commit/79aaf537bda3cefbd778dc92b533bbf6e8e5d435
Author: Zibi Sarbinowski <zibi at ca.ibm.com>
Date: 2026-06-10 (Wed, 10 Jun 2026)
Changed paths:
M clang/test/CodeGen/SystemZ/zos-abi.c
Log Message:
-----------
[SystemZ][NFC] Sync downstream zos-abi.c test changes (#202437)
Syncs downstream changes to SystemZ zos-abi.c test:
1. Add test for char type parameter passing with sign extension
2. Rename pass_complexlike_float2 to pass_complexlike_float for
consistency
NFC - test-only changes.
Commit: 84e806d259626d79ae20ebd76e5fb0fed34ef7c0
https://github.com/llvm/llvm-project/commit/84e806d259626d79ae20ebd76e5fb0fed34ef7c0
Author: Tim Corringham <timothy.corringham at amd.com>
Date: 2026-06-10 (Wed, 10 Jun 2026)
Changed paths:
M clang/test/lit.cfg.py
Log Message:
-----------
[clang][lit] set spirv-tools feature when tools are available (#203067)
When the spirv tools are available (e.g. built with
-DLLVM_INCLUDE_SPIRV_TOOLS_TESTS) register the spirv-tools lit feature
in clang/test/lit.cfg.py.
This can then be used to skip tests that are not applicable when these
tools are available.
Fixes: #203049
Co-authored-by: Tim Corringham <tcorring at amd.com>
Commit: e4945cff7f120323d3f3da42923b87c24029d82f
https://github.com/llvm/llvm-project/commit/e4945cff7f120323d3f3da42923b87c24029d82f
Author: Fabrice de Gans <Steelskin at users.noreply.github.com>
Date: 2026-06-10 (Wed, 10 Jun 2026)
Changed paths:
M llvm/include/llvm/Support/AArch64BuildAttributes.h
M llvm/include/llvm/Support/CodeGenCoverage.h
M llvm/include/llvm/Support/DebugCounter.h
M llvm/include/llvm/Support/JSON.h
M llvm/include/llvm/Support/Jobserver.h
M llvm/include/llvm/Support/LSP/Protocol.h
M llvm/include/llvm/Support/LSP/Transport.h
M llvm/include/llvm/Support/MathExtras.h
M llvm/include/llvm/Support/OptionStrCmp.h
M llvm/include/llvm/Support/VirtualOutputBackend.h
M llvm/include/llvm/Support/VirtualOutputBackends.h
M llvm/include/llvm/Support/VirtualOutputConfig.h
M llvm/include/llvm/Support/VirtualOutputError.h
M llvm/include/llvm/Support/VirtualOutputFile.h
M llvm/include/llvm/Support/Watchdog.h
M llvm/include/llvm/Support/circular_raw_ostream.h
M llvm/include/llvm/Support/raw_ostream_proxy.h
Log Message:
-----------
[llvm] Fix most LLVM_ABI annotations in Support (#202932)
This updates most LLVM_ABI annotations in the Support headers to match
expected usage:
* All public APIs should be properly annotated.
* Inlined functions should not be annotated.
These changes were done by a script fixing annotations on LLVM public
headers and manually checked.
This effort is tracked in #109483.
Commit: 7bcdec0b48ee8f64c16d1c13d7940073c3cb03a7
https://github.com/llvm/llvm-project/commit/7bcdec0b48ee8f64c16d1c13d7940073c3cb03a7
Author: Jianhui Li <jian.hui.li at intel.com>
Date: 2026-06-10 (Wed, 10 Jun 2026)
Changed paths:
M mlir/include/mlir/Dialect/XeGPU/IR/XeGPUAttrs.td
M mlir/include/mlir/Dialect/XeGPU/Utils/XeGPUUtils.h
M mlir/lib/Dialect/XeGPU/IR/XeGPUDialect.cpp
M mlir/lib/Dialect/XeGPU/Transforms/XeGPULayoutImpl.cpp
M mlir/lib/Dialect/XeGPU/Transforms/XeGPUUnroll.cpp
M mlir/lib/Dialect/XeGPU/Utils/XeGPUUtils.cpp
M mlir/test/Dialect/XeGPU/propagate-layout-inst-data.mlir
M mlir/test/Dialect/XeGPU/propagate-layout-subgroup.mlir
M mlir/test/Dialect/XeGPU/propagate-layout.mlir
A mlir/test/Integration/Dialect/XeGPU/WG/simple_mxfp_gemm_dequantizeB_F4.mlir
A mlir/test/Integration/Dialect/XeGPU/WG/simple_mxfp_gemm_quantizeA_F4.mlir
Log Message:
-----------
[MLIR][XeGPU] Enable WG-level mxfp GEMM via generalized shape_cast collapse inference (#201496)
Summary
Bringing up two WG-level mxfp GEMM integration tests —
simple_mxfp_gemm_quantizeA_F4 and
simple_mxfp_gemm_dequantizeB_F4 — exposed several gaps in the XeGPU
layout-propagation and unroll paths
that previously kept them from compiling end-to-end. This PR lands those
two tests as the motivating
workloads, plus the supporting changes:
1. A generalized shape_cast collapse layout inference — required because
the mxfp lowering inserts
vector.shape_cast ops that collapse multiple src dims into a single dst
dim with non-trivial sg / lane
layouts spanning across them. The previous matchCollapseToInnermostDim
only covered the narrow […] →
[N] / [1, N] shape and could not infer correct source layouts for these
patterns.
2. A small primitive (expandDims) on the layout attribute so the new
code stays as elegant as the use
case of collapseDims.
3. Bug fixes uncovered while running these workloads end-to-end
(transpose layout check, layout-attr
unroll cast crash, drop-dims order pollution).
What's in this PR
Motivating integration tests (the driving force)
-
mlir/test/Integration/Dialect/XeGPU/WG/simple_mxfp_gemm_quantizeA_F4.mlir
-
mlir/test/Integration/Dialect/XeGPU/WG/simple_mxfp_gemm_dequantizeB_F4.mlir
These exercise WG-level GEMM with mxfp quantization (BF16 × F4 paths).
They depend on every other
change in the PR; without them, layout propagation crashes or yields
conflicting layouts on the
inserted vector.shape_cast and xegpu.load_matrix / xegpu.store_matrix
ops.
Generalized shape_cast collapse inference
- New utility xegpu::matchDimCollapse(srcShape, resShape, collapseDims)
in XeGPUUtils.{h,cpp} — the
dual of matchSplitDimExpansion, returning per-dst-dim groups of src
indices.
- inferShapeCastSourceLayout use case 3 now handles arbitrary collapse
patterns:
- sg_layout / lane_layout spread outer-to-inner, so each subgroup / lane
owns a contiguous run in the
collapsed dst dim's row-major linearization.
- sg_data / lane_data / inst_data fill innermost-first, with per-dim
caps from any layout already placed.
- inst_data is seeded from lane_layout * lane_data per dim; the
remaining factor spreads innermost-first.
- order is rewritten by walking dst order fastest-first and emitting
each group's src dims innermost-fastest.
- Net effect for the mxfp tests: no data movement across sg / lane
boundaries when shape_cast collapses dims.
Refactor: expandDims interface method
- Added expandDims(int64_t dim, ArrayRef<int64_t> targetShape) to the
DistributeLayoutAttr interface,
with implementations on both LayoutAttr and SliceAttr. It's the
rank-increasing dual of collapseDims
and bakes in the distribution policy above.
- inferShapeCastSourceLayout use case 3 now mirrors use case 2's
per-group loop:
auto srcLayout = resLayout;
for (dst dim in reverse) {
if (group.empty()) srcLayout = srcLayout.dropDims({dstIdx});
else if (group.size() > 1) srcLayout = srcLayout.expandDims(dstIdx,
targetShape);
}
return srcLayout;
- Replaces ~190 lines of inlined per-field distribution logic with a
handful of lines.
Bug fixes uncovered while bringing up the integration tests
- LayoutAttr::isTransposeOf: corrected the per-dim check to match
vector.transpose semantics (dst[i] =
src[perm[i]]); the old comparison indexed src and dst inversely.
- LayoutAttr::dropDims: stop synthesizing a default [rank-1,...,0] order
when the input had none — that
synthesized order tripped collapseDims's adjacency check downstream.
- UnrollLoadMatrixOp / UnrollStoreMatrixOp: stop assuming the op's
layout is always a LayoutAttr. Use
DistributeLayoutAttr and guard dropInstData() so SliceAttr /
missing-layout inputs no longer crash
unrolling.
Unit-test coverage
- New shape_cast collapse coverage in both
propagate-layout-subgroup.mlir and
propagate-layout-inst-data.mlir for: plain innermost collapse, layout
spill across multiple src dims,
and multi-group collapse.
- Updated one lane_layout expectation in propagate-layout.mlir to
reflect the generalized distribution.
Files changed
- mlir/include/mlir/Dialect/XeGPU/IR/XeGPUAttrs.td — interface + class
declarations for expandDims
- mlir/include/mlir/Dialect/XeGPU/Utils/XeGPUUtils.h — declaration for
matchDimCollapse
- mlir/lib/Dialect/XeGPU/IR/XeGPUDialect.cpp — expandDims impls,
dropDims order fix, isTransposeOf fix
- mlir/lib/Dialect/XeGPU/Transforms/XeGPULayoutImpl.cpp — refactored use
case 3
- mlir/lib/Dialect/XeGPU/Transforms/XeGPUUnroll.cpp — load/store_matrix
unroll hardening
- mlir/lib/Dialect/XeGPU/Utils/XeGPUUtils.cpp — matchDimCollapse impl
- mlir/test/Dialect/XeGPU/propagate-layout-{subgroup,inst-data,}.mlir —
new tests / updated expectation
-
mlir/test/Integration/Dialect/XeGPU/WG/simple_mxfp_gemm_{dequantizeB_F4,quantizeA_F4}.mlir
— new
motivating integration tests
---------
Co-authored-by: Claude Opus 4.7 (1M context) <noreply at anthropic.com>
Commit: 077ec06128e27e3dce2b97563dab703f89024ddf
https://github.com/llvm/llvm-project/commit/077ec06128e27e3dce2b97563dab703f89024ddf
Author: LU-JOHN <John.Lu at amd.com>
Date: 2026-06-10 (Wed, 10 Jun 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUCodeGenPrepare.cpp
M llvm/test/CodeGen/AMDGPU/amdgpu-codegenprepare-idiv.ll
M llvm/test/CodeGen/AMDGPU/sdiv.ll
M llvm/test/CodeGen/AMDGPU/sdiv64.ll
M llvm/test/CodeGen/AMDGPU/sdivrem24.ll
M llvm/test/CodeGen/AMDGPU/srem64.ll
M llvm/test/CodeGen/AMDGPU/udiv.ll
M llvm/test/CodeGen/AMDGPU/udiv64.ll
M llvm/test/CodeGen/AMDGPU/udivrem24.ll
M llvm/test/CodeGen/AMDGPU/urem64.ll
Log Message:
-----------
[AMDGPU] Avoid errors with 23-bit division and remainder. (#202753)
Extensive testing of expandDivRem24 found an error when calculating Y/X
when Y = (0x7FFFFF/X)*X-1. There are
36 values of X for which this happens. Limit expansion to 23-bit signed
and 22-bit unsigned to avoid this issue.
Testing added in https://github.com/llvm/llvm-test-suite/pull/419.
---------
Signed-off-by: John Lu <John.Lu at amd.com>
Commit: c04e776213f2eb2da2df538adaa50b840cc64112
https://github.com/llvm/llvm-project/commit/c04e776213f2eb2da2df538adaa50b840cc64112
Author: David Green <david.green at arm.com>
Date: 2026-06-10 (Wed, 10 Jun 2026)
Changed paths:
M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
Log Message:
-----------
[AArch64] Minor rearrangement of cost instructions. NFC (#203080)
This just moves the existing cost checks to a more standard order and
cleans up
how v2i64 is processed.
Commit: 437140c6a0bdfe4991f62603cecb4c19e86a75c9
https://github.com/llvm/llvm-project/commit/437140c6a0bdfe4991f62603cecb4c19e86a75c9
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2026-06-10 (Wed, 10 Jun 2026)
Changed paths:
M llvm/lib/Support/SpecialCaseList.cpp
Log Message:
-----------
[NFC][SpecialCaseList] Add findRule helpers (#203025)
Introduce findRule helpers to RegexMatcher, GlobMatcher, and Matcher.
These helpers find the rule name matching a given line number.
This is a non-functional change (NFC) and will be used in a subsequent
commit to provide better warning messages when deprecated dot-slash
matching is triggered.
Assisted-by: Gemini
Commit: 92ce588505c722a3bfa2185933070c3f61797dd5
https://github.com/llvm/llvm-project/commit/92ce588505c722a3bfa2185933070c3f61797dd5
Author: Med Ismail Bennani <ismail at bennani.ma>
Date: 2026-06-10 (Wed, 10 Jun 2026)
Changed paths:
M lldb/test/API/macosx/branch-islands/TestBranchIslands.py
Log Message:
-----------
[lldb/test] Skip TestBranchIslands on remote targets (#203068)
The test builds four 120 MB padding object files and links them into
a.out specifically to force the linker to emit an arm64 branch island
between main() and foo(). On a remote target the resulting ~480 MB
binary has to be uploaded byte-by-byte over gdb-remote vFile:write,
which on its own consumes the bulk of the lit timeout budget before any
debugging work happens; the test then times out at 600s.
The test verifies a host-toolchain artifact (the linker's branch island
generation), not anything about the runtime; running it on-device adds
nothing. Skip on remote.
Signed-off-by: Med Ismail Bennani <ismail at bennani.ma>
Commit: 1352de2d51f52dd8e2a0a167a48ff43d9bf75df8
https://github.com/llvm/llvm-project/commit/1352de2d51f52dd8e2a0a167a48ff43d9bf75df8
Author: Amr Hesham <amr96 at programmer.net>
Date: 2026-06-10 (Wed, 10 Jun 2026)
Changed paths:
M clang/test/CIR/CodeGen/inline-asm.c
Log Message:
-----------
[CIR][NFC] Fix lit tests after chaning alloca format (#203075)
Fixing lit tests after changes in the alloca format
Commit: 6f57b648974fb90cc6c495c83596e3022a42c146
https://github.com/llvm/llvm-project/commit/6f57b648974fb90cc6c495c83596e3022a42c146
Author: Andre Kuhlenschmidt <andre.kuhlenschmidt at gmail.com>
Date: 2026-06-10 (Wed, 10 Jun 2026)
Changed paths:
M flang/docs/Extensions.md
M flang/include/flang/Support/Fortran-features.h
M flang/lib/Evaluate/intrinsics.cpp
M flang/lib/Frontend/CompilerInvocation.cpp
M flang/lib/Support/Fortran-features.cpp
M flang/test/Semantics/c_loc01-relaxed.f90
Log Message:
-----------
[flang][semantics] Clean up -frelaxed-c-loc-checks warning flag handling (#203071)
When I originally implemented this I was confused about how
LanguageFeature warning flags work. Drop the separate UsageWarning::CLoc
in favour of using LanguageFeature::RelaxedCLocChecks (renamed from
RelaxedCLoc to match the feature flag) as the warning flag directly. The
warning is off by default since the user has already opted into this
extension using the feature flag; use -Wrelaxed-c-loc-checks alongside
-frelaxed-c-loc-checks to opt in. Update the test and docs accordingly.
Commit: 6766eea39e4b362066f1e2678a09a78ad98c2183
https://github.com/llvm/llvm-project/commit/6766eea39e4b362066f1e2678a09a78ad98c2183
Author: Florian Hahn <flo at fhahn.com>
Date: 2026-06-10 (Wed, 10 Jun 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/VPlanConstruction.cpp
M llvm/test/Transforms/LoopVectorize/VPlan/X86/scalarize-wide-load-for-address-use.ll
M llvm/test/Transforms/LoopVectorize/VPlan/constant-fold.ll
M llvm/test/Transforms/LoopVectorize/VPlan/for-phi-ordering.ll
M llvm/test/Transforms/LoopVectorize/VPlan/vplan-print-after-all.ll
Log Message:
-----------
[VPlan] Create header phi recipes after initial scalar optimizations. (#200920)
Move createHeaderPhiRecipes after initial scalar transformations.
Header phi creation effectively is the first step of the widening
process. Running scalar opimizations before it can clean up dead header
phis and also also results in a cleaned up scalar VPlan that can be used
to compute the cost of the scalar loop accurately
(https://github.com/llvm/llvm-project/pull/196845).
Now that creating header phis happens after replaceSymbolicStrides we
are looking up the stride from the VPlan directly if possible.
PR: https://github.com/llvm/llvm-project/pull/200920
Commit: fd0d43df9e58f712b96827ca115664b7e665beaa
https://github.com/llvm/llvm-project/commit/fd0d43df9e58f712b96827ca115664b7e665beaa
Author: Med Ismail Bennani <ismail at bennani.ma>
Date: 2026-06-10 (Wed, 10 Jun 2026)
Changed paths:
M lldb/test/API/python_api/process/cancel_attach/TestCancelAttach.py
Log Message:
-----------
[lldb/test] Skip TestCancelAttach on remote targets (#203069)
The existing decorator AND-combined three conditions:
```
@skipIf(remote=True, hostoslist=["windows", "linux"], bugnumber=...)
```
which only skipped when the test was running remotely AND the host was windows or linux. On a remote-darwin run from a Mac host the host condition is false, so the AND is false, and the test runs.
The waitfor-attach cancel path doesn't reliably interrupt a wait forwarded on a remote target, so SendAsyncInterrupt() doesn't unblock the attach thread on the host; the attempt then hangs to the lit timeout (600s) instead of completing the assertion.
Split the decorator into two: @skipIfRemote unconditionally, plus the existing @skipIf(hostoslist=["windows", "linux"]) for the original windows/linux issue. Both apply independently.
Signed-off-by: Med Ismail Bennani <ismail at bennani.ma>
Commit: e07b47ee180559fafb6ce37dece10200c19f1941
https://github.com/llvm/llvm-project/commit/e07b47ee180559fafb6ce37dece10200c19f1941
Author: Zachary Yedidia <zyedidia at gmail.com>
Date: 2026-06-10 (Wed, 10 Jun 2026)
Changed paths:
M llvm/docs/LFI.rst
M llvm/lib/Target/AArch64/AArch64.td
M llvm/lib/Target/AArch64/AArch64Features.td
M llvm/lib/Target/AArch64/AArch64InstrInfo.cpp
A llvm/lib/Target/AArch64/AArch64LFI.td
M llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCLFIRewriter.cpp
M llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCLFIRewriter.h
A llvm/test/MC/AArch64/LFI/exclusive.s
A llvm/test/MC/AArch64/LFI/fp.s
A llvm/test/MC/AArch64/LFI/jumps-only.s
A llvm/test/MC/AArch64/LFI/literal.s
A llvm/test/MC/AArch64/LFI/lse.s
A llvm/test/MC/AArch64/LFI/mem-lr.s
A llvm/test/MC/AArch64/LFI/mem.s
A llvm/test/MC/AArch64/LFI/no-lfi-loads.s
A llvm/test/MC/AArch64/LFI/no-lfi-stores.s
A llvm/test/MC/AArch64/LFI/passthrough.s
A llvm/test/MC/AArch64/LFI/prefetch.s
A llvm/test/MC/AArch64/LFI/rcpc.s
A llvm/test/MC/AArch64/LFI/simd.s
A llvm/test/MC/AArch64/LFI/stack.s
M llvm/test/MC/AArch64/LFI/sys.s
Log Message:
-----------
[LFI][AArch64] Add rewrites for memory accesses (#195167)
This patch adds LFI rewrites for loads and stores, and guards for stack
pointer modifications.
This also introduces the `+no-lfi-stores` and `+no-lfi-loads` features
to control the granularity of memory sandboxing.
With these changes the rewriter now supports making fully
software-sandboxed programs. There are some minor changes
needed in libunwind to avoid emitting SVE/MTE instructions that
cause verification failure, which will be addressed in a future patch.
Future work includes the guard elimination optimization, which will
improve performance, Clang flags to control the LFI subtarget
features from the frontend, and that can also set a macro that
communicates the LFI feature level.
Commit: 084ab17b3c602f8e34ea471a4cc7297d1e8f05dd
https://github.com/llvm/llvm-project/commit/084ab17b3c602f8e34ea471a4cc7297d1e8f05dd
Author: Reid Kleckner <rkleckner at nvidia.com>
Date: 2026-06-10 (Wed, 10 Jun 2026)
Changed paths:
M llvm/cmake/config-ix.cmake
Log Message:
-----------
[cmake] Add pthread to required libraries before dl and rt checks (#203054)
This fixes detection of shm_open on glibc < 2.34.
On glibc before 2.34 (released 2021), librt may depend on symbols from
libpthread. LLVM's HAVE_LIBRT probe uses check_library_exists(rt
shm_open ...), which links a small test against librt and
CMAKE_REQUIRED_LIBRARIES. If pthread is not included in the test link,
the probe can fail even though shm_open is available and LLVM targets
later link with pthread.
Move the dl and rt library checks after pthread detection and add the
detected pthread library to CMAKE_REQUIRED_LIBRARIES. This also lets us
remove later logic that temporarily made pthread a required library for
pthread symbol checks.
Modern C libraries (glibc 2.34+ and musl) integrate pthread-related
functionality into libc, so there is little practical benefit to
avoiding a libpthread dependency on pre-2021 glibc versions when
LLVM_ENABLE_THREADS is disabled.
Commit: 86cdbe62070fc4699696d6652c7a28553cff3703
https://github.com/llvm/llvm-project/commit/86cdbe62070fc4699696d6652c7a28553cff3703
Author: Med Ismail Bennani <ismail at bennani.ma>
Date: 2026-06-10 (Wed, 10 Jun 2026)
Changed paths:
M lldb/packages/Python/lldbsuite/test/lldbtest.py
Log Message:
-----------
[lldb/test] Tolerate ENOENT when cleaning per-test build directory (#203072)
makeBuildDir() removes any leftover bdir from a prior run before the new
test starts. shutil.rmtree() walks the tree via scandir+unlink, so if an
entry vanishes between those two calls it raises FileNotFoundError and
the test aborts in setUp.
We see this on bots when a previous test's implicit clang module build
left a *.pcm.lock file behind. clang's LockFileManager ties the lock's
lifetime to the holding process, so the file can disappear under us as
soon as that process exits.
Pass an onerror handler that swallows ENOENT (the entry is already gone,
which is what we wanted) and re-raises anything else.
Signed-off-by: Med Ismail Bennani <ismail at bennani.ma>
Commit: 72afc58a92544635d5a8f2daf74377ee528f40d4
https://github.com/llvm/llvm-project/commit/72afc58a92544635d5a8f2daf74377ee528f40d4
Author: Ramkumar Ramachandra <artagnon at tenstorrent.com>
Date: 2026-06-10 (Wed, 10 Jun 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
Log Message:
-----------
[VPlan] Strip LogicalAnd from live-in-folder (NFC) (#202934)
The various simplifications performed in simplifyRecipe subsume it.
Commit: 1579432afdcd14bc4031ad0eff5fea42367c0523
https://github.com/llvm/llvm-project/commit/1579432afdcd14bc4031ad0eff5fea42367c0523
Author: Aayush Shrivastava <iamaayushrivastava at gmail.com>
Date: 2026-06-10 (Wed, 10 Jun 2026)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
M llvm/test/Transforms/InstCombine/copysign.ll
Log Message:
-----------
[InstCombine] Fold copysign(floor(fabs(X)), X) to trunc(X) (#200836)
Fixes #200519.
Adds an InstCombine fold for the pattern `copysign(floor(fabs(X)), X)
--> trunc(X)`.
Commit: 0e8cdad82e52063578ef5fe02e1313c186ce988b
https://github.com/llvm/llvm-project/commit/0e8cdad82e52063578ef5fe02e1313c186ce988b
Author: Krzysztof Drewniak <Krzysztof.Drewniak at amd.com>
Date: 2026-06-10 (Wed, 10 Jun 2026)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
M llvm/test/CodeGen/AArch64/fixed-vector-interleave.ll
M llvm/test/CodeGen/AArch64/sve-fixed-vector-llrint.ll
M llvm/test/CodeGen/AArch64/sve-fixed-vector-lrint.ll
M llvm/test/CodeGen/AArch64/sve-load-store-legalisation.ll
M llvm/test/CodeGen/AMDGPU/bf16.ll
M llvm/test/CodeGen/RISCV/rvv/vector-interleave.ll
M llvm/test/CodeGen/X86/combine-pmuldq.ll
M llvm/test/CodeGen/X86/ifma-combine-vpmadd52.ll
M llvm/test/CodeGen/X86/madd.ll
M llvm/test/CodeGen/X86/pmaddubsw.ll
M llvm/test/CodeGen/X86/vector-interleaved-store-i16-stride-6.ll
M llvm/test/CodeGen/X86/vector-interleaved-store-i32-stride-6.ll
M llvm/test/CodeGen/X86/vector-interleaved-store-i8-stride-6.ll
M llvm/test/CodeGen/X86/vector-replicaton-i1-mask.ll
M llvm/test/CodeGen/X86/widen_fadd.ll
M llvm/test/CodeGen/X86/widen_fdiv.ll
M llvm/test/CodeGen/X86/widen_fmul.ll
M llvm/test/CodeGen/X86/widen_fsub.ll
Log Message:
-----------
[SelectionDAG] Fold extracts spanning concat operands (#200936)
Factor the extract_subvector-of-CONCAT_VECTORS logic and handle
extracts that cover multiple whole concat operands by rebuilding a
smaller concat directly.
AI note: an LLM generated the code and the test, I've read them
Co-Authored-By: OpenAI Codex <codex at openai.com>
---------
Co-authored-by: OpenAI Codex <codex at openai.com>
Commit: 1b4d60d7f67130d693c7b11d8fd35f59f6911cae
https://github.com/llvm/llvm-project/commit/1b4d60d7f67130d693c7b11d8fd35f59f6911cae
Author: Dave Lee <davelee.com at gmail.com>
Date: 2026-06-10 (Wed, 10 Jun 2026)
Changed paths:
M lldb/include/lldb/Target/StackFrameRecognizer.h
Log Message:
-----------
[lldb] Remove ValueObjectRecognizerSynthesizedValue::IsSynthetic override (#199117)
Removes the `IsSynthetic` override on
`ValueObjectRecognizerSynthesizedValue`. This class does not also
override `GetNonSyntheticValue`.
There was a bug in which code assumed that when `IsSynthetic()` returned
true, that `GetNonSyntheticValue` would produce a different value
object. However the default behavior of `GetNonSyntheticValue` is to
return itself.
It seems to me that either:
1. `ValueObjectSynthetic` should be the only class to override
`IsSynthetic` to true
2. or, that classes which override `IsSynthetic` should also override
`GetNonSyntheticValue`
In either case, I think it's best to remove this `IsSynthetic` on
`ValueObjectRecognizerSynthesizedValue`.
Commit: 55611ddbaec24686d5702255fbd6033b38dd9ea4
https://github.com/llvm/llvm-project/commit/55611ddbaec24686d5702255fbd6033b38dd9ea4
Author: Mariusz Masztalerczuk <mariusz at masztalerczuk.com>
Date: 2026-06-10 (Wed, 10 Jun 2026)
Changed paths:
M llvm/lib/Target/X86/X86ISelLoweringCall.cpp
M llvm/test/CodeGen/X86/hipe-cc64.ll
M llvm/test/CodeGen/X86/musttail-tailcc.ll
M llvm/test/CodeGen/X86/sibcall.ll
M llvm/test/CodeGen/X86/swifttailcc-store-ret-address-aliasing-stack-slot.ll
Log Message:
-----------
[X86] Fix musttail miscompilation when arguments are passed on the stack (#199691)
After commit 782bf6a, a musttail call with matching CC was always
treated as a sibcall, which skips the stores of outgoing stack
arguments. Any non-forwarded stack argument was silently dropped.
Only treat musttail as a sibcall when every argument is in a register;
otherwise fall back to full tail-call lowering.
Fix #199224
---------
Co-authored-by: Reid Kleckner <rkleckner at nvidia.com>
Commit: a80b840f9db475233656203f4ebe21faecdc1aae
https://github.com/llvm/llvm-project/commit/a80b840f9db475233656203f4ebe21faecdc1aae
Author: Luís Ferreira <contact at lsferreira.net>
Date: 2026-06-10 (Wed, 10 Jun 2026)
Changed paths:
M llvm/lib/Demangle/DLangDemangle.cpp
M llvm/unittests/Demangle/DLangDemangleTest.cpp
Log Message:
-----------
[Demangle] Implement type D demangling and add all D basic type encodings (#202834)
This patch adds type name output to D demangler `parseType` and adds all
D basic type encodings to it.
Commit: f5c08d6d63bbb7e2c1f07fe980ad2b93029651a8
https://github.com/llvm/llvm-project/commit/f5c08d6d63bbb7e2c1f07fe980ad2b93029651a8
Author: UebelAndre <github at uebelandre.com>
Date: 2026-06-10 (Wed, 10 Jun 2026)
Changed paths:
A utils/bazel/llvm-project-overlay/flang-rt/BUILD.bazel
A utils/bazel/llvm-project-overlay/flang-rt/lib/runtime/BUILD.bazel
A utils/bazel/llvm-project-overlay/flang-rt/unittests/BUILD.bazel
A utils/bazel/llvm-project-overlay/flang/BUILD.bazel
A utils/bazel/llvm-project-overlay/flang/include/flang/Optimizer/Analysis/BUILD.bazel
A utils/bazel/llvm-project-overlay/flang/include/flang/Optimizer/Builder/BUILD.bazel
A utils/bazel/llvm-project-overlay/flang/include/flang/Optimizer/CodeGen/BUILD.bazel
A utils/bazel/llvm-project-overlay/flang/include/flang/Optimizer/Dialect/BUILD.bazel
A utils/bazel/llvm-project-overlay/flang/include/flang/Optimizer/Dialect/CUF/Attributes/BUILD.bazel
A utils/bazel/llvm-project-overlay/flang/include/flang/Optimizer/Dialect/CUF/BUILD.bazel
A utils/bazel/llvm-project-overlay/flang/include/flang/Optimizer/Dialect/FIRCG/BUILD.bazel
A utils/bazel/llvm-project-overlay/flang/include/flang/Optimizer/Dialect/MIF/BUILD.bazel
A utils/bazel/llvm-project-overlay/flang/include/flang/Optimizer/HLFIR/BUILD.bazel
A utils/bazel/llvm-project-overlay/flang/include/flang/Optimizer/OpenACC/BUILD.bazel
A utils/bazel/llvm-project-overlay/flang/include/flang/Optimizer/OpenMP/BUILD.bazel
A utils/bazel/llvm-project-overlay/flang/include/flang/Optimizer/Passes/BUILD.bazel
A utils/bazel/llvm-project-overlay/flang/include/flang/Optimizer/Support/BUILD.bazel
A utils/bazel/llvm-project-overlay/flang/include/flang/Optimizer/Transforms/BUILD.bazel
A utils/bazel/llvm-project-overlay/flang/lib/Decimal/BUILD.bazel
A utils/bazel/llvm-project-overlay/flang/lib/Evaluate/BUILD.bazel
A utils/bazel/llvm-project-overlay/flang/lib/Frontend/BUILD.bazel
A utils/bazel/llvm-project-overlay/flang/lib/FrontendTool/BUILD.bazel
A utils/bazel/llvm-project-overlay/flang/lib/Lower/BUILD.bazel
A utils/bazel/llvm-project-overlay/flang/lib/Optimizer/Analysis/BUILD.bazel
A utils/bazel/llvm-project-overlay/flang/lib/Optimizer/Builder/BUILD.bazel
A utils/bazel/llvm-project-overlay/flang/lib/Optimizer/CodeGen/BUILD.bazel
A utils/bazel/llvm-project-overlay/flang/lib/Optimizer/Dialect/BUILD.bazel
A utils/bazel/llvm-project-overlay/flang/lib/Optimizer/Dialect/CUF/Attributes/BUILD.bazel
A utils/bazel/llvm-project-overlay/flang/lib/Optimizer/Dialect/CUF/BUILD.bazel
A utils/bazel/llvm-project-overlay/flang/lib/Optimizer/Dialect/FIRCG/BUILD.bazel
A utils/bazel/llvm-project-overlay/flang/lib/Optimizer/Dialect/MIF/BUILD.bazel
A utils/bazel/llvm-project-overlay/flang/lib/Optimizer/Dialect/Support/BUILD.bazel
A utils/bazel/llvm-project-overlay/flang/lib/Optimizer/HLFIR/IR/BUILD.bazel
A utils/bazel/llvm-project-overlay/flang/lib/Optimizer/HLFIR/Transforms/BUILD.bazel
A utils/bazel/llvm-project-overlay/flang/lib/Optimizer/OpenACC/Analysis/BUILD.bazel
A utils/bazel/llvm-project-overlay/flang/lib/Optimizer/OpenACC/Support/BUILD.bazel
A utils/bazel/llvm-project-overlay/flang/lib/Optimizer/OpenACC/Transforms/BUILD.bazel
A utils/bazel/llvm-project-overlay/flang/lib/Optimizer/OpenMP/BUILD.bazel
A utils/bazel/llvm-project-overlay/flang/lib/Optimizer/OpenMP/Support/BUILD.bazel
A utils/bazel/llvm-project-overlay/flang/lib/Optimizer/Passes/BUILD.bazel
A utils/bazel/llvm-project-overlay/flang/lib/Optimizer/Support/BUILD.bazel
A utils/bazel/llvm-project-overlay/flang/lib/Optimizer/Transforms/BUILD.bazel
A utils/bazel/llvm-project-overlay/flang/lib/Parser/BUILD.bazel
A utils/bazel/llvm-project-overlay/flang/lib/Semantics/BUILD.bazel
A utils/bazel/llvm-project-overlay/flang/lib/Support/BUILD.bazel
A utils/bazel/llvm-project-overlay/flang/lib/Testing/BUILD.bazel
A utils/bazel/llvm-project-overlay/flang/lib/Utils/BUILD.bazel
A utils/bazel/llvm-project-overlay/flang/tools/flang-driver/BUILD.bazel
A utils/bazel/llvm-project-overlay/flang/unittests/BUILD.bazel
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
A utils/bazel/llvm-project-overlay/openmp/BUILD.bazel
A utils/bazel/llvm-project-overlay/openmp/runtime/src/BUILD.bazel
A utils/bazel/llvm-project-overlay/openmp/runtime/tools/BUILD.bazel
A utils/bazel/llvm-project-overlay/openmp/runtime/unittests/BUILD.bazel
Log Message:
-----------
[bazel] Added targets for flang, flang-rt, and openmp (#202791)
This change adds the necessary targets for a fortran toolchain. `flang`
for the compiler itself, `flang-rt` for executable support, and `openmp`
for `!$omp` directives within fortran code.
Commit: 47ca5e84d9f7458fb5bf0fc82eeac3bac3495724
https://github.com/llvm/llvm-project/commit/47ca5e84d9f7458fb5bf0fc82eeac3bac3495724
Author: Ethan Luis McDonough <ethanluismcdonough at gmail.com>
Date: 2026-06-10 (Wed, 10 Jun 2026)
Changed paths:
M llvm/include/llvm/Transforms/IPO/Instrumentor.h
M llvm/lib/Transforms/IPO/Instrumentor.cpp
M llvm/test/Instrumentation/Instrumentor/default_config.json
M llvm/test/Instrumentation/Instrumentor/module_and_globals.ll
A llvm/test/Instrumentation/Instrumentor/numeric.ll
A llvm/test/Instrumentation/Instrumentor/numeric_config.json
R llvm/test/Instrumentation/Instrumentor/operations.json
R llvm/test/Instrumentation/Instrumentor/operations.ll
Log Message:
-----------
[Instrumentor] Add instruction flags to NumericIO (#200709)
Commit: 358412632f118765935980f5f927764f11a2d800
https://github.com/llvm/llvm-project/commit/358412632f118765935980f5f927764f11a2d800
Author: crockeea <ecrockett0 at gmail.com>
Date: 2026-06-10 (Wed, 10 Jun 2026)
Changed paths:
M mlir/tools/mlir-tblgen/AttrOrTypeFormatGen.cpp
Log Message:
-----------
[MLIR][ODS] Do not emit code when printing empty lists in Type/Attr assembly printer (NFC) (#201174)
In TableGen's code generator, `DefFormat::genCommaSeparatedPrinter` can
emit code like
```
void FooType::print(::mlir::AsmPrinter &odsPrinter) const {
::mlir::Builder odsBuilder(getContext());
odsPrinter << "<";
{
bool _firstPrinted = true;
}
odsPrinter << ">";
}
```
This results in unused variable warnings for `_firstPrinted` when
compiling the table-gen'd code:
```
warning: unused variable '_firstPrinted' [-Wunused-variable]
158 | bool _firstPrinted = true;
```
The solution to this is to not emit the `{ bool _firstPrinted = true; }`
block when list being printed is empty. This PR adds a guard around the
code that emits the `{ bool _firstPrinted = true; }`: it is now only
emitted if there are arguments to print. In this case, additional code
is emitted which uses `_firstPrinted`.
Commit: e7aff7b0f5552f8c775724a3c48338db656b1ab2
https://github.com/llvm/llvm-project/commit/e7aff7b0f5552f8c775724a3c48338db656b1ab2
Author: jofrn <jo7frn1 at gmail.com>
Date: 2026-06-10 (Wed, 10 Jun 2026)
Changed paths:
M llvm/test/CodeGen/X86/atomic-load-store.ll
Log Message:
-----------
[X86] Add aligned atomic vector store tests wider than 128 bits (NFC) (#202537)
These >128-bit stores are expanded to __atomic_store libcalls regardless
of alignment, since x86 caps atomic ops at 128 bits.
Commit: 87381740d8c5e86a7818a84c28ad51049d6ddf7b
https://github.com/llvm/llvm-project/commit/87381740d8c5e86a7818a84c28ad51049d6ddf7b
Author: forking-google-bazel-bot[bot] <265904573+forking-google-bazel-bot[bot]@users.noreply.github.com>
Date: 2026-06-10 (Wed, 10 Jun 2026)
Changed paths:
M utils/bazel/llvm-project-overlay/flang/unittests/BUILD.bazel
Log Message:
-----------
[Bazel] Fixes f5c08d6 (#203102)
This fixes f5c08d6d63bbb7e2c1f07fe980ad2b93029651a8.
Co-authored-by: Google Bazel Bot <google-bazel-bot at google.com>
Commit: 90a1eeb0446f258567c8aa99748cb417a20dfe5b
https://github.com/llvm/llvm-project/commit/90a1eeb0446f258567c8aa99748cb417a20dfe5b
Author: adams381 <adams at nvidia.com>
Date: 2026-06-10 (Wed, 10 Jun 2026)
Changed paths:
M clang/include/clang/CIR/LoweringHelpers.h
M clang/include/clang/CIR/MissingFeatures.h
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
M clang/lib/CIR/Lowering/LoweringHelpers.cpp
A clang/test/CIR/CodeGen/global-pointer-array-fast-lowering.cpp
A clang/test/CIR/Lowering/const-array-bulk-lowering-fallbacks.cir
A clang/test/CIR/Lowering/const-array-of-pointers.cir
Log Message:
-----------
[CIR] Lower pointer const_array globals without insertvalue chains (#198427)
`cir.global` initializers that are `const_array` of `global_view` (no
indices) or null pointers were lowered through an initializer region
full of `llvm.insertvalue` ops even though the elements are all
attribute-representable. That forced the O(N²) MLIR-to-LLVM IR path
on large tables (SPEC CPU 2026 `gcc/insn-automata.cc`).
When `lowerConstArrayAttr` can build the whole initializer, emit the
global with one aggregate attribute instead. String literals with
`trailing_zeros` are padded into `DenseElementsAttr` so C string tables
take the same bulk path. Indexed `global_view`, `#cir.zero` arrays, and
other non-bulk cases still use the insertvalue path.
MLIR prerequisite
[#198424](https://github.com/llvm/llvm-project/pull/198424) is merged on
`main`; this branch is rebased and CIR-only.
---------
Co-authored-by: Claude Sonnet 4.6 <noreply at anthropic.com>
Commit: 59eb0d2c6126a5b84cfb7f7c351c2bcfefa88bb0
https://github.com/llvm/llvm-project/commit/59eb0d2c6126a5b84cfb7f7c351c2bcfefa88bb0
Author: Vedant Neve <vedantneve13 at gmail.com>
Date: 2026-06-10 (Wed, 10 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/riscv/entrypoints.txt
M libc/config/linux/x86_64/entrypoints.txt
M libc/include/math.yaml
M libc/shared/math.h
A libc/shared/math/isnanf128.h
M libc/src/__support/math/CMakeLists.txt
A libc/src/__support/math/isnanf128.h
M libc/src/math/CMakeLists.txt
M libc/src/math/generic/CMakeLists.txt
A libc/src/math/generic/isnanf128.cpp
A libc/src/math/isnanf128.h
M libc/test/shared/CMakeLists.txt
M libc/test/shared/shared_math_constexpr_test.cpp
M libc/test/shared/shared_math_test.cpp
M libc/test/src/math/smoke/CMakeLists.txt
A libc/test/src/math/smoke/isnanf128_test.cpp
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
M utils/bazel/llvm-project-overlay/libc/test/src/math/smoke/BUILD.bazel
Log Message:
-----------
[libc][math] Add isnanf128 (#199206)
## Summary
- Add a fputil-based isnanf128 implementation and wire it into libc math
entrypoints, public math header generation, and shared math wrappers.
- Add smoke test coverage for float128 NaN classification and shared
math runtime/constexpr coverage.
Part of #195400
---------
Signed-off-by: Vedant Neve <vedantneve13 at gmail.com>
Commit: a848df2d1f818cf38fef5852841d91e9ed118497
https://github.com/llvm/llvm-project/commit/a848df2d1f818cf38fef5852841d91e9ed118497
Author: Amara Emerson <amara at apple.com>
Date: 2026-06-10 (Wed, 10 Jun 2026)
Changed paths:
M llvm/include/module.modulemap
Log Message:
-----------
[IR] Add BundleAttributes.def to modulemap as textual header (#203106)
Fixes stage 2 builds broken by 88bd366041fd539d2e8d75f2b2ae081940922f8e
Commit: 0e8fe7904865ed56de4f572781f687cb2c3791a1
https://github.com/llvm/llvm-project/commit/0e8fe7904865ed56de4f572781f687cb2c3791a1
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2026-06-10 (Wed, 10 Jun 2026)
Changed paths:
M llvm/lib/Support/GlobPattern.cpp
Log Message:
-----------
[NFC][Support] Define Prefix/SuffixMetacharacters constants (#202850)
Extract literal metacharacter strings used in GlobPattern into static
constexpr arrays to improve consistency and maintainability.
Assisted-by: Gemini
Commit: 4a21c2a6ed924e53f5dd42776b019a5b94a9330e
https://github.com/llvm/llvm-project/commit/4a21c2a6ed924e53f5dd42776b019a5b94a9330e
Author: Justin Bogner <mail at justinbogner.com>
Date: 2026-06-10 (Wed, 10 Jun 2026)
Changed paths:
M llvm/lib/Target/DirectX/DXContainerGlobals.cpp
Log Message:
-----------
[DirectX] Fix -Wunused-variable warning (#203107)
Commit: 4221ca9146de74ac27eeb0359808bb8c28649b84
https://github.com/llvm/llvm-project/commit/4221ca9146de74ac27eeb0359808bb8c28649b84
Author: Sang Ik Lee <sang.ik.lee at intel.com>
Date: 2026-06-10 (Wed, 10 Jun 2026)
Changed paths:
M mlir/test/Integration/Dialect/XeGPU/LANE/xegpu_dpas_mx_prepacked_bf8.mlir
M mlir/test/Integration/Dialect/XeGPU/LANE/xegpu_dpas_mx_prepacked_e2m1.mlir
Log Message:
-----------
[MLIR][XeGPU] Use updated dpas_mx op print format. (#202700)
Old assembly format causes parse error.
Commit: 6b281d1821bdc14ca92380cd39abb794347cf742
https://github.com/llvm/llvm-project/commit/6b281d1821bdc14ca92380cd39abb794347cf742
Author: Razvan Lupusoru <razvan.lupusoru at gmail.com>
Date: 2026-06-10 (Wed, 10 Jun 2026)
Changed paths:
A flang/test/Transforms/OpenACC/acc-implicit-declare-type-descriptor-alloca.F90
A flang/test/Transforms/OpenACC/acc-implicit-declare-type-descriptor-embox.F90
A flang/test/Transforms/OpenACC/acc-implicit-declare-type-descriptor-rebox.F90
A flang/test/Transforms/OpenACC/acc-implicit-declare-type-descriptor-type_desc.F90
Log Message:
-----------
[flang][acc] Add tests for implicit `acc declare` of type descriptors (#203100)
Adds 4 tests to cover different cases which requires implicit `acc
declare` for type descriptors.
Commit: 27139b7f0c8f0ad8a9f3cb842e06ca991f5c82ff
https://github.com/llvm/llvm-project/commit/27139b7f0c8f0ad8a9f3cb842e06ca991f5c82ff
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2026-06-10 (Wed, 10 Jun 2026)
Changed paths:
M llvm/lib/Support/SpecialCaseList.cpp
Log Message:
-----------
[NFC][SpecialCaseList] Introduce QueryOptions struct (#203098)
Refactor the RemoveDotSlash boolean parameter into a QueryOptions
struct.
This struct will hold all matching options and simplifies the Matcher
constructor signature. This is a preparation step for adding more
options
in subsequent patches.
Assisted-by: Gemini
Commit: 0d62bf31128a504f8acffa967752385c02d0c85e
https://github.com/llvm/llvm-project/commit/0d62bf31128a504f8acffa967752385c02d0c85e
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2026-06-10 (Wed, 10 Jun 2026)
Changed paths:
M llvm/lib/Support/SpecialCaseList.cpp
Log Message:
-----------
[NFC][SpecialCaseList] Introduce Matcher::matchInternal helper (#203097)
Extract the core matching logic (std::visit on the variant) from
Matcher::match
into a private Matcher::matchInternal helper method. This is a
preparation step
for implementing warning logic that will need to call the matching logic
multiple times.
Also make Matcher's M and Options member variables private as part of
this
refactoring.
Assisted-by: Gemini
Commit: 245186ef957cb1d98ad1444a49e3bd307cbaa2a4
https://github.com/llvm/llvm-project/commit/245186ef957cb1d98ad1444a49e3bd307cbaa2a4
Author: Osman Yasar <osmanyas05 at gmail.com>
Date: 2026-06-10 (Wed, 10 Jun 2026)
Changed paths:
M llvm/include/llvm/Target/GlobalISel/Combine.td
A llvm/test/CodeGen/AArch64/GlobalISel/combine-or-and-xor.ll
A llvm/test/CodeGen/AArch64/GlobalISel/combine-or-and-xor.mir
Log Message:
-----------
[GlobalISel] Add `or_and_xor_to_or` pattern from SelectionDAG (#201108)
This PR adds the `fold (or (and X, (xor Y, -1)), Y) -> (or X, Y)`
pattern from SelectionDAG to GlobalISel.
---------
Co-authored-by: Matt Arsenault <arsenm2 at gmail.com>
Commit: 127a4c1a883d333033470c1a243dc60e8b064f1c
https://github.com/llvm/llvm-project/commit/127a4c1a883d333033470c1a243dc60e8b064f1c
Author: Santhosh Kumar Ellendula <quic_sellendu at quicinc.com>
Date: 2026-06-10 (Wed, 10 Jun 2026)
Changed paths:
M lldb/source/Plugins/Disassembler/LLVMC/DisassemblerLLVMC.cpp
M lldb/source/Plugins/Disassembler/LLVMC/DisassemblerLLVMC.h
M lldb/source/Plugins/ObjectFile/ELF/ObjectFileELF.cpp
M lldb/source/Plugins/ObjectFile/ELF/ObjectFileELF.h
A lldb/test/Shell/Disassemble/TestDisassembleRISCVInstructions.test
M lldb/test/Shell/lit.cfg.py
M lldb/test/Shell/lit.site.cfg.py.in
M lldb/unittests/Disassembler/RISCV/TestMCDisasmInstanceRISCV.cpp
Log Message:
-----------
[LLDB] RISCV feature attribute support and allows overriding additional(default) feature (#147990)
Parse ELF attributes to automatically set disassembler features.
llvm-objdump calls ELFObjectFile::getFeatures, then turns that into a
cstr to pass to createMCSubtargetInfo.
The lldb disassembler builds features for various architectures manually
and adds in the value from the command line.
If this is empty, it uses the default. then it turns that into a cstr
and passes it to createMCSubtargetInfo.
For Hexagon and RISC-V, parse the attributes, set up features, add
anything else needed.
If this is empty, pick the default.
Then turn into a cstr and pass to createMCSubtargetInfo (via
MCDisasmInstance::Create).
This patch adds RISCV feature attribute support and allows overriding
additional(default) feature.
---------
Co-authored-by: Santhosh Kumar Ellendula <sellendu at hu-sellendu-hyd.qualcomm.com>
Co-authored-by: Santhosh Kumar Ellendula <sellendu at hu-sellendu-lv.qualcomm.com>
Commit: d9e7704e07672cf180ed5d3b89132a08e7d14b1d
https://github.com/llvm/llvm-project/commit/d9e7704e07672cf180ed5d3b89132a08e7d14b1d
Author: Krzysztof Drewniak <Krzysztof.Drewniak at amd.com>
Date: 2026-06-10 (Wed, 10 Jun 2026)
Changed paths:
M mlir/test/Integration/GPU/ROCM/lit.local.cfg
Log Message:
-----------
[mlir][ROCM] Disable integration tests on shared library builds (#203114)
Recent ROCm builds cause conflicts when loading the HIP library into
mlir-rocm-runner when LLVM is built as a shared library (this manifests
as duplicate command-line options).
Fixing this properly would require dlopen()-ing the HIP libraries or
some other such workaround, which can be done later.
For now, disable these tests on such builds.
Commit: ca4246669006ec9d6bc88ab2acb03f308a07d422
https://github.com/llvm/llvm-project/commit/ca4246669006ec9d6bc88ab2acb03f308a07d422
Author: vangthao95 <vang.thao at amd.com>
Date: 2026-06-10 (Wed, 10 Jun 2026)
Changed paths:
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/GlobalISel/llvm.amdgcn.mfma.gfx90a.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-amdgcn.mfma.gfx90a.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-amdgcn.mfma.gfx942.mir
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.i8.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mfma.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mfma.xf32.gfx942.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
Log Message:
-----------
AMDGPU/GlobalISel: RegBankLegalize rules for gfx90a/gfx942 MFMAs (#194076)
Add rules for gfx90a/gfx942 MFMA/SMFMAC intrinsics.
I see some regressions with imm splat tests and stores that could have
taken agprs. I will try to address those in a follow-up patch.
Commit: e9fbddf223976da11f40291a310d3308c61ea778
https://github.com/llvm/llvm-project/commit/e9fbddf223976da11f40291a310d3308c61ea778
Author: Alexandre Perez <alexandreperez at meta.com>
Date: 2026-06-10 (Wed, 10 Jun 2026)
Changed paths:
M lldb/include/lldb/API/SBProcess.h
M lldb/source/API/SBProcess.cpp
M lldb/test/API/functionalities/postmortem/elf-core/TestLinuxCore.py
M lldb/test/API/python_api/process/TestProcessAPI.py
Log Message:
-----------
[lldb] Expose SBProcess::IsLiveDebugSession() (#203111)
Expose the existing `Process::IsLiveDebugSession()` through the SB API
as `SBProcess::IsLiveDebugSession()`, letting clients distinguish a live
debuggee from a post-mortem session such as a core file or minidump. It
returns `false` when there is no underlying process, consistent with
other `SBProcess` query methods.
Commit: 4b5f74b154228f5d129ccd7dcb1e09e7193643ae
https://github.com/llvm/llvm-project/commit/4b5f74b154228f5d129ccd7dcb1e09e7193643ae
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2026-06-10 (Wed, 10 Jun 2026)
Changed paths:
M flang/lib/Semantics/resolve-names.cpp
A flang/test/Semantics/OpenMP/declare-target-resolve.f90
A flang/test/Semantics/OpenMP/declare-target-symbols.f90
M flang/test/Semantics/OpenMP/declare-target08.f90
Log Message:
-----------
[flang][OpenMP] Implicit declarations of procedures in DECLARE_TARGET (#201935)
This replaces commit 8f5df8891840b, since it was rejecting the following
case:
```
function baz(a)
!$omp declare target to(baz)
real, intent(in) :: a
baz = a
end
program main
!$omp declare target(baz)
integer, save :: baz ! error: 'baz' is already declared
end
```
Instead of flagging an error, the 'baz' in the directive should be
resolved to the explicitly declared variable.
The original motivating example was to allow the case where the main
program (from the above snippet) looked like the following:
```
program main
real :: a
!$omp declare target(baz) ! 'baz' should be resolved to the
!$omp target ! external function
a = baz(a) ! <- because of this call
!$omp end target
end
```
The problem is that "declare_target(baz)" despite being the same in both
cases, should lead to two different outcomes in symbol resolution.
This fix will treat declarations introduced by a DECLARE_TARGET as
eligible for overriding with a potentially conflicting declaration
stemming from the use of that name in a language construct or
expression. Since a mere mention of a name alone declares an object,
such conflict occurs when the name would have been otherwise resolved to
a procedure.
This changes the behavior introduced in 8f5df8891840b, where
yet-undeclared names on a DECLARE_TARGET were preferentially resolved to
external procedures.
The function HandleProcedureName was modified to "undeclare" names
implicitly declared due to their appearance in a DECLARE_TARGET.
Commit: d5a18603b0d825fbe743f299dc3ee226be789f49
https://github.com/llvm/llvm-project/commit/d5a18603b0d825fbe743f299dc3ee226be789f49
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2026-06-10 (Wed, 10 Jun 2026)
Changed paths:
M lldb/docs/CMakeLists.txt
M lldb/docs/python_api_enums.md
A lldb/scripts/gen-python-api-enums.py
Log Message:
-----------
[lldb][docs] Generate the Python API enums page from headers (#202780)
The "Python API enumerators and constants" page was added by
3cae8b33297b as an explicit stop-gap: its contents were grepped out of
the headers by hand, with the few available doc strings copied over
manually. That commit noted the real fix would be a tool that parses the
enum/constant headers and emits the page automatically.
Being hand-maintained, the page drifted badly out of sync. By now it was
missing 19 enums and 60+ enumerators, still documented three values that
no longer exist, and carried stale descriptions.
Add gen-python-api-enums.py, which parses lldb-enumerations.h and
lldb-defines.h and emits the page at build time. It is pulled into
python_api_enums.md via the {build-include} directive, the same
mechanism already used for the generated settings page, so the page can
stay in sync with the source.
Enums from the separately generated SBLanguages.h (eLanguageName*) are
still not covered, matching the previous page's scope.
Assisted-by: Claude
Commit: 5b8402744696bd1e6bb6849e87bd63c7401e4791
https://github.com/llvm/llvm-project/commit/5b8402744696bd1e6bb6849e87bd63c7401e4791
Author: Yao Qi <qiyaoltc at gmail.com>
Date: 2026-06-10 (Wed, 10 Jun 2026)
Changed paths:
M lldb/source/Plugins/ObjectFile/Mach-O/MachOTrie.cpp
M lldb/unittests/ObjectFile/MachO/MachOTrieTest.cpp
Log Message:
-----------
[lldb][Mach-O] Bound export-trie symbol name length (#202947)
`ParseTrieEntries` assembles a symbol name by appending every edge label
along a trie path into a `std::string`. A corrupt export trie can encode
an edge label whose terminator is far away in the trie data, making a
single label many megabytes long. Appending it requests an unbounded
allocation, which can crash lldb while parsing the symbol table.
Reject a trie whose assembled name exceeds a sane bound (1 MiB) as
corrupt data, the same way an unterminated edge label is already
handled. Add a unit test covering an oversized edge label.
Assisted-by: Claude
Commit: f5e325267c75a1cde29913ed9447cd97cb2060b7
https://github.com/llvm/llvm-project/commit/f5e325267c75a1cde29913ed9447cd97cb2060b7
Author: paperchalice <liujunchang97 at outlook.com>
Date: 2026-06-11 (Thu, 11 Jun 2026)
Changed paths:
M llvm/include/llvm/Passes/PassBuilder.h
M llvm/lib/Passes/PassBuilder.cpp
M llvm/test/CodeGen/AMDGPU/llc-pipeline-npm.ll
M llvm/test/CodeGen/X86/llc-pipeline-npm.ll
A llvm/test/tools/opt/print-pipeline-passes.ll
M llvm/tools/llc/NewPMDriver.cpp
M llvm/tools/opt/NewPMDriver.cpp
Log Message:
-----------
[Passes] Enhance `--print-pipeline-passes` (#202892)
Allow users to specify output format, make pipeline output more
palatable to FileCheck. Currently, it only support `text` and `tree`
format.
Fixes #200926.
Commit: 990543b73ad82913c831ea76ccb69a8e365d595b
https://github.com/llvm/llvm-project/commit/990543b73ad82913c831ea76ccb69a8e365d595b
Author: Sang Ik Lee <sang.ik.lee at intel.com>
Date: 2026-06-10 (Wed, 10 Jun 2026)
Changed paths:
M mlir/lib/Dialect/XeGPU/Transforms/XeGPUArrayLengthOptimization.cpp
M mlir/lib/Dialect/XeGPU/Transforms/XeGPUPeepHoleOptimizer.cpp
M mlir/test/Dialect/XeGPU/peephole-optimize.mlir
Log Message:
-----------
[MLIR][XeGPU] Enable peephole optimization for the CRI target (#201655)
Enable the XeGPU transpose peephole and array-length optimizations for
the Crescent Island (cri) target alongside pvc and bmg. Skip sub-byte (<
8-bit) element types in array-length optimizations, which are not yet
supported.
Add tests in peephole-optimize.mlir covering the cri target and the
array-length optimization rejecting sub-byte
Commit: e408c75f8617b314a9cc30a19f61988004eecb85
https://github.com/llvm/llvm-project/commit/e408c75f8617b314a9cc30a19f61988004eecb85
Author: Sang Ik Lee <sang.ik.lee at intel.com>
Date: 2026-06-10 (Wed, 10 Jun 2026)
Changed paths:
M mlir/lib/Conversion/XeGPUToXeVM/XeGPUToXeVM.cpp
M mlir/test/Conversion/XeGPUToXeVM/loadstore_nd.mlir
Log Message:
-----------
[MLIR][XeGPU] Extend 8-bit load_nd support in XeVM lowering (#201645)
2D block load on 8bit element type has a shape 32x16 supported by OpenCL
API
```
void intel_sub_group_2d_block_read_transform_8b_32r16x1c( // reads eight uints
global void* base_address,
int width, int height, int pitch, int2 coord, private uint* destination);
```
The API is for load with transform/VNNI request.
OpenCL does not provide a load API for the same vector type and no
transform request. But value returned is identical for this special
vector type. <32x16x"8b">
The PR adds support for this vector type with no transform request.
Commit: af2e3e7881013acbc0309efdb82d1d386eb68d6f
https://github.com/llvm/llvm-project/commit/af2e3e7881013acbc0309efdb82d1d386eb68d6f
Author: Jason Molenda <jmolenda at apple.com>
Date: 2026-06-11 (Thu, 11 Jun 2026)
Changed paths:
M lldb/test/API/macosx/thread-names/TestInterruptThreadNames.py
Log Message:
-----------
Revert "[lldb][test] Increase polling in TestInterruptThreadNames.py (#201554)" (#203126)
This reverts commit fdfd1c1344187d64b63504ea8e3662ae4936503a.
The Intel mac CI bot is timing out often with these new timeouts and
we're getting failing runs. Raphael will adjust and re-land.
Commit: 9617b2af712286cdfc01c11d9054cf8656ff42e7
https://github.com/llvm/llvm-project/commit/9617b2af712286cdfc01c11d9054cf8656ff42e7
Author: Sang Ik Lee <sang.ik.lee at intel.com>
Date: 2026-06-10 (Wed, 10 Jun 2026)
Changed paths:
M mlir/lib/Dialect/XeGPU/Transforms/XeGPUSgToLaneDistribute.cpp
M mlir/test/Dialect/XeGPU/sg-to-lane-distribute-unit.mlir
Log Message:
-----------
[MLIR][XeGPU] Support partial subgroup lane distribution (#201667)
for convert_layout
Add lowering support in XeGPUSgToLaneDistribute for values that are
distributed across only a fraction of the subgroup.
- SgToLaneConvertLayout now lowers a rank-2 xegpu.convert_layout that
shrinks the lane layout along the outer (distributed) dimension while
keeping lane_data unchanged (e.g. [16, 1] -> [8, 1]). The partial-subgroup
case is detected directly in the pattern: equal order, rank 2, unit inner
lane layout, and a genuinely distributed outer lane layout (> 1, which also
rules out the degenerate [1, 1] layout). Because the data is no longer
replicated in every lane, it is gathered across lanes and the distributed
outer dimension is doubled when the lane count is halved.
- The cross-lane gather is factored into a dedicated helper,
shuffleDataAsLaneLayoutChange(): it bitcasts the source to i32, issues
gpu.shuffle up to fetch the values from the dropped lanes, and concatenates
the lane-local and gathered data with vector.shuffle. Only halving the lane
count (factor of two), rank-2 vectors, and bit widths that are a multiple
of 32 are supported; other cases fail the match.
- SgToLaneVectorExtractStridedSlice now adjusts the effective subgroup size
when the source lane layout along the distributed dimension is smaller than
the hardware subgroup size, so slice offsets/sizes are scaled correctly
(e.g. a subgroup-space offset of 8 maps to a distributed offset of 1).
Add a unit test exercising the dpas_mx scale operand path.
Commit: 8b625b2c515d3e44a814b6bd029814c12c501a93
https://github.com/llvm/llvm-project/commit/8b625b2c515d3e44a814b6bd029814c12c501a93
Author: Alexander Richardson <alexrichardson at google.com>
Date: 2026-06-10 (Wed, 10 Jun 2026)
Changed paths:
M llvm/test/MC/RISCV/rv32c-invalid.s
M llvm/test/MC/RISCV/rv64c-invalid.s
M llvm/test/MC/RISCV/rvc-hints-invalid.s
M llvm/test/MC/RISCV/xqcibm-invalid.s
Log Message:
-----------
[RISC-V] Add --implicit-check-not="error:" to a few tests
Ensures that the test checks for every error emitted by llvm-mc. To do this
we have to move the CHECK lines to the next line rather than the same line
since otherwise we get a false-positive match.
This adds a few missing CHECK line in the xqcibm-invalid test and is needed
to minimize the diff in one of my subsequent commit.
Pull Request: https://github.com/llvm/llvm-project/pull/203091
Commit: 3c7cea8273bd06fdd9f84197293fb3d7f4b94435
https://github.com/llvm/llvm-project/commit/3c7cea8273bd06fdd9f84197293fb3d7f4b94435
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2026-06-10 (Wed, 10 Jun 2026)
Changed paths:
M llvm/include/llvm/Target/GlobalISel/Combine.td
R llvm/test/CodeGen/AArch64/GlobalISel/combine-or-and-xor.ll
R llvm/test/CodeGen/AArch64/GlobalISel/combine-or-and-xor.mir
Log Message:
-----------
Revert "[GlobalISel] Add `or_and_xor_to_or` pattern from SelectionDAG" (#203136)
Reverts llvm/llvm-project#201108
Commit: 1272df242660de7154cf64eb99fafb844af9b7f0
https://github.com/llvm/llvm-project/commit/1272df242660de7154cf64eb99fafb844af9b7f0
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2026-06-10 (Wed, 10 Jun 2026)
Changed paths:
M llvm/test/Transforms/SLPVectorizer/X86/runtime-alias-checks.ll
Log Message:
-----------
[SLP][NFC] Add tests with non-movable calls, NFC
Reviewers:
Pull Request: https://github.com/llvm/llvm-project/pull/203140
Commit: a36610c9db6c05cccd6bed251f2b4df1730c1130
https://github.com/llvm/llvm-project/commit/a36610c9db6c05cccd6bed251f2b4df1730c1130
Author: Fangrui Song <i at maskray.me>
Date: 2026-06-10 (Wed, 10 Jun 2026)
Changed paths:
M llvm/include/llvm/CodeGen/MachineFunctionPass.h
M llvm/include/llvm/IR/PrintPasses.h
M llvm/include/llvm/Pass.h
M llvm/lib/CodeGen/MachineFunctionPass.cpp
M llvm/lib/IR/LegacyPassManager.cpp
M llvm/lib/IR/Pass.cpp
M llvm/lib/IR/PrintPasses.cpp
M llvm/test/Other/print-changed-machine.ll
Log Message:
-----------
[CodeGen] Support --print-changed for legacy codegen IR passes (#202252)
--print-changed is only wired into MachineFunctionPass (
https://reviews.llvm.org/D133055), so the IR-level passes in the codegen
pipeline (atomic-expand, codegenprepare, etc.) are not reported.
Report them from FPPassManager/MPPassManager instead, via a new
Pass::printIRUnit hook that MachineFunctionPass overrides to print MIR.
Analyses are skipped, matching the new pass manager.
Aided by Claude Opus 4.8
Commit: 1cda91dad0208cccdeafc4a04ffcbb9626e3f157
https://github.com/llvm/llvm-project/commit/1cda91dad0208cccdeafc4a04ffcbb9626e3f157
Author: Luís Ferreira <contact at lsferreira.net>
Date: 2026-06-11 (Thu, 11 Jun 2026)
Changed paths:
M llvm/lib/Demangle/DLangDemangle.cpp
Log Message:
-----------
[Demangle] Fix leak of temporary TypeBuf buffer in DLangDemangle (#203116)
Detected by sanitizer
https://lab.llvm.org/buildbot/#/builders/55/builds/28902 after merge.
Commit: b19f4db597216648f9527adae256caf09642f3b4
https://github.com/llvm/llvm-project/commit/b19f4db597216648f9527adae256caf09642f3b4
Author: Nicolai Hähnle <nicolai.haehnle at amd.com>
Date: 2026-06-11 (Thu, 11 Jun 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUInstrInfo.td
M llvm/lib/Target/AMDGPU/EvergreenInstructions.td
M llvm/lib/Target/AMDGPU/SOPInstructions.td
Log Message:
-----------
AMDGPU: Remove AMDGPUbfm (#203148)
It wasn't actually used. We select [SV]_BFM_B32 by directly matching
shift-based patterns.
Commit: 7588c957cf4f686ce4ced4b1df717695be295bf0
https://github.com/llvm/llvm-project/commit/7588c957cf4f686ce4ced4b1df717695be295bf0
Author: David Tenty <daltenty at ibm.com>
Date: 2026-06-10 (Wed, 10 Jun 2026)
Changed paths:
M compiler-rt/test/builtins/Unit/lit.cfg.py
Log Message:
-----------
Revert "[Compiler-rt][test] Fix circular link dependency between builtins and libc" (#203152)
Reverts llvm/llvm-project#199482 due to failures when it's used on
platforms with non-ELF linkers. The patch needs additional guards, but
it's not immediately clear which platform linkers support the required
options.
Commit: 4a3fe8e38a6cebe805c12722b1505134d1625ce1
https://github.com/llvm/llvm-project/commit/4a3fe8e38a6cebe805c12722b1505134d1625ce1
Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
Date: 2026-06-11 (Thu, 11 Jun 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPULibCalls.cpp
M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-rootn-fast.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-rootn.ll
Log Message:
-----------
[AMDGPU] Gate rootn(x, +-2) -> sqrt/rsqrt fold on nsz/ninf (#200578)
Commit: dd315a54d0e95a98948fb6b57d27f0cce4418198
https://github.com/llvm/llvm-project/commit/dd315a54d0e95a98948fb6b57d27f0cce4418198
Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
Date: 2026-06-11 (Thu, 11 Jun 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPULowerBufferFatPointers.cpp
M llvm/test/CodeGen/AMDGPU/lower-buffer-fat-pointers-memops.ll
Log Message:
-----------
[AMDGPU] Set success flag for weak cmpxchg in LowerBufferFatPointers (#203033)
Commit: 9b06039665f0013bc7ce13fb9ce7bbe406c2226a
https://github.com/llvm/llvm-project/commit/9b06039665f0013bc7ce13fb9ce7bbe406c2226a
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2026-06-10 (Wed, 10 Jun 2026)
Changed paths:
M mlir/examples/standalone/test/lit.cfg.py
Log Message:
-----------
[MLIR] Use internal shell for standalone tests (#203134)
The external shell will be removed soon
(https://discourse.llvm.org/t/rfc-removal-of-the-lit-external-shell/90951),
and this is one of the places where it hasn't been enabled by default.
There are no test failures caused by this, so we can just turn it on by
not explicitly setting execute_external as it defaults to False.
Commit: 5cf20a6c9ed5693e5a075f458380eaea5f3f42c1
https://github.com/llvm/llvm-project/commit/5cf20a6c9ed5693e5a075f458380eaea5f3f42c1
Author: Mitch Briles <mitchbriles at gmail.com>
Date: 2026-06-10 (Wed, 10 Jun 2026)
Changed paths:
M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
M llvm/test/CodeGen/NVPTX/math-intrins.ll
Log Message:
-----------
Reapply "[NVPTX] Support lowering of `(l)lround`" (#202876)
Reverts llvm/llvm-project#202500
Original PR llvm/llvm-project#183901 was mistakenly reverted due to an
unrelated build failure.
Commit: 5d7406514e4e62b61e9405b937b30fcc6c36c58c
https://github.com/llvm/llvm-project/commit/5d7406514e4e62b61e9405b937b30fcc6c36c58c
Author: Tom Stellard <tstellar at redhat.com>
Date: 2026-06-10 (Wed, 10 Jun 2026)
Changed paths:
M .github/workflows/subscriber.yml
Log Message:
-----------
workflows/subscriber: Use github-automation container (#202777)
This simplifies the workflow and might help it run faster too.
Commit: 433a41eeb99fc294d20653e5518c388d68c2fcf0
https://github.com/llvm/llvm-project/commit/433a41eeb99fc294d20653e5518c388d68c2fcf0
Author: Luke Lau <luke at igalia.com>
Date: 2026-06-11 (Thu, 11 Jun 2026)
Changed paths:
M .github/workflows/test-suite.yml
Log Message:
-----------
[GitHub] React to /test-suite comment (#203151)
So the user knows the workflow has kicked off. I've put it in a separate
job with write permissions so the main job should still only have a read
only token.
Commit: 08f554f4d6e4b938637f86a4566dfe71297211b7
https://github.com/llvm/llvm-project/commit/08f554f4d6e4b938637f86a4566dfe71297211b7
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2026-06-11 (Thu, 11 Jun 2026)
Changed paths:
M cross-project-tests/lit.cfg.py
Log Message:
-----------
[cross-project-tests] Use lit internal shell (#203138)
Commit: 4bff2386471a1036ef7096ba5030980df469b8ea
https://github.com/llvm/llvm-project/commit/4bff2386471a1036ef7096ba5030980df469b8ea
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2026-06-11 (Thu, 11 Jun 2026)
Changed paths:
M cross-project-tests/lit.cfg.py
Log Message:
-----------
[cross-project-tests] Fix some tests with the internal shell (#203169)
We need to prepend any environment variables that get set with env.
Commit: 7ad99619116468240ccc152c4bac05895a5ca4b6
https://github.com/llvm/llvm-project/commit/7ad99619116468240ccc152c4bac05895a5ca4b6
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2026-06-11 (Thu, 11 Jun 2026)
Changed paths:
M llvm/test/CodeGen/X86/2009-11-17-UpdateTerminator.ll
M llvm/test/CodeGen/X86/2011-09-14-valcoalesce.ll
Log Message:
-----------
[X86] Generate assertions with update_llc_test_checks
A follow-up PR will modify some lines in 2011-09-14-valcoalesce.ll and
adding assertions to 2009-11-17-UpdateTerminator.ll essentially serves
as precommitting tests for #202763.
Reviewers: RKSimon, arsenm, phoebewang
Pull Request: https://github.com/llvm/llvm-project/pull/203109
Commit: 943dafde41530834611b6f76256184f15a70a174
https://github.com/llvm/llvm-project/commit/943dafde41530834611b6f76256184f15a70a174
Author: Felipe de Azevedo Piovezan <fpiovezan at apple.com>
Date: 2026-06-11 (Thu, 11 Jun 2026)
Changed paths:
M lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCRuntimeV2.cpp
M lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCRuntimeV2.h
M lldb/source/Plugins/LanguageRuntime/ObjC/ObjCLanguageRuntime.h
Log Message:
-----------
[lldb][NFC] Return unique_ptr in AppleObjCRuntimeV2::TaggedPointerVendorLegacy::GetClassDescriptor (#202921)
There is no reason to use a shared_pointer here.
Commit: e8fdbcf7a318e54aef118574e73385e37f7b1520
https://github.com/llvm/llvm-project/commit/e8fdbcf7a318e54aef118574e73385e37f7b1520
Author: Lang Hames <lhames at gmail.com>
Date: 2026-06-11 (Thu, 11 Jun 2026)
Changed paths:
M orc-rt/lib/executor/Unix/NativeDylibAPIs.inc
M orc-rt/unittests/NativeDylibManagerSPSCITest.cpp
M orc-rt/unittests/NativeDylibManagerTest.cpp
Log Message:
-----------
[orc-rt] Strip leading '_' in NativeDylibAPIs on Darwin. (#203170)
NativeDylibAPIs::lookup takes linker-mangled names. On Darwin,
linker-mangling adds an '_' to the front of C symbol names. We need to
strip this off again before calling dlsym (which expects a C name).
Linker mangled names that don't start with an '_' are treated as
missing, since dlsym could never find an address for such a symbol.
Commit: f15666db52ffafe798d9247442cb941c9dffd5b5
https://github.com/llvm/llvm-project/commit/f15666db52ffafe798d9247442cb941c9dffd5b5
Author: Sushant Gokhale <sgokhale at nvidia.com>
Date: 2026-06-10 (Wed, 10 Jun 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/test/Transforms/SLPVectorizer/SystemZ/revec-fix-128169.ll
M llvm/test/Transforms/SLPVectorizer/X86/revec-reduced-value-vectorized-later.ll
M llvm/test/Transforms/SLPVectorizer/revec.ll
Log Message:
-----------
[SLP] Inefficient cost-modelling and codegen for reductions with slp-… (#197875)
…revec
When revectorizing, starting with reduction, SLP generates slightly
inefficient code for reduction. e.g. In the godbolt link
[here](https://godbolt.org/z/ez7KPnxM5),
`hor_reduction --> original code`
`hor_reduction_revec_as_imagined_in_SLP --> revectorized code would look
like`
Rather than extracting per lane, we can extract original leaf nodes of
the reduction, which are sub-vectors, and then perform usual reduction
as in non-revectorized code. In the above link,
`hor_reduction_ideal_revec --> how the revec code should look like`
Extracting subvectors and achieving the reduction result would be better
than extracting per lane and achieving the same result.
Commit: b9d7710311cf31521c784609fc2648f980637059
https://github.com/llvm/llvm-project/commit/b9d7710311cf31521c784609fc2648f980637059
Author: owenca <owenpiano at gmail.com>
Date: 2026-06-10 (Wed, 10 Jun 2026)
Changed paths:
M clang/lib/Format/TokenAnnotator.cpp
M clang/unittests/Format/FormatTest.cpp
Log Message:
-----------
[clang-format] Fix a bug in aligning comments above finalized line (#202253)
Don't change the indent level of the comments if they are already
aligned with the finalized line below.
Fixes #200521
Commit: 1a4e43531e6a483ecc2404ae97faeac8a6b808de
https://github.com/llvm/llvm-project/commit/1a4e43531e6a483ecc2404ae97faeac8a6b808de
Author: David Zbarsky <dzbarsky at gmail.com>
Date: 2026-06-11 (Thu, 11 Jun 2026)
Changed paths:
M clang/lib/Serialization/ASTWriter.cpp
Log Message:
-----------
[NFC][clang][Serialization] Batch serialized LangOptions values (#202844)
Collect fixed language-option and sanitizer values in a `uint64_t` local
array and append the array to the control-block record once. Generated
values retain their serialized order.
Linked `clang` and `clangd` shrink by 91,584 and 91,520 bytes
respectively; `ASTWriter.cpp.o` shrinks by 25,128 bytes with 396 fewer
relocations, while linked fixups are unchanged.
Work towards #202616
AI tool disclosure: Co-authored with OpenAI Codex.
Commit: 1b1e7c0a972fa1e285583e51508583fb20e176bd
https://github.com/llvm/llvm-project/commit/1b1e7c0a972fa1e285583e51508583fb20e176bd
Author: Timur Golubovich <timur.golubovich at intel.com>
Date: 2026-06-11 (Thu, 11 Jun 2026)
Changed paths:
M clang/include/clang/Options/Options.td
M clang/lib/Basic/Targets/X86.cpp
M clang/lib/Driver/ToolChains/Arch/X86.cpp
M clang/test/Driver/cl-x86-flags.c
M clang/test/Driver/x86-target-features.c
M llvm/lib/Target/X86/X86Subtarget.cpp
M llvm/lib/TargetParser/Host.cpp
M llvm/test/CodeGen/X86/apx/push2-pop2-cfi-seh-v3.ll
M llvm/test/CodeGen/X86/apx/push2-pop2-cfi-seh.ll
Log Message:
-----------
[X86][APX] Enable PP2/PPX generation on Windows (#202984)
Revert restrictions from
https://github.com/llvm/llvm-project/pull/178122 which disabled
PUSH2/POP2/PPX on Windows due to missing unwinder opcodes. Now that
unwinder support has landed, this is no longer needed.
Commit: 8d8a19649168b9fd6e8ec4b6eaee47506c5ec38f
https://github.com/llvm/llvm-project/commit/8d8a19649168b9fd6e8ec4b6eaee47506c5ec38f
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2026-06-11 (Thu, 11 Jun 2026)
Changed paths:
M clang/lib/AST/ByteCode/InterpBuiltin.cpp
M clang/test/AST/ByteCode/builtins.c
Log Message:
-----------
[clang][bytecode] Check CarrayOutPtr in subcl more thorougly (#203172)
Use the local `isReadable` check.
Commit: d9b94497ce3dc9e10ab6e24aea9afcee655f3b25
https://github.com/llvm/llvm-project/commit/d9b94497ce3dc9e10ab6e24aea9afcee655f3b25
Author: Madhur Amilkanthwar <madhura at nvidia.com>
Date: 2026-06-11 (Thu, 11 Jun 2026)
Changed paths:
M llvm/lib/Transforms/Scalar/LoopFuse.cpp
Log Message:
-----------
[LoopFusion] Emit optimization remarks regardless of statistics (#202012)
The fusion remark helpers built their messages from a Statistic's name
and description and guarded the ORE.emit calls with #if LLVM_ENABLE_STATS,
so a Release build with statistics disabled emitted no -Rpass /
-Rpass-missed remarks at all.
Make the remark helpers take the remark name and message as explicit
strings so they are implemented independently of the statistics, and
emit the remarks unconditionally. The statistics keep using the plain
STATISTIC macro and are incremented at the call sites.
Commit: c120b3a364519ab424838371ad7369a163d3ee8c
https://github.com/llvm/llvm-project/commit/c120b3a364519ab424838371ad7369a163d3ee8c
Author: Rohit Garg <rohgarg at qti.qualcomm.com>
Date: 2026-06-11 (Thu, 11 Jun 2026)
Changed paths:
A llvm/test/Transforms/LoopInterchange/partially-perfect-loop.ll
Log Message:
-----------
[LoopInterchange] Add test for partially-perfect loop nests (NFC) (#201507)
This PR adds test case for the imperfect loop nest case in
LoopInterchange. The corresponding support is being added in
https://github.com/llvm/llvm-project/pull/199511.
Commit: 907b5e92e1ddbbcc93e7bac84fcfa5810f442997
https://github.com/llvm/llvm-project/commit/907b5e92e1ddbbcc93e7bac84fcfa5810f442997
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2026-06-11 (Thu, 11 Jun 2026)
Changed paths:
M clang/lib/AST/ByteCode/Interp.h
M clang/lib/AST/ByteCode/Pointer.cpp
M clang/test/AST/ByteCode/cxx11.cpp
M clang/test/SemaCXX/constant-expression-p2280r4.cpp
Log Message:
-----------
[clang][bytecode] Diagnose more pointer comparisons (#201588)
Diagnose comparisons between base classes as well as base classes and
fields. Also add some test cases for things that currently fail because
we compute the wrong offset.
Commit: 725fb3845d2df3267983590e2228569126468c96
https://github.com/llvm/llvm-project/commit/725fb3845d2df3267983590e2228569126468c96
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2026-06-11 (Thu, 11 Jun 2026)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/docs/SanitizerSpecialCaseList.rst
M llvm/lib/Support/SpecialCaseList.cpp
M llvm/unittests/Support/SpecialCaseListTest.cpp
Log Message:
-----------
[SpecialCaseList] Add backward compatible dot-slash handling (#162511)
This PR is preparation for:
* https://github.com/llvm/llvm-project/pull/167283
The new behavior is controlled by the `Version` field in the special
case list file.
- Version 1 and 2: Path is matched as-is, regardless of presence of
"./".
- Version 3, 5 and higher: Paths with leading dot-slash are
canonicalized
to paths without dot-slash before matching. This means that a rule
like `src=./foo` will never match, and `src=foo` will match both
`foo` and `./foo`. (Version 3 never became default but has this
behavior).
- Version 4: Transitionary version. Paths are matched both ways
(canonicalized and non-canonicalized) to maintain backward
compatibility.
If a match only works with the old behavior (non-canonicalized), a
warning
is emitted.
This change allows for a gradual transition to the new behavior, while
maintaining backward compatibility with existing special case list
files.
Commit: 685a4702e8f0f7a0d8db0643227c6569ad391c09
https://github.com/llvm/llvm-project/commit/685a4702e8f0f7a0d8db0643227c6569ad391c09
Author: Lucas Chollet <lucas.chollet at serenityos.org>
Date: 2026-06-11 (Thu, 11 Jun 2026)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Options/Options.td
M clang/lib/Driver/ToolChains/Clang.cpp
M llvm/lib/Target/RISCV/RISCVFrameLowering.cpp
M llvm/lib/Target/RISCV/RISCVFrameLowering.h
M llvm/lib/Target/RISCV/RISCVInstrInfo.cpp
M llvm/lib/Target/RISCV/RISCVInstrInfo.h
M llvm/lib/Target/RISCV/RISCVInstrInfo.td
M llvm/lib/Target/RISCV/RISCVRegisterInfo.cpp
M llvm/lib/Target/RISCV/RISCVRegisterInfo.h
M llvm/lib/Target/RISCV/RISCVRegisterInfo.td
A llvm/test/CodeGen/RISCV/zero-call-used-regs.ll
Log Message:
-----------
[RISCV] Add partial support for -fzero-call-used-regs (#194883)
This implements the "-fzero-call-used-regs" option on RISCV for the
"skip" and "*gpr*" arguments. Zeroing floating points and vector
registers will be implemented later.
Commit: 2f8c8cb90e0a0e257689313d38bf78a0f95324b6
https://github.com/llvm/llvm-project/commit/2f8c8cb90e0a0e257689313d38bf78a0f95324b6
Author: Nikita Popov <npopov at redhat.com>
Date: 2026-06-11 (Thu, 11 Jun 2026)
Changed paths:
M llvm/lib/IR/Value.cpp
M llvm/test/Transforms/GVN/PRE/pre-loop-load.ll
Log Message:
-----------
[IR] Allocas cannot be freed (#202875)
Make canBeFreed() return false for alloca instructions. This matches the
modelling in getPointerDereferenceableBytes(), and as such only affects
the single other caller, which is loop load PRE (resolving the TODO
there).
allocas remain dereferenceable after lifetime.end, in the sense that
it's safe to speculatively load from them. They only become
non-writable, and I don't think this API is responsible for tracking
that (that would be isWritableObject, where unconditionally returning
true for allocas is technically incorrect and it already has a TODO to
that effect). To the best of my knowledge, the only transform that is
affected by lifetime.end making allocas non-writable is scalar promotion
with store speculation in LICM, so a fix to this issue will either be
localized there, or be part of a full lifetime redesign. In any case, it
should not infect the canBeFreed() API.
Commit: 1c5edbb9ff728d2d5d7690888751ec943a4d560e
https://github.com/llvm/llvm-project/commit/1c5edbb9ff728d2d5d7690888751ec943a4d560e
Author: Luke Lau <luke at igalia.com>
Date: 2026-06-11 (Thu, 11 Jun 2026)
Changed paths:
M llvm/lib/Target/RISCV/RISCVVectorPeephole.cpp
M llvm/test/CodeGen/RISCV/rvv/rvv-peephole-vmerge-vops.ll
M llvm/test/CodeGen/RISCV/rvv/vmerge-peephole.mir
Log Message:
-----------
[RISCV] Fix ensureDominates with successive defs (#203174)
In RISCVVectorPeephole when we want to sink a use so that it's below
multiple defs, if the defs are beside each other then we will end up
checking if !dominates(Dest, Dest). This should be
!strictlyDominates(Dest, Dest), otherwise we don't sink the use far
enough.
Fixes #202894
Co-authored-by: Pengcheng Wang <wangpengcheng.pp at bytedance.com>
Commit: 63e33c6aeed23e71763ea0dea89621d89866446e
https://github.com/llvm/llvm-project/commit/63e33c6aeed23e71763ea0dea89621d89866446e
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2026-06-11 (Thu, 11 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:
-----------
[NFC][Support] Implement slash-agnostic path matching in GlobPattern (#202854)
Add a SlashAgnostic option to GlobPattern to allow matching path
separators
(both forward slashes and backslashes) agnostically.
When enabled:
- We conservatively reduce the plain prefix and suffix by treating path
separators as metacharacters. This ensures that path separators are
matched via the slash-agnostic state machine rather than plain string
comparison.
- Brackets containing slashes are adjusted to match both separators.
- Character comparisons in the state machine (matchChar) treat '/' and
'\' as equivalent.
For #149886.
Co-authored-by: Devon Loehr <DKLoehr at users.noreply.github.com>
Assisted-by: Gemini
Commit: 86154e8fd0d45825a4753b973312b78944b3d38c
https://github.com/llvm/llvm-project/commit/86154e8fd0d45825a4753b973312b78944b3d38c
Author: Cullen Rhodes <cullen.rhodes at arm.com>
Date: 2026-06-11 (Thu, 11 Jun 2026)
Changed paths:
M llvm/include/llvm/CodeGen/GlobalISel/LegalizerHelper.h
M llvm/include/llvm/CodeGen/GlobalISel/Utils.h
M llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
M llvm/lib/CodeGen/GlobalISel/Utils.cpp
Log Message:
-----------
Reapply "[GlobalISel] Add a shared matcher for memcpy-family instructions (NFC)" (#202275) (#202298)
sanitizer-aarch64-linux-bootstrap-ubsan broke after #201766:
lab.llvm.org/buildbot/#/builders/85/builds/22356
failed tests:
LLVM :: CodeGen/AArch64/aarch64-mops.ll
LLVM :: CodeGen/AArch64/memsize-remarks.ll
The culprit is canLowerMemCpyFamily returning true for zero-length ops
before initializing IsVolatile. The memcpy-family lowering helpers don't
use IsVolatile, it's only needed while building the lowering plan with
findGISelOptimalMemOpLowering and shouldn't have been forwarded.
I've also check the other arguments and simplified alignment too.
This reverts commit 2de2edb943fe1b83d79bdffa03606eb8c5452e9b.
Commit: d6abc8f78de200e045ce3bdcb4cc57a7f1b7c5c6
https://github.com/llvm/llvm-project/commit/d6abc8f78de200e045ce3bdcb4cc57a7f1b7c5c6
Author: Ryotaro Kasuga <kasuga.ryotaro at fujitsu.com>
Date: 2026-06-11 (Thu, 11 Jun 2026)
Changed paths:
M llvm/test/Transforms/LoopInterchange/confused-dependence.ll
M llvm/test/Transforms/LoopInterchange/currentLimitation.ll
M llvm/test/Transforms/LoopInterchange/debuginfo.ll
M llvm/test/Transforms/LoopInterchange/force-interchange.ll
M llvm/test/Transforms/LoopInterchange/fp-reductions.ll
M llvm/test/Transforms/LoopInterchange/guarded-inner-loop.ll
M llvm/test/Transforms/LoopInterchange/inner-only-reductions.ll
M llvm/test/Transforms/LoopInterchange/interchange-insts-between-indvar.ll
M llvm/test/Transforms/LoopInterchange/legality-for-scalar-deps.ll
M llvm/test/Transforms/LoopInterchange/loopnest-with-outer-btc0.ll
M llvm/test/Transforms/LoopInterchange/multilevel-partial-reduction.ll
M llvm/test/Transforms/LoopInterchange/outer-dependency-lte.ll
M llvm/test/Transforms/LoopInterchange/outer-only-reductions.ll
M llvm/test/Transforms/LoopInterchange/pr43176-move-to-new-latch.ll
M llvm/test/Transforms/LoopInterchange/pr43326-ideal-access-pattern.ll
M llvm/test/Transforms/LoopInterchange/pr43326.ll
M llvm/test/Transforms/LoopInterchange/pr48212.ll
M llvm/test/Transforms/LoopInterchange/profitability-redundant-interchange.ll
M llvm/test/Transforms/LoopInterchange/profitability-vectorization-heuristic.ll
M llvm/test/Transforms/LoopInterchange/profitability-vectorization.ll
M llvm/test/Transforms/LoopInterchange/reductions-across-inner-and-outer-loop.ll
M llvm/test/Transforms/LoopInterchange/reductions-non-wrapped-operations.ll
Log Message:
-----------
[LoopInterchange] Use UTC as much as possible (NFC) (#202096)
Historically, the loop-interchange tests have relied heavily on checks
via pass remarks. This is because pass remarks are more human-readable
than the CHECK directives generated by UTC. However, during recent
development, I found some downsides:
- Updating them manually is a bit tedious.
- We need to carefully keep the remarks and the code consistent with
each other. In other words, we don't have any way to verify whether the
remarks themselves are reasonable.
For these reasons, I now think it makes more sense to rely on UTC as
much as possible, and this patch does that. Some tests are left as-is,
e.g., the test for checking remarks.
Disclosure: This patch is assisted-by Claude Code.
Commit: b65e7e4918341fc9007bdf48e3098046ff13078f
https://github.com/llvm/llvm-project/commit/b65e7e4918341fc9007bdf48e3098046ff13078f
Author: Andrei Safronov <andrei.safronov at espressif.com>
Date: 2026-06-11 (Thu, 11 Jun 2026)
Changed paths:
M llvm/lib/Target/Xtensa/AsmParser/XtensaAsmParser.cpp
M llvm/lib/Target/Xtensa/MCTargetDesc/XtensaMCAsmInfo.cpp
M llvm/lib/Target/Xtensa/MCTargetDesc/XtensaTargetStreamer.cpp
M llvm/lib/Target/Xtensa/XtensaAsmPrinter.cpp
A llvm/test/CodeGen/Xtensa/tls.ll
A llvm/test/MC/Xtensa/tls.s
Log Message:
-----------
[Xtensa] Fix code generation for TLS variables. (#202822)
This MR fixes https://github.com/llvm/llvm-project/issues/190202
Commit: 9347582fd312afe51b2ac3eb436d6d5d6bb6d2a3
https://github.com/llvm/llvm-project/commit/9347582fd312afe51b2ac3eb436d6d5d6bb6d2a3
Author: Igor Wodiany <igor.wodiany at amd.com>
Date: 2026-06-11 (Thu, 11 Jun 2026)
Changed paths:
M llvm/include/llvm/Target/GlobalISel/SelectionDAGCompat.td
M llvm/include/llvm/Target/TargetSelectionDAG.td
M llvm/lib/Target/AArch64/AArch64InstrInfo.td
M llvm/lib/Target/AMDGPU/SOPInstructions.td
M llvm/lib/Target/AMDGPU/VOP1Instructions.td
M llvm/test/TableGen/GlobalISelEmitter/SkippedPatterns.td
M llvm/utils/TableGen/GlobalISelEmitter.cpp
Log Message:
-----------
[GlobalISel] Remove `fp_to_[s/u]int_sat_gi` node (#202908)
Instead of having a separate node reuse `fp_to_[s/u]int_sat`
but drop the saturation width from it.
Assisted-by: Claude Code
Commit: 34a321a74fdf87c3e3f5e80d95d581629513441d
https://github.com/llvm/llvm-project/commit/34a321a74fdf87c3e3f5e80d95d581629513441d
Author: David Sherwood <david.sherwood at arm.com>
Date: 2026-06-11 (Thu, 11 Jun 2026)
Changed paths:
M llvm/test/Transforms/LoopVectorize/ARM/mve-qabs.ll
M llvm/test/Transforms/LoopVectorize/ARM/mve-reduction-predselect.ll
M llvm/test/Transforms/LoopVectorize/ARM/mve-reductions-interleave.ll
M llvm/test/Transforms/LoopVectorize/ARM/mve-reductions.ll
M llvm/test/Transforms/LoopVectorize/ARM/mve-saddsatcost.ll
M llvm/test/Transforms/LoopVectorize/ARM/mve-selectandorcost.ll
M llvm/test/Transforms/LoopVectorize/ARM/pointer_iv.ll
M llvm/test/Transforms/LoopVectorize/ARM/tail-fold-multiple-icmps.ll
Log Message:
-----------
[LV][NFC] Remove instcombine pass from RUN lines in ARM tests (#202913)
Following on from PR #197448 I've now removed the instcombine pass from
RUN lines in the ARM test directory, which exposes some potential
missing optimisations in vplan:
1. We could be folding IR into saturating math intrinsic calls to better
reflect the cost.
2. Masked load + select -> masked load with different passthru.
3. icmp + select -> smin/smax.
Some of these were already observed in #197448
Commit: 9ebbc1e089d64e717b3285ec463b92f94e7f55dc
https://github.com/llvm/llvm-project/commit/9ebbc1e089d64e717b3285ec463b92f94e7f55dc
Author: Jay Foad <jay.foad at amd.com>
Date: 2026-06-11 (Thu, 11 Jun 2026)
Changed paths:
M llvm/docs/ReleaseNotes.md
M llvm/include/llvm/ADT/APInt.h
M llvm/lib/Support/APInt.cpp
M llvm/unittests/ADT/APIntTest.cpp
Log Message:
-----------
[APInt] Provide sqrtFloor (floor of square root) instead of sqrt (rounded) (#197406)
This simplifies both the implementation and the only in-tree user.
I changed the name to avoid silently changing the behavour of an
existing function that might have out-of-tree users.
Commit: 7e6f2b798cb97d46f395dc79b9b27961dc546cca
https://github.com/llvm/llvm-project/commit/7e6f2b798cb97d46f395dc79b9b27961dc546cca
Author: Petar Avramovic <Petar.Avramovic at amd.com>
Date: 2026-06-11 (Thu, 11 Jun 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeRules.cpp
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/llvm.amdgcn.set.inactive.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/llvm.amdgcn.set.inactive.chain.arg.ll
Log Message:
-----------
AMDGPU/GlobalISel: RegBankLegalize rules for set_inactive intrinsics (#203047)
Commit: 123078c21cfbe4c6abe1052e53739f9e933e8c1d
https://github.com/llvm/llvm-project/commit/123078c21cfbe4c6abe1052e53739f9e933e8c1d
Author: Gil Rapaport <gil.rapaport at mobileye.com>
Date: 2026-06-11 (Thu, 11 Jun 2026)
Changed paths:
M mlir/include/mlir/Conversion/ConvertToEmitC/ConvertToEmitCPatternInterface.td
M mlir/include/mlir/Conversion/ConvertToEmitC/ToEmitCInterface.h
M mlir/include/mlir/Conversion/FuncToEmitC/FuncToEmitC.h
M mlir/include/mlir/Conversion/Passes.td
M mlir/lib/Conversion/ArithToEmitC/ArithToEmitC.cpp
M mlir/lib/Conversion/ConvertToEmitC/ConvertToEmitCPass.cpp
M mlir/lib/Conversion/FuncToEmitC/FuncToEmitC.cpp
M mlir/lib/Conversion/FuncToEmitC/FuncToEmitCPass.cpp
M mlir/lib/Conversion/MemRefToEmitC/MemRefToEmitC.cpp
M mlir/lib/Conversion/SCFToEmitC/SCFToEmitC.cpp
M mlir/test/Conversion/FuncToEmitC/func-to-emitc-failed.mlir
M mlir/test/Conversion/FuncToEmitC/func-to-emitc.mlir
M mlir/test/Target/Cpp/func.mlir
Log Message:
-----------
Reland emitc lower multi return functions (#203026)
Reland #200659 reverted by #202911.
Fixed GCC 7 func-to-emitc build: Use the adaptor operand types
when creating the multi-return struct type instead of relying on an
implicit conversion from ValueRange to TypeRange.
Failed buildbot:
https://lab.llvm.org/buildbot/#/builders/116/builds/29302
Assisted-by: Copilot
Commit: 67d211a220e79636cdef7667b1c429cb4fbd7660
https://github.com/llvm/llvm-project/commit/67d211a220e79636cdef7667b1c429cb4fbd7660
Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
Date: 2026-06-11 (Thu, 11 Jun 2026)
Changed paths:
M mlir/lib/Conversion/ComplexToSPIRV/ComplexToSPIRV.cpp
M mlir/test/Conversion/ComplexToSPIRV/complex-to-spirv.mlir
Log Message:
-----------
[mlir][SPIR-V] Convert complex.neg and complex.conj in ComplexToSPIRV (#202898)
Commit: 5e7ec28c5e3a70588bbe9368d3816b009cf3670f
https://github.com/llvm/llvm-project/commit/5e7ec28c5e3a70588bbe9368d3816b009cf3670f
Author: Andrzej Warzyński <andrzej.warzynski at arm.com>
Date: 2026-06-11 (Thu, 11 Jun 2026)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenBuiltinAArch64.cpp
M clang/test/CodeGen/AArch64/neon-intrinsics.c
M clang/test/CodeGen/AArch64/neon-misc.c
A clang/test/CodeGen/AArch64/neon/conversion-fullfp16.c
M clang/test/CodeGen/AArch64/neon/intrinsics.c
M clang/test/CodeGen/AArch64/v8.2a-neon-intrinsics.c
Log Message:
-----------
[clang][CIR][AArch64] Add lowering for conversion intrinsics (#199990)
This PR adds lowering for intrinsic from the following groups:
* https://arm-software.github.io/acle/neon_intrinsics/advsimd.html#conversions
* https://arm-software.github.io/acle/neon_intrinsics/advsimd.html#conversions-2
It continues the work started in #190961 and #193273. This PR implements
conversions from FP to integer types where the bit-wdith does not
change:
* vcvt_s64_f64
* vcvt_u64_f64
* vcvt_s32_f32
* vcvtq_s32_f32
* vcvtq_s64_f64
* vcvt_u32_f32
* vcvtq_u32_f32
* vcvtq_u64_f64
* vcvt_s16_f16
* vcvtq_s16_f16
* vcvt_u16_f16
* vcvtq_u16_f16
The corresponding tests are moved from:
* clang/test/CodeGen/AArch64/
to:
* clang/test/CodeGen/AArch64/neon/
The lowering follows the existing implementation in
CodeGen/TargetBuiltins/ARM.cpp.
Commit: 046bd54d17a057fdf344889f8e4b1b8e6d850dd7
https://github.com/llvm/llvm-project/commit/046bd54d17a057fdf344889f8e4b1b8e6d850dd7
Author: Pengcheng Wang <wangpengcheng.pp at bytedance.com>
Date: 2026-06-11 (Thu, 11 Jun 2026)
Changed paths:
M llvm/lib/Target/RISCV/RISCVRegisterInfo.cpp
M llvm/test/CodeGen/RISCV/add-before-shl.ll
M llvm/test/CodeGen/RISCV/callee-saved-gprs.ll
M llvm/test/CodeGen/RISCV/fold-addi-loadstore.ll
M llvm/test/CodeGen/RISCV/machine-pipeliner.ll
M llvm/test/CodeGen/RISCV/nontemporal.ll
M llvm/test/CodeGen/RISCV/push-pop-popret.ll
M llvm/test/CodeGen/RISCV/qci-interrupt-attr-fpr.ll
M llvm/test/CodeGen/RISCV/qci-interrupt-attr.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-int-buildvec.ll
M llvm/test/CodeGen/RISCV/rvv/nontemporal-vp-scalable.ll
M llvm/test/CodeGen/RISCV/rvv/pr95865.ll
M llvm/test/CodeGen/RISCV/rvv/vsetvli-insert-crossbb.ll
M llvm/test/CodeGen/RISCV/rvv/vxrm-insert-out-of-loop.ll
M llvm/test/CodeGen/RISCV/select-cc.ll
M llvm/test/CodeGen/RISCV/xqccmp-callee-saved-gprs.ll
M llvm/test/CodeGen/RISCV/xqccmp-push-pop-popret.ll
Log Message:
-----------
[RISCV] Set CostPerUse to 1 only when optimizing for size (#201501)
We saw some regressions because of bad RAs as the cost of registers
beyond x8-x15 are bigger. This is why `DisableCostPerUse` was added
in https://github.com/llvm/llvm-project/issues/83320.
In this PR, we change it to set `CostPerUse=1` only when optimizing
for size.
Code size increases less than 0.1% in llvm-test-suite.
Commit: 700ff25b03ec747784f1e6a92e076ee009db37aa
https://github.com/llvm/llvm-project/commit/700ff25b03ec747784f1e6a92e076ee009db37aa
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2026-06-11 (Thu, 11 Jun 2026)
Changed paths:
M libcxx/include/thread
Log Message:
-----------
[libc++] Hoist <compare> outside the threads guard in <thread> (#202535)
The standard mandates [thread.syn] include <compare> as part of
<thread>'s synopsis. This is a standards-mandated dependency, not a
thread-feature dependency, so it should be visible regardless of
_LIBCPP_HAS_THREADS.
This matches how we handle standard-mandated includes elsewhere, see for
example #134877.
Commit: b836063bbf6f856c85801e40e31e8221f240653d
https://github.com/llvm/llvm-project/commit/b836063bbf6f856c85801e40e31e8221f240653d
Author: Madhur Amilkanthwar <madhura at nvidia.com>
Date: 2026-06-11 (Thu, 11 Jun 2026)
Changed paths:
M llvm/lib/Transforms/Scalar/LoopFuse.cpp
Log Message:
-----------
[LoopFusion] Drop duplicate write-write dependence check (NFC) (#203173)
`dependencesAllowFusion()` re-tested every FC0-write vs FC1-write pair
in the second loop nest, duplicating the checks already done in the
first. Iterate only the remaining FC0-read vs FC1-write pairs; the set
of checked dependences (W0xW1, W0xR1, R0xW1) is unchanged.
Commit: 8210a58044d1e6d86473fdf810396d285c86ff36
https://github.com/llvm/llvm-project/commit/8210a58044d1e6d86473fdf810396d285c86ff36
Author: Fabrice de Gans <Steelskin at users.noreply.github.com>
Date: 2026-06-11 (Thu, 11 Jun 2026)
Changed paths:
M libcxxabi/src/demangle/Utility.h
M llvm/include/llvm/Demangle/DemangleConfig.h
M llvm/include/llvm/Demangle/Utility.h
Log Message:
-----------
[Demangle] Guard DEMANGLE_ABI and add missing annotation (#202920)
This updates the DEMANGLE_ABI annotation to only be defined if it is not
already defined. This is required to parse the Demangle headers with the
ids-check script.
In addition, this adds one missing DEMANGLE_ABI annotation.
This effort is tracked in #109483.
Commit: 0cce78251f4c534b0d0a5ad55dd470e101ea9b94
https://github.com/llvm/llvm-project/commit/0cce78251f4c534b0d0a5ad55dd470e101ea9b94
Author: Tim Besard <tim.besard at gmail.com>
Date: 2026-06-11 (Thu, 11 Jun 2026)
Changed paths:
M llvm/lib/Target/SPIRV/SPIRVEmitIntrinsics.cpp
A llvm/test/CodeGen/SPIRV/select-aggregate.ll
A llvm/test/CodeGen/SPIRV/select-composite-constant.ll
Log Message:
-----------
[SPIR-V] Lower `select` instructions with aggregate operands (#201417)
Context: `SPIRVEmitIntrinsics` represents aggregate (array/struct) SSA
values as i32 value-ids, keeping the real type on the side for SPIR-V
emission. `preprocessCompositeConstants()` rewrites composite constant
operands into those value-ids.
A `select` takes its result type from its operands, so rewriting one arm
leaves the select with an aggregate result type but an i32 operand,
which is invalid. The exact failure mode depends: a composite-constant
arm tripped the verifier ("Select values must have same type as select
instruction"), while a non-constant arm (say a load) only became a
value-id later, in the visitor pass, at which point
`replaceMemInstrUses()` found a `select` among its users and hit an
unreachable.
I pushed two commits fixing this, one limited to my use case, another
more general:
1. Constant arms only. The common case is a select between two composite
constants, such as two complex literals. Once both arms are value-ids,
mutate the select to i32 and record its real type in `AggrConstTypes`;
the existing visitor turns its `extractvalue` users into `spv_extractv`.
2. An arm can also be a load or `insertvalue` result, which only becomes
a value-id later, in the visitor pass. By then the select has already
been mutated to i32, so its operand has to be reconciled when the arm is
lowered. This commit makes `select` behave like `PHINode` (which already
handles this): mutate every aggregate select to i32 up front, and handle
`SelectInst` in `replaceMemInstrUses()` so the operand and its
`extractvalue` users get fixed up as each arm is lowered. Nested
aggregate selects fall out of the same up-front mutation.
Developed with the help of Claude 4.8.
Closes https://github.com/llvm/llvm-project/issues/151344
---------
Co-authored-by: Claude Opus 4.8 (1M context) <noreply at anthropic.com>
Commit: 4b3deaeb0d85fda9f6eee73f65f0be16b0e00698
https://github.com/llvm/llvm-project/commit/4b3deaeb0d85fda9f6eee73f65f0be16b0e00698
Author: Sven van Haastregt <sven.vanhaastregt at arm.com>
Date: 2026-06-11 (Thu, 11 Jun 2026)
Changed paths:
M llvm/unittests/DebugInfo/PDB/CMakeLists.txt
Log Message:
-----------
Fix DebugInfo unittests shared library build (#202943)
Fixes: `PublicsStreamTest.cpp.o: undefined reference to symbol
'_ZN4llvm6object18GenericBinaryErrorC1ERKNS_5TwineENS0_12object_errorE'`
under `BUILD_SHARED_LIBS=1`.
Commit: 9673aae1fc67abcab756ed3f6e36dff846e8228c
https://github.com/llvm/llvm-project/commit/9673aae1fc67abcab756ed3f6e36dff846e8228c
Author: khaki3 <47756807+khaki3 at users.noreply.github.com>
Date: 2026-06-11 (Thu, 11 Jun 2026)
Changed paths:
M flang/lib/Lower/PFTBuilder.cpp
A flang/test/Lower/OpenACC/acc-declare-interface-body.f90
Log Message:
-----------
[flang][OpenACC] Don't hoist declare directive out of interface bodies (#202806)
Example:
```fortran
program main
real :: a(10, 60)
interface
subroutine compute(a)
real :: a(10, 60)
!$acc declare present(a)
end subroutine
end interface
call compute(a)
end program
```
In this code, the `!$acc declare` inside the interface body is hoisted
into the
host program unit and lowered there, where its operand (the interface
dummy)
has no IR value, so lowering aborts with "symbol is not mapped to any IR
value".
This happens because interface-body procedures are not function-like
units, so
the directive is appended to the enclosing unit's evaluation list.
Fix: track interface-body nesting in the PFT builder and do not add an
`OpenACCDeclarativeConstruct` to the enclosing unit's evaluation list
while
inside one. The directive is no longer hoisted out and is generated only
in its
proper scope (the procedure definition or a module-level declare).
Commit: 8acfc364e9f788367ff0beab5c76a3527a689a0b
https://github.com/llvm/llvm-project/commit/8acfc364e9f788367ff0beab5c76a3527a689a0b
Author: Pavel Labath <pavel at labath.sk>
Date: 2026-06-11 (Thu, 11 Jun 2026)
Changed paths:
M libc/include/arpa/inet.yaml
A libc/include/htons-family.yaml
M libc/include/netinet/in.yaml
M libc/utils/docgen/netinet/in.yaml
Log Message:
-----------
[libc] Add the htons function family to netinet/in.h (#203028)
As required by POSIX.
I've used the merge_yaml_files functionality to avoid duplication.
Assisted by Gemini.
Commit: f5bf584afaaf0549fbf5d645298ff5a3bea31b96
https://github.com/llvm/llvm-project/commit/f5bf584afaaf0549fbf5d645298ff5a3bea31b96
Author: Konstantin Belochapka <konstantin.belochapka at sony.com>
Date: 2026-06-11 (Thu, 11 Jun 2026)
Changed paths:
M clang/lib/Driver/ToolChains/PS4CPU.cpp
M clang/test/Driver/ps5-linker.c
Log Message:
-----------
[clang][PS5] Clang driver PS5 - pass the target CPU to lld. (#202924)
Forward the PS5 target CPU from the clang driver to lld as
`-plugin-opt=mcpu=znver2`, matching behavior of other platforms.
Most drivers call addLTOOptions to include LTO-related link options. That includes specifying mcpu. The PS5 driver doesn't yet call addLTOOptions. In time I hope we'll arrive at a point where we can refactor to use the same functionality. This is one step towards that.
---------
Co-authored-by: Edd Dawson <edd.dawson at sony.com>
Commit: b01d0342c129405c30947f459cf055bbe8846974
https://github.com/llvm/llvm-project/commit/b01d0342c129405c30947f459cf055bbe8846974
Author: jay0x <90309873+blazie2004 at users.noreply.github.com>
Date: 2026-06-11 (Thu, 11 Jun 2026)
Changed paths:
M flang/lib/Semantics/check-call.cpp
M flang/lib/Semantics/check-call.h
M flang/lib/Semantics/expression.cpp
A flang/test/Semantics/call47.f90
Log Message:
-----------
[Flang] Reject keyword arguments in statement function calls (#198610)
**Problem**
Flang silently accepted keyword arguments in calls to statement
functions, violating F2018 C1535.
**Standard: F2018 §15.5.1 C1535**: In a reference to a procedure whose
interface is implicit at the point of the reference, the actual argument
shall not be a keyword argument.
Flang silently compiles the following code without giving error` Keyword
argument 'x' at (1) is invalid in a statement function
`
```
program test
integer :: f1, x, c
f1(x) = x / 2
c = f1(x=10) ! Should be an error
end program
```
**Summary**
Fixed an issue where statement functions were incorrectly treated as
having an explicit interface, causing argument checks to be skipped.
Now, statement functions are marked correctly so existing checks run and
proper errors are shown
**Fixes** : [198523](https://github.com/llvm/llvm-project/issues/198523)
---------
Co-authored-by: Jay Satish Kumar Patel <kumarpat at pe31.hpc.amslabs.hpecorp.net>
Commit: 076a0a3aacca9c01ca8b6602589752d28e5dbf38
https://github.com/llvm/llvm-project/commit/076a0a3aacca9c01ca8b6602589752d28e5dbf38
Author: Abid Qadeer <haqadeer at amd.com>
Date: 2026-06-11 (Thu, 11 Jun 2026)
Changed paths:
M flang/lib/Lower/OpenMP/OpenMP.cpp
M flang/lib/Lower/OpenMP/Utils.cpp
M flang/lib/Lower/OpenMP/Utils.h
Log Message:
-----------
[flang][OpenMP] Move TargetOMPContext to shared FlangOMPContext (NFC) (#202677)
Moving the class to shared code makes it available for reuse by
forthcoming DECLARE VARIANT lowering without any functional change to
existing metadirective lowering.
Commit: ed29c68bbdf52f377120817b7a371f5ba641b0d0
https://github.com/llvm/llvm-project/commit/ed29c68bbdf52f377120817b7a371f5ba641b0d0
Author: Pavel Labath <pavel at labath.sk>
Date: 2026-06-11 (Thu, 11 Jun 2026)
Changed paths:
M libc/fuzzing/CMakeLists.txt
A libc/fuzzing/arpa/CMakeLists.txt
A libc/fuzzing/arpa/inet/CMakeLists.txt
A libc/fuzzing/arpa/inet/inet_aton_differential_fuzz.cpp
Log Message:
-----------
[libc] Add a differential fuzzer for inet_aton (#200341)
Commit: 8bb9b2ec2274f607151b18cecefd09252110fe37
https://github.com/llvm/llvm-project/commit/8bb9b2ec2274f607151b18cecefd09252110fe37
Author: Paul Walker <paul.walker at arm.com>
Date: 2026-06-11 (Thu, 11 Jun 2026)
Changed paths:
M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
M llvm/test/Analysis/CostModel/AArch64/sve-intrinsics.ll
A llvm/test/Analysis/CostModel/AArch64/sve-vector-reduce-fp.ll
Log Message:
-----------
[LLVM][CostModel][SVE] Return InvalidCost for bfloat scalable vector ordered arithmetic reductions. (#202569)
Commit: e95871719c41a8de96b438b962ed3b8f869b9e0c
https://github.com/llvm/llvm-project/commit/e95871719c41a8de96b438b962ed3b8f869b9e0c
Author: Luke Lau <luke at igalia.com>
Date: 2026-06-11 (Thu, 11 Jun 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
Log Message:
-----------
[VPlan] Recalculate VPDT in handleUncountableExitsWithSideEffects (#203233)
In the loop before we're modifying the CFG, but this invalidates the
dominator tree. We need to recalculate since we query it later on. I
can't really think of a test case for this, if anything using the
stale dominator tree with the extra branch will make the dominance
queries more conservative. But it's probably something we should fix.
Commit: 0c304c8b69cbb51ec8d68d2ee67b896767c0484e
https://github.com/llvm/llvm-project/commit/0c304c8b69cbb51ec8d68d2ee67b896767c0484e
Author: Gaurav Dhingra <gauravdhingra.gxyd at gmail.com>
Date: 2026-06-11 (Thu, 11 Jun 2026)
Changed paths:
M clang-tools-extra/clang-tidy/readability/InconsistentIfElseBracesCheck.cpp
M clang-tools-extra/docs/ReleaseNotes.rst
M clang-tools-extra/test/clang-tidy/checkers/readability/inconsistent-ifelse-braces-attributes.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/inconsistent-ifelse-braces.cpp
Log Message:
-----------
[clang-tidy] Ignore label-like statements when checking if/else bodies (#202869)
Fixes #194694
Commit: 072c355ae4854a2eff7d7a860c3dababe33f58f9
https://github.com/llvm/llvm-project/commit/072c355ae4854a2eff7d7a860c3dababe33f58f9
Author: Ryotaro Kasuga <kasuga.ryotaro at fujitsu.com>
Date: 2026-06-11 (Thu, 11 Jun 2026)
Changed paths:
A llvm/test/Transforms/LoopInterchange/inner-induciton-step-is-not-invariant.ll
Log Message:
-----------
[LoopInterchange] Add tests for outer-variant inner IV step (NFC) (#202750)
Adds test cases for #202383 and #202401. Both have an induction variable
in the inner loop whose step value is not loop-invariant with respect to
the outer loop.
Commit: 625538f44601b906a3db03b2b110f50915ca3ecd
https://github.com/llvm/llvm-project/commit/625538f44601b906a3db03b2b110f50915ca3ecd
Author: Paweł Bylica <pawel at hepcolgum.band>
Date: 2026-06-11 (Thu, 11 Jun 2026)
Changed paths:
M llvm/lib/Support/KnownBits.cpp
M llvm/unittests/Support/KnownBitsTest.cpp
Log Message:
-----------
[KnownBits] Fix add() SelfAdd assertion for bitwidths >= 512 (#202769)
`KnownBits::add()` with `SelfAdd=true` lowers `X+X` to `shl(X, 1)` using
a fixed 8-bit shift amount:
```cpp
KnownBits Amt = KnownBits::makeConstant(APInt(8, 1));
return KnownBits::shl(LHS, Amt, NUW, NSW, /*ShAmtNonZero=*/true);
```
The comment there claims the shift-amount bitwidth is independent of the
source bitwidth, but that is not true: `shl()`'s `getMaxShiftAmount()`
extracts `Log2_32(BitWidth)` bits from the shift amount's max value when
`BitWidth` is a power of two:
```cpp
static unsigned getMaxShiftAmount(const APInt &MaxValue, unsigned BitWidth) {
if (isPowerOf2_32(BitWidth))
return MaxValue.extractBitsAsZExtValue(Log2_32(BitWidth), 0);
...
}
```
For source widths `>= 512`, `Log2_32(BitWidth) >= 9`, so extracting that
many bits from the 8-bit shift amount trips the assertion in
`APInt::extractBitsAsZExtValue`:
```
Assertion `bitPosition < BitWidth && (numBits + bitPosition) <= BitWidth && "Illegal bit extraction"' failed.
#9 llvm::APInt::extractBitsAsZExtValue(unsigned int, unsigned int) const
#10 llvm::KnownBits::shl(...)
#11 llvm::KnownBits::add(...)
```
(256 is the boundary that still works: `Log2_32(256) == 8`, extracting
exactly 8 bits from the 8-bit amount.)
Fix: make the shift-amount bitwidth match the source bitwidth so the
extraction is always in bounds. The `SelfAdd` path was introduced in
#188078.
Found via fuzzing. Adds a `SelfAddWide` regression test covering widths
256/512/1024.
Commit: 831ed97b1215fdf506109029e4adf30de84c5019
https://github.com/llvm/llvm-project/commit/831ed97b1215fdf506109029e4adf30de84c5019
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2026-06-11 (Thu, 11 Jun 2026)
Changed paths:
M mlir/docs/LangRef.md
Log Message:
-----------
[mlir][LangRef] Clarify terminator continuations (#201111)
Document that terminators may have no normal control-flow continuation,
such as ub.unreachable. Also clarify that no-return calls do not remove
the structural terminator requirement.
Assisted-by: Codex
Commit: 9d98437fffe4cef9435d7202ecd4b3c88fdbb7ae
https://github.com/llvm/llvm-project/commit/9d98437fffe4cef9435d7202ecd4b3c88fdbb7ae
Author: Fangrui Song <i at maskray.me>
Date: 2026-06-11 (Thu, 11 Jun 2026)
Changed paths:
M llvm/include/llvm/ADT/StringMap.h
M llvm/lib/Transforms/IPO/StripSymbols.cpp
M llvm/unittests/ADT/StringMapTest.cpp
Log Message:
-----------
[StringMap] Invalidate iterators in remove() (#203249)
erase() bumps the epoch to invalidate iterators (#202237), but the
lower-level remove() — which detaches an entry without destroying it,
used
by ValueSymbolTable via Value::setName() — did not. Move the
incrementEpoch() into remove() so remove-while-iterating fails fast
under
LLVM_ENABLE_ABI_BREAKING_CHECKS too.
Aided by Claude Opus 4.8
Reland after lldb fix #203035
Commit: f4a027364add48b3522ead105494187ded58047f
https://github.com/llvm/llvm-project/commit/f4a027364add48b3522ead105494187ded58047f
Author: Alexandre Perez <alexandreperez at meta.com>
Date: 2026-06-11 (Thu, 11 Jun 2026)
Changed paths:
M lldb/test/API/tools/lldb-dap/coreFile/TestDAP_coreFile.py
M lldb/tools/lldb-dap/Handler/AttachRequestHandler.cpp
Log Message:
-----------
[lldb-dap] Support loading core files through attachCommands (#202785)
The `attachCommands` attach option lets users bootstrap a session with
arbitrary LLDB commands, but a command that loaded a core (e.g. `target
create --core`) produced a broken session:
`ConfigurationDoneRequestHandler` would call `process.Continue()` on the
core and fail, because the non-live-session handling was keyed on the
`coreFile` attach argument rather than on the actual resulting process.
This teaches `AttachRequestHandler` to detect, after the attach commands
run, whether the selected process was loaded from a core via the
`SBProcess:: IsLiveDebugSession()` API added in #203111. When it is a
core, it sets `stop_at_entry` and clears `is_live_session`, mirroring
what the `coreFile` key does.
Commit: fee67eec6d7f9e40d366c548aa7c59f98ca3b163
https://github.com/llvm/llvm-project/commit/fee67eec6d7f9e40d366c548aa7c59f98ca3b163
Author: Paweł Bylica <pawel at hepcolgum.band>
Date: 2026-06-11 (Thu, 11 Jun 2026)
Changed paths:
M llvm/lib/Target/X86/X86FlagsCopyLowering.cpp
A llvm/test/CodeGen/X86/flags-copy-lowering-unreachable.mir
Log Message:
-----------
[X86] Don't assert on EFLAGS copies in unreachable blocks (#203208)
X86FlagsCopyLowering collects the EFLAGS copies to lower using a
ReversePostOrderTraversal, which only visits blocks reachable from the
entry. Its end-of-pass verification, however, iterated over every block
in the function, so an EFLAGS copy left in an unreachable block (e.g.
produced by ISel for an always-taken branch whose other edge is dead)
tripped the "Unlowered EFLAGS copy!" assertion.
Such copies are harmless: the unreachable block is removed by the
unreachable-block elimination pass that runs right after this one,
before register allocation, so the copy never reaches a pass that cannot
handle it. Restrict the verification to reachable blocks (depth_first
from the entry) to match the set of blocks actually processed.
Found via fuzzing (llvm-isel-fuzzer).
Commit: 32ecd3e7ff64cab044716e39d14f880cf5a7367d
https://github.com/llvm/llvm-project/commit/32ecd3e7ff64cab044716e39d14f880cf5a7367d
Author: Ryotaro Kasuga <kasuga.ryotaro at fujitsu.com>
Date: 2026-06-11 (Thu, 11 Jun 2026)
Changed paths:
M llvm/lib/Transforms/Scalar/LoopInterchange.cpp
M llvm/test/Transforms/LoopInterchange/non-phi-uses-lcssa-phi.ll
Log Message:
-----------
[LoopInterchange] Bail out when outer loop latch PHI has non-PHI user (#201923)
When there are non-PHI instructions in the outer loop that use values
originating from the LCSSA PHIs of the inner loop, it becomes difficult
to adjust the wiring during the transformation. In fact, multiple issues
(#200819 and #201571) have been raised related to this pattern. #201059
tried to resolve the issue by modifying the transformation phase, but it
was insufficient.
Instead of spending effort in the transformation phase, this patch adds
an additional check in the legality check and rejects such cases. I
think the cases rejected by this additional check are not very
practical, so the impact on realistic cases should be low, and it is
simpler than adjusting the wiring in the transformation phase.
This patch also effectively reverts #201059, as it is no longer
necessary.
Fix #201571.
Commit: c8ad049db78ae52052722b6f42b54cd2a666072b
https://github.com/llvm/llvm-project/commit/c8ad049db78ae52052722b6f42b54cd2a666072b
Author: Ryotaro Kasuga <kasuga.ryotaro at fujitsu.com>
Date: 2026-06-11 (Thu, 11 Jun 2026)
Changed paths:
M llvm/lib/Transforms/Scalar/LoopInterchange.cpp
M llvm/test/Transforms/LoopInterchange/reduction2mem-limitation.ll
Log Message:
-----------
[LoopInterchange] Consolidate induction and reduction vars check (#203197)
Previously, the handling of PHI nodes in loop headers was scattered. In
particular, there were two separate functions, `findInductions` and
`findInductionAndReductions`, which made the code difficult to reason
about. This patch consolidates these two functions, along with their
related caller logic, into a single function,
`checkInductionsAndReductions`. Although some remarks and debug outputs
have changed as a result, I believe the functionality itself remains
unchanged.
Commit: 7daddf2b6f44960344157a0accb3963a7d87ca03
https://github.com/llvm/llvm-project/commit/7daddf2b6f44960344157a0accb3963a7d87ca03
Author: Jameson Nash <vtjnash at gmail.com>
Date: 2026-06-11 (Thu, 11 Jun 2026)
Changed paths:
M bolt/docs/CMakeLists.txt
M clang-tools-extra/docs/CMakeLists.txt
M clang/docs/CMakeLists.txt
M cmake/Modules/HandleDoxygen.cmake
M flang/CMakeLists.txt
M flang/docs/CMakeLists.txt
M lldb/CMakeLists.txt
M lldb/docs/CMakeLists.txt
M llvm/CMakeLists.txt
M llvm/docs/CMakeLists.txt
M mlir/docs/CMakeLists.txt
M openmp/docs/CMakeLists.txt
M polly/docs/CMakeLists.txt
M runtimes/CMakeLists.txt
Log Message:
-----------
[docs] try again to handle doxygen everywhere (#203081)
The previous attempt at this (b7da9565017e32c18b927a7637714d1b660b558d)
still broke standalone builds. Now I have locally tested standalone
flang, runtimes (with openmp), lldb, combined builds, and the utils
script. Hopefully that covers everything this time, and gets everything
into a more consistent state (always using the HandleDoxygen script in
the same way, included exactly once as required by the cmake design).
Commit: 59e18f41b35de71799ad8f2f615e3c01bac86e1e
https://github.com/llvm/llvm-project/commit/59e18f41b35de71799ad8f2f615e3c01bac86e1e
Author: Jameson Nash <vtjnash at gmail.com>
Date: 2026-06-11 (Thu, 11 Jun 2026)
Changed paths:
M clang/lib/CodeGen/CGCall.cpp
Log Message:
-----------
[clang] `this` getter missed in ConstructAttributeList (#203010)
In https://reviews.llvm.org/D159247 (400d3261a0da56554aee8e5a2fbc27eade9d05db)
it looks intended to update all of these calls, but missed this. The
effect is that a reference `&this` in a non-zero addrspace would take
this branch and crash there (because it ends up asserting that `this`
is a pointer). DRY the code since this branch looks like it kept
getting copied more incorrectly over time. I don't have an actual use
or test for this, I just noticed it while I was trying to break other
things in fuzzing.
Commit: 97ed1342b095adc130467b98350a0dbd91dfad02
https://github.com/llvm/llvm-project/commit/97ed1342b095adc130467b98350a0dbd91dfad02
Author: Jameson Nash <vtjnash at gmail.com>
Date: 2026-06-11 (Thu, 11 Jun 2026)
Changed paths:
M clang/lib/Basic/Targets/AMDGPU.cpp
M clang/lib/Basic/Targets/AMDGPU.h
Log Message:
-----------
[AMDGPU] remove DefIsPriv mapping (#202694)
Since various commits that now avoid immediately casting most
temporaries, and now follow Sema for variables, this looks like tests
pass now without needing a second map to correct those issues
afterwards. Hopefully this will help find any similar remaining issues
expeditiously, if any.
Commit: 653865dd8bb337b24a79a288afa30ee5206f8342
https://github.com/llvm/llvm-project/commit/653865dd8bb337b24a79a288afa30ee5206f8342
Author: Aditya Trivedi <120598696+adit4443ya at users.noreply.github.com>
Date: 2026-06-11 (Thu, 11 Jun 2026)
Changed paths:
M flang/lib/Semantics/resolve-directives.cpp
A flang/test/Semantics/OpenMP/use-rename-array-dsa.f90
Log Message:
-----------
[Flang][OpenMP] Fix implicit symbol resolution for USE-renamed arrays (#189215)
[Flang][OpenMP] Fix USE-renamed array DSA in OpenMP regions
Problem: for a USE-renamed symbol (e.g. USE mod, ONLY: s_ary => ary),
the HostAssoc in the OMP scope was created under the original name
"ary" instead of the local alias "s_ary".
Fix: add a DeclareNewAccessEntity overload that takes an explicit
SourceName, and call it with symbol->name() (the alias) rather than
the ultimate symbol's name, so the HostAssoc is created under the
name the user wrote.
Fixes #185344
Assisted-by: Claude Sonnet 4.6
Commit: 6ff34e926827050dfca1874b4fdf16f186f533f0
https://github.com/llvm/llvm-project/commit/6ff34e926827050dfca1874b4fdf16f186f533f0
Author: Pavel Labath <pavel at labath.sk>
Date: 2026-06-11 (Thu, 11 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/sys/socket.yaml
M libc/src/__support/OSUtil/linux/syscall_wrappers/CMakeLists.txt
A libc/src/__support/OSUtil/linux/syscall_wrappers/recvmmsg.h
M libc/src/sys/socket/CMakeLists.txt
M libc/src/sys/socket/linux/CMakeLists.txt
A libc/src/sys/socket/linux/recvmmsg.cpp
A libc/src/sys/socket/recvmmsg.h
M libc/test/src/sys/socket/linux/CMakeLists.txt
R libc/test/src/sys/socket/linux/sendmmsg_test.cpp
A libc/test/src/sys/socket/linux/sendrecvmmsg_test.cpp
M libc/utils/docgen/sys/socket.yaml
Log Message:
-----------
[libc] Implement recvmmsg (on linux) (#202328)
The function (unlike sendmmsg) takes a timeout argument, so I make sure
to always call the version with a 64-bit time_t. I've also renamed the
sendmmsg_test.cpp unit test to sendrecvmmsg_test.cpp to test both
functions. I also updated the yaml config and docgen files to include
the new function and the struct_timespec type dependency.
Assisted by Gemini.
Commit: 4c672853cd2a8689474a539a06b2c423440f1d95
https://github.com/llvm/llvm-project/commit/4c672853cd2a8689474a539a06b2c423440f1d95
Author: anjenner <161845516+anjenner at users.noreply.github.com>
Date: 2026-06-11 (Thu, 11 Jun 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeRules.cpp
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-amdgcn.fcmp.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-amdgcn.icmp.mir
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.icmp.w32.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.icmp.w64.ll
Log Message:
-----------
[AMDGPU][GlobalISel] Add register bank legalize rules for amdgcn_icmp, amdgcn_fcmp (#172017)
Commit: e1f9a860f628a649cf5c7d1386f3649c400e5c9d
https://github.com/llvm/llvm-project/commit/e1f9a860f628a649cf5c7d1386f3649c400e5c9d
Author: Pavel Labath <pavel at labath.sk>
Date: 2026-06-11 (Thu, 11 Jun 2026)
Changed paths:
M libc/hdr/types/CMakeLists.txt
A libc/hdr/types/struct_sockaddr_in6.h
M libc/include/CMakeLists.txt
M libc/include/llvm-libc-macros/netinet-in-macros.h
M libc/include/llvm-libc-types/CMakeLists.txt
A libc/include/llvm-libc-types/struct_sockaddr_in6.h
M libc/include/netinet/in.yaml
M libc/test/src/netinet/CMakeLists.txt
M libc/test/src/netinet/in_test.cpp
M libc/test/src/sys/socket/linux/CMakeLists.txt
M libc/test/src/sys/socket/linux/bind_test.cpp
M libc/utils/docgen/netinet/in.yaml
Log Message:
-----------
[libc] Add the sockaddr_in6 type and IN6ADDR_*_INIT macros (#201357)
This patch adds struct sockaddr_in6 and the
IN6ADDR_ANY_INIT/IN6ADDR_LOOPBACK_INIT initializer macros. These are
configured to be exported via <netinet/in.h>.
I also added tests for these new features:
- layout and initialization check in test/src/netinet/in_test.cpp
verifying sockaddr_in6 size/member alignment and the in6_addr
initializer macros.
- a smoke test in test/src/sys/socket/linux/bind_test.cpp to verify
binding AF_INET6 to a localhost address. This requires a configured ipv6
stack, and may need tweaking/skipping if our build infrastructure does
not support it.
Assisted by Gemini.
Commit: 1e283d480e348c0a63c0ad8f04b39286b052d518
https://github.com/llvm/llvm-project/commit/1e283d480e348c0a63c0ad8f04b39286b052d518
Author: Fabrice de Gans <Steelskin at users.noreply.github.com>
Date: 2026-06-11 (Thu, 11 Jun 2026)
Changed paths:
M llvm/include/llvm/CAS/ActionCache.h
M llvm/include/llvm/CAS/BuiltinCASContext.h
M llvm/include/llvm/CAS/CASID.h
M llvm/include/llvm/CAS/ObjectStore.h
M llvm/include/llvm/CAS/OnDiskDataAllocator.h
M llvm/include/llvm/CAS/OnDiskGraphDB.h
M llvm/include/llvm/CAS/OnDiskTrieRawHashMap.h
M llvm/include/llvm/CAS/UnifiedOnDiskCache.h
Log Message:
-----------
[llvm] Fix most LLVM_ABI annotations in CAS (#203243)
This updates most LLVM_ABI annotations in the CAS headers to match
expected usage:
* All public APIs should be properly annotated.
* Inlined functions should not be annotated.
These changes were done by a script fixing annotations on LLVM public
headers and manually checked.
This effort is tracked in #109483.
Commit: c6f0d5d07e8d2a0861059d22b1bea59c708ecdfb
https://github.com/llvm/llvm-project/commit/c6f0d5d07e8d2a0861059d22b1bea59c708ecdfb
Author: Fabrice de Gans <Steelskin at users.noreply.github.com>
Date: 2026-06-11 (Thu, 11 Jun 2026)
Changed paths:
M llvm/include/llvm/IR/Attributes.h
M llvm/include/llvm/IR/AutoUpgrade.h
M llvm/include/llvm/IR/DebugInfoMetadata.h
M llvm/include/llvm/IR/GVMaterializer.h
M llvm/include/llvm/IR/Instruction.h
M llvm/include/llvm/IR/Instructions.h
M llvm/include/llvm/IR/NVVMIntrinsicUtils.h
M llvm/include/llvm/IR/PatternMatch.h
M llvm/include/llvm/IR/PrintPasses.h
M llvm/include/llvm/IR/ProfDataUtils.h
M llvm/include/llvm/IR/RuntimeLibcalls.h
M llvm/include/llvm/IR/SafepointIRVerifier.h
M llvm/include/llvm/IR/Statepoint.h
M llvm/include/llvm/IR/TypeFinder.h
Log Message:
-----------
[llvm] Fix most LLVM_ABI annotations in IR (#203244)
This updates most LLVM_ABI annotations in the IR headers to match
expected usage:
* All public APIs should be properly annotated.
* Inlined functions should not be annotated.
These changes were done by a script fixing annotations on LLVM public
headers and manually checked.
This effort is tracked in #109483.
Commit: 4ebce6e9b66fddd694d2785fec2ac1ce99bd5a7c
https://github.com/llvm/llvm-project/commit/4ebce6e9b66fddd694d2785fec2ac1ce99bd5a7c
Author: Fabrice de Gans <Steelskin at users.noreply.github.com>
Date: 2026-06-11 (Thu, 11 Jun 2026)
Changed paths:
M llvm/include/llvm/Frontend/HLSL/CBuffer.h
M llvm/include/llvm/Frontend/HLSL/HLSLBinding.h
M llvm/include/llvm/Frontend/HLSL/RootSignatureMetadata.h
M llvm/include/llvm/Frontend/OpenMP/OMP.h
M llvm/include/llvm/Frontend/OpenMP/OMPIRBuilder.h
Log Message:
-----------
[llvm] Fix most LLVM_ABI annotations in Frontend (#203245)
This updates most LLVM_ABI annotations in the Frontend headers to match
expected usage:
* All public APIs should be properly annotated.
* Inlined functions should not be annotated.
These changes were done by a script fixing annotations on LLVM public
headers and manually checked.
This effort is tracked in #109483.
Commit: 4c0e292f4cb729ecfb33a9ab356dd5b7fe1068e8
https://github.com/llvm/llvm-project/commit/4c0e292f4cb729ecfb33a9ab356dd5b7fe1068e8
Author: Fabrice de Gans <Steelskin at users.noreply.github.com>
Date: 2026-06-11 (Thu, 11 Jun 2026)
Changed paths:
M llvm/include/llvm/TableGen/Error.h
M llvm/include/llvm/TableGen/Main.h
M llvm/include/llvm/TableGen/Parser.h
M llvm/include/llvm/TableGen/SetTheory.h
M llvm/include/llvm/TableGen/StringMatcher.h
M llvm/include/llvm/TableGen/StringToOffsetTable.h
M llvm/include/llvm/TableGen/TGTimer.h
M llvm/include/llvm/TableGen/TableGenBackend.h
Log Message:
-----------
[llvm] Fix most LLVM_ABI annotations in TableGen (#203246)
This updates most LLVM_ABI annotations in the TableGen headers to match
expected usage:
* All public APIs should be properly annotated.
* Inlined functions should not be annotated.
These changes were done by a script fixing annotations on LLVM public
headers and manually checked.
This effort is tracked in #109483.
Commit: b0c658458d48496adac2b38981b7096adc0a27d1
https://github.com/llvm/llvm-project/commit/b0c658458d48496adac2b38981b7096adc0a27d1
Author: Pavel Labath <pavel at labath.sk>
Date: 2026-06-11 (Thu, 11 Jun 2026)
Changed paths:
M libc/include/sys/syscall.h.def
Log Message:
-----------
[libc] Add syscall number for recvmmsg_time64 (#203268)
I *think* this will fix the riscv32 bot.
Commit: 609d4215f1d760c84254b88600a3add7bdeb42d3
https://github.com/llvm/llvm-project/commit/609d4215f1d760c84254b88600a3add7bdeb42d3
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2026-06-11 (Thu, 11 Jun 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
A llvm/test/Transforms/SLPVectorizer/X86/expanded-binop-copyable-operand-deps.ll
Log Message:
-----------
[SLP] Do not vectorize copyable operands of expanded binops
An operand modeled as a copyable element on one operand edge of an
expanded binop (shl X, 1 represented as add X, X) leaves the duplicated
operand edge as a plain gathered operand with no copyable. The scheduler
then decrements that operand's ScheduleData for a use calculateDependencies
never counted for it, so its unscheduled-deps counter goes negative and
trips the assertion. Reject such bundles instead.
Fixes #203193
Reviewers:
Pull Request: https://github.com/llvm/llvm-project/pull/203285
Commit: cb3b1279948d1065f80121528cd2cb34b774f44f
https://github.com/llvm/llvm-project/commit/cb3b1279948d1065f80121528cd2cb34b774f44f
Author: Igor Wodiany <igor.wodiany at amd.com>
Date: 2026-06-11 (Thu, 11 Jun 2026)
Changed paths:
M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVGLOps.td
Log Message:
-----------
[mlir][spirv] Account for undefined behaviour in GLSL ops (#203086)
Add only `NoMemoryEffect` to operations with an undefined behavior and
adjust the description to match the revision 17 of the spec w.r.t. undefined
behavior.
Assisted-by: Claude Code
Commit: 4915bb89e23ba0f2e228cc34cce4b6976eda5fd1
https://github.com/llvm/llvm-project/commit/4915bb89e23ba0f2e228cc34cce4b6976eda5fd1
Author: Ryotaro Kasuga <kasuga.ryotaro at fujitsu.com>
Date: 2026-06-11 (Thu, 11 Jun 2026)
Changed paths:
M llvm/lib/Transforms/Scalar/LoopInterchange.cpp
M llvm/test/Transforms/LoopInterchange/inner-induciton-step-is-not-invariant.ll
Log Message:
-----------
[LoopInterchange] Reject if inner loop IV has outer-variant step (#202751)
In the legality check, there is a routine to detect and verify the
induction variables of the inner loop. However, the validation was
insufficient, specifically when the step values of the induction
variables are not loop-invariant with respect to the outer loop.
This patch adds an additional check to ensure that the step values of
those induction variables are also loop-invariant with respect to the
outer loop.
Fixes #202383 and #202401.
Commit: a21a57c483376359d16de7f7f0dce0d546800d9c
https://github.com/llvm/llvm-project/commit/a21a57c483376359d16de7f7f0dce0d546800d9c
Author: Leandro Lupori <leandro.lupori at linaro.org>
Date: 2026-06-11 (Thu, 11 Jun 2026)
Changed paths:
M flang/lib/Semantics/resolve-directives.cpp
A flang/test/Lower/OpenMP/nested-commonblock.f90
Log Message:
-----------
[flang][OpenMP] Fix the privatization of common blocks (#200446)
Common block objects were being replaced on every privatization,
which caused errors for distinct privatizations on nested constructs.
Modifying a common block clone, instead of the original one, fixes the
issue. Cloning is limited to DSA flags because target mapping lowering
expects to find the common block address, through its defining
operation.
Fixes #178790
Commit: c4f3a5fb2ded04251278de52d979aee52190cd4e
https://github.com/llvm/llvm-project/commit/c4f3a5fb2ded04251278de52d979aee52190cd4e
Author: Dmitry Mikushin <dmitry at kernelgen.org>
Date: 2026-06-11 (Thu, 11 Jun 2026)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Sema/SemaOpenMP.cpp
A clang/test/OpenMP/for_reduction_class_identity_codegen.cpp
A clang/test/OpenMP/for_reduction_class_identity_messages.cpp
Log Message:
-----------
[Clang][OpenMP] Fix '*' reduction identity for class types (#202292)
Commit: 831dd770f78081c13f6d0340769007049e5962ed
https://github.com/llvm/llvm-project/commit/831dd770f78081c13f6d0340769007049e5962ed
Author: Fabrice de Gans <Steelskin at users.noreply.github.com>
Date: 2026-06-11 (Thu, 11 Jun 2026)
Changed paths:
M llvm/include/llvm/SandboxIR/Context.h
M llvm/include/llvm/SandboxIR/Instruction.h
M llvm/include/llvm/SandboxIR/Region.h
Log Message:
-----------
[llvm] Fix most LLVM_ABI annotations in SandboxIR (#203266)
This updates most LLVM_ABI annotations in the SandboxIR headers to match
expected usage:
* All public APIs should be properly annotated.
* Inlined functions should not be annotated.
These changes were done by a script fixing annotations on LLVM public
headers and manually checked.
This effort is tracked in #109483.
Commit: 85ed098a6d5dd30bbdbac2ba0697bc5104fcba8c
https://github.com/llvm/llvm-project/commit/85ed098a6d5dd30bbdbac2ba0697bc5104fcba8c
Author: Timur Golubovich <timur.golubovich at intel.com>
Date: 2026-06-11 (Thu, 11 Jun 2026)
Changed paths:
M llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp
M llvm/test/CodeGen/X86/conditional-tailcall.ll
A llvm/test/Transforms/LoopStrengthReduce/X86/lsr-icmpzero-no-inttoptr.ll
M llvm/test/Transforms/LoopStrengthReduce/funclet.ll
M llvm/test/Transforms/LoopStrengthReduce/post-inc-icmpzero.ll
M llvm/test/Transforms/LoopStrengthReduce/pr25541.ll
M llvm/test/Transforms/LoopStrengthReduce/pr27056.ll
Log Message:
-----------
[LSR] Keep ICmpZero comparisons in integer domain to avoid inttoptr casts (#201970)
When LSR expands ICmpZero fixups with pointer-typed operands, override
OpTy to the integer type so both icmp sides stay in the integer domain,
eliminating redundant inttoptr casts.
Commit: 10ba4d787433a01793eaa14f2022e597bee3eaf9
https://github.com/llvm/llvm-project/commit/10ba4d787433a01793eaa14f2022e597bee3eaf9
Author: Joseph Huber <huberjn at outlook.com>
Date: 2026-06-11 (Thu, 11 Jun 2026)
Changed paths:
M offload/unittests/CMakeLists.txt
Log Message:
-----------
[Offload] Pass `-nostdlibinc` to the device unit test files (#203275)
Summary:
We need this flag so we can include `stdint.h` without potentially going
through to the system interface. this flag removes all default include
paths excepts the resource directory, which is the intention here.
Commit: 18cec023e10f4067b0e0bfa48c9a4209de6fd699
https://github.com/llvm/llvm-project/commit/18cec023e10f4067b0e0bfa48c9a4209de6fd699
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2026-06-11 (Thu, 11 Jun 2026)
Changed paths:
M llvm/utils/lit/lit/formats/shtest.py
M llvm/utils/lit/tests/Inputs/per-test-coverage-by-lit-cfg/lit.cfg
M llvm/utils/lit/tests/Inputs/per-test-coverage/lit.cfg
M llvm/utils/lit/tests/Inputs/shtest-external-shell-kill/lit.cfg
M llvm/utils/lit/tests/Inputs/shtest-format/external_shell/lit.local.cfg
M llvm/utils/lit/tests/Inputs/shtest-readfile/lit.cfg
M llvm/utils/lit/tests/Inputs/shtest-run-at-line/external-shell/lit.local.cfg
M llvm/utils/lit/tests/Inputs/shtest-timeout/lit.cfg
Log Message:
-----------
[lit] Deprecate execute_external=True in ShTest (#201732)
Implementing the deprecation part of
https://discourse.llvm.org/t/rfc-removal-of-the-lit-external-shell/90951.
I made this a hard error with an additional keyword argument to opt out
of the warning behavior given we don't have the facilities to trivially
log within ShTest like we do in the rest of lit, and I think forcing
people to explicitly acknowledge that things are deprecated is not a bad
thing.
Commit: da1ef2df21e0a9556dbf3d4b7443cc87df920666
https://github.com/llvm/llvm-project/commit/da1ef2df21e0a9556dbf3d4b7443cc87df920666
Author: Ryotaro Kasuga <kasuga.ryotaro at fujitsu.com>
Date: 2026-06-11 (Thu, 11 Jun 2026)
Changed paths:
A llvm/test/Transforms/LoopInterchange/reduction-extra-use-in-inner-loop.ll
Log Message:
-----------
[LoopInterchange] Add test for extra reduction use in inner loop (NFC) (#203240)
Add test cases that cover the uses of outer loop reductions. On of them,
`@extra_reduction_use_in_inner0` is taken from #203104, which is causing
miscompilation now. This will be fixed by the follow-up patch #203241.
Commit: 4bfc636e16b5ff5b39ac886d2c1beaab16bee933
https://github.com/llvm/llvm-project/commit/4bfc636e16b5ff5b39ac886d2c1beaab16bee933
Author: Charles Zablit <c_zablit at apple.com>
Date: 2026-06-11 (Thu, 11 Jun 2026)
Changed paths:
M lldb/source/Host/windows/ConnectionConPTYWindows.cpp
Log Message:
-----------
[lldb][Windows][NFC] Clean up ConnectionConPTYWindows (#203284)
Remove unused `<cstring>` include (no string/mem APIs used in the file).
Commit: dc4aa8452cc57f41995ed9ef14679f8f58ca15ee
https://github.com/llvm/llvm-project/commit/dc4aa8452cc57f41995ed9ef14679f8f58ca15ee
Author: Philipp Rados <philipp.rados at openchip.com>
Date: 2026-06-11 (Thu, 11 Jun 2026)
Changed paths:
M flang/include/flang/Optimizer/CodeGen/CGPasses.td
M flang/include/flang/Optimizer/CodeGen/Target.h
M flang/include/flang/Optimizer/Dialect/Support/FIRContext.h
M flang/lib/Lower/Bridge.cpp
M flang/lib/Optimizer/CodeGen/Target.cpp
M flang/lib/Optimizer/CodeGen/TargetRewrite.cpp
M flang/lib/Optimizer/CodeGen/TypeConverter.cpp
M flang/lib/Optimizer/Dialect/Support/FIRContext.cpp
A flang/test/Fir/target-rewrite-target-abi.fir
Log Message:
-----------
[Flang] Add target-abi to CodegenSpecifics (#201539)
This sets the target-abi, specified in TargetOptions on the MLIR-Module.
This allows it to be used by CodegenSpecifics in the TargetRewritePass.
Currently this is only needed by RISCV64, but can also be used by other
targets. This allows to reuse the logic from clang when determining the
ABI, needed for patch
https://github.com/llvm/llvm-project/pull/198335#discussion_r3272341234.
Commit: a57bfb71f7edee9d24a64473b81caf5555b85a3c
https://github.com/llvm/llvm-project/commit/a57bfb71f7edee9d24a64473b81caf5555b85a3c
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2026-06-11 (Thu, 11 Jun 2026)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
M llvm/test/Transforms/InstCombine/assume.ll
Log Message:
-----------
[InstCombine] Drop redundant dereferenceable assumptions (#202946)
Commit: 1ee93f9e1ab7578c94ebd5f7e6aecaba9a33537d
https://github.com/llvm/llvm-project/commit/1ee93f9e1ab7578c94ebd5f7e6aecaba9a33537d
Author: Jason Van Beusekom <jason.van-beusekom at hpe.com>
Date: 2026-06-11 (Thu, 11 Jun 2026)
Changed paths:
M flang/include/flang/Support/Flags.h
M flang/lib/Lower/OpenMP/OpenMP.cpp
M flang/lib/Semantics/resolve-directives.cpp
M flang/lib/Support/Flags.cpp
M flang/test/Integration/OpenMP/map-types-and-sizes.f90
M flang/test/Lower/OpenMP/DelayedPrivatization/distribute-standalone-private.f90
A flang/test/Lower/OpenMP/DelayedPrivatization/target-firstprivate.f90
M flang/test/Lower/OpenMP/DelayedPrivatization/target-private-adjustable-array.f90
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-multiple-variables.f90
M flang/test/Lower/OpenMP/DelayedPrivatization/target-private-simple.f90
M flang/test/Lower/OpenMP/DelayedPrivatization/target-teams-private-implicit-scalar-map.f90
R flang/test/Lower/OpenMP/Todo/firstprivate-target.f90
M flang/test/Lower/OpenMP/defaultmap.f90
M flang/test/Lower/OpenMP/different_vars_lastprivate_barrier.f90
M flang/test/Lower/OpenMP/optional-argument-map-2.f90
M flang/test/Lower/OpenMP/private-derived-type.f90
M flang/test/Lower/OpenMP/same_var_first_lastprivate.f90
M flang/test/Lower/OpenMP/target-map-complex.f90
M flang/test/Lower/OpenMP/target-scope.f90
M flang/test/Lower/OpenMP/target.f90
M flang/test/Lower/do_concurrent_delayed_locality.f90
M flang/test/Lower/do_concurrent_local_assoc_entity.f90
M flang/test/Lower/do_concurrent_local_default_init.f90
M flang/test/Lower/do_concurrent_loop_in_nested_block.f90
M flang/test/Lower/do_concurrent_reduce.f90
M flang/test/Semantics/OpenMP/symbol08.f90
A offload/test/offloading/fortran/target-firstprivate.f90
Log Message:
-----------
[Flang][OpenMP] remove enable-delayed-privatization-staging to suppor… (#200952)
…t target first private by default
This commit follows the decision in
https://github.com/llvm/llvm-project/issues/182356 to remove the not yet
implemented for delayed privatization for firstprivate and private in
`omp target` regions in flang
Fixes https://github.com/llvm/llvm-project/issues/182356
Assisted with Opus
Commit: 6d4fd946e4486f13d6b4ea1cc54d2aae5ee2f03d
https://github.com/llvm/llvm-project/commit/6d4fd946e4486f13d6b4ea1cc54d2aae5ee2f03d
Author: Qiongsi Wu <qiongsiwu at gmail.com>
Date: 2026-06-11 (Thu, 11 Jun 2026)
Changed paths:
A clang/include/clang/Basic/AtomicLineLogger.h
A clang/lib/Basic/AtomicLineLogger.cpp
M clang/lib/Basic/CMakeLists.txt
A clang/unittests/Basic/AtomicLineLoggerTest.cpp
M clang/unittests/Basic/CMakeLists.txt
Log Message:
-----------
[clang] Reland Adding an Atomic Line Logger (#195885) (#202428)
This PR relands #195885. The original PR caused a Windows [build
failure](https://github.com/llvm/llvm-project/pull/195885#issuecomment-4636690409)
because of differences in const capture support in MSVC and `clang`. The
unit test is fixed by capturing everything.
***********
This PR adds an atomic line logger to `clang`.
Situations have arisen where `clang` performs multi-threaded tasks (such
as dependency scanning), and race conditions may happen. Such race
conditions are difficult to debug using either `lldb` or with
`llvm::errs()`.
This logger provides atomic logging per line to a file on disk with time
stamps at each line to facilitate such investigations. Specifically, the
logger is designed with the following properties:
1. Each line is atomically written to the backing file. This avoids
concurrent writes making the output text interleaving.
2. Each line is prefixed with a timestamp, a process ID and a thread ID.
3. `LogLine` implements a `<<` operator to allow arbitrary printable
types to be piped into it.
4. The `LogLine`'s user does not need to check if it is setup or valid.
A LogLine is always valid and can always accept input from `<<`. It
becomes a no-op if the `LogLine` object is returned from a default
constructed `AtomicLineLogger`.
5. The write happens when a `LogLine` object goes out of scope.
The logger is inspired by the
[OnDiskCASLogger](https://github.com/llvm/llvm-project/blob/09abee845d2136630fc3f50524148daa55a740a8/llvm/include/llvm/CAS/OnDiskCASLogger.h#L33).
A followup PR https://github.com/llvm/llvm-project/pull/195896 wires up
this logger to clang's dependency scanning stack.
Assisted-by: claude-opus-4.6
rdar://39907408
Commit: 9c5277e798e61a9d274e9effd3df82e4967afdba
https://github.com/llvm/llvm-project/commit/9c5277e798e61a9d274e9effd3df82e4967afdba
Author: vangthao95 <vang.thao at amd.com>
Date: 2026-06-11 (Thu, 11 Jun 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/SIInstructions.td
M llvm/test/CodeGen/AMDGPU/llvm.fptrunc.round.ll
Log Message:
-----------
AMDGPU/GlobalISel: Fix G_INTRINSIC_FPTRUNC_ROUND (#202734)
Fixes https://github.com/llvm/llvm-project/issues/182048
AI note: an LLM generated the code and the test, I've read them
Assisted by: Claude Opus 4.8
Commit: fb30d2d470533765b483960939cf856a81302bf6
https://github.com/llvm/llvm-project/commit/fb30d2d470533765b483960939cf856a81302bf6
Author: Fabrice de Gans <Steelskin at users.noreply.github.com>
Date: 2026-06-11 (Thu, 11 Jun 2026)
Changed paths:
M llvm/include/llvm/ABI/FunctionInfo.h
M llvm/include/llvm/ABI/IRTypeMapper.h
M llvm/include/llvm/ABI/TargetInfo.h
M llvm/include/llvm/ABI/Types.h
M llvm/include/llvm/ADT/APFloat.h
M llvm/include/llvm/AsmParser/LLLexer.h
M llvm/include/llvm/AsmParser/LLParser.h
M llvm/include/llvm/BinaryFormat/DXContainer.h
M llvm/include/llvm/CGData/StableFunctionMap.h
M llvm/include/llvm/CodeGen/MachineInstrBundle.h
M llvm/include/llvm/CodeGen/RegAllocEvictionAdvisor.h
M llvm/include/llvm/CodeGenTypes/LowLevelType.h
M llvm/include/llvm/DTLTO/DTLTO.h
M llvm/include/llvm/DWARFLinker/Classic/DWARFLinkerDeclContext.h
M llvm/include/llvm/DWARFLinker/Utils.h
M llvm/include/llvm/DWP/ELFWriter.h
M llvm/include/llvm/ExecutionEngine/Orc/EPCGenericDylibManager.h
M llvm/include/llvm/ExecutionEngine/Orc/Shared/OrcRTBridge.h
M llvm/include/llvm/IR/PrintPasses.h
M llvm/include/llvm/LTO/LTO.h
M llvm/include/llvm/LTO/legacy/UpdateCompilerUsed.h
M llvm/include/llvm/MC/DXContainerInfo.h
M llvm/include/llvm/MC/MCDwarf.h
M llvm/include/llvm/MC/MCSchedule.h
M llvm/include/llvm/MC/MCWin64EH.h
M llvm/include/llvm/Object/Archive.h
M llvm/include/llvm/ObjectYAML/BBAddrMapYAML.h
M llvm/include/llvm/Option/Option.h
M llvm/include/llvm/Plugins/PassPlugin.h
M llvm/include/llvm/ProfileData/ETMTraceDecoder.h
M llvm/include/llvm/ProfileData/InstrProfReader.h
M llvm/include/llvm/ProfileData/SampleProf.h
M llvm/include/llvm/Remarks/BitstreamRemarkSerializer.h
M llvm/include/llvm/Remarks/RemarkStreamer.h
M llvm/include/llvm/Support/Win64EH.h
M llvm/include/llvm/TargetParser/RISCVTargetParser.h
M llvm/include/llvm/TargetParser/Triple.h
M llvm/include/llvm/TargetParser/XtensaTargetParser.h
M llvm/include/llvm/TextAPI/Target.h
M llvm/include/llvm/Transforms/IPO/Instrumentor.h
M llvm/include/llvm/Transforms/IPO/InstrumentorConfigFile.h
M llvm/include/llvm/Transforms/IPO/InstrumentorStubPrinter.h
M llvm/include/llvm/Transforms/InstCombine/InstCombiner.h
M llvm/include/llvm/Transforms/Utils/SSAUpdaterImpl.h
M llvm/include/llvm/Transforms/Utils/TriggerCrashPass.h
M llvm/include/llvm/Transforms/Vectorize/LoopVectorizationLegality.h
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/SandboxVectorizerIR.h
M llvm/include/llvm/XRay/FDRTraceExpander.h
Log Message:
-----------
[llvm] Fix most remaining LLVM_ABI annotations (#203267)
This updates most LLVM_ABI annotations in the public LLVM headers to
match expected usage:
* All public APIs should be properly annotated.
* Inlined functions should not be annotated.
These changes were done by a script fixing annotations on LLVM public
headers and manually checked.
This effort is tracked in #109483.
Commit: 2bccbf23edddf216ef060d34443f60f644d0fb06
https://github.com/llvm/llvm-project/commit/2bccbf23edddf216ef060d34443f60f644d0fb06
Author: Ilia Kuklin <ikuklin at accesssoftek.com>
Date: 2026-06-11 (Thu, 11 Jun 2026)
Changed paths:
M llvm/include/llvm/Analysis/DXILMetadataAnalysis.h
M llvm/include/llvm/BinaryFormat/DXContainer.h
M llvm/lib/Analysis/DXILMetadataAnalysis.cpp
M llvm/lib/Target/DirectX/DXContainerGlobals.cpp
A llvm/test/CodeGen/DirectX/ContainerData/Inputs/SourceInfo.ll
A llvm/test/CodeGen/DirectX/ContainerData/SourceInfo-Args.ll
A llvm/test/CodeGen/DirectX/ContainerData/SourceInfo-Compressed.ll
A llvm/test/CodeGen/DirectX/ContainerData/SourceInfo-Uncompressed.ll
M llvm/test/CodeGen/DirectX/embed-ildb.ll
Log Message:
-----------
[DirectX] Generate shader source info part in llc (#202761)
This change modifies DXContainerGlobals pass and DXILMetadataAnalysis to
generate source info (SRCI) part in DXContainer, using information from
`dx.source.contents` and `dx.source.args` metadata nodes.
This part is typically generated for debug shader builds.
---------
Co-authored-by: Vladislav Dzhidzhoev <vdzhidzhoev at accesssoftek.com>
Commit: efdd089088747136ebf134f4fc0b56ccf25bb118
https://github.com/llvm/llvm-project/commit/efdd089088747136ebf134f4fc0b56ccf25bb118
Author: Ryotaro Kasuga <kasuga.ryotaro at fujitsu.com>
Date: 2026-06-11 (Thu, 11 Jun 2026)
Changed paths:
M llvm/lib/Transforms/Scalar/LoopInterchange.cpp
M llvm/test/Transforms/LoopInterchange/reduction-extra-use-in-inner-loop.ll
Log Message:
-----------
[LoopInterchange] Reject if outer loop reduction has extra user (#203241)
As demonstrated by the case reported in #203104, there are cases where
interchanging the loops is unsafe because the outer loop reduction is
used within the inner loop by something other than the PHI node that
receives the value. Such cases should be rejected during the legality
check phase.
This patch adds a check to ensure that the outer loop reduction is only
used by the inner loop reduction PHI node. This check might be too
conservative and could cause missed optimizations, but at the moment I
can't find such a case.
Fixes #203104.
Commit: 6713634507b21efe6c895dd40e85ba72fe0ce269
https://github.com/llvm/llvm-project/commit/6713634507b21efe6c895dd40e85ba72fe0ce269
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2026-06-11 (Thu, 11 Jun 2026)
Changed paths:
M llvm/utils/lit/lit/formats/shtest.py
M llvm/utils/lit/tests/Inputs/per-test-coverage-by-lit-cfg/lit.cfg
M llvm/utils/lit/tests/Inputs/per-test-coverage/lit.cfg
M llvm/utils/lit/tests/Inputs/shtest-external-shell-kill/lit.cfg
M llvm/utils/lit/tests/Inputs/shtest-format/external_shell/lit.local.cfg
M llvm/utils/lit/tests/Inputs/shtest-readfile/lit.cfg
M llvm/utils/lit/tests/Inputs/shtest-run-at-line/external-shell/lit.local.cfg
M llvm/utils/lit/tests/Inputs/shtest-timeout/lit.cfg
Log Message:
-----------
Revert "[lit] Deprecate execute_external=True in ShTest" (#203316)
Reverts llvm/llvm-project#201732
Breaks fuzzer tests which need more investigation.
Commit: 67340e0aa6cfefdcb573d5c76fbdc2c9efa037c4
https://github.com/llvm/llvm-project/commit/67340e0aa6cfefdcb573d5c76fbdc2c9efa037c4
Author: Pavel Labath <pavel at labath.sk>
Date: 2026-06-11 (Thu, 11 Jun 2026)
Changed paths:
M libc/include/llvm-libc-types/struct_sockaddr_in6.h
Log Message:
-----------
[libc] Use relative path in struct_sockaddr_in6.h (#203297)
This is the right way to include these after all.
Commit: ab4286095e8df5ec10739866625e2b94b88952c4
https://github.com/llvm/llvm-project/commit/ab4286095e8df5ec10739866625e2b94b88952c4
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2026-06-11 (Thu, 11 Jun 2026)
Changed paths:
M flang/test/Semantics/OpenMP/declare-target-flags.f90
Log Message:
-----------
[flang][OpenMP] Temporarily disable flaky test (#203307)
Commit: 297cb7232735f5426015c57216dc7910f3055e86
https://github.com/llvm/llvm-project/commit/297cb7232735f5426015c57216dc7910f3055e86
Author: Charles Zablit <c_zablit at apple.com>
Date: 2026-06-11 (Thu, 11 Jun 2026)
Changed paths:
M lldb/test/Shell/Target/dependent-modules-nodupe-windows.test
Log Message:
-----------
[lldb][Windows] Relax dependent-modules-nodupe-windows OS-DLL ordering (#203305)
The post-run "target modules list" output orders the OS DLLs (ntdll,
kernel32, ...) by load address, which differs between the in-process
debugger and the lldb-server-on-Windows path. The exact order is not
what this test cares about. The goal is to verify that preloaded
dependent modules are not duplicated once the inferior actually loads
the DLL.
This patch replaces `CHECK-NEXT/CHECK` lines with `CHECK-DAG`, keeping
the trailing `CHECK-NOT` to enforce no duplicate `shlib.dll` entry.
rdar://179367320
Commit: 39d938ad651b9f14bb08664a5903cc506dbf988c
https://github.com/llvm/llvm-project/commit/39d938ad651b9f14bb08664a5903cc506dbf988c
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2026-06-11 (Thu, 11 Jun 2026)
Changed paths:
M .github/workflows/subscriber.yml
M .github/workflows/test-suite.yml
M bolt/docs/CMakeLists.txt
M clang-tools-extra/clang-tidy/readability/InconsistentIfElseBracesCheck.cpp
M clang-tools-extra/docs/CMakeLists.txt
M clang-tools-extra/docs/ReleaseNotes.rst
M clang-tools-extra/test/clang-tidy/checkers/readability/inconsistent-ifelse-braces-attributes.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/inconsistent-ifelse-braces.cpp
M clang/docs/CMakeLists.txt
M clang/docs/ReleaseNotes.rst
M clang/docs/SanitizerSpecialCaseList.rst
A clang/include/clang/Basic/AtomicLineLogger.h
M clang/include/clang/CIR/LoweringHelpers.h
M clang/include/clang/CIR/MissingFeatures.h
M clang/include/clang/Driver/ToolChain.h
M clang/include/clang/Options/Options.td
M clang/lib/AST/ByteCode/Interp.h
M clang/lib/AST/ByteCode/InterpBuiltin.cpp
M clang/lib/AST/ByteCode/Pointer.cpp
A clang/lib/Basic/AtomicLineLogger.cpp
M clang/lib/Basic/CMakeLists.txt
M clang/lib/Basic/Targets/AMDGPU.cpp
M clang/lib/Basic/Targets/AMDGPU.h
M clang/lib/Basic/Targets/X86.cpp
M clang/lib/CIR/CodeGen/CIRGenBuiltinAArch64.cpp
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
M clang/lib/CIR/Lowering/LoweringHelpers.cpp
M clang/lib/CodeGen/CGCall.cpp
M clang/lib/Driver/ToolChain.cpp
M clang/lib/Driver/ToolChains/AMDGPU.cpp
M clang/lib/Driver/ToolChains/AMDGPUOpenMP.cpp
M clang/lib/Driver/ToolChains/AMDGPUOpenMP.h
M clang/lib/Driver/ToolChains/Arch/X86.cpp
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/lib/Driver/ToolChains/Flang.cpp
M clang/lib/Driver/ToolChains/Flang.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/PS4CPU.cpp
M clang/lib/Format/TokenAnnotator.cpp
M clang/lib/Sema/SemaOpenMP.cpp
M clang/lib/Serialization/ASTWriter.cpp
M clang/test/AST/ByteCode/builtins.c
M clang/test/AST/ByteCode/cxx11.cpp
A clang/test/CIR/CodeGen/global-pointer-array-fast-lowering.cpp
M clang/test/CIR/CodeGen/inline-asm.c
A clang/test/CIR/Lowering/const-array-bulk-lowering-fallbacks.cir
A clang/test/CIR/Lowering/const-array-of-pointers.cir
M clang/test/CodeGen/AArch64/neon-intrinsics.c
M clang/test/CodeGen/AArch64/neon-misc.c
A clang/test/CodeGen/AArch64/neon/conversion-fullfp16.c
M clang/test/CodeGen/AArch64/neon/intrinsics.c
M clang/test/CodeGen/AArch64/v8.2a-neon-intrinsics.c
M clang/test/CodeGen/SystemZ/zos-abi.c
M clang/test/Driver/cl-x86-flags.c
M clang/test/Driver/ps5-linker.c
M clang/test/Driver/x86-target-features.c
A clang/test/OpenMP/for_reduction_class_identity_codegen.cpp
A clang/test/OpenMP/for_reduction_class_identity_messages.cpp
M clang/test/SemaCXX/constant-expression-p2280r4.cpp
M clang/test/lit.cfg.py
A clang/unittests/Basic/AtomicLineLoggerTest.cpp
M clang/unittests/Basic/CMakeLists.txt
M clang/unittests/Format/FormatTest.cpp
M cmake/Modules/HandleDoxygen.cmake
M compiler-rt/test/builtins/Unit/lit.cfg.py
M cross-project-tests/lit.cfg.py
M flang/CMakeLists.txt
M flang/docs/CMakeLists.txt
M flang/docs/Extensions.md
M flang/include/flang/Optimizer/CodeGen/CGPasses.td
M flang/include/flang/Optimizer/CodeGen/Target.h
M flang/include/flang/Optimizer/Dialect/Support/FIRContext.h
M flang/include/flang/Support/Flags.h
M flang/include/flang/Support/Fortran-features.h
M flang/lib/Evaluate/intrinsics.cpp
M flang/lib/Frontend/CompilerInvocation.cpp
M flang/lib/Lower/Bridge.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/PFTBuilder.cpp
M flang/lib/Optimizer/CodeGen/Target.cpp
M flang/lib/Optimizer/CodeGen/TargetRewrite.cpp
M flang/lib/Optimizer/CodeGen/TypeConverter.cpp
M flang/lib/Optimizer/Dialect/Support/FIRContext.cpp
M flang/lib/Semantics/check-call.cpp
M flang/lib/Semantics/check-call.h
M flang/lib/Semantics/expression.cpp
M flang/lib/Semantics/resolve-directives.cpp
M flang/lib/Semantics/resolve-names.cpp
M flang/lib/Support/Flags.cpp
M flang/lib/Support/Fortran-features.cpp
A flang/test/Fir/target-rewrite-target-abi.fir
M flang/test/Integration/OpenMP/map-types-and-sizes.f90
A flang/test/Lower/OpenACC/acc-declare-interface-body.f90
M flang/test/Lower/OpenMP/DelayedPrivatization/distribute-standalone-private.f90
A flang/test/Lower/OpenMP/DelayedPrivatization/target-firstprivate.f90
M flang/test/Lower/OpenMP/DelayedPrivatization/target-private-adjustable-array.f90
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-multiple-variables.f90
M flang/test/Lower/OpenMP/DelayedPrivatization/target-private-simple.f90
M flang/test/Lower/OpenMP/DelayedPrivatization/target-teams-private-implicit-scalar-map.f90
R flang/test/Lower/OpenMP/Todo/firstprivate-target.f90
M flang/test/Lower/OpenMP/defaultmap.f90
M flang/test/Lower/OpenMP/different_vars_lastprivate_barrier.f90
A flang/test/Lower/OpenMP/nested-commonblock.f90
M flang/test/Lower/OpenMP/optional-argument-map-2.f90
M flang/test/Lower/OpenMP/private-derived-type.f90
M flang/test/Lower/OpenMP/same_var_first_lastprivate.f90
M flang/test/Lower/OpenMP/target-map-complex.f90
M flang/test/Lower/OpenMP/target-scope.f90
M flang/test/Lower/OpenMP/target.f90
M flang/test/Lower/do_concurrent_delayed_locality.f90
M flang/test/Lower/do_concurrent_local_assoc_entity.f90
M flang/test/Lower/do_concurrent_local_default_init.f90
M flang/test/Lower/do_concurrent_loop_in_nested_block.f90
M flang/test/Lower/do_concurrent_reduce.f90
M flang/test/Semantics/OpenMP/declare-target-flags.f90
A flang/test/Semantics/OpenMP/declare-target-resolve.f90
A flang/test/Semantics/OpenMP/declare-target-symbols.f90
M flang/test/Semantics/OpenMP/declare-target08.f90
M flang/test/Semantics/OpenMP/symbol08.f90
A flang/test/Semantics/OpenMP/use-rename-array-dsa.f90
M flang/test/Semantics/c_loc01-relaxed.f90
A flang/test/Semantics/call47.f90
A flang/test/Transforms/OpenACC/acc-implicit-declare-type-descriptor-alloca.F90
A flang/test/Transforms/OpenACC/acc-implicit-declare-type-descriptor-embox.F90
A flang/test/Transforms/OpenACC/acc-implicit-declare-type-descriptor-rebox.F90
A flang/test/Transforms/OpenACC/acc-implicit-declare-type-descriptor-type_desc.F90
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/riscv/entrypoints.txt
M libc/config/linux/x86_64/entrypoints.txt
M libc/fuzzing/CMakeLists.txt
A libc/fuzzing/arpa/CMakeLists.txt
A libc/fuzzing/arpa/inet/CMakeLists.txt
A libc/fuzzing/arpa/inet/inet_aton_differential_fuzz.cpp
M libc/hdr/types/CMakeLists.txt
A libc/hdr/types/struct_sockaddr_in6.h
M libc/include/CMakeLists.txt
M libc/include/arpa/inet.yaml
A libc/include/htons-family.yaml
M libc/include/llvm-libc-macros/netinet-in-macros.h
M libc/include/llvm-libc-types/CMakeLists.txt
A libc/include/llvm-libc-types/struct_sockaddr_in6.h
M libc/include/math.yaml
M libc/include/netinet/in.yaml
M libc/include/sys/socket.yaml
M libc/include/sys/syscall.h.def
M libc/shared/math.h
A libc/shared/math/isnanf128.h
M libc/src/__support/OSUtil/linux/syscall_wrappers/CMakeLists.txt
A libc/src/__support/OSUtil/linux/syscall_wrappers/recvmmsg.h
M libc/src/__support/math/CMakeLists.txt
A libc/src/__support/math/isnanf128.h
M libc/src/__support/threads/raw_rwlock.h
M libc/src/math/CMakeLists.txt
M libc/src/math/generic/CMakeLists.txt
A libc/src/math/generic/isnanf128.cpp
A libc/src/math/isnanf128.h
M libc/src/sys/socket/CMakeLists.txt
M libc/src/sys/socket/linux/CMakeLists.txt
A libc/src/sys/socket/linux/recvmmsg.cpp
A libc/src/sys/socket/recvmmsg.h
M libc/test/shared/CMakeLists.txt
M libc/test/shared/shared_math_constexpr_test.cpp
M libc/test/shared/shared_math_test.cpp
M libc/test/src/math/smoke/CMakeLists.txt
A libc/test/src/math/smoke/isnanf128_test.cpp
M libc/test/src/netinet/CMakeLists.txt
M libc/test/src/netinet/in_test.cpp
M libc/test/src/sys/socket/linux/CMakeLists.txt
M libc/test/src/sys/socket/linux/bind_test.cpp
R libc/test/src/sys/socket/linux/sendmmsg_test.cpp
A libc/test/src/sys/socket/linux/sendrecvmmsg_test.cpp
M libc/utils/docgen/netinet/in.yaml
M libc/utils/docgen/sys/socket.yaml
M libcxx/include/thread
M libcxxabi/src/demangle/Utility.h
M lldb/CMakeLists.txt
M lldb/docs/CMakeLists.txt
M lldb/docs/python_api_enums.md
M lldb/include/lldb/API/SBProcess.h
M lldb/include/lldb/Target/StackFrameRecognizer.h
M lldb/packages/Python/lldbsuite/test/lldbtest.py
A lldb/scripts/gen-python-api-enums.py
M lldb/source/API/SBProcess.cpp
M lldb/source/Host/windows/ConnectionConPTYWindows.cpp
M lldb/source/Plugins/Disassembler/LLVMC/DisassemblerLLVMC.cpp
M lldb/source/Plugins/Disassembler/LLVMC/DisassemblerLLVMC.h
M lldb/source/Plugins/ExpressionParser/Clang/IRForTarget.cpp
M lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCRuntimeV2.cpp
M lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCRuntimeV2.h
M lldb/source/Plugins/LanguageRuntime/ObjC/ObjCLanguageRuntime.h
M lldb/source/Plugins/ObjectFile/ELF/ObjectFileELF.cpp
M lldb/source/Plugins/ObjectFile/ELF/ObjectFileELF.h
M lldb/source/Plugins/ObjectFile/Mach-O/MachOTrie.cpp
M lldb/test/API/functionalities/postmortem/elf-core/TestLinuxCore.py
M lldb/test/API/macosx/branch-islands/TestBranchIslands.py
M lldb/test/API/macosx/thread-names/TestInterruptThreadNames.py
M lldb/test/API/python_api/process/TestProcessAPI.py
M lldb/test/API/python_api/process/cancel_attach/TestCancelAttach.py
M lldb/test/API/tools/lldb-dap/coreFile/TestDAP_coreFile.py
A lldb/test/Shell/Disassemble/TestDisassembleRISCVInstructions.test
M lldb/test/Shell/Target/dependent-modules-nodupe-windows.test
M lldb/test/Shell/lit.cfg.py
M lldb/test/Shell/lit.site.cfg.py.in
M lldb/tools/lldb-dap/Handler/AttachRequestHandler.cpp
M lldb/unittests/Disassembler/RISCV/TestMCDisasmInstanceRISCV.cpp
M lldb/unittests/ObjectFile/MachO/MachOTrieTest.cpp
M llvm/CMakeLists.txt
M llvm/cmake/config-ix.cmake
M llvm/docs/CMakeLists.txt
M llvm/docs/LFI.rst
M llvm/docs/ReleaseNotes.md
M llvm/include/llvm/ABI/FunctionInfo.h
M llvm/include/llvm/ABI/IRTypeMapper.h
M llvm/include/llvm/ABI/TargetInfo.h
M llvm/include/llvm/ABI/Types.h
M llvm/include/llvm/ADT/APFloat.h
M llvm/include/llvm/ADT/APInt.h
M llvm/include/llvm/ADT/StringMap.h
M llvm/include/llvm/Analysis/DXILMetadataAnalysis.h
M llvm/include/llvm/AsmParser/LLLexer.h
M llvm/include/llvm/AsmParser/LLParser.h
M llvm/include/llvm/BinaryFormat/DXContainer.h
M llvm/include/llvm/CAS/ActionCache.h
M llvm/include/llvm/CAS/BuiltinCASContext.h
M llvm/include/llvm/CAS/CASID.h
M llvm/include/llvm/CAS/ObjectStore.h
M llvm/include/llvm/CAS/OnDiskDataAllocator.h
M llvm/include/llvm/CAS/OnDiskGraphDB.h
M llvm/include/llvm/CAS/OnDiskTrieRawHashMap.h
M llvm/include/llvm/CAS/UnifiedOnDiskCache.h
M llvm/include/llvm/CGData/StableFunctionMap.h
M llvm/include/llvm/CodeGen/GlobalISel/LegalizerHelper.h
M llvm/include/llvm/CodeGen/GlobalISel/Utils.h
M llvm/include/llvm/CodeGen/MachineFunctionPass.h
M llvm/include/llvm/CodeGen/MachineInstrBundle.h
M llvm/include/llvm/CodeGen/RegAllocEvictionAdvisor.h
M llvm/include/llvm/CodeGenTypes/LowLevelType.h
M llvm/include/llvm/DTLTO/DTLTO.h
M llvm/include/llvm/DWARFLinker/Classic/DWARFLinkerDeclContext.h
M llvm/include/llvm/DWARFLinker/Utils.h
M llvm/include/llvm/DWP/ELFWriter.h
M llvm/include/llvm/Demangle/DemangleConfig.h
M llvm/include/llvm/Demangle/Utility.h
M llvm/include/llvm/ExecutionEngine/Orc/EPCGenericDylibManager.h
M llvm/include/llvm/ExecutionEngine/Orc/Shared/OrcRTBridge.h
M llvm/include/llvm/Frontend/HLSL/CBuffer.h
M llvm/include/llvm/Frontend/HLSL/HLSLBinding.h
M llvm/include/llvm/Frontend/HLSL/RootSignatureMetadata.h
M llvm/include/llvm/Frontend/OpenMP/OMP.h
M llvm/include/llvm/Frontend/OpenMP/OMPIRBuilder.h
M llvm/include/llvm/IR/Attributes.h
M llvm/include/llvm/IR/AutoUpgrade.h
M llvm/include/llvm/IR/DebugInfoMetadata.h
M llvm/include/llvm/IR/GVMaterializer.h
M llvm/include/llvm/IR/Instruction.h
M llvm/include/llvm/IR/Instructions.h
M llvm/include/llvm/IR/NVVMIntrinsicUtils.h
M llvm/include/llvm/IR/PatternMatch.h
M llvm/include/llvm/IR/PrintPasses.h
M llvm/include/llvm/IR/ProfDataUtils.h
M llvm/include/llvm/IR/RuntimeLibcalls.h
M llvm/include/llvm/IR/SafepointIRVerifier.h
M llvm/include/llvm/IR/Statepoint.h
M llvm/include/llvm/IR/TypeFinder.h
M llvm/include/llvm/LTO/LTO.h
M llvm/include/llvm/LTO/legacy/UpdateCompilerUsed.h
M llvm/include/llvm/MC/DXContainerInfo.h
M llvm/include/llvm/MC/MCDwarf.h
M llvm/include/llvm/MC/MCSchedule.h
M llvm/include/llvm/MC/MCWin64EH.h
M llvm/include/llvm/Object/Archive.h
M llvm/include/llvm/ObjectYAML/BBAddrMapYAML.h
M llvm/include/llvm/Option/Option.h
M llvm/include/llvm/Pass.h
M llvm/include/llvm/Passes/PassBuilder.h
M llvm/include/llvm/Plugins/PassPlugin.h
M llvm/include/llvm/ProfileData/ETMTraceDecoder.h
M llvm/include/llvm/ProfileData/InstrProfReader.h
M llvm/include/llvm/ProfileData/SampleProf.h
M llvm/include/llvm/Remarks/BitstreamRemarkSerializer.h
M llvm/include/llvm/Remarks/RemarkStreamer.h
M llvm/include/llvm/SandboxIR/Context.h
M llvm/include/llvm/SandboxIR/Instruction.h
M llvm/include/llvm/SandboxIR/Region.h
M llvm/include/llvm/Support/AArch64BuildAttributes.h
M llvm/include/llvm/Support/CodeGenCoverage.h
M llvm/include/llvm/Support/DebugCounter.h
M llvm/include/llvm/Support/GlobPattern.h
M llvm/include/llvm/Support/JSON.h
M llvm/include/llvm/Support/Jobserver.h
M llvm/include/llvm/Support/LSP/Protocol.h
M llvm/include/llvm/Support/LSP/Transport.h
M llvm/include/llvm/Support/MathExtras.h
M llvm/include/llvm/Support/OptionStrCmp.h
M llvm/include/llvm/Support/VirtualOutputBackend.h
M llvm/include/llvm/Support/VirtualOutputBackends.h
M llvm/include/llvm/Support/VirtualOutputConfig.h
M llvm/include/llvm/Support/VirtualOutputError.h
M llvm/include/llvm/Support/VirtualOutputFile.h
M llvm/include/llvm/Support/Watchdog.h
M llvm/include/llvm/Support/Win64EH.h
M llvm/include/llvm/Support/circular_raw_ostream.h
M llvm/include/llvm/Support/raw_ostream_proxy.h
M llvm/include/llvm/TableGen/Error.h
M llvm/include/llvm/TableGen/Main.h
M llvm/include/llvm/TableGen/Parser.h
M llvm/include/llvm/TableGen/SetTheory.h
M llvm/include/llvm/TableGen/StringMatcher.h
M llvm/include/llvm/TableGen/StringToOffsetTable.h
M llvm/include/llvm/TableGen/TGTimer.h
M llvm/include/llvm/TableGen/TableGenBackend.h
M llvm/include/llvm/Target/GlobalISel/SelectionDAGCompat.td
M llvm/include/llvm/Target/TargetSelectionDAG.td
M llvm/include/llvm/TargetParser/RISCVTargetParser.h
M llvm/include/llvm/TargetParser/Triple.h
M llvm/include/llvm/TargetParser/XtensaTargetParser.h
M llvm/include/llvm/TextAPI/Target.h
M llvm/include/llvm/Transforms/IPO/Instrumentor.h
M llvm/include/llvm/Transforms/IPO/InstrumentorConfigFile.h
M llvm/include/llvm/Transforms/IPO/InstrumentorStubPrinter.h
M llvm/include/llvm/Transforms/InstCombine/InstCombiner.h
M llvm/include/llvm/Transforms/Utils/SSAUpdaterImpl.h
M llvm/include/llvm/Transforms/Utils/TriggerCrashPass.h
M llvm/include/llvm/Transforms/Vectorize/LoopVectorizationLegality.h
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/SandboxVectorizerIR.h
M llvm/include/llvm/XRay/FDRTraceExpander.h
M llvm/include/module.modulemap
M llvm/lib/Analysis/DXILMetadataAnalysis.cpp
M llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
M llvm/lib/CodeGen/GlobalISel/Utils.cpp
M llvm/lib/CodeGen/MachineFunctionPass.cpp
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
M llvm/lib/Demangle/DLangDemangle.cpp
M llvm/lib/IR/LegacyPassManager.cpp
M llvm/lib/IR/Pass.cpp
M llvm/lib/IR/PrintPasses.cpp
M llvm/lib/IR/Value.cpp
M llvm/lib/Passes/PassBuilder.cpp
M llvm/lib/Passes/StandardInstrumentations.cpp
M llvm/lib/Support/APInt.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.td
M llvm/lib/Target/AArch64/AArch64Features.td
M llvm/lib/Target/AArch64/AArch64InstrInfo.cpp
M llvm/lib/Target/AArch64/AArch64InstrInfo.td
A llvm/lib/Target/AArch64/AArch64LFI.td
M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
M llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCLFIRewriter.cpp
M llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCLFIRewriter.h
M llvm/lib/Target/AMDGPU/AMDGPUCodeGenPrepare.cpp
M llvm/lib/Target/AMDGPU/AMDGPUInstrInfo.td
M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
M llvm/lib/Target/AMDGPU/AMDGPULibCalls.cpp
M llvm/lib/Target/AMDGPU/AMDGPULowerBufferFatPointers.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/EvergreenInstructions.td
M llvm/lib/Target/AMDGPU/SIInstructions.td
M llvm/lib/Target/AMDGPU/SOPInstructions.td
M llvm/lib/Target/AMDGPU/VOP1Instructions.td
M llvm/lib/Target/DirectX/DXContainerGlobals.cpp
M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
M llvm/lib/Target/RISCV/RISCVFrameLowering.cpp
M llvm/lib/Target/RISCV/RISCVFrameLowering.h
M llvm/lib/Target/RISCV/RISCVInstrInfo.cpp
M llvm/lib/Target/RISCV/RISCVInstrInfo.h
M llvm/lib/Target/RISCV/RISCVInstrInfo.td
M llvm/lib/Target/RISCV/RISCVRegisterInfo.cpp
M llvm/lib/Target/RISCV/RISCVRegisterInfo.h
M llvm/lib/Target/RISCV/RISCVRegisterInfo.td
M llvm/lib/Target/RISCV/RISCVVectorPeephole.cpp
M llvm/lib/Target/SPIRV/SPIRVEmitIntrinsics.cpp
M llvm/lib/Target/X86/X86FlagsCopyLowering.cpp
M llvm/lib/Target/X86/X86ISelLoweringCall.cpp
M llvm/lib/Target/X86/X86Subtarget.cpp
M llvm/lib/Target/Xtensa/AsmParser/XtensaAsmParser.cpp
M llvm/lib/Target/Xtensa/MCTargetDesc/XtensaMCAsmInfo.cpp
M llvm/lib/Target/Xtensa/MCTargetDesc/XtensaTargetStreamer.cpp
M llvm/lib/Target/Xtensa/XtensaAsmPrinter.cpp
M llvm/lib/TargetParser/Host.cpp
M llvm/lib/Transforms/IPO/Instrumentor.cpp
M llvm/lib/Transforms/IPO/StripSymbols.cpp
M llvm/lib/Transforms/InstCombine/InstCombineCalls.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/Vectorize/LoopVectorizationPlanner.h
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/lib/Transforms/Vectorize/VPRecipeBuilder.h
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/VPlanDominatorTree.h
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/lib/Transforms/Vectorize/VPlanTransforms.h
M llvm/lib/Transforms/Vectorize/VPlanUnroll.cpp
M llvm/test/Analysis/CostModel/AArch64/sve-intrinsics.ll
A llvm/test/Analysis/CostModel/AArch64/sve-vector-reduce-fp.ll
M llvm/test/CodeGen/AArch64/fixed-vector-interleave.ll
M llvm/test/CodeGen/AArch64/sve-fixed-vector-llrint.ll
M llvm/test/CodeGen/AArch64/sve-fixed-vector-lrint.ll
M llvm/test/CodeGen/AArch64/sve-load-store-legalisation.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/llvm.amdgcn.mfma.gfx90a.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.set.inactive.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-amdgcn.fcmp.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-amdgcn.icmp.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-amdgcn.mfma.gfx90a.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-amdgcn.mfma.gfx942.mir
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-simplify-libcall-rootn-fast.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-rootn.ll
M llvm/test/CodeGen/AMDGPU/bf16.ll
M llvm/test/CodeGen/AMDGPU/llc-pipeline-npm.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.icmp.w32.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.icmp.w64.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.i8.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mfma.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mfma.xf32.gfx942.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.set.inactive.chain.arg.ll
M llvm/test/CodeGen/AMDGPU/llvm.fptrunc.round.ll
M llvm/test/CodeGen/AMDGPU/llvm.sponentry.ll
M llvm/test/CodeGen/AMDGPU/lower-buffer-fat-pointers-memops.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/sdiv.ll
M llvm/test/CodeGen/AMDGPU/sdiv64.ll
M llvm/test/CodeGen/AMDGPU/sdivrem24.ll
M llvm/test/CodeGen/AMDGPU/srem64.ll
M llvm/test/CodeGen/AMDGPU/udiv.ll
M llvm/test/CodeGen/AMDGPU/udiv64.ll
M llvm/test/CodeGen/AMDGPU/udivrem24.ll
M llvm/test/CodeGen/AMDGPU/urem64.ll
A llvm/test/CodeGen/DirectX/ContainerData/Inputs/SourceInfo.ll
A llvm/test/CodeGen/DirectX/ContainerData/SourceInfo-Args.ll
A llvm/test/CodeGen/DirectX/ContainerData/SourceInfo-Compressed.ll
A llvm/test/CodeGen/DirectX/ContainerData/SourceInfo-Uncompressed.ll
M llvm/test/CodeGen/DirectX/embed-ildb.ll
M llvm/test/CodeGen/NVPTX/math-intrins.ll
M llvm/test/CodeGen/RISCV/add-before-shl.ll
M llvm/test/CodeGen/RISCV/callee-saved-gprs.ll
M llvm/test/CodeGen/RISCV/fold-addi-loadstore.ll
M llvm/test/CodeGen/RISCV/machine-pipeliner.ll
M llvm/test/CodeGen/RISCV/nontemporal.ll
M llvm/test/CodeGen/RISCV/push-pop-popret.ll
M llvm/test/CodeGen/RISCV/qci-interrupt-attr-fpr.ll
M llvm/test/CodeGen/RISCV/qci-interrupt-attr.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-int-buildvec.ll
M llvm/test/CodeGen/RISCV/rvv/nontemporal-vp-scalable.ll
M llvm/test/CodeGen/RISCV/rvv/pr95865.ll
M llvm/test/CodeGen/RISCV/rvv/rvv-peephole-vmerge-vops.ll
M llvm/test/CodeGen/RISCV/rvv/vector-interleave.ll
M llvm/test/CodeGen/RISCV/rvv/vmerge-peephole.mir
M llvm/test/CodeGen/RISCV/rvv/vsetvli-insert-crossbb.ll
M llvm/test/CodeGen/RISCV/rvv/vxrm-insert-out-of-loop.ll
M llvm/test/CodeGen/RISCV/select-cc.ll
M llvm/test/CodeGen/RISCV/xqccmp-callee-saved-gprs.ll
M llvm/test/CodeGen/RISCV/xqccmp-push-pop-popret.ll
A llvm/test/CodeGen/RISCV/zero-call-used-regs.ll
A llvm/test/CodeGen/SPIRV/select-aggregate.ll
A llvm/test/CodeGen/SPIRV/select-composite-constant.ll
M llvm/test/CodeGen/X86/2009-11-17-UpdateTerminator.ll
M llvm/test/CodeGen/X86/2011-09-14-valcoalesce.ll
M llvm/test/CodeGen/X86/apx/push2-pop2-cfi-seh-v3.ll
M llvm/test/CodeGen/X86/apx/push2-pop2-cfi-seh.ll
M llvm/test/CodeGen/X86/atomic-load-store.ll
M llvm/test/CodeGen/X86/combine-pmuldq.ll
M llvm/test/CodeGen/X86/conditional-tailcall.ll
A llvm/test/CodeGen/X86/flags-copy-lowering-unreachable.mir
M llvm/test/CodeGen/X86/hipe-cc64.ll
M llvm/test/CodeGen/X86/ifma-combine-vpmadd52.ll
M llvm/test/CodeGen/X86/llc-pipeline-npm.ll
M llvm/test/CodeGen/X86/madd.ll
M llvm/test/CodeGen/X86/musttail-tailcc.ll
M llvm/test/CodeGen/X86/pmaddubsw.ll
M llvm/test/CodeGen/X86/sibcall.ll
M llvm/test/CodeGen/X86/swifttailcc-store-ret-address-aliasing-stack-slot.ll
M llvm/test/CodeGen/X86/vector-interleaved-store-i16-stride-6.ll
M llvm/test/CodeGen/X86/vector-interleaved-store-i32-stride-6.ll
M llvm/test/CodeGen/X86/vector-interleaved-store-i8-stride-6.ll
M llvm/test/CodeGen/X86/vector-replicaton-i1-mask.ll
M llvm/test/CodeGen/X86/widen_fadd.ll
M llvm/test/CodeGen/X86/widen_fdiv.ll
M llvm/test/CodeGen/X86/widen_fmul.ll
M llvm/test/CodeGen/X86/widen_fsub.ll
A llvm/test/CodeGen/Xtensa/tls.ll
M llvm/test/Instrumentation/Instrumentor/default_config.json
M llvm/test/Instrumentation/Instrumentor/module_and_globals.ll
A llvm/test/Instrumentation/Instrumentor/numeric.ll
A llvm/test/Instrumentation/Instrumentor/numeric_config.json
R llvm/test/Instrumentation/Instrumentor/operations.json
R llvm/test/Instrumentation/Instrumentor/operations.ll
A llvm/test/MC/AArch64/LFI/exclusive.s
A llvm/test/MC/AArch64/LFI/fp.s
A llvm/test/MC/AArch64/LFI/jumps-only.s
A llvm/test/MC/AArch64/LFI/literal.s
A llvm/test/MC/AArch64/LFI/lse.s
A llvm/test/MC/AArch64/LFI/mem-lr.s
A llvm/test/MC/AArch64/LFI/mem.s
A llvm/test/MC/AArch64/LFI/no-lfi-loads.s
A llvm/test/MC/AArch64/LFI/no-lfi-stores.s
A llvm/test/MC/AArch64/LFI/passthrough.s
A llvm/test/MC/AArch64/LFI/prefetch.s
A llvm/test/MC/AArch64/LFI/rcpc.s
A llvm/test/MC/AArch64/LFI/simd.s
A llvm/test/MC/AArch64/LFI/stack.s
M llvm/test/MC/AArch64/LFI/sys.s
M llvm/test/MC/AMDGPU/gfx11_asm_vop3_dpp16.s
M llvm/test/MC/RISCV/rv32c-invalid.s
M llvm/test/MC/RISCV/rv64c-invalid.s
M llvm/test/MC/RISCV/rvc-hints-invalid.s
M llvm/test/MC/RISCV/xqcibm-invalid.s
A llvm/test/MC/Xtensa/tls.s
M llvm/test/Other/dump-before-after.ll
M llvm/test/Other/print-changed-machine.ll
M llvm/test/TableGen/GlobalISelEmitter/SkippedPatterns.td
M llvm/test/Transforms/GVN/PRE/pre-loop-load.ll
M llvm/test/Transforms/InstCombine/assume.ll
M llvm/test/Transforms/InstCombine/copysign.ll
M llvm/test/Transforms/LoopInterchange/confused-dependence.ll
M llvm/test/Transforms/LoopInterchange/currentLimitation.ll
M llvm/test/Transforms/LoopInterchange/debuginfo.ll
M llvm/test/Transforms/LoopInterchange/force-interchange.ll
M llvm/test/Transforms/LoopInterchange/fp-reductions.ll
M llvm/test/Transforms/LoopInterchange/guarded-inner-loop.ll
A llvm/test/Transforms/LoopInterchange/inner-induciton-step-is-not-invariant.ll
M llvm/test/Transforms/LoopInterchange/inner-only-reductions.ll
M llvm/test/Transforms/LoopInterchange/interchange-insts-between-indvar.ll
M llvm/test/Transforms/LoopInterchange/legality-for-scalar-deps.ll
M llvm/test/Transforms/LoopInterchange/loopnest-with-outer-btc0.ll
M llvm/test/Transforms/LoopInterchange/multilevel-partial-reduction.ll
M llvm/test/Transforms/LoopInterchange/non-phi-uses-lcssa-phi.ll
M llvm/test/Transforms/LoopInterchange/outer-dependency-lte.ll
M llvm/test/Transforms/LoopInterchange/outer-only-reductions.ll
A llvm/test/Transforms/LoopInterchange/partially-perfect-loop.ll
M llvm/test/Transforms/LoopInterchange/pr43176-move-to-new-latch.ll
M llvm/test/Transforms/LoopInterchange/pr43326-ideal-access-pattern.ll
M llvm/test/Transforms/LoopInterchange/pr43326.ll
M llvm/test/Transforms/LoopInterchange/pr48212.ll
M llvm/test/Transforms/LoopInterchange/profitability-redundant-interchange.ll
M llvm/test/Transforms/LoopInterchange/profitability-vectorization-heuristic.ll
M llvm/test/Transforms/LoopInterchange/profitability-vectorization.ll
A llvm/test/Transforms/LoopInterchange/reduction-extra-use-in-inner-loop.ll
M llvm/test/Transforms/LoopInterchange/reduction2mem-limitation.ll
M llvm/test/Transforms/LoopInterchange/reductions-across-inner-and-outer-loop.ll
M llvm/test/Transforms/LoopInterchange/reductions-non-wrapped-operations.ll
A llvm/test/Transforms/LoopStrengthReduce/X86/lsr-icmpzero-no-inttoptr.ll
M llvm/test/Transforms/LoopStrengthReduce/funclet.ll
M llvm/test/Transforms/LoopStrengthReduce/post-inc-icmpzero.ll
M llvm/test/Transforms/LoopStrengthReduce/pr25541.ll
M llvm/test/Transforms/LoopStrengthReduce/pr27056.ll
M llvm/test/Transforms/LoopVectorize/ARM/mve-qabs.ll
M llvm/test/Transforms/LoopVectorize/ARM/mve-reduction-predselect.ll
M llvm/test/Transforms/LoopVectorize/ARM/mve-reductions-interleave.ll
M llvm/test/Transforms/LoopVectorize/ARM/mve-reductions.ll
M llvm/test/Transforms/LoopVectorize/ARM/mve-saddsatcost.ll
M llvm/test/Transforms/LoopVectorize/ARM/mve-selectandorcost.ll
M llvm/test/Transforms/LoopVectorize/ARM/pointer_iv.ll
M llvm/test/Transforms/LoopVectorize/ARM/tail-fold-multiple-icmps.ll
M llvm/test/Transforms/LoopVectorize/VPlan/AArch64/single-scalar-cast.ll
M llvm/test/Transforms/LoopVectorize/VPlan/AArch64/sve2-histcnt-vplan.ll
M llvm/test/Transforms/LoopVectorize/VPlan/RISCV/vplan-riscv-vector-reverse.ll
M llvm/test/Transforms/LoopVectorize/VPlan/X86/scalarize-wide-load-for-address-use.ll
M llvm/test/Transforms/LoopVectorize/VPlan/constant-fold.ll
M llvm/test/Transforms/LoopVectorize/VPlan/for-phi-ordering.ll
M llvm/test/Transforms/LoopVectorize/VPlan/vplan-print-after-all.ll
M llvm/test/Transforms/LoopVectorize/as_cast.ll
M llvm/test/Transforms/LoopVectorize/cast-costs.ll
M llvm/test/Transforms/LoopVectorize/cast-induction.ll
M llvm/test/Transforms/LoopVectorize/preserve-inbounds-gep-with-pointer-casts.ll
M llvm/test/Transforms/SLPVectorizer/SystemZ/revec-fix-128169.ll
A llvm/test/Transforms/SLPVectorizer/X86/expanded-binop-copyable-operand-deps.ll
M llvm/test/Transforms/SLPVectorizer/X86/revec-reduced-value-vectorized-later.ll
M llvm/test/Transforms/SLPVectorizer/X86/runtime-alias-checks.ll
M llvm/test/Transforms/SLPVectorizer/revec.ll
A llvm/test/tools/opt/print-pipeline-passes.ll
M llvm/tools/llc/NewPMDriver.cpp
M llvm/tools/opt/NewPMDriver.cpp
M llvm/unittests/ADT/APIntTest.cpp
M llvm/unittests/ADT/StringMapTest.cpp
M llvm/unittests/DebugInfo/PDB/CMakeLists.txt
M llvm/unittests/Demangle/DLangDemangleTest.cpp
M llvm/unittests/Support/GlobPatternTest.cpp
M llvm/unittests/Support/KnownBitsTest.cpp
M llvm/unittests/Support/SpecialCaseListTest.cpp
M llvm/unittests/Transforms/Vectorize/VPlanTestBase.h
M llvm/utils/TableGen/GlobalISelEmitter.cpp
M mlir/docs/CMakeLists.txt
M mlir/docs/LangRef.md
M mlir/examples/standalone/test/lit.cfg.py
M mlir/include/mlir/Conversion/ConvertToEmitC/ConvertToEmitCPatternInterface.td
M mlir/include/mlir/Conversion/ConvertToEmitC/ToEmitCInterface.h
M mlir/include/mlir/Conversion/FuncToEmitC/FuncToEmitC.h
M mlir/include/mlir/Conversion/Passes.td
M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVGLOps.td
M mlir/include/mlir/Dialect/XeGPU/IR/XeGPUAttrs.td
M mlir/include/mlir/Dialect/XeGPU/Utils/XeGPUUtils.h
M mlir/lib/Conversion/ArithToEmitC/ArithToEmitC.cpp
M mlir/lib/Conversion/ComplexToSPIRV/ComplexToSPIRV.cpp
M mlir/lib/Conversion/ConvertToEmitC/ConvertToEmitCPass.cpp
M mlir/lib/Conversion/FuncToEmitC/FuncToEmitC.cpp
M mlir/lib/Conversion/FuncToEmitC/FuncToEmitCPass.cpp
M mlir/lib/Conversion/MemRefToEmitC/MemRefToEmitC.cpp
M mlir/lib/Conversion/SCFToEmitC/SCFToEmitC.cpp
M mlir/lib/Conversion/XeGPUToXeVM/XeGPUToXeVM.cpp
M mlir/lib/Dialect/XeGPU/IR/XeGPUDialect.cpp
M mlir/lib/Dialect/XeGPU/Transforms/XeGPUArrayLengthOptimization.cpp
M mlir/lib/Dialect/XeGPU/Transforms/XeGPULayoutImpl.cpp
M mlir/lib/Dialect/XeGPU/Transforms/XeGPUPeepHoleOptimizer.cpp
M mlir/lib/Dialect/XeGPU/Transforms/XeGPUSgToLaneDistribute.cpp
M mlir/lib/Dialect/XeGPU/Transforms/XeGPUUnroll.cpp
M mlir/lib/Dialect/XeGPU/Utils/XeGPUUtils.cpp
M mlir/test/Conversion/ComplexToSPIRV/complex-to-spirv.mlir
M mlir/test/Conversion/FuncToEmitC/func-to-emitc-failed.mlir
M mlir/test/Conversion/FuncToEmitC/func-to-emitc.mlir
M mlir/test/Conversion/XeGPUToXeVM/loadstore_nd.mlir
M mlir/test/Dialect/XeGPU/peephole-optimize.mlir
M mlir/test/Dialect/XeGPU/propagate-layout-inst-data.mlir
M mlir/test/Dialect/XeGPU/propagate-layout-subgroup.mlir
M mlir/test/Dialect/XeGPU/propagate-layout.mlir
M mlir/test/Dialect/XeGPU/sg-to-lane-distribute-unit.mlir
M mlir/test/Integration/Dialect/XeGPU/LANE/xegpu_dpas_mx_prepacked_bf8.mlir
M mlir/test/Integration/Dialect/XeGPU/LANE/xegpu_dpas_mx_prepacked_e2m1.mlir
A mlir/test/Integration/Dialect/XeGPU/WG/simple_mxfp_gemm_dequantizeB_F4.mlir
A mlir/test/Integration/Dialect/XeGPU/WG/simple_mxfp_gemm_quantizeA_F4.mlir
M mlir/test/Integration/GPU/ROCM/lit.local.cfg
M mlir/test/Target/Cpp/func.mlir
M mlir/tools/mlir-tblgen/AttrOrTypeFormatGen.cpp
A offload/test/offloading/fortran/target-firstprivate.f90
M offload/unittests/CMakeLists.txt
M openmp/docs/CMakeLists.txt
M orc-rt/lib/executor/Unix/NativeDylibAPIs.inc
M orc-rt/unittests/NativeDylibManagerSPSCITest.cpp
M orc-rt/unittests/NativeDylibManagerTest.cpp
M polly/docs/CMakeLists.txt
M runtimes/CMakeLists.txt
A utils/bazel/llvm-project-overlay/flang-rt/BUILD.bazel
A utils/bazel/llvm-project-overlay/flang-rt/lib/runtime/BUILD.bazel
A utils/bazel/llvm-project-overlay/flang-rt/unittests/BUILD.bazel
A utils/bazel/llvm-project-overlay/flang/BUILD.bazel
A utils/bazel/llvm-project-overlay/flang/include/flang/Optimizer/Analysis/BUILD.bazel
A utils/bazel/llvm-project-overlay/flang/include/flang/Optimizer/Builder/BUILD.bazel
A utils/bazel/llvm-project-overlay/flang/include/flang/Optimizer/CodeGen/BUILD.bazel
A utils/bazel/llvm-project-overlay/flang/include/flang/Optimizer/Dialect/BUILD.bazel
A utils/bazel/llvm-project-overlay/flang/include/flang/Optimizer/Dialect/CUF/Attributes/BUILD.bazel
A utils/bazel/llvm-project-overlay/flang/include/flang/Optimizer/Dialect/CUF/BUILD.bazel
A utils/bazel/llvm-project-overlay/flang/include/flang/Optimizer/Dialect/FIRCG/BUILD.bazel
A utils/bazel/llvm-project-overlay/flang/include/flang/Optimizer/Dialect/MIF/BUILD.bazel
A utils/bazel/llvm-project-overlay/flang/include/flang/Optimizer/HLFIR/BUILD.bazel
A utils/bazel/llvm-project-overlay/flang/include/flang/Optimizer/OpenACC/BUILD.bazel
A utils/bazel/llvm-project-overlay/flang/include/flang/Optimizer/OpenMP/BUILD.bazel
A utils/bazel/llvm-project-overlay/flang/include/flang/Optimizer/Passes/BUILD.bazel
A utils/bazel/llvm-project-overlay/flang/include/flang/Optimizer/Support/BUILD.bazel
A utils/bazel/llvm-project-overlay/flang/include/flang/Optimizer/Transforms/BUILD.bazel
A utils/bazel/llvm-project-overlay/flang/lib/Decimal/BUILD.bazel
A utils/bazel/llvm-project-overlay/flang/lib/Evaluate/BUILD.bazel
A utils/bazel/llvm-project-overlay/flang/lib/Frontend/BUILD.bazel
A utils/bazel/llvm-project-overlay/flang/lib/FrontendTool/BUILD.bazel
A utils/bazel/llvm-project-overlay/flang/lib/Lower/BUILD.bazel
A utils/bazel/llvm-project-overlay/flang/lib/Optimizer/Analysis/BUILD.bazel
A utils/bazel/llvm-project-overlay/flang/lib/Optimizer/Builder/BUILD.bazel
A utils/bazel/llvm-project-overlay/flang/lib/Optimizer/CodeGen/BUILD.bazel
A utils/bazel/llvm-project-overlay/flang/lib/Optimizer/Dialect/BUILD.bazel
A utils/bazel/llvm-project-overlay/flang/lib/Optimizer/Dialect/CUF/Attributes/BUILD.bazel
A utils/bazel/llvm-project-overlay/flang/lib/Optimizer/Dialect/CUF/BUILD.bazel
A utils/bazel/llvm-project-overlay/flang/lib/Optimizer/Dialect/FIRCG/BUILD.bazel
A utils/bazel/llvm-project-overlay/flang/lib/Optimizer/Dialect/MIF/BUILD.bazel
A utils/bazel/llvm-project-overlay/flang/lib/Optimizer/Dialect/Support/BUILD.bazel
A utils/bazel/llvm-project-overlay/flang/lib/Optimizer/HLFIR/IR/BUILD.bazel
A utils/bazel/llvm-project-overlay/flang/lib/Optimizer/HLFIR/Transforms/BUILD.bazel
A utils/bazel/llvm-project-overlay/flang/lib/Optimizer/OpenACC/Analysis/BUILD.bazel
A utils/bazel/llvm-project-overlay/flang/lib/Optimizer/OpenACC/Support/BUILD.bazel
A utils/bazel/llvm-project-overlay/flang/lib/Optimizer/OpenACC/Transforms/BUILD.bazel
A utils/bazel/llvm-project-overlay/flang/lib/Optimizer/OpenMP/BUILD.bazel
A utils/bazel/llvm-project-overlay/flang/lib/Optimizer/OpenMP/Support/BUILD.bazel
A utils/bazel/llvm-project-overlay/flang/lib/Optimizer/Passes/BUILD.bazel
A utils/bazel/llvm-project-overlay/flang/lib/Optimizer/Support/BUILD.bazel
A utils/bazel/llvm-project-overlay/flang/lib/Optimizer/Transforms/BUILD.bazel
A utils/bazel/llvm-project-overlay/flang/lib/Parser/BUILD.bazel
A utils/bazel/llvm-project-overlay/flang/lib/Semantics/BUILD.bazel
A utils/bazel/llvm-project-overlay/flang/lib/Support/BUILD.bazel
A utils/bazel/llvm-project-overlay/flang/lib/Testing/BUILD.bazel
A utils/bazel/llvm-project-overlay/flang/lib/Utils/BUILD.bazel
A utils/bazel/llvm-project-overlay/flang/tools/flang-driver/BUILD.bazel
A utils/bazel/llvm-project-overlay/flang/unittests/BUILD.bazel
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
M utils/bazel/llvm-project-overlay/libc/test/src/math/smoke/BUILD.bazel
A utils/bazel/llvm-project-overlay/openmp/BUILD.bazel
A utils/bazel/llvm-project-overlay/openmp/runtime/src/BUILD.bazel
A utils/bazel/llvm-project-overlay/openmp/runtime/tools/BUILD.bazel
A utils/bazel/llvm-project-overlay/openmp/runtime/unittests/BUILD.bazel
Log Message:
-----------
Merge branch 'main' into users/kparzysz/detach-type-param
Compare: https://github.com/llvm/llvm-project/compare/896793b8c4f3...39d938ad651b
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