[all-commits] [llvm/llvm-project] 6ae717: [mlir][spirv] Update mergeInfo of blocks nested in...
Iris Shi via All-commits
all-commits at lists.llvm.org
Wed May 7 01:19:59 PDT 2025
Branch: refs/heads/users/el-ev/riscv-mul-expand
Home: https://github.com/llvm/llvm-project
Commit: 6ae7177de8d101487518bac72a1e2ab0a2ca18c9
https://github.com/llvm/llvm-project/commit/6ae7177de8d101487518bac72a1e2ab0a2ca18c9
Author: Igor Wodiany <igor.wodiany at imgtec.com>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
M mlir/lib/Target/SPIRV/Deserialization/Deserializer.cpp
Log Message:
-----------
[mlir][spirv] Update mergeInfo of blocks nested in regions (#137789)
The current code that updates mergeInfo iterates only over
constructBlocks, potentially leaving blocks nested in already structured
regions with invalid mergeInfo. This patch adds walk for each block to
ensure all nested blocks are considered.
It is not possible to add a unit test exercising this change as whether
the problem occurs depends on the structuring order that is currently
non-deterministic.
Commit: 77581e27514db084da59738c4d26ed7e70a31736
https://github.com/llvm/llvm-project/commit/77581e27514db084da59738c4d26ed7e70a31736
Author: Michael Kruse <llvm-project at meinersbur.de>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
M flang-rt/README.md
M flang/CMakeLists.txt
R flang/cmake/modules/AddFlangOffloadRuntime.cmake
M flang/examples/CMakeLists.txt
R flang/examples/ExternalHelloWorld/CMakeLists.txt
R flang/runtime/CMakeLists.txt
R flang/runtime/CUDA/CMakeLists.txt
R flang/runtime/Float128Math/CMakeLists.txt
M flang/test/CMakeLists.txt
M flang/test/lit.cfg.py
M flang/test/lit.site.cfg.py.in
M flang/tools/f18/CMakeLists.txt
M flang/unittests/CMakeLists.txt
M flang/unittests/Evaluate/CMakeLists.txt
R flang/unittests/Runtime/CMakeLists.txt
R flang/unittests/Runtime/CUDA/CMakeLists.txt
M llvm/CMakeLists.txt
Log Message:
-----------
Reapply "[Flang] Remove FLANG_INCLUDE_RUNTIME (#124126)"
This reverts commit 27539c3f903be26c487703943d3c27d45d4542b2. Retry
with new buildbot configuration after master restart.
Original message:
Remove the FLANG_INCLUDE_RUNTIME option which was replaced by
LLVM_ENABLE_RUNTIMES=flang-rt.
The FLANG_INCLUDE_RUNTIME option was added in #122336 which disables the
non-runtimes build instructions for the Flang runtime so they do not
conflict with the LLVM_ENABLE_RUNTIMES=flang-rt option added in #110217.
In order to not maintain multiple build instructions for the same thing,
this PR completely removes the old build instructions (effectively
forcing FLANG_INCLUDE_RUNTIME=OFF).
As per discussion in
https://discourse.llvm.org/t/buildbot-changes-with-llvm-enable-runtimes-flang-rt/83571/2
we now implicitly add LLVM_ENABLE_RUNTIMES=flang-rt whenever Flang is
compiled in a bootstrapping (non-standalone) build. Because it is
possible to build Flang-RT separately, this behavior can be disabled
using `-DFLANG_ENABLE_FLANG_RT=OFF`. Also see the discussion an
implicitly adding runtimes/projects in #123964.
Commit: 92195f6fc873cd27a5aa0852252dfe44ccdc6ea0
https://github.com/llvm/llvm-project/commit/92195f6fc873cd27a5aa0852252dfe44ccdc6ea0
Author: Stephen Tozer <stephen.tozer at sony.com>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
M clang/lib/CodeGen/BackendUtil.cpp
M llvm/docs/HowToUpdateDebugInfo.rst
M llvm/include/llvm/IR/DebugLoc.h
M llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
M llvm/lib/IR/DebugInfo.cpp
M llvm/lib/IR/DebugLoc.cpp
M llvm/lib/Transforms/Utils/Debugify.cpp
Log Message:
-----------
Reapply "[DLCov] Implement DebugLoc coverage tracking (#107279)"
Reapplied after fixing the config issue that was causing issues following
the previous merge.
This reverts commit fdbf073a86573c9ac4d595fac8e06d252ce1469f.
Commit: b3d130279f5c59a82d48d4647bef626ac4e202cf
https://github.com/llvm/llvm-project/commit/b3d130279f5c59a82d48d4647bef626ac4e202cf
Author: Charles Zablit <c_zablit at apple.com>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
M lldb/include/lldb/DataFormatters/TypeSynthetic.h
M lldb/include/lldb/DataFormatters/VectorIterator.h
M lldb/include/lldb/Interpreter/ScriptInterpreter.h
M lldb/include/lldb/Symbol/CompilerType.h
M lldb/include/lldb/Symbol/TypeSystem.h
M lldb/include/lldb/ValueObject/ValueObject.h
M lldb/include/lldb/ValueObject/ValueObjectRegister.h
M lldb/include/lldb/ValueObject/ValueObjectSyntheticFilter.h
M lldb/source/API/SBValue.cpp
M lldb/source/DataFormatters/FormatterBytecode.cpp
M lldb/source/DataFormatters/TypeSynthetic.cpp
M lldb/source/DataFormatters/VectorType.cpp
M lldb/source/Plugins/Language/CPlusPlus/BlockPointer.cpp
M lldb/source/Plugins/Language/CPlusPlus/Coroutines.cpp
M lldb/source/Plugins/Language/CPlusPlus/Coroutines.h
M lldb/source/Plugins/Language/CPlusPlus/GenericBitset.cpp
M lldb/source/Plugins/Language/CPlusPlus/GenericOptional.cpp
M lldb/source/Plugins/Language/CPlusPlus/LibCxx.cpp
M lldb/source/Plugins/Language/CPlusPlus/LibCxx.h
M lldb/source/Plugins/Language/CPlusPlus/LibCxxAtomic.cpp
M lldb/source/Plugins/Language/CPlusPlus/LibCxxInitializerList.cpp
M lldb/source/Plugins/Language/CPlusPlus/LibCxxList.cpp
M lldb/source/Plugins/Language/CPlusPlus/LibCxxMap.cpp
M lldb/source/Plugins/Language/CPlusPlus/LibCxxProxyArray.cpp
M lldb/source/Plugins/Language/CPlusPlus/LibCxxQueue.cpp
M lldb/source/Plugins/Language/CPlusPlus/LibCxxRangesRefView.cpp
M lldb/source/Plugins/Language/CPlusPlus/LibCxxSliceArray.cpp
M lldb/source/Plugins/Language/CPlusPlus/LibCxxSpan.cpp
M lldb/source/Plugins/Language/CPlusPlus/LibCxxTuple.cpp
M lldb/source/Plugins/Language/CPlusPlus/LibCxxUnorderedMap.cpp
M lldb/source/Plugins/Language/CPlusPlus/LibCxxValarray.cpp
M lldb/source/Plugins/Language/CPlusPlus/LibCxxVariant.cpp
M lldb/source/Plugins/Language/CPlusPlus/LibCxxVector.cpp
M lldb/source/Plugins/Language/CPlusPlus/LibStdcpp.cpp
M lldb/source/Plugins/Language/CPlusPlus/LibStdcppTuple.cpp
M lldb/source/Plugins/Language/CPlusPlus/LibStdcppUniquePointer.cpp
M lldb/source/Plugins/Language/ObjC/Cocoa.cpp
M lldb/source/Plugins/Language/ObjC/NSArray.cpp
M lldb/source/Plugins/Language/ObjC/NSDictionary.cpp
M lldb/source/Plugins/Language/ObjC/NSError.cpp
M lldb/source/Plugins/Language/ObjC/NSException.cpp
M lldb/source/Plugins/Language/ObjC/NSIndexPath.cpp
M lldb/source/Plugins/Language/ObjC/NSSet.cpp
M lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp
M lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPythonImpl.h
M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp
M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.h
M lldb/source/Symbol/CompilerType.cpp
M lldb/source/ValueObject/ValueObject.cpp
M lldb/source/ValueObject/ValueObjectRegister.cpp
M lldb/source/ValueObject/ValueObjectSyntheticFilter.cpp
M lldb/unittests/Platform/PlatformSiginfoTest.cpp
Log Message:
-----------
[lldb] Upgrade `GetIndexOfChildWithName` to use `llvm::Expected` (#136693)
This patch replaces the use of `UINT32_MAX` as the error return value of
`GetIndexOfChildWithName` with `llvm::Expected`.
# Tasks to do in another PR
1. Replace `CalculateNumChildrenIgnoringErrors` with
`CalculateNumChildren`. See [this
comment](https://github.com/llvm/llvm-project/pull/136693#discussion_r2056319358).
2. Update `lldb_private::formatters::ExtractIndexFromString` to use
`llvm::Expected`. See [this
comment](https://github.com/llvm/llvm-project/pull/136693#discussion_r2054217536).
3. Create a new class which carries both user and internal errors. See
[this
comment](https://github.com/llvm/llvm-project/pull/136693#discussion_r2056439608).
Commit: 1563d74145faa41bc5b1cdb1df2add84d6f01d39
https://github.com/llvm/llvm-project/commit/1563d74145faa41bc5b1cdb1df2add84d6f01d39
Author: Jie Fu <jiefu at tencent.com>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
M llvm/lib/Passes/PassBuilder.cpp
Log Message:
-----------
[Passes] Remove extra ';' outside of a function (NFC)
/llvm-project/llvm/lib/Passes/PassBuilder.cpp:1508:2:
error: extra ';' outside of a function is incompatible with C++98 [-Werror,-Wc++98-compat-extra-semi]
1508 | };
| ^
1 error generated.
Commit: d68c732473a12f2fba495baebd7094b25bdfdce7
https://github.com/llvm/llvm-project/commit/d68c732473a12f2fba495baebd7094b25bdfdce7
Author: Kajetan Puchalski <kajetan.puchalski at arm.com>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
M flang/lib/Evaluate/CMakeLists.txt
M flang/lib/Frontend/CMakeLists.txt
M flang/lib/Lower/CMakeLists.txt
M flang/lib/Parser/CMakeLists.txt
M flang/lib/Semantics/CMakeLists.txt
M llvm/CMakeLists.txt
Log Message:
-----------
[flang] Use precompiled headers in Frontend, Lower, Parser, Semantics and Evaluate (#131137)
Precompiling larger headers can save a lot of compile time across
various compilation units.
For the time being, disable precompiled headers for ccache builds on Windows
due to issues with reliably passing the appropriate options to ccache.
Selected compile time & memory improvements are as follows:
flang/lib/Parser/Fortran-parsers.cpp:
Elapsed (wall clock) time (h:mm:ss or m:ss): 0:47.31 -> 0:41.68
Maximum resident set size (kbytes): 2062140 -> 1745584
flang/lib/Lower/Bridge.cpp:
Elapsed (wall clock) time (h:mm:ss or m:ss): 1:19.16 -> 0:45.86
Maximum resident set size (kbytes): 3849144 -> 2443476
flang/lib/Lower/PFTBuilder.cpp
Elapsed (wall clock) time (h:mm:ss or m:ss): 1:29.24 -> 1:00.99
Maximum resident set size (kbytes): 4218368 -> 2923128
flang/lib/Lower/Allocatable.cpp
Elapsed (wall clock) time (h:mm:ss or m:ss): 0:53.03 -> 0:22.50
Maximum resident set size (kbytes): 3092840 -> 2116908
flang/lib/Semantics/Semantics.cpp
Elapsed (wall clock) time (h:mm:ss or m:ss): 1:18.75 -> 1:00.20
Maximum resident set size (kbytes): 3527744 -> 2545308
While the newly added precompiled headers are as follows:
Parser:
Elapsed (wall clock) time (h:mm:ss or m:ss): 0:09.62
Maximum resident set size (kbytes): 1034608
Lower:
Elapsed (wall clock) time (h:mm:ss or m:ss): 0:41.33
Maximum resident set size (kbytes): 3615240
Semantics:
Elapsed (wall clock) time (h:mm:ss or m:ss): 0:26.69
Maximum resident set size (kbytes): 2403776
---------
Signed-off-by: Kajetan Puchalski <kajetan.puchalski at arm.com>
Commit: 3dc3d431e7385874f200a83bb2f291d2d45b1d16
https://github.com/llvm/llvm-project/commit/3dc3d431e7385874f200a83bb2f291d2d45b1d16
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
M llvm/lib/Target/SPIRV/SPIRVModuleAnalysis.cpp
Log Message:
-----------
SPIRV: Simplify phi processing (#137050)
Commit: f2b8539803ea5887a9653d26cdcacaabd536ae1c
https://github.com/llvm/llvm-project/commit/f2b8539803ea5887a9653d26cdcacaabd536ae1c
Author: Aaron Ballman <aaron at aaronballman.com>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
M clang/lib/Lex/LiteralSupport.cpp
M clang/test/C/C2y/n3353.c
Log Message:
-----------
[C2y] Correctly handle 0 in the preprocessor (#137844)
We do not diagnose 0 as a deprecated octal literal outside of the
preprocessor. This fixes a bug where we were accidentally diagnosing 0
from a preprocessor conditional, however.
No release note because this is fixing an issue with a new change.
Commit: 6e43cdbc25e90d88251d69519822713afc20108c
https://github.com/llvm/llvm-project/commit/6e43cdbc25e90d88251d69519822713afc20108c
Author: Jie Fu <jiefu at tencent.com>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
M llvm/lib/CodeGen/VirtRegMap.cpp
Log Message:
-----------
[CodeGen] Remove unused variable 'ID' (NFC)
/llvm-project/llvm/lib/CodeGen/VirtRegMap.cpp:225:15:
error: unused variable 'ID' [-Werror,-Wunused-variable]
static char ID;
^
1 error generated.
Commit: 6dfd35457123089b3506899c8bc522f3dfa6e959
https://github.com/llvm/llvm-project/commit/6dfd35457123089b3506899c8bc522f3dfa6e959
Author: halbi2 <hehiralbi at gmail.com>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
M clang/lib/Sema/SemaDeclAttr.cpp
M clang/test/Sema/attr-ownership.c
Log Message:
-----------
[clang] ownership_returns attribute takes no more than 2 arguments (#137897)
Commit: 26da8870ede83fb9759a5c068b713beb742399ec
https://github.com/llvm/llvm-project/commit/26da8870ede83fb9759a5c068b713beb742399ec
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
Log Message:
-----------
Fix MSVC "not all control paths return a value" warning. NFC.
Commit: 120e940356561035bf37bc4fcb6fab771e7a9b7d
https://github.com/llvm/llvm-project/commit/120e940356561035bf37bc4fcb6fab771e7a9b7d
Author: Matthias Springer <me at m-sp.org>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
M mlir/lib/Dialect/MemRef/Transforms/RuntimeOpVerification.cpp
A mlir/test/Integration/Dialect/MemRef/atomic-rmw-runtime-verification.mlir
A mlir/test/Integration/Dialect/MemRef/store-runtime-verification.mlir
Log Message:
-----------
[mlir][memref] Add runtime verification for `memref.atomic_rmw` (#130414)
Implement runtime verification for `memref.atomic_rmw` and
`memref.generic_atomic_rmw`. Also add a missing test for `memref.store`.
Commit: 101fd87f98c9354103311db9523bc00b9df71d18
https://github.com/llvm/llvm-project/commit/101fd87f98c9354103311db9523bc00b9df71d18
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
M llvm/include/llvm/ADT/ArrayRef.h
M llvm/unittests/ADT/ArrayRefTest.cpp
Log Message:
-----------
[ArrayRef] Add constructor from iterator_range<U*> (NFC). (#137796)
Add a new constructor to ArrayRef that takes an iterator_range with a
random access iterator that can be converted.
This can help to avoid creating unnecessary iterator_ranges for types
where an ArrayRef can already be constructed. To be used in
https://github.com/llvm/llvm-project/pull/137798.
PR: https://github.com/llvm/llvm-project/pull/137796
Commit: 5b6fc610919cc2e88fe3d9bfcc23637c75a636c9
https://github.com/llvm/llvm-project/commit/5b6fc610919cc2e88fe3d9bfcc23637c75a636c9
Author: Wenju He <wenju.he at intel.com>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
M libclc/generic/include/clc/async/async_work_group_copy.h
M libclc/generic/include/clc/async/async_work_group_strided_copy.h
R libclc/generic/include/clc/async/gentype.inc
M libclc/generic/include/clc/async/prefetch.h
M libclc/generic/lib/async/async_work_group_copy.cl
M libclc/generic/lib/async/async_work_group_strided_copy.cl
M libclc/generic/lib/async/prefetch.cl
Log Message:
-----------
[libclc] Add v3 variants of async_work_group_copy/async_work_group_strided_copy/prefetch (#137932)
3-component vector type is supported for them per OpenCL spec.
Commit: 8dc89e34199b6b1d0f5ea1f9940ccc8e957eef0a
https://github.com/llvm/llvm-project/commit/8dc89e34199b6b1d0f5ea1f9940ccc8e957eef0a
Author: Paul Walker <paul.walker at arm.com>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
M llvm/test/Transforms/InstCombine/AArch64/sve-intrinsic-simplify-binop.ll
M llvm/test/Transforms/InstCombine/AArch64/sve-intrinsic-simplify-shift.ll
Log Message:
-----------
[LLVM][InstCombine] Enable constant folding for SVE asr,lsl and lsr intrinsics. (#137350)
The SVE intrinsics support shift amounts greater-than-or-equal to the
element type's bit-length, essentially saturating the shift amount to
the bit-length. However, the IR instructions consider this undefined
behaviour that results in poison. To account for this we now ignore the
result of the simplifications that result in poison. This allows
existing code to be used to simplify the shifts but does mean:
1) We don't simplify cases like "svlsl_s32(x, splat(32)) => 0".
2) We no longer constant fold cases like "svadd(poison, X) => poison"
For (1) we'd need dedicated target specific combines anyway and the
result of (2) is not specified by the ACLE and replicating LLVM IR
behaviour might be confusing to ACLE writers.
Commit: 730f4a1ab3b642aa0ce1c88a9a2f80efbbb33539
https://github.com/llvm/llvm-project/commit/730f4a1ab3b642aa0ce1c88a9a2f80efbbb33539
Author: Igor Wodiany <igor.wodiany at imgtec.com>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
M mlir/lib/Target/SPIRV/Deserialization/Deserializer.cpp
M mlir/lib/Target/SPIRV/Deserialization/Deserializer.h
A mlir/test/Target/SPIRV/consecutive-selection.spv
Log Message:
-----------
[mlir][spirv] Split header and merge block in `mlir.selection`s (#134875)
In the example below with the current code the first selection construct
(`if`/`else` in GLSL for simplicity) share its merge block with a header
block of the second construct.
```
bool _115;
if (_107)
{
// ...
_115 = _200 < _174;
}
else
{
_115 = _107;
}
bool _123;
if (_115)
{
// ...
_123 = _213 < _174;
}
else
{
_123 = _115;
}
```
This results in a malformed nesting of `mlir.selection` instructions
where one selection ends up inside a header block of another selection
construct. For example:
```
%61 = spirv.mlir.selection -> i1 {
%80 = spirv.mlir.selection -> i1 {
spirv.BranchConditional %60, ^bb1, ^bb2(%60 : i1)
^bb1: // pred: ^bb0
// ...
spirv.Branch ^bb2(%101 : i1)
^bb2(%102: i1): // 2 preds: ^bb0, ^bb1
spirv.mlir.merge %102 : i1
}
spirv.BranchConditional %80, ^bb1, ^bb2(%80 : i1)
^bb1: // pred: ^bb0
// ...
spirv.Branch ^bb2(%90 : i1)
^bb2(%91: i1): // 2 preds: ^bb0, ^bb1
spirv.mlir.merge %91 : i1
}
```
This change ensures that the merge block of one selection is not a
header block of another, splitting blocks if necessary. The existing
block splitting mechanism is updated to handle this case.
Commit: 1180740ced0218865577a09c9245f035e443a6f0
https://github.com/llvm/llvm-project/commit/1180740ced0218865577a09c9245f035e443a6f0
Author: Fraser Cormack <fraser at codeplay.com>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
R libclc/generic/include/clc/integer/integer-gentype.inc
Log Message:
-----------
[libclc][NFC] Remove unused integer-gentype.inc
This is presumably replaced with uses of integer/gentype.inc.
Commit: 5b20b5721a0623bad51c9d3734b47842ee921ee3
https://github.com/llvm/llvm-project/commit/5b20b5721a0623bad51c9d3734b47842ee921ee3
Author: Gergely Bálint <50703923+bgergely0 at users.noreply.github.com>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
M bolt/docs/BinaryAnalysis.md
M bolt/lib/Core/BinaryFunction.cpp
Log Message:
-----------
[BOLT][AArch64] Allow binary-analysis and heatmap tool to run with pac-ret binaries (#136664)
OpNegateRAState support is only needed for tools that produce binaries.
Commit: 3b12bac6d1b3ac8aa4b465abe5adec8110025fac
https://github.com/llvm/llvm-project/commit/3b12bac6d1b3ac8aa4b465abe5adec8110025fac
Author: Paul Walker <paul.walker at arm.com>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
M llvm/lib/Transforms/Scalar/Reassociate.cpp
M llvm/test/Transforms/Reassociate/fast-ReassociateVector.ll
Log Message:
-----------
[LLVM][Reassociate] Extend ConvertShiftToMul to allow for ConstantInt vectors. (#137340)
This has the side effect of fixing the FIXME for when
use-constant-int-for-fixed-length-splat becomes the default.
Commit: de6d010f4e3fbfdb54e257c496c16db30c6c0d91
https://github.com/llvm/llvm-project/commit/de6d010f4e3fbfdb54e257c496c16db30c6c0d91
Author: Jorn Tuyls <jtuyls at users.noreply.github.com>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
M mlir/docs/DefiningDialects/AttributesAndTypes.md
A mlir/test/IR/custom-struct-attr-roundtrip.mlir
M mlir/test/lib/Dialect/Test/TestAttrDefs.td
M mlir/test/lib/Dialect/Test/TestAttributes.cpp
M mlir/test/mlir-tblgen/attr-or-type-format-invalid.td
M mlir/test/mlir-tblgen/attr-or-type-format.td
M mlir/tools/mlir-tblgen/AttrOrTypeFormatGen.cpp
M mlir/tools/mlir-tblgen/FormatGen.cpp
M mlir/tools/mlir-tblgen/FormatGen.h
M mlir/tools/mlir-tblgen/OpFormatGen.cpp
Log Message:
-----------
[mlir][tblgen] Add custom parsing and printing within struct (#133939)
This PR extends the `struct` directive in tablegen to support nested
`custom` directives. Note that this assumes/verifies that that `custom`
directive has a single parameter.
This enables defining custom field parsing and printing functions if the
`struct` directive doesn't suffice. There is some existing potential
downstream usage for it:
https://github.com/openxla/stablehlo/blob/a3c7de92425e8035437dae67ab2318a82eca79a1/stablehlo/dialect/StablehloOps.cpp#L3102
Commit: 0d6c9f32735a71812208f92eb640ae88a089a930
https://github.com/llvm/llvm-project/commit/0d6c9f32735a71812208f92eb640ae88a089a930
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
M llvm/unittests/ADT/ArrayRefTest.cpp
Log Message:
-----------
[ArrayRefTest] Use plain array instead of std::array in unit tests.
std::array<> doesn't seem to decay to plain pointers on some MSVC
versions, causing windows build failures after 101fd87f98c9.
Use plain arrays to fix windows builds, including
https://lab.llvm.org/buildbot/#/builders/2/builds/22803
Commit: f1248d6347a3d013c82ec34d27a09e9dcdbce44e
https://github.com/llvm/llvm-project/commit/f1248d6347a3d013c82ec34d27a09e9dcdbce44e
Author: Nico Weber <thakis at chromium.org>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
M llvm/utils/gn/secondary/llvm/include/llvm/Config/BUILD.gn
Log Message:
-----------
[gn] fix minor mistake from 3e523502a159
Commit: 6feb4a8ef4d1e2fc899092fb3f90f11a2d86eccb
https://github.com/llvm/llvm-project/commit/6feb4a8ef4d1e2fc899092fb3f90f11a2d86eccb
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
M llvm/docs/LangRef.rst
M llvm/include/llvm/IR/Type.h
M llvm/lib/IR/Type.cpp
M llvm/lib/Linker/IRMover.cpp
M llvm/test/Assembler/2004-11-28-InvalidTypeCrash.ll
M llvm/test/Assembler/2005-05-05-OpaqueUndefValues.ll
M llvm/test/Assembler/2007-01-02-Undefined-Arg-Type.ll
M llvm/test/CodeGen/WebAssembly/externref-unsized-load.ll
M llvm/test/CodeGen/WebAssembly/externref-unsized-store.ll
M llvm/test/CodeGen/X86/cfguard-x86-64-vectorcall.ll
M llvm/test/CodeGen/X86/cfguard-x86-vectorcall.ll
R llvm/test/Linker/Inputs/pr22807-1.ll
R llvm/test/Linker/Inputs/pr22807-2.ll
A llvm/test/Linker/Inputs/pr22807.ll
M llvm/test/Linker/Inputs/type-unique-opaque.ll
M llvm/test/Linker/intrinsics-with-unnamed-types.ll
M llvm/test/Linker/pr22807.ll
M llvm/test/Linker/type-unique-opaque.ll
M llvm/test/ThinLTO/X86/Inputs/import_opaque_type.ll
M llvm/test/ThinLTO/X86/import_opaque_type.ll
M llvm/test/Transforms/InstSimplify/gv-alloca-cmp.ll
M llvm/test/Transforms/Reg2Mem/non-token-test.ll
M llvm/test/Verifier/memset-pattern-unsized.ll
M llvm/test/Verifier/nofpclass.ll
M llvm/test/Verifier/unsized-types-load.ll
M llvm/test/Verifier/unsized-types-store.ll
M llvm/unittests/FuzzMutate/OperationsTest.cpp
Log Message:
-----------
[IR] Don't allow values of opaque type (#137625)
Consider opaque types as non-first-class types, i.e. do not allow SSA
values to have opaque type.
Commit: 0ba136147814cb8bc19dfa1712dad3a25b3ae27a
https://github.com/llvm/llvm-project/commit/0ba136147814cb8bc19dfa1712dad3a25b3ae27a
Author: Alan Li <me at alanli.org>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
M mlir/lib/Dialect/GPU/Transforms/SubgroupIdRewriter.cpp
M mlir/test/Dialect/GPU/subgroupId-rewrite.mlir
Log Message:
-----------
[MLIR][GPU] Use arith instead of index for subgroup_id (#137843)
Trying to simplify situation by using `arith` dialect instead of `index`
in the rewriting of `gpu.subgroup_id`.
Commit: e87aaaf3274d721bf338012f5b299e65b0201fc5
https://github.com/llvm/llvm-project/commit/e87aaaf3274d721bf338012f5b299e65b0201fc5
Author: Kip Hamiltons <48076495+KipHamiltons at users.noreply.github.com>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
M llvm/docs/LangRef.rst
Log Message:
-----------
[LangRef] Minor editorial fixes (#137782)
Commit: fa7e69561c86f898537b80787250ba6673d810ff
https://github.com/llvm/llvm-project/commit/fa7e69561c86f898537b80787250ba6673d810ff
Author: Nico Weber <thakis at chromium.org>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
M llvm/utils/gn/secondary/llvm/lib/Target/RISCV/MCTargetDesc/BUILD.gn
Log Message:
-----------
[gn] Make RISCV/MCTargetDesc depend on RISCV/TargetInfo
RISCVMCTargetDesc.cpp calls getTheRISCV{32,64}Target(), which is in TargetInfo.
Looks like this dependency has been missing for a long time.
Commit: e66eb836e67f2fb0e92b62029f779dad49f5b22b
https://github.com/llvm/llvm-project/commit/e66eb836e67f2fb0e92b62029f779dad49f5b22b
Author: Nico Weber <thakis at chromium.org>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
M llvm/utils/gn/secondary/clang/unittests/Frontend/BUILD.gn
Log Message:
-----------
[gn] Make FrontendTests depend on AllTargetsDescs
The CMake build merged most clang unittests into a single binary.
The gn build doesn't (yet?) do this, but as part of that change,
FrontendTests somehow picked up a dependency on AllTargetsDescs,
see https://github.com/llvm/llvm-project/pull/134196#discussion_r2068617059
Commit: 976493822443c52a71ed3c67aaca9a555b20c55d
https://github.com/llvm/llvm-project/commit/976493822443c52a71ed3c67aaca9a555b20c55d
Author: Anchu Rajendran S <asudhaku at amd.com>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
M mlir/include/mlir/Dialect/LLVMIR/LLVMOps.td
M mlir/lib/Target/LLVMIR/ModuleImport.cpp
M mlir/lib/Target/LLVMIR/ModuleTranslation.cpp
M mlir/test/Dialect/LLVMIR/func.mlir
M mlir/test/Target/LLVMIR/Import/function-attributes.ll
M mlir/test/Target/LLVMIR/llvmir.mlir
Log Message:
-----------
[llvm][mlir] Adding instrument function entry and instrument function exit attributes (#137856)
Commit: 132f7867ff8fa42a62e8ef965cb69acf5d09452c
https://github.com/llvm/llvm-project/commit/132f7867ff8fa42a62e8ef965cb69acf5d09452c
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
M mlir/lib/Pass/IRPrinting.cpp
M mlir/test/Pass/ir-printing-file-tree.mlir
Log Message:
-----------
[mlir] Fix `--mlir-print-ir-tree-dir` when the symbol name contains `/` (or `\` on windows) (#137686)
Fixes #137622
Commit: 01e029602a8ae860852ad2dd8c6ea347c9200066
https://github.com/llvm/llvm-project/commit/01e029602a8ae860852ad2dd8c6ea347c9200066
Author: Nico Weber <thakis at chromium.org>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
M clang/include/clang/Basic/LangOptions.def
Log Message:
-----------
[clang] Temporarily silence noisy warning for FPEvalMethod
See https://github.com/llvm/llvm-project/issues/137600#issuecomment-2842011513
Commit: 349dc34b461a4df6eca4443f5935366cde4508bd
https://github.com/llvm/llvm-project/commit/349dc34b461a4df6eca4443f5935366cde4508bd
Author: Iris Shi <0.0 at owo.li>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
M llvm/test/Transforms/ConstraintElimination/abs.ll
A llvm/test/Transforms/ConstraintElimination/uadd-usub-sat.ll
Log Message:
-----------
[ConstraintElim] Fix poison check before adding intrinsic facts (#136291)
Commit: a5fef2aff8f6a86e329fe81ad8db90674fe8f079
https://github.com/llvm/llvm-project/commit/a5fef2aff8f6a86e329fe81ad8db90674fe8f079
Author: Steven Perron <stevenperron at google.com>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
M llvm/test/CodeGen/SPIRV/hlsl-intrinsics/SV_GroupIndex.ll
M llvm/test/CodeGen/SPIRV/hlsl-intrinsics/smoothstep.ll
Log Message:
-----------
[SPIRV] Fix test with VK1.3 validation (#137633)
An update to the spirv validator is now correctly rejecting vulkan
shaders with the linkage capability. We have a couple tests that need
updating to remove the capability.
Fixes https://github.com/llvm/llvm-project/issues/136344
Commit: b54b3e81f28c7ead02e6a29274ad03088a70a988
https://github.com/llvm/llvm-project/commit/b54b3e81f28c7ead02e6a29274ad03088a70a988
Author: Iris Shi <0.0 at owo.li>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
M llvm/lib/Transforms/Scalar/ConstraintElimination.cpp
M llvm/test/Transforms/ConstraintElimination/uadd-usub-sat.ll
Log Message:
-----------
Recommit "[ConstraintElim] Simplify cmp after uadd.sat/usub.sat (#135603)" (#136467)
Commit: 1a14ef1c89bf4632bf25a959142770f190dcaaf1
https://github.com/llvm/llvm-project/commit/1a14ef1c89bf4632bf25a959142770f190dcaaf1
Author: Nico Weber <thakis at chromium.org>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
M clang/include/clang/Basic/LangOptions.h
Log Message:
-----------
[clang] Temporarily silence noisy warning for FPEvalMethod in another place
When adding an explicit default copy ctor and assignment operator,
clang emits the diag there, instead of for the class. That's narrow
enough that we can suppress the warning there too.
With this, it only files building a single file (CompilerInvocation.cpp).
See https://github.com/llvm/llvm-project/issues/137600#issuecomment-2842011513
Commit: c626ef9b5fca9a822ac25b0de4b9b215cec4b9d5
https://github.com/llvm/llvm-project/commit/c626ef9b5fca9a822ac25b0de4b9b215cec4b9d5
Author: Dominik Steenken <dost at de.ibm.com>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
M llvm/lib/Target/SystemZ/AsmParser/SystemZAsmParser.cpp
M llvm/lib/Target/SystemZ/MCTargetDesc/SystemZTargetStreamer.h
M llvm/test/MC/SystemZ/machine-directive-invalid.s
M llvm/test/MC/SystemZ/machine-directive.s
Log Message:
-----------
[SystemZ] Implement .machine (push|pop) directives (#137302)
The `.machine push` and `.machine pop` directives were missing from the
SystemZ Backend Asm Parser. This PR adds them, and expands the
corresponding test to test proper operation.
Internally, this is modeled as a simple stack implemented on a
`SmallVector<StringRef>`.
Commit: 1b7d8b2ee66672c5226f2a8d6b72b025070d9ede
https://github.com/llvm/llvm-project/commit/1b7d8b2ee66672c5226f2a8d6b72b025070d9ede
Author: Nico Weber <thakis at chromium.org>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
M clang/include/clang/Basic/LangOptions.def
M clang/include/clang/Basic/LangOptions.h
Log Message:
-----------
[clang] prevent -Wunknown-warning-option with older clangs
Commit: 6aafd5ef06599f3a7b60309dae2071dfa3f63697
https://github.com/llvm/llvm-project/commit/6aafd5ef06599f3a7b60309dae2071dfa3f63697
Author: Nico Weber <thakis at chromium.org>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
M llvm/utils/gn/secondary/llvm/lib/Target/Sparc/MCTargetDesc/BUILD.gn
Log Message:
-----------
[gn] Make Sparc/MCTargetDesc depend on Sparc/TargetInfo
Like fa7e69561c86f8, but for Sparc.
Commit: 7495f92f08d5d621743d26c410e9b27d872af508
https://github.com/llvm/llvm-project/commit/7495f92f08d5d621743d26c410e9b27d872af508
Author: mssefat <42645939+mssefat at users.noreply.github.com>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
M llvm/lib/CodeGen/FinalizeISel.cpp
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
A llvm/test/CodeGen/AMDGPU/finalize-isel-kill-scc-vcc.mir
M llvm/test/CodeGen/AMDGPU/skip-if-dead.ll
Log Message:
-----------
[AMDGPU] Fix undefined scc register in successor block of SI_KILL terminators (#134718)
Fix issue 131298 where an undefined $scc register causes verifier errors
when using SI_KILL_F32_COND_IMM_TERMINATOR instructions. The problem
occurs because the $scc register defined in a comparison before the kill
terminator is used in successor blocks, but was not properly marked as live-in.
This patch:
- Adds code to check if SCC is used in the successor block
- Adds SCC as a live-in to successor blocks
- Handles both explicit and implicit uses of SCC
With this patch the machine verifier no longer reports undefined $scc
errors in following kill terminator instruction.
Fixes #131298
---------
Co-authored-by: Matt Arsenault <arsenm2 at gmail.com>
Commit: 7bc16a0f63c3f31762b97e5855932b769c4d3cf5
https://github.com/llvm/llvm-project/commit/7bc16a0f63c3f31762b97e5855932b769c4d3cf5
Author: Callum Fare <callum at codeplay.com>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
M offload/liboffload/src/OffloadImpl.cpp
M offload/unittests/OffloadAPI/CMakeLists.txt
A offload/unittests/OffloadAPI/event/olDestroyEvent.cpp
A offload/unittests/OffloadAPI/event/olWaitEvent.cpp
Log Message:
-----------
[Offload] Adding missing Offload unit tests for event entry points (#137315)
A couple of liboffload entry points were missed out from the tests, and
unsurprisingly a crash in one of them made it in. Add the tests and fix
the unchecked error in `olDestroyEvent`.
Commit: c2a62af2a51d58183bcd72ee8a86c37ddd526758
https://github.com/llvm/llvm-project/commit/c2a62af2a51d58183bcd72ee8a86c37ddd526758
Author: Nico Weber <thakis at chromium.org>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
M clang/include/clang/Basic/LangOptions.def
M clang/include/clang/Basic/LangOptions.h
Log Message:
-----------
[clang] Another Wpreferred-type-bitfield-enum-conversion suppression fix!
If a compiler does not know `__has_warning`, it will of course complain
if it's used on the same line as the check for its presence. Put the use
in a separate line.
Should help e.g. https://lab.llvm.org/buildbot/#/builders/123/builds/18503
Commit: e8ae77947154e10dbc05cbb95ec9e10d3b0be13e
https://github.com/llvm/llvm-project/commit/e8ae77947154e10dbc05cbb95ec9e10d3b0be13e
Author: Aaron Ballman <aaron at aaronballman.com>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Basic/Attr.td
M clang/include/clang/Basic/AttrDocs.td
M clang/include/clang/Basic/DiagnosticGroups.td
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/lib/Sema/SemaDeclAttr.cpp
M clang/lib/Sema/SemaInit.cpp
M clang/test/Misc/pragma-attribute-supported-attributes-list.test
A clang/test/Sema/attr-nonstring.c
Log Message:
-----------
[C] Add diagnostic + attr for unterminated strings (#137829)
This introduces three things related to intialization like:
char buf[3] = "foo";
where the array does not declare enough space for the null terminator
but otherwise can represent the array contents exactly.
1) An attribute named 'nonstring' which can be used to mark that a
field or variable is not intended to hold string data.
2) -Wunterminated-string-initialization, which is grouped under
-Wextra, and diagnoses the above construct unless the declaration
uses the 'nonstring' attribute.
3) -Wc++-unterminated-string-initialization, which is grouped under
-Wc++-compat, and diagnoses the above construct even if the
declaration uses the 'nonstring' attribute.
Fixes #137705
Commit: 84a5435db63f43ec3f4abbb42eda2674dd35cda9
https://github.com/llvm/llvm-project/commit/84a5435db63f43ec3f4abbb42eda2674dd35cda9
Author: Erich Keane <ekeane at nvidia.com>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Parse/ParseStmt.cpp
A clang/test/Parser/gh137861.cpp
Log Message:
-----------
Fix crash when an attribute is applied to pragma attribute/pragma dump (#137880)
These two don't result in a statement, so the attempt to apply the
attributes to them was crashing. This patch correctly prohibits the use
of attributes on these clauses.
Fixes: #137861
Commit: 41647412c6a4091080fd47b0f554adc5c54b4b54
https://github.com/llvm/llvm-project/commit/41647412c6a4091080fd47b0f554adc5c54b4b54
Author: zhijian lin <zhijian at ca.ibm.com>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
M llvm/lib/Target/PowerPC/PPCISelLowering.cpp
A llvm/test/CodeGen/PowerPC/usubo_carry.ll
Log Message:
-----------
[PowerPC] Fix an LowerADDSUBO_CARRY error when converting carry bit for usubo_carry (#137809)
In PowerPC, if a borrow occurs during a subtraction, the carry bit is
zero (unset). The carry bit is set if no borrow occurs.
For ISD::USUBO_CARRY, the nodes produce two results: the normal result
of the addition or subtraction, and a boolean value that is 1 if and
only if there is an outgoing carry or borrow.
Therefore, we need to convert a 1 (which indicates a borrow in
ISD::USUBO_CARRY) to 0 to match PowerPC's definition of borrow.
Similarly, we need to convert a 0 (no borrow in ISD::USUBO_CARRY) to 1
for PowerPC.
To perform this conversion, we use XOR 1 instead of XOR
DAG.getAllOnesConstant(DL, CarryOp.getValueType()).
`
Commit: 721c5cc327e30edbdd6cf14348ec076c79079125
https://github.com/llvm/llvm-project/commit/721c5cc327e30edbdd6cf14348ec076c79079125
Author: Igor Wodiany <igor.wodiany at imgtec.com>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
M mlir/docs/Dialects/SPIR-V.md
M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVControlFlowOps.td
M mlir/lib/Dialect/SPIRV/IR/ControlFlowOps.cpp
M mlir/lib/Target/SPIRV/Deserialization/Deserializer.cpp
M mlir/lib/Target/SPIRV/Serialization/SerializeOps.cpp
M mlir/test/Dialect/SPIRV/IR/control-flow-ops.mlir
M mlir/test/Target/SPIRV/loop.mlir
Log Message:
-----------
[mlir][spirv] Allow yielding values from loop regions (#135344)
This change extends `spirv.mlir.loop` so it can yield values, the same
as `spirv.mlir.selection`.
Commit: f5c8c1eedb44861cda8885a04813de999ca9d18a
https://github.com/llvm/llvm-project/commit/f5c8c1eedb44861cda8885a04813de999ca9d18a
Author: Jonas Paulsson <paulson1 at linux.ibm.com>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
M llvm/include/llvm/Analysis/TargetTransformInfo.h
M llvm/include/llvm/Analysis/TargetTransformInfoImpl.h
M llvm/include/llvm/CodeGen/BasicTTIImpl.h
M llvm/lib/Analysis/TargetTransformInfo.cpp
M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.h
M llvm/lib/Target/NVPTX/NVPTXTargetTransformInfo.h
M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.h
M llvm/lib/Target/SystemZ/SystemZTargetTransformInfo.cpp
M llvm/lib/Target/SystemZ/SystemZTargetTransformInfo.h
M llvm/lib/Target/X86/X86TargetTransformInfo.cpp
M llvm/lib/Target/X86/X86TargetTransformInfo.h
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/test/Transforms/SLPVectorizer/SystemZ/vec-elt-insertion.ll
M llvm/test/Transforms/SLPVectorizer/full-overlap-non-schedulable.ll
Log Message:
-----------
[SLPVectorizer] Move X86 specific handling into X86TTIImpl. (#137830)
`ad9909d "[SLP]Fix perfect diamond match with extractelements in scalars" `
changed SLPVectorizer getScalarizationOverhead() to call
TTI.getVectorInstrCost() instead of TTI.getScalarizationOverhead() in some
cases. This was due to X86 specific handlings in these (overridden) methods,
and unfortunately the general preference of TTI.getScalarizationOverhead()
was dropped. If VL is available it should always be preferred to use
getScalarizationOverhead(), and this is indeed the case for SystemZ which
has a special insertion instruction that can insert two GPR64s.
Then ` 33af951 "[SLP]Synchronize cost of gather/buildvector nodes with
codegen"` reworked SLPVectorizer getGatherCost() which together with
ad9909d caused the SystemZ test vec-elt-insertion.ll to fail.
This patch restores the SystemZ test and reverts the change in SLPVectorizer
getScalarizationOverhead() so that TTI.getScalarizationOverhead() is always
called again. The ForPoisonSrc argument is now passed on to the TTI method
so that X86 can handle this as required.
Fixes: #135346
Commit: 75f040ab3e119e0ee87963ec9d2a01b1e6d4039e
https://github.com/llvm/llvm-project/commit/75f040ab3e119e0ee87963ec9d2a01b1e6d4039e
Author: Fraser Cormack <fraser at codeplay.com>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
M libclc/clc/include/clc/common/clc_degrees.h
M libclc/clc/include/clc/common/clc_radians.h
M libclc/clc/include/clc/common/clc_sign.h
M libclc/clc/include/clc/common/clc_smoothstep.h
M libclc/clc/include/clc/integer/clc_add_sat.h
M libclc/clc/include/clc/integer/clc_clz.h
M libclc/clc/include/clc/integer/clc_ctz.h
M libclc/clc/include/clc/integer/clc_hadd.h
M libclc/clc/include/clc/integer/clc_mad24.h
M libclc/clc/include/clc/integer/clc_mad_sat.h
M libclc/clc/include/clc/integer/clc_mul24.h
M libclc/clc/include/clc/integer/clc_mul_hi.h
M libclc/clc/include/clc/integer/clc_rhadd.h
M libclc/clc/include/clc/integer/clc_rotate.h
M libclc/clc/include/clc/integer/clc_sub_sat.h
M libclc/clc/include/clc/internal/math/clc_sw_fma.h
M libclc/clc/include/clc/math/clc_acos.h
M libclc/clc/include/clc/math/clc_acosh.h
M libclc/clc/include/clc/math/clc_acospi.h
M libclc/clc/include/clc/math/clc_asin.h
M libclc/clc/include/clc/math/clc_asinh.h
M libclc/clc/include/clc/math/clc_asinpi.h
M libclc/clc/include/clc/math/clc_atan.h
M libclc/clc/include/clc/math/clc_atan2.h
M libclc/clc/include/clc/math/clc_atan2pi.h
M libclc/clc/include/clc/math/clc_atanh.h
M libclc/clc/include/clc/math/clc_atanpi.h
M libclc/clc/include/clc/math/clc_cbrt.inc
M libclc/clc/include/clc/math/clc_ceil.h
M libclc/clc/include/clc/math/clc_copysign.h
M libclc/clc/include/clc/math/clc_cosh.h
M libclc/clc/include/clc/math/clc_cospi.h
M libclc/clc/include/clc/math/clc_exp.h
M libclc/clc/include/clc/math/clc_exp10.h
M libclc/clc/include/clc/math/clc_exp2.h
M libclc/clc/include/clc/math/clc_exp_helper.h
M libclc/clc/include/clc/math/clc_expm1.h
M libclc/clc/include/clc/math/clc_fabs.h
M libclc/clc/include/clc/math/clc_fdim.h
M libclc/clc/include/clc/math/clc_floor.h
M libclc/clc/include/clc/math/clc_fma.h
M libclc/clc/include/clc/math/clc_fmax.h
M libclc/clc/include/clc/math/clc_fmin.h
M libclc/clc/include/clc/math/clc_fmod.h
M libclc/clc/include/clc/math/clc_fract.h
M libclc/clc/include/clc/math/clc_frexp.h
M libclc/clc/include/clc/math/clc_hypot.h
M libclc/clc/include/clc/math/clc_lgamma.h
M libclc/clc/include/clc/math/clc_lgamma_r.h
M libclc/clc/include/clc/math/clc_log.h
M libclc/clc/include/clc/math/clc_log10.h
M libclc/clc/include/clc/math/clc_log1p.h
M libclc/clc/include/clc/math/clc_log2.h
M libclc/clc/include/clc/math/clc_mad.h
M libclc/clc/include/clc/math/clc_modf.h
M libclc/clc/include/clc/math/clc_nan.h
M libclc/clc/include/clc/math/clc_native_cos.h
M libclc/clc/include/clc/math/clc_native_divide.h
M libclc/clc/include/clc/math/clc_native_exp.h
M libclc/clc/include/clc/math/clc_native_exp10.h
M libclc/clc/include/clc/math/clc_native_exp2.h
M libclc/clc/include/clc/math/clc_native_log.h
M libclc/clc/include/clc/math/clc_native_log10.h
M libclc/clc/include/clc/math/clc_native_log2.h
M libclc/clc/include/clc/math/clc_native_powr.h
M libclc/clc/include/clc/math/clc_native_recip.h
M libclc/clc/include/clc/math/clc_native_rsqrt.h
M libclc/clc/include/clc/math/clc_native_sin.h
M libclc/clc/include/clc/math/clc_native_sqrt.h
M libclc/clc/include/clc/math/clc_native_tan.h
M libclc/clc/include/clc/math/clc_nextafter.h
M libclc/clc/include/clc/math/clc_pow.h
M libclc/clc/include/clc/math/clc_pown.h
M libclc/clc/include/clc/math/clc_powr.h
M libclc/clc/include/clc/math/clc_remainder.h
M libclc/clc/include/clc/math/clc_remquo.h
M libclc/clc/include/clc/math/clc_rint.h
M libclc/clc/include/clc/math/clc_rootn.h
M libclc/clc/include/clc/math/clc_round.h
M libclc/clc/include/clc/math/clc_rsqrt.h
M libclc/clc/include/clc/math/clc_sincos_helpers.h
M libclc/clc/include/clc/math/clc_sinh.h
M libclc/clc/include/clc/math/clc_sinpi.h
M libclc/clc/include/clc/math/clc_sqrt.h
M libclc/clc/include/clc/math/clc_tanh.h
M libclc/clc/include/clc/math/clc_tanpi.h
M libclc/clc/include/clc/math/clc_tgamma.h
M libclc/clc/include/clc/math/clc_trunc.h
M libclc/clc/include/clc/relational/clc_bitselect.h
M libclc/clc/include/clc/relational/clc_isfinite.h
M libclc/clc/include/clc/relational/clc_isgreater.h
M libclc/clc/include/clc/relational/clc_isgreaterequal.h
M libclc/clc/include/clc/relational/clc_isless.h
M libclc/clc/include/clc/relational/clc_islessequal.h
M libclc/clc/include/clc/relational/clc_islessgreater.h
M libclc/clc/include/clc/relational/clc_isnormal.h
M libclc/clc/include/clc/relational/clc_isnotequal.h
M libclc/clc/include/clc/relational/clc_isordered.h
M libclc/clc/include/clc/relational/clc_isunordered.h
M libclc/clc/include/clc/relational/clc_signbit.h
M libclc/clc/lib/generic/math/clc_hypot.cl
M libclc/clc/lib/generic/relational/clc_bitselect.cl
M libclc/clspv/lib/shared/vstore_half.cl
M libclc/generic/include/clc/async/async_work_group_copy.h
M libclc/generic/include/clc/async/async_work_group_strided_copy.h
M libclc/generic/include/clc/async/prefetch.h
M libclc/generic/include/clc/common/degrees.h
M libclc/generic/include/clc/common/radians.h
M libclc/generic/include/clc/common/sign.h
M libclc/generic/include/clc/common/smoothstep.h
M libclc/generic/include/clc/common/step.h
M libclc/generic/include/clc/integer/clz.h
M libclc/generic/include/clc/integer/ctz.h
M libclc/generic/include/clc/integer/hadd.h
M libclc/generic/include/clc/integer/mad_hi.h
M libclc/generic/include/clc/integer/mad_sat.h
M libclc/generic/include/clc/integer/mul24.h
M libclc/generic/include/clc/integer/mul_hi.h
M libclc/generic/include/clc/integer/popcount.h
M libclc/generic/include/clc/integer/rhadd.h
M libclc/generic/include/clc/math/acos.h
M libclc/generic/include/clc/math/acosh.h
M libclc/generic/include/clc/math/acospi.h
M libclc/generic/include/clc/math/asin.h
M libclc/generic/include/clc/math/asinh.h
M libclc/generic/include/clc/math/asinpi.h
M libclc/generic/include/clc/math/atan.h
M libclc/generic/include/clc/math/atan2.h
M libclc/generic/include/clc/math/atan2pi.h
M libclc/generic/include/clc/math/atanh.h
M libclc/generic/include/clc/math/atanpi.h
M libclc/generic/include/clc/math/cbrt.h
M libclc/generic/include/clc/math/ceil.h
M libclc/generic/include/clc/math/copysign.h
M libclc/generic/include/clc/math/cos.h
M libclc/generic/include/clc/math/cosh.h
M libclc/generic/include/clc/math/cospi.h
M libclc/generic/include/clc/math/erf.h
M libclc/generic/include/clc/math/erfc.h
M libclc/generic/include/clc/math/exp.h
M libclc/generic/include/clc/math/exp10.h
M libclc/generic/include/clc/math/exp2.h
M libclc/generic/include/clc/math/expm1.h
M libclc/generic/include/clc/math/fabs.h
M libclc/generic/include/clc/math/fdim.h
M libclc/generic/include/clc/math/floor.h
M libclc/generic/include/clc/math/fma.h
M libclc/generic/include/clc/math/fmax.h
M libclc/generic/include/clc/math/fmin.h
M libclc/generic/include/clc/math/half_cos.h
M libclc/generic/include/clc/math/half_divide.h
M libclc/generic/include/clc/math/half_exp.h
M libclc/generic/include/clc/math/half_exp10.h
M libclc/generic/include/clc/math/half_exp2.h
M libclc/generic/include/clc/math/half_log.h
M libclc/generic/include/clc/math/half_log10.h
M libclc/generic/include/clc/math/half_log2.h
M libclc/generic/include/clc/math/half_powr.h
M libclc/generic/include/clc/math/half_recip.h
M libclc/generic/include/clc/math/half_rsqrt.h
M libclc/generic/include/clc/math/half_sin.h
M libclc/generic/include/clc/math/half_sqrt.h
M libclc/generic/include/clc/math/half_tan.h
M libclc/generic/include/clc/math/hypot.h
M libclc/generic/include/clc/math/ilogb.h
M libclc/generic/include/clc/math/lgamma.h
M libclc/generic/include/clc/math/lgamma_r.h
M libclc/generic/include/clc/math/log.h
M libclc/generic/include/clc/math/log10.h
M libclc/generic/include/clc/math/log1p.h
M libclc/generic/include/clc/math/log2.h
M libclc/generic/include/clc/math/logb.h
M libclc/generic/include/clc/math/mad.h
M libclc/generic/include/clc/math/maxmag.h
M libclc/generic/include/clc/math/minmag.h
M libclc/generic/include/clc/math/native_cos.h
M libclc/generic/include/clc/math/native_divide.h
M libclc/generic/include/clc/math/native_exp.h
M libclc/generic/include/clc/math/native_exp10.h
M libclc/generic/include/clc/math/native_exp2.h
M libclc/generic/include/clc/math/native_log.h
M libclc/generic/include/clc/math/native_log10.h
M libclc/generic/include/clc/math/native_log2.h
M libclc/generic/include/clc/math/native_powr.h
M libclc/generic/include/clc/math/native_recip.h
M libclc/generic/include/clc/math/native_rsqrt.h
M libclc/generic/include/clc/math/native_sin.h
M libclc/generic/include/clc/math/native_sqrt.h
M libclc/generic/include/clc/math/native_tan.h
M libclc/generic/include/clc/math/nextafter.h
M libclc/generic/include/clc/math/pow.h
M libclc/generic/include/clc/math/pown.h
M libclc/generic/include/clc/math/powr.h
M libclc/generic/include/clc/math/rint.h
M libclc/generic/include/clc/math/rootn.h
M libclc/generic/include/clc/math/round.h
M libclc/generic/include/clc/math/rsqrt.h
M libclc/generic/include/clc/math/sin.h
M libclc/generic/include/clc/math/sinh.h
M libclc/generic/include/clc/math/sinpi.h
M libclc/generic/include/clc/math/sqrt.h
M libclc/generic/include/clc/math/tan.h
M libclc/generic/include/clc/math/tanh.h
M libclc/generic/include/clc/math/tanpi.h
M libclc/generic/include/clc/math/tgamma.h
M libclc/generic/include/clc/math/trunc.h
M libclc/generic/include/clc/relational/bitselect.h
M libclc/generic/include/clc/relational/isfinite.h
M libclc/generic/include/clc/relational/isgreater.h
M libclc/generic/include/clc/relational/isgreaterequal.h
M libclc/generic/include/clc/relational/isless.h
M libclc/generic/include/clc/relational/islessequal.h
M libclc/generic/include/clc/relational/islessgreater.h
M libclc/generic/include/clc/relational/isnormal.h
M libclc/generic/include/clc/relational/isnotequal.h
M libclc/generic/include/clc/relational/isordered.h
M libclc/generic/include/clc/relational/isunordered.h
M libclc/generic/include/clc/relational/signbit.h
M libclc/generic/include/math/clc_tan.h
M libclc/generic/lib/async/async_work_group_copy.cl
M libclc/generic/lib/async/async_work_group_strided_copy.cl
M libclc/generic/lib/async/prefetch.cl
M libclc/generic/lib/shared/vload.cl
M libclc/generic/lib/shared/vstore.cl
Log Message:
-----------
[libclc] Clean up unnecessary #undef __CLC_BODYs (#137959)
This macro is automatically undefined by the various gentype-like
helpers.
Commit: c26db586a06204a9e6f9912f41fce62a559a0196
https://github.com/llvm/llvm-project/commit/c26db586a06204a9e6f9912f41fce62a559a0196
Author: Prakhar Dixit <dixitprakhar11 at gmail.com>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
M mlir/lib/Dialect/Affine/Transforms/SuperVectorize.cpp
M mlir/test/Dialect/Affine/SuperVectorize/vectorize_unsupported.mlir
Log Message:
-----------
[mlir][affine] Modify assertion into a user visible diagnostic (#136474)
Fixes #122227
The loop’s induction variable (%i) is used to compute two different
indices via affine.apply.
And the Vectorization Assumption is Violated i.e, Each vectorized loop
should contribute at most one non-invariant index.
**Minimal example crashing :**
```
#map = affine_map<(d0)[s0] -> (d0 mod s0)>
#map1 = affine_map<(d0)[s0] -> (d0 floordiv s0)>
func.func @single_loop_unrolling_2D_access_pattern(%arg0: index) -> memref<2x2xf32> {
%c2 = arith.constant 2 : index
%cst = arith.constant 1.0 : f32
%alloc = memref.alloc() : memref<2x2xf32>
affine.for %i = 0 to 4 {
%row = affine.apply #map1(%i)[%c2]
%col = affine.apply #map(%i)[%c2]
affine.store %cst, %alloc[%row, %col] : memref<2x2xf32>
}
return %alloc : memref<2x2xf32>
}
```
The single loop %i contributes two indices (%row and %col) to the 2D
memref access.
The permutation map expects one index per vectorized loop dimension, but
here one loop (%i) maps to two indices (dim=0 and dim=1).
The code detects this when trying to assign the second index (dim=1) to
the same vector dimension (perm[0]).
Commit: a8607063f32a14a6cf453c84edcb21d08f517f25
https://github.com/llvm/llvm-project/commit/a8607063f32a14a6cf453c84edcb21d08f517f25
Author: Slava Zakharin <szakharin at nvidia.com>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
M flang-rt/lib/runtime/character.cpp
M flang-rt/unittests/Runtime/CharacterTest.cpp
Log Message:
-----------
[flang-rt] Simplify INDEX with len-1 SUBSTRING. (#137889)
The len-1 case is noticeably slower than gfortran's straightforward
implementation
https://github.com/gcc-mirror/gcc/blob/075611b646e5554ae02b2622061ea1614bf16ead/libgfortran/intrinsics/string_intrinsics_inc.c#L253
This change speeds up a simple microkernel by 37% on icelake.
Commit: f91a6e6dab44a7eacee2312f955b6e28cb227900
https://github.com/llvm/llvm-project/commit/f91a6e6dab44a7eacee2312f955b6e28cb227900
Author: Vikram Hegde <115221833+vikramRH at users.noreply.github.com>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
M llvm/lib/Analysis/ScalarEvolution.cpp
M llvm/test/Analysis/LoopAccessAnalysis/nusw-predicates.ll
Log Message:
-----------
[SCEV] Reject comparision of pointers to different address spaces in SCEVWrapPredicate::implies (#137935)
Commit: 8836bce84208737f5807c396345a41e688d3ec11
https://github.com/llvm/llvm-project/commit/8836bce84208737f5807c396345a41e688d3ec11
Author: Asher Mancinelli <ashermancinelli at gmail.com>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
M flang/docs/FortranStandardsSupport.md
M flang/docs/ReleaseNotes.md
M flang/include/flang/Optimizer/Builder/BoxValue.h
M flang/include/flang/Optimizer/Builder/Runtime/RTBuilder.h
M flang/include/flang/Optimizer/Dialect/FIROps.td
M flang/include/flang/Optimizer/Dialect/FIRType.h
M flang/include/flang/Optimizer/Dialect/FIRTypes.td
M flang/lib/Lower/Bridge.cpp
M flang/lib/Lower/CallInterface.cpp
M flang/lib/Lower/ConvertCall.cpp
M flang/lib/Lower/ConvertExpr.cpp
M flang/lib/Lower/ConvertExprToHLFIR.cpp
M flang/lib/Lower/HostAssociations.cpp
M flang/lib/Lower/IO.cpp
M flang/lib/Optimizer/Builder/Character.cpp
M flang/lib/Optimizer/Builder/FIRBuilder.cpp
M flang/lib/Optimizer/Builder/HLFIRTools.cpp
M flang/lib/Optimizer/CodeGen/CodeGen.cpp
M flang/lib/Optimizer/Dialect/FIROps.cpp
M flang/lib/Optimizer/Dialect/FIRType.cpp
M flang/lib/Optimizer/HLFIR/IR/HLFIROps.cpp
M flang/lib/Optimizer/HLFIR/Transforms/ConvertToFIR.cpp
M flang/test/Fir/cse.fir
A flang/test/Fir/volatile.fir
A flang/test/Fir/volatile2.fir
A flang/test/HLFIR/volatile.fir
A flang/test/Lower/volatile-openmp.f90
A flang/test/Lower/volatile-string.f90
A flang/test/Lower/volatile1.f90
A flang/test/Lower/volatile2.f90
A flang/test/Lower/volatile3.f90
A flang/test/Lower/volatile4.f90
Log Message:
-----------
[flang] Add lowering of volatile references (#132486)
[RFC on
discourse](https://discourse.llvm.org/t/rfc-volatile-representation-in-flang/85404/1)
Flang currently lacks support for volatile variables. For some cases,
the compiler produces TODO error messages and others are ignored. Some
of our tests are like the example from _C.4 Clause 8 notes: The VOLATILE
attribute (8.5.20)_ and require volatile variables.
Prior commits:
```
c9ec1bc753b0 [flang] Handle volatility in lowering and codegen (#135311)
e42f8609858f [flang][nfc] Support volatility in Fir ops (#134858)
b2711e1526f9 [flang][nfc] Support volatile on ref, box, and class types (#134386)
```
Commit: 0e9fb5202ce2c1e3cc43436dd4c4b8cd57fa1cef
https://github.com/llvm/llvm-project/commit/0e9fb5202ce2c1e3cc43436dd4c4b8cd57fa1cef
Author: enh-google <enh at google.com>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
M libc/test/src/search/lsearch_test.cpp
Log Message:
-----------
[libc] lsearch_test.cpp: put helpers in anonymous namespace. (#137964)
Commit: bad8bf56d3e4f107423b307f5f75564296703a76
https://github.com/llvm/llvm-project/commit/bad8bf56d3e4f107423b307f5f75564296703a76
Author: James Newling <james.newling at gmail.com>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
M mlir/include/mlir/Dialect/Vector/Transforms/VectorRewritePatterns.h
M mlir/lib/Dialect/Vector/Transforms/VectorLinearize.cpp
M mlir/test/Dialect/Vector/linearize.mlir
M mlir/test/lib/Dialect/Vector/TestVectorTransforms.cpp
Log Message:
-----------
[mlir][vector] Linearization: push 'bit width' logic out of patterns (#136581)
[NFC]
Vector linearization is a collection of rewrite patterns that reduce the
rank of vector operands and results.
In https://github.com/llvm/llvm-project/pull/83314 an option to ignore
(make 'legal') operations with large inner-most dimensions was added.
This current PR is a step towards making that option live outside of
upstream MLIR. The motivation is to remove non-core functionality (I
would like to use this pass, but would prefer not to deal with
'targetVectorBitWidth` at all).
As a follow-up to this PR, I propose that user(s) of the
`targetVectorBitWidth` move the relevant code (now in
mlir/test/lib/Dialect/Vector/TestVectorTransforms.cpp) to their code
bases, and then eventually remove it from upstream. In addition the tests need to
split out (I've intentionally not modified the lit tests here, to make
it easier to confirm that this is a NFC). I'm happy to help make it
easier to do this final step!
The approach I've used is to move the logic pertaining to
`targetVectorBitWidth` out the patterns, and into the conversion target,
which the end user can control outside of core MLIR.
Commit: d7f096e3fe611ae2cc7403c3cf2f88255a47b61d
https://github.com/llvm/llvm-project/commit/d7f096e3fe611ae2cc7403c3cf2f88255a47b61d
Author: Morris Hafner <mmha at users.noreply.github.com>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
M clang/include/clang/CIR/Dialect/IR/CIROps.td
M clang/lib/CIR/Dialect/IR/CIRDialect.cpp
M clang/lib/CIR/Dialect/Transforms/FlattenCFG.cpp
A clang/test/CIR/IR/ternary.cir
A clang/test/CIR/Lowering/ternary.cir
A clang/test/CIR/Transforms/ternary.cir
Log Message:
-----------
[CIR] Upstream TernaryOp (#137184)
This patch adds TernaryOp to CIR plus a pass that flattens the operator
in FlattenCFG.
This is the first PR out of (probably) 3 wrt. TernaryOp. I split the
patches up to make reviewing them easier. As such, this PR is only about
adding the CIR operation. The next PR will be about the CodeGen bits
from the C++ conditional operator and the final one will add the
cir-simplify transform for TernaryOp and SelectOp.
---------
Co-authored-by: Morris Hafner <mhafner at nvidia.com>
Co-authored-by: Andy Kaylor <akaylor at nvidia.com>
Commit: 0bd992a8d7193e15191f14a4bd39fd4dd181dbdb
https://github.com/llvm/llvm-project/commit/0bd992a8d7193e15191f14a4bd39fd4dd181dbdb
Author: Peter Rong <peterrong96 at gmail.com>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
M clang/include/clang/AST/Mangle.h
M clang/lib/AST/Mangle.cpp
Log Message:
-----------
[clang AST] move mangling API to namespace clang to allow calls from swift-frontend (#137884)
When implementing `@objcDirect` in Swift, Swift needs to mangle a native
`Decl` that is not a clang Node, which in turn don't have access to
`clang::MangleContext`. Reimplementing mangling logic in Swift is
redundant.
This patch moves mangling logic from `clang::MangleContext` to `clang`
using only basic types (`StringRef`, `std::optional`, etc.), such that
Swift can we can just call Clang API: Swift depends on Clang already.
We are separating this from #126639 so we can draft the proposal on the
Swift side. #126639 will be worked to depend on this PR.
Tests: No new tests, old ones should pass with no problem.
---------
Signed-off-by: Peter Rong <PeterRong at meta.com>
Commit: ea3959e841367ef691472ccf78ec25252dbfe288
https://github.com/llvm/llvm-project/commit/ea3959e841367ef691472ccf78ec25252dbfe288
Author: Quinn Dawkins <quinn.dawkins at gmail.com>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
M mlir/lib/Dialect/Arith/IR/ValueBoundsOpInterfaceImpl.cpp
M mlir/test/Dialect/Arith/value-bounds-op-interface-impl.mlir
Log Message:
-----------
[MLIR][Arith] Add ValueBoundsOpInterface for FloorDivSI (#137879)
Enables value bounds inference through signed division operations.
Commit: 8e4dd21e6362ca161b7fda4fe7c5fa20f72ffab2
https://github.com/llvm/llvm-project/commit/8e4dd21e6362ca161b7fda4fe7c5fa20f72ffab2
Author: Finn Plummer <canadienfinn at gmail.com>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
M clang/include/clang/Lex/HLSLRootSignatureTokenKinds.def
M clang/lib/Lex/LexHLSLRootSignature.cpp
M clang/unittests/Lex/LexHLSLRootSignatureTest.cpp
Log Message:
-----------
[HLSL][RootSignature] Add lexing support for floating points (#137720)
- this takes care to add support to match the [behaviour of
DXC](https://github.com/microsoft/DirectXShaderCompiler/blob/34b6d0f91e6afd523bdc574836093f021713cce7/tools/clang/lib/Parse/HLSLRootSignature.cpp#L74)
acceptable floating point integers
Namely:
- Allow for specifying the decimal '.'
- Allow for specifying exponents with 'e' or 'E' and allow for 'f' to
denote an otherwise interpreted integer as a float
This pr is simply responsible of creating a token that could be
interpeted as a floating point integer by `NumericLiteralParser`. As
such, we are not required to validate that the special characters only
occur once and that 'f' is only at the end of the string. These will be
validated when invoking `NumericLiteralParser` during parsing.
Resolves #126565
Commit: 6274cdb9a6714908c8a4e30d2ef0bf22a6949065
https://github.com/llvm/llvm-project/commit/6274cdb9a6714908c8a4e30d2ef0bf22a6949065
Author: Prabhu Rajasekaran <prabhukr at google.com>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
M clang/include/clang/Basic/TargetOSMacros.def
M clang/lib/Basic/Targets/X86.h
M clang/lib/CodeGen/CodeGenModule.cpp
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/test/Preprocessor/init.c
Log Message:
-----------
[clang] Fix UEFI Target info (#127290)
For X64 UEFI targets set appropriate integer type sizes, and relevant
ABI information.
---------
Co-authored-by: Petr Hosek <phosek at google.com>
Commit: ff8fc5bc45c166d686e485b306fdcdadd5b02637
https://github.com/llvm/llvm-project/commit/ff8fc5bc45c166d686e485b306fdcdadd5b02637
Author: Chelsea Cassanova <chelsea_cassanova at apple.com>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
M lldb/cmake/modules/LLDBConfig.cmake
M lldb/test/Shell/lit.site.cfg.py.in
Log Message:
-----------
[lldb][cmake] Add clang resource dir to LLDB shell tests config (#136761)
We want to be able to access the Clang resources directory in LLDB shell
tests, this commit adds the ability to do this by populating the
`CLANG_RESOURCE_DIR` variable in LLDBConfig.cmake.
Commit: 88b03aafdbda85355b1522bc8ddbf8b5db8fb2b0
https://github.com/llvm/llvm-project/commit/88b03aafdbda85355b1522bc8ddbf8b5db8fb2b0
Author: Matthias Braun <matze at braunis.de>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
M llvm/utils/update_analyze_test_checks.py
M llvm/utils/update_cc_test_checks.py
M llvm/utils/update_llc_test_checks.py
M llvm/utils/update_mc_test_checks.py
M llvm/utils/update_mca_test_checks.py
M llvm/utils/update_mir_test_checks.py
M llvm/utils/update_test_checks.py
Log Message:
-----------
Change update_xxx_checks to continue on error when processing mutliple inputs (#137728)
Change llvm/utils/update_xxx_checks.py scripts to:
Catch exceptions individually for each test. On exception print which
test triggered the exception and continue with the remaining test
updates.
Commit: 2cd829fc2c63c7b93fa1c65f65f6d92f854ffcb7
https://github.com/llvm/llvm-project/commit/2cd829fc2c63c7b93fa1c65f65f6d92f854ffcb7
Author: Luke Lau <luke at igalia.com>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
M llvm/lib/Analysis/VectorUtils.cpp
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
A llvm/test/Transforms/LoopVectorize/widen-intrinsic.ll
Log Message:
-----------
[VectorUtils][VPlan] Consolidate VPWidenIntrinsicRecipe::onlyFirstLaneUsed and isVectorIntrinsicWithScalarOpAtArg (#137497)
We can reuse isVectorIntrinsicWithScalarOpAtArg in VectorUtils to
determine if only the first lane will be used for a
VPWidenIntrinsicRecipe, provided that we also move the VP EVL operand
check into it.
This was needed by a local patch I was working on that created a
VPWidenIntrinsicRecipe with a VP intrinsic, and prevents the need to
update the scalar arguments in two places.
Commit: 2a5ee2501d6249933b0dd4f81a4ec56e146b9669
https://github.com/llvm/llvm-project/commit/2a5ee2501d6249933b0dd4f81a4ec56e146b9669
Author: Helena Kotas <hekotas at microsoft.com>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
M clang/include/clang/Basic/Attr.td
M clang/lib/CodeGen/CGHLSLRuntime.cpp
M clang/lib/Parse/ParseHLSL.cpp
M clang/lib/Sema/SemaHLSL.cpp
M clang/test/AST/HLSL/resource_binding_attr.hlsl
M clang/test/SemaHLSL/resource_binding_attr_error.hlsl
M clang/test/SemaHLSL/resource_binding_implicit.hlsl
Log Message:
-----------
[HLSL] Allow resource annotations to specify only register space (#135287)
Specifying only `space` in a `register` annotation means the compiler
should implicitly assign a register slot to the resource from the
provided virtual register space.
Closes #133346
Commit: c02496901d979ddc7cd83aec34e408adba81e433
https://github.com/llvm/llvm-project/commit/c02496901d979ddc7cd83aec34e408adba81e433
Author: Nico Weber <thakis at chromium.org>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
M llvm/utils/gn/secondary/lldb/test/BUILD.gn
Log Message:
-----------
[gn] port ff8fc5bc45c1, kind of
This is probably the wrong value. Might have to tweak later.
But I think nobody is running these tests at the moment anyways.
Commit: ee136383628290f7efa0fc4562beef2b411048bb
https://github.com/llvm/llvm-project/commit/ee136383628290f7efa0fc4562beef2b411048bb
Author: Alexander Richardson <alexrichardson at google.com>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
M llvm/test/Analysis/KernelInfo/launch-bounds/amdgpu.ll
M llvm/test/Analysis/KernelInfo/openmp/amdgpu.ll
M llvm/test/CodeGen/AMDGPU/addrspacecast-captured.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-ceil.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-copysign.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-exp.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-exp2.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-fabs.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-floor.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-fma.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-fmax-splat.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-fmax.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-fmin-splat.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-fmin.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-ldexp-splat.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-ldexp.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-log.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-log10.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-log2.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-mad.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-pow.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-pown.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-powr.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-rint.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-rootn.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-round.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-sincos.defined.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-sincos.defined.sin.cos.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-sincos.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-sincos.nobuiltins.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-sincos.weak.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-sqrt.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-trunc.ll
M llvm/test/CodeGen/AMDGPU/annotate-kernel-features-hsa.ll
M llvm/test/CodeGen/AMDGPU/annotate-noclobber.ll
M llvm/test/CodeGen/AMDGPU/buffer-fat-pointers-memcpy.ll
M llvm/test/CodeGen/AMDGPU/cgp-addressing-modes.ll
M llvm/test/CodeGen/AMDGPU/coalescer-subranges-another-copymi-not-live.mir
M llvm/test/CodeGen/AMDGPU/coalescer-subranges-another-prune-error.mir
M llvm/test/CodeGen/AMDGPU/coalescer-subregjoin-fullcopy.mir
M llvm/test/CodeGen/AMDGPU/coalescer-with-subregs-bad-identical.mir
M llvm/test/CodeGen/AMDGPU/copy-hoist-no-spills.ll
M llvm/test/CodeGen/AMDGPU/diverge-switch-default.ll
M llvm/test/CodeGen/AMDGPU/dynamic_stackalloc.ll
M llvm/test/CodeGen/AMDGPU/expand-variadic-call.ll
M llvm/test/CodeGen/AMDGPU/extload-align.ll
M llvm/test/CodeGen/AMDGPU/extra-sroa-after-unroll.ll
M llvm/test/CodeGen/AMDGPU/force-alwaysinline-lds-global-address.ll
M llvm/test/CodeGen/AMDGPU/loop-idiom.ll
M llvm/test/CodeGen/AMDGPU/lower-buffer-fat-pointers-calls.ll
M llvm/test/CodeGen/AMDGPU/lower-buffer-fat-pointers-constants.ll
M llvm/test/CodeGen/AMDGPU/lower-buffer-fat-pointers-control-flow.ll
M llvm/test/CodeGen/AMDGPU/lower-buffer-fat-pointers-mem-transfer.ll
M llvm/test/CodeGen/AMDGPU/lower-buffer-fat-pointers-memops.ll
M llvm/test/CodeGen/AMDGPU/lower-buffer-fat-pointers-p7-in-memory.ll
M llvm/test/CodeGen/AMDGPU/lower-buffer-fat-pointers-pointer-ops.ll
M llvm/test/CodeGen/AMDGPU/lower-buffer-fat-pointers-unoptimized-debug-data.ll
M llvm/test/CodeGen/AMDGPU/lower-kernargs.ll
M llvm/test/CodeGen/AMDGPU/machine-sink-temporal-divergence-swdev407790.ll
M llvm/test/CodeGen/AMDGPU/noop-shader-O0.ll
M llvm/test/CodeGen/AMDGPU/pal-simple-indirect-call.ll
M llvm/test/CodeGen/AMDGPU/private-memory-r600.ll
M llvm/test/CodeGen/AMDGPU/promote-alloca-lifetime.ll
M llvm/test/CodeGen/AMDGPU/promote-alloca-loadstores.ll
M llvm/test/CodeGen/AMDGPU/promote-alloca-subvecs.ll
M llvm/test/CodeGen/AMDGPU/promote-alloca-to-lds-constantexpr-use.ll
M llvm/test/CodeGen/AMDGPU/promote-alloca-to-lds-select.ll
M llvm/test/CodeGen/AMDGPU/reqd-work-group-size.ll
M llvm/test/CodeGen/AMDGPU/sdwa-scalar-ops.mir
M llvm/test/CodeGen/AMDGPU/sgpr-copy-local-cse.ll
M llvm/test/CodeGen/AMDGPU/sibling-call.ll
M llvm/test/CodeGen/AMDGPU/simple-indirect-call-2.ll
M llvm/test/CodeGen/AMDGPU/simple-indirect-call.ll
M llvm/test/CodeGen/AMDGPU/sroa-before-unroll.ll
M llvm/test/CodeGen/AMDGPU/store-clobbers-load.ll
M llvm/test/CodeGen/AMDGPU/tail-call-uniform-target-in-vgprs-issue110930.convergencetokens.ll
M llvm/test/CodeGen/AMDGPU/tail-call-uniform-target-in-vgprs-issue110930.ll
M llvm/test/CodeGen/AMDGPU/unknown-processor.ll
M llvm/test/CodeGen/AMDGPU/unroll.ll
M llvm/test/CodeGen/AMDGPU/vector-alloca-bitcast.ll
M llvm/test/CodeGen/AMDGPU/vector-alloca-limits.ll
M llvm/test/CodeGen/AMDGPU/vector-alloca.ll
M llvm/test/Instrumentation/AddressSanitizer/AMDGPU/adaptive_constant_global_redzones.ll
M llvm/test/Instrumentation/AddressSanitizer/AMDGPU/adaptive_global_redzones.ll
M llvm/test/Instrumentation/AddressSanitizer/AMDGPU/asan_do_not_instrument_lds.ll
M llvm/test/Instrumentation/AddressSanitizer/AMDGPU/asan_do_not_instrument_scratch.ll
M llvm/test/Instrumentation/AddressSanitizer/AMDGPU/asan_instrument_constant_address_space.ll
M llvm/test/Instrumentation/AddressSanitizer/AMDGPU/asan_instrument_generic_address_space.ll
M llvm/test/Instrumentation/AddressSanitizer/AMDGPU/asan_instrument_global_address_space.ll
M llvm/test/Instrumentation/AddressSanitizer/AMDGPU/asan_instrument_mem_intrinsics.ll
M llvm/test/Instrumentation/AddressSanitizer/AMDGPU/global_metadata_addrspacecasts.ll
M llvm/test/Instrumentation/AddressSanitizer/AMDGPU/no_redzones_in_lds_globals.ll
M llvm/test/Instrumentation/AddressSanitizer/AMDGPU/no_redzones_in_scratch_globals.ll
M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-i16-system.ll
M llvm/test/Transforms/IndVarSimplify/AMDGPU/addrspace-7-doesnt-crash.ll
M llvm/test/Transforms/IndVarSimplify/AMDGPU/no-widen-to-i64.ll
M llvm/test/Transforms/InferAddressSpaces/AMDGPU/ptrmask.ll
M llvm/test/Transforms/Inline/AMDGPU/amdgpu-inline-alloca-argument-cost.ll
M llvm/test/Transforms/Inline/AMDGPU/amdgpu-inline-alloca-argument.ll
M llvm/test/Transforms/InstCombine/AMDGPU/memcpy-from-constant.ll
M llvm/test/Transforms/LoopStrengthReduce/AMDGPU/atomics.ll
M llvm/test/Transforms/LoopStrengthReduce/AMDGPU/different-addrspace-addressing-mode-loops.ll
M llvm/test/Transforms/LoopStrengthReduce/AMDGPU/lsr-invalid-ptr-extend.ll
M llvm/test/Transforms/LoopStrengthReduce/AMDGPU/lsr-postinc-pos-addrspace.ll
M llvm/test/Transforms/LoopStrengthReduce/AMDGPU/preserve-addrspace-assert.ll
M llvm/test/Transforms/SLPVectorizer/AMDGPU/address-space-ptr-sze-gep-index-assert.ll
M llvm/test/Transforms/SeparateConstOffsetFromGEP/AMDGPU/lower-gep.ll
M llvm/test/Transforms/VectorCombine/AMDGPU/as-transition-inseltpoison.ll
M llvm/test/Transforms/VectorCombine/AMDGPU/as-transition.ll
Log Message:
-----------
[AMDGPU] Remove explicit datalayout from tests where not needed
Since e39f6c1844fab59c638d8059a6cf139adb42279a opt will infer the
correct datalayout when given a triple. Avoid explicitly specifying it
in tests that depend on the AMDGPU target being present to avoid the
string becoming out of sync with the TargetInfo value.
Only tests with REQUIRES: amdgpu-registered-target or a local lit.cfg
were updated to ensure that tests for non-target-specific passes that
happen to use the AMDGPU layout still pass when building with a limited
set of targets.
Reviewed By: shiltian, arsenm
Pull Request: https://github.com/llvm/llvm-project/pull/137921
Commit: a57847232f3b6d23c2d4d183be1964607140bf7b
https://github.com/llvm/llvm-project/commit/a57847232f3b6d23c2d4d183be1964607140bf7b
Author: Alexander Richardson <alexrichardson at google.com>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
M llvm/test/Transforms/LoadStoreVectorizer/AMDGPU/aa-metadata.ll
M llvm/test/Transforms/LoadStoreVectorizer/AMDGPU/addrspace-7.ll
M llvm/test/Transforms/LoadStoreVectorizer/AMDGPU/adjust-alloca-alignment.ll
M llvm/test/Transforms/LoadStoreVectorizer/AMDGPU/complex-index.ll
M llvm/test/Transforms/LoadStoreVectorizer/AMDGPU/dont-adjust-globalobj-alignment.ll
M llvm/test/Transforms/LoadStoreVectorizer/AMDGPU/extended-index.ll
M llvm/test/Transforms/LoadStoreVectorizer/AMDGPU/gep-bitcast.ll
M llvm/test/Transforms/LoadStoreVectorizer/AMDGPU/insertion-point.ll
M llvm/test/Transforms/LoadStoreVectorizer/AMDGPU/interleaved-mayalias-store.ll
M llvm/test/Transforms/LoadStoreVectorizer/AMDGPU/invariant-load.ll
M llvm/test/Transforms/LoadStoreVectorizer/AMDGPU/merge-stores-private.ll
M llvm/test/Transforms/LoadStoreVectorizer/AMDGPU/merge-stores.ll
M llvm/test/Transforms/LoadStoreVectorizer/AMDGPU/merge-vectors.ll
M llvm/test/Transforms/LoadStoreVectorizer/AMDGPU/missing-alignment.ll
M llvm/test/Transforms/LoadStoreVectorizer/AMDGPU/multiple_tails.ll
M llvm/test/Transforms/LoadStoreVectorizer/AMDGPU/no-implicit-float.ll
M llvm/test/Transforms/LoadStoreVectorizer/AMDGPU/optnone.ll
M llvm/test/Transforms/LoadStoreVectorizer/AMDGPU/pointer-elements.ll
M llvm/test/Transforms/LoadStoreVectorizer/AMDGPU/selects-inseltpoison.ll
M llvm/test/Transforms/LoadStoreVectorizer/AMDGPU/selects.ll
M llvm/test/Transforms/LoadStoreVectorizer/AMDGPU/store_with_aliasing_load.ll
M llvm/test/Transforms/LoadStoreVectorizer/AMDGPU/weird-type-accesses.ll
Log Message:
-----------
[LoadStoreVectorizer] Remove more unnecessary data layouts from tests
The tests in this directory all depend on the AMDGPU target being
present so we can let opt infer the data layout.
Reviewed By: arsenm
Pull Request: https://github.com/llvm/llvm-project/pull/137924
Commit: b02f2e80567af09576692554bc7ce048326dfd06
https://github.com/llvm/llvm-project/commit/b02f2e80567af09576692554bc7ce048326dfd06
Author: Alex Richardson <alexrichardson at google.com>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
M llvm/test/Transforms/GlobalOpt/global_alloca_diff_addrspaces.ll
Log Message:
-----------
[GlobalOpt] Simplify datalayout for test
There is no need to have a full AMDGPU data layout here, we just need a
different alloca and globals address space.
Commit: fa769655e73d70b480be8034a1cbc101115c1678
https://github.com/llvm/llvm-project/commit/fa769655e73d70b480be8034a1cbc101115c1678
Author: Samuel Tebbs <samuel.tebbs at arm.com>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/VPlan.h
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
M llvm/test/Transforms/LoopVectorize/AArch64/vplan-printing.ll
Log Message:
-----------
[LV] NFC: Make VPPartialReductionRecipe a VPReductionRecipe
Commit: ea0e6e33835fe9fada89f77cc3a6cd74eb690067
https://github.com/llvm/llvm-project/commit/ea0e6e33835fe9fada89f77cc3a6cd74eb690067
Author: erichkeane <ekeane at nvidia.com>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
M clang/lib/Sema/SemaOpenACC.cpp
M clang/test/SemaOpenACC/loop-construct.cpp
Log Message:
-----------
[OpenACC] Improve 'loop' content restrictions
The 'loop' construct has some limitations that are not particularly
clear on what can be in the for-loop. This patch adds some restriction
so that the increment can only be a addition or subtraction operation,
BUT starts allowing Itr = Itr +/- N forms.
Commit: 1531dfcb3a953b7b3187bca7e58e4e18def58d7d
https://github.com/llvm/llvm-project/commit/1531dfcb3a953b7b3187bca7e58e4e18def58d7d
Author: Prabhu Rajasekaran <prabhukr at google.com>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
M llvm/lib/IR/Mangler.cpp
M llvm/test/CodeGen/X86/dllexport-x86_64.ll
M llvm/test/CodeGen/X86/mangle-question-mark.ll
M llvm/test/CodeGen/X86/win32-preemption.ll
M llvm/unittests/IR/ManglerTest.cpp
Log Message:
-----------
[llvm] Linker flags for UEFI (#137878)
Use appropriate linker flag format to match PE spec for UEFI.
Commit: d30554b19edc27bc9ca3475b888c1b3e4eda87c4
https://github.com/llvm/llvm-project/commit/d30554b19edc27bc9ca3475b888c1b3e4eda87c4
Author: Charitha Saumya <136391709+charithaintc at users.noreply.github.com>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
M mlir/include/mlir/Dialect/XeGPU/IR/XeGPUTypes.td
M mlir/include/mlir/Dialect/XeGPU/Transforms/Transforms.h
A mlir/include/mlir/Dialect/XeGPU/Utils/XeGPUUtils.h
M mlir/lib/Dialect/XeGPU/CMakeLists.txt
M mlir/lib/Dialect/XeGPU/IR/XeGPUDialect.cpp
M mlir/lib/Dialect/XeGPU/Transforms/CMakeLists.txt
M mlir/lib/Dialect/XeGPU/Transforms/XeGPUSubgroupDistribute.cpp
A mlir/lib/Dialect/XeGPU/Utils/CMakeLists.txt
A mlir/lib/Dialect/XeGPU/Utils/XeGPUUtils.cpp
A mlir/test/Dialect/XeGPU/subgroup-distribution.mlir
M mlir/test/Dialect/XeGPU/subgroup-map-propagation.mlir
Log Message:
-----------
[mlir][xegpu] SIMT distribution patterns for XeGPU CreateNdTdesc, LoadNd, StoreNd and Dpas Ops. (#135271)
This PR adds the SIMT distribution patterns for create_nd_tdesc, load_nd, store_nd and dpas XeGPU ops.
Commit: d851490c290832507d5fd87227e995d233b9f5b2
https://github.com/llvm/llvm-project/commit/d851490c290832507d5fd87227e995d233b9f5b2
Author: Justin Bogner <mail at justinbogner.com>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
M clang/test/CodeGenHLSL/builtins/lerp-overloads.hlsl
Log Message:
-----------
[HLSL] Make lerp overload tests stricter. NFC (#137898)
These tests had checks across multiple functions, because none of the
hlsl header implementation functions were inlined. Switch the run lines
to use -O1 instead of -disable-llvm-passes and rewrite the tests to
actually look at the whole function.
Note - this would be simpler with update_cc_test_checks, but the
differences between DX and SPIRV are difficult to account for with those
scripts.
Commit: ae6b4b23ea4291e937192a3c08d0f3c9835864c2
https://github.com/llvm/llvm-project/commit/ae6b4b23ea4291e937192a3c08d0f3c9835864c2
Author: Justin Bogner <mail at justinbogner.com>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
M clang/lib/Headers/hlsl/hlsl_compat_overloads.h
M clang/lib/Sema/SemaHLSL.cpp
M clang/test/CodeGenHLSL/builtins/lerp-overloads.hlsl
M clang/test/SemaHLSL/BuiltIns/lerp-errors.hlsl
Log Message:
-----------
[HLSL] Overloads for `lerp` with a scalar weight (#137877)
This adds overloads for the `lerp` function that accept a scalar for the
weight parameter by splatting it into the appropriate vector.
Fixes #137827
Commit: b85f37a132827c8c298c2362ef0429f0dd71adb2
https://github.com/llvm/llvm-project/commit/b85f37a132827c8c298c2362ef0429f0dd71adb2
Author: Ivan Tadeu Ferreira Antunes Filho <antunesi at google.com>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
M lldb/unittests/Core/MangledTest.cpp
Log Message:
-----------
[lldb][test] Free buffer to fix memory leak on test (#137979)
Commit: 228b3309880bbd5a237257df5d67a0f7f4b5a01f
https://github.com/llvm/llvm-project/commit/228b3309880bbd5a237257df5d67a0f7f4b5a01f
Author: Aaron Puchert <aaronpuchert at alice-dsl.net>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
M clang/include/clang/Basic/Attr.td
M clang/test/SemaCXX/warn-thread-safety-analysis.cpp
M clang/test/SemaCXX/warn-thread-safety-parsing.cpp
M clang/utils/TableGen/ClangAttrEmitter.cpp
Log Message:
-----------
Support pack expansion for Clang Thread Safety attributes (#137477)
Support for attribute parameter packs was added some time ago in commit
ead1690d31f815c00fdd2bc23db4766191bbeabc. But template substitution
didn't expand the packs yet. For now expansion can only happen within a
`VariadicExprArgument`: i.e. in `try_acquire_capability`, which takes a
regular and a variadic argument, the template can't have a single pack
that then expands to cover both arguments.
This is a prerequisite for #42000.
Commit: 4a6c81dc0e2790ec48a7da483970b95d847be8d7
https://github.com/llvm/llvm-project/commit/4a6c81dc0e2790ec48a7da483970b95d847be8d7
Author: Alan Zhao <ayzhao at google.com>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Basic/CodeGenOptions.def
M clang/include/clang/Driver/Options.td
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/lib/Frontend/CompilerInvocation.cpp
M clang/test/Misc/time-passes.c
M clang/tools/driver/cc1_main.cpp
M llvm/lib/Support/Timer.cpp
Log Message:
-----------
[clang] Implement JSON formatted -ftime-report (#137737)
This patch adds a new flag, -ftime-report-json, which outputs the same
information as -ftime-report but as JSON instead of -ftime-report's
pretty printed format.
Commit: e8f590e0e3507e6ad30d17bfd52530e70d372315
https://github.com/llvm/llvm-project/commit/e8f590e0e3507e6ad30d17bfd52530e70d372315
Author: Razvan Lupusoru <razvan.lupusoru at gmail.com>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
M mlir/include/mlir/Dialect/OpenACC/OpenACCOps.td
M mlir/lib/Dialect/OpenACC/IR/OpenACC.cpp
M mlir/test/Dialect/OpenACC/invalid.mlir
M mlir/test/Dialect/OpenACC/ops.mlir
Log Message:
-----------
[mlir][acc] Improve acc.loop support as a container (#137887)
Dialects which have their own loop representation not representable with
numeric bounds + steps cannot be represented cleanly with acc.loop. In
such a case, we permit the dialects representation with acc.loop merely
encompasing its loop representation. This limitation became obvious when
looking at range / random iterator C++ loops.
The API of acc.loop was updated to test for this differentiation.
Additionally, the verifier was updated to check for consistent bounds
and whether inner-loops are contained when it works as a container.
Commit: 92b03e4f04405bfe55d707ed17a8b6ca89513018
https://github.com/llvm/llvm-project/commit/92b03e4f04405bfe55d707ed17a8b6ca89513018
Author: Nick Sarnie <nick.sarnie at intel.com>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
M clang/lib/AST/Type.cpp
M clang/lib/CodeGen/CGCall.cpp
Log Message:
-----------
[clang][NFC] Format two files with CallingConv switches (#138000)
I'm planning on modifying this code so format it so we can pass the
formatting check.
Signed-off-by: Sarnie, Nick <nick.sarnie at intel.com>
Commit: 7dad8b91bc94741034052a4eb06ef45e7cb47c06
https://github.com/llvm/llvm-project/commit/7dad8b91bc94741034052a4eb06ef45e7cb47c06
Author: Slava Zakharin <szakharin at nvidia.com>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
M flang/lib/Optimizer/HLFIR/Transforms/SimplifyHLFIRIntrinsics.cpp
M flang/test/HLFIR/simplify-hlfir-intrinsics-maxloc.fir
M flang/test/HLFIR/simplify-hlfir-intrinsics-maxval.fir
M flang/test/HLFIR/simplify-hlfir-intrinsics-minloc.fir
M flang/test/HLFIR/simplify-hlfir-intrinsics-minval.fir
Log Message:
-----------
[flang] Fetch the initial reduction value from the input array. (#136790)
Instead of using loop-carried IsFirst predicate, we can fetch
the initial reduction values for MIN/MAX LOC/VAL reductions
from the array itself. This results in a little bit cleaner
loop nests, especially, generated for total reductions.
Otherwise, LLVM is able to peel the first iteration of the innermost
loop, but the surroudings of the peeled code are executed
multiple times withing the outer loop(s).
This patch does the manual peeling, which only works for
non-masked reductions where the input array is not empty.
Commit: 9b0eaf71e674a28ee55be3afa11b5f7d4da732c0
https://github.com/llvm/llvm-project/commit/9b0eaf71e674a28ee55be3afa11b5f7d4da732c0
Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
M flang-rt/include/flang-rt/runtime/allocator-registry.h
M flang-rt/include/flang-rt/runtime/descriptor.h
M flang-rt/include/flang-rt/runtime/reduction-templates.h
M flang-rt/lib/cuda/allocator.cpp
M flang-rt/lib/cuda/descriptor.cpp
M flang-rt/lib/runtime/allocatable.cpp
M flang-rt/lib/runtime/array-constructor.cpp
M flang-rt/lib/runtime/assign.cpp
M flang-rt/lib/runtime/character.cpp
M flang-rt/lib/runtime/copy.cpp
M flang-rt/lib/runtime/derived.cpp
M flang-rt/lib/runtime/descriptor.cpp
M flang-rt/lib/runtime/extrema.cpp
M flang-rt/lib/runtime/findloc.cpp
M flang-rt/lib/runtime/matmul-transpose.cpp
M flang-rt/lib/runtime/matmul.cpp
M flang-rt/lib/runtime/misc-intrinsic.cpp
M flang-rt/lib/runtime/pointer.cpp
M flang-rt/lib/runtime/temporary-stack.cpp
M flang-rt/lib/runtime/tools.cpp
M flang-rt/lib/runtime/transformational.cpp
M flang-rt/unittests/Evaluate/reshape.cpp
M flang-rt/unittests/Runtime/Allocatable.cpp
M flang-rt/unittests/Runtime/CUDA/Allocatable.cpp
M flang-rt/unittests/Runtime/CUDA/AllocatorCUF.cpp
M flang-rt/unittests/Runtime/CUDA/Memory.cpp
M flang-rt/unittests/Runtime/CharacterTest.cpp
M flang-rt/unittests/Runtime/CommandTest.cpp
M flang-rt/unittests/Runtime/TemporaryStack.cpp
M flang-rt/unittests/Runtime/tools.h
M flang/include/flang/Optimizer/Dialect/CUF/CUFOps.td
M flang/include/flang/Runtime/CUDA/allocatable.h
M flang/include/flang/Runtime/CUDA/pointer.h
M flang/include/flang/Runtime/allocatable.h
M flang/lib/Lower/Allocatable.cpp
M flang/lib/Optimizer/Builder/Runtime/Allocatable.cpp
M flang/lib/Optimizer/Dialect/CUF/CUFOps.cpp
M flang/lib/Optimizer/Transforms/CUFOpConversion.cpp
M flang/test/Fir/CUDA/cuda-allocate.fir
M flang/test/Fir/cuf-invalid.fir
M flang/test/Fir/cuf.mlir
M flang/test/HLFIR/elemental-codegen.fir
M flang/test/Lower/CUDA/cuda-allocatable.cuf
M flang/test/Lower/OpenACC/acc-declare-unwrap-defaultbounds.f90
M flang/test/Lower/OpenACC/acc-declare.f90
M flang/test/Lower/allocatable-polymorphic.f90
M flang/test/Lower/allocatable-runtime.f90
M flang/test/Lower/allocate-mold.f90
M flang/test/Lower/polymorphic.f90
M flang/test/Transforms/lower-repack-arrays.fir
Log Message:
-----------
[flang][cuda] Use a reference for asyncObject (#138010)
Switch from `int64_t` to `int64_t*` to fit with the rest of the
implementation.
Commit: 6e49f73825f1b9cb98352a7c8dca3e0cf83ebd9e
https://github.com/llvm/llvm-project/commit/6e49f73825f1b9cb98352a7c8dca3e0cf83ebd9e
Author: Jonathan Thackray <jonathan.thackray at arm.com>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
M llvm/docs/GlobalISel/GenericOpcode.rst
M llvm/docs/LangRef.rst
M llvm/docs/ReleaseNotes.md
M llvm/include/llvm-c/Core.h
M llvm/include/llvm/AsmParser/LLToken.h
M llvm/include/llvm/Bitcode/LLVMBitCodes.h
M llvm/include/llvm/CodeGen/GlobalISel/MachineIRBuilder.h
M llvm/include/llvm/CodeGen/ISDOpcodes.h
M llvm/include/llvm/CodeGen/SelectionDAGNodes.h
M llvm/include/llvm/IR/Instructions.h
M llvm/include/llvm/Support/TargetOpcodes.def
M llvm/include/llvm/Target/GenericOpcodes.td
M llvm/include/llvm/Target/GlobalISel/SelectionDAGCompat.td
M llvm/include/llvm/Target/TargetSelectionDAG.td
M llvm/lib/AsmParser/LLLexer.cpp
M llvm/lib/AsmParser/LLParser.cpp
M llvm/lib/Bitcode/Reader/BitcodeReader.cpp
M llvm/lib/Bitcode/Writer/BitcodeWriter.cpp
M llvm/lib/CodeGen/AtomicExpandPass.cpp
M llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
M llvm/lib/CodeGen/GlobalISel/MachineIRBuilder.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGDumper.cpp
M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
M llvm/lib/IR/Core.cpp
M llvm/lib/IR/Instructions.cpp
M llvm/lib/Target/AMDGPU/AMDGPULowerBufferFatPointers.cpp
M llvm/lib/Transforms/Utils/LowerAtomic.cpp
M llvm/test/Assembler/atomic.ll
M llvm/test/Bitcode/compatibility.ll
M llvm/test/CodeGen/AArch64/GlobalISel/legalizer-info-validation.mir
M llvm/test/CodeGen/RISCV/GlobalISel/legalizer-info-validation.mir
M llvm/test/TableGen/GlobalISelCombinerEmitter/match-table-cxx.td
M llvm/test/TableGen/GlobalISelEmitter/GlobalISelEmitter.td
M llvm/test/Transforms/AtomicExpand/AArch64/atomicrmw-fp.ll
M llvm/test/Transforms/InstCombine/atomicrmw.ll
M llvm/test/Transforms/LowerAtomic/atomic-load.ll
Log Message:
-----------
Reland [llvm] Add support for llvm IR atomicrmw fminimum/fmaximum instructions (#137701)
This patch adds support for LLVM IR atomicrmw `fmaximum` and `fminimum`
instructions.
These mirror the `llvm.maximum.*` and `llvm.minimum.*` instructions, but
are atomic and use IEEE754 2019 handling for NaNs, which is different to
`fmax` and `fmin`. See:
https://llvm.org/docs/LangRef.html#llvm-minimum-intrinsic
for more details.
Future changes will allow this LLVM IR to be lowered to specialised
assembler instructions on suitable targets, such as AArch64.
Commit: 4ac4ad410ca5ed8b83ff397246aa6ac27742690d
https://github.com/llvm/llvm-project/commit/4ac4ad410ca5ed8b83ff397246aa6ac27742690d
Author: Jonathan Thackray <jonathan.thackray at arm.com>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
M llvm/test/CodeGen/AArch64/Atomics/aarch64-atomicrmw-lsfe.ll
M llvm/test/CodeGen/AArch64/Atomics/aarch64-atomicrmw-v8a_fp.ll
M llvm/test/CodeGen/AArch64/Atomics/aarch64_be-atomicrmw-lsfe.ll
M llvm/test/CodeGen/AArch64/Atomics/aarch64_be-atomicrmw-v8a_fp.ll
M llvm/test/CodeGen/AArch64/Atomics/generate-tests.py
Log Message:
-----------
[AArch64][llvm] Pre-commit tests for #137703 (NFC) (#137702)
Add pre-commit tests for lowering atomicrmw `fminimum`/`fmaximum` to
AArch64 assembler, in a subsequent change.
Commit: ea1bfbf3f6399b7d2d840722f0e87542d00f6a35
https://github.com/llvm/llvm-project/commit/ea1bfbf3f6399b7d2d840722f0e87542d00f6a35
Author: Qiongsi Wu <qiongsiwu at gmail.com>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
M clang/include/clang/Tooling/DependencyScanning/ModuleDepCollector.h
M clang/lib/Tooling/DependencyScanning/ModuleDepCollector.cpp
A clang/test/ClangScanDeps/export.c
M clang/test/ClangScanDeps/optimize-vfs-pch.m
M clang/tools/clang-scan-deps/ClangScanDeps.cpp
Log Message:
-----------
[clang][Dependency Scanning] Report What a Module Exports during Scanning (#137421)
We would like to report, for a module, which direct dependencies it
exports during dependency scanning. This PR implements this reporting by
augmenting `ModuleDep`'s `ClangModuleDeps` variable. `ClangModuleDeps`
now contains instances of `DepInfo`, which is made of a `ModuleID` and a
boolean flag that indicates if a particular dependence is exported.
rdar://144794793
Commit: 60c9f3fd89ab60ddda7bd6d27a65948ff8188d23
https://github.com/llvm/llvm-project/commit/60c9f3fd89ab60ddda7bd6d27a65948ff8188d23
Author: Jonathan Thackray <jonathan.thackray at arm.com>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/AArch64/AArch64InstrAtomics.td
M llvm/test/CodeGen/AArch64/Atomics/aarch64-atomicrmw-lsfe.ll
M llvm/test/CodeGen/AArch64/Atomics/aarch64_be-atomicrmw-lsfe.ll
Log Message:
-----------
[AArch64][llvm] Codegen for 16/32/64-bit floating-point atomicrmw fminimum/faximum (#137703)
Codegen for AArch64 16/32/64-bit floating-point atomic read-modify-write
operations (`atomicrmw {fmaximum,fminimum}`) using LD{B}FMAX and
LD{B}FMIN atomic instructions.
Commit: 02e316cf8c9c73aad580e8c0d1b3b691567601ca
https://github.com/llvm/llvm-project/commit/02e316cf8c9c73aad580e8c0d1b3b691567601ca
Author: Farzon Lotfi <farzonlotfi at microsoft.com>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
M llvm/lib/Target/DirectX/DXILLegalizePass.cpp
M llvm/lib/Target/DirectX/DirectXTargetMachine.cpp
A llvm/test/CodeGen/DirectX/legalize-memset.ll
M llvm/test/CodeGen/DirectX/llc-pipeline.ll
Log Message:
-----------
[DirectX] legalize memset (#136244)
fixes #136243
This change converts memset into a series of geps and stores It is
intentionally limited to memsets of fixed size It also converts the byte
stores to type stores.
DXIL does not support i8 plus this reduces the total number of gep and
store instructions.
This change also moves DXILFinalizeLinkage to run after Legalization to
clean up any dead intrinsic definitions.
Commit: 9b8c96a040ae6b76bb73690acfc5bea85aaa51d4
https://github.com/llvm/llvm-project/commit/9b8c96a040ae6b76bb73690acfc5bea85aaa51d4
Author: Shubham Sandeep Rastogi <srastogi22 at apple.com>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64LoadStoreOptimizer.cpp
A llvm/test/CodeGen/AArch64/aarch64-ldst-opt-instr-ref.mir
Log Message:
-----------
[InstrRef] Preserve debug instr num in aarch64-ldst-opt. (#136009)
The aarch64-ldst-opt pass tries to merge two load instructions
(LDR*) to a load pair instruction (LDP*).
When merging the instructions, there is a case where one of the
loads would have to also be sign extended. In either case,
(sign extend or not), the pass needs to preserve the debug-instr-number
from the original loads to the load pair instruction to make sure debug
info
isn't lost in the case where instruction referencing is being used.
For example:
We can have something like this:
```
debugValueSubstitutions:[]
$x1 = LDRXui $x0, 1, debug-instr-number 1
DBG_INSTR_REF !13, dbg-instr-ref(1, 0), debug-location !11
$x0 = LDRXui killed $x0, 0, debug-instr-number 2
DBG_INSTR_REF !14, dbg-instr-ref(2, 0), debug-location !11
```
This would be changed to:
```
debugValueSubstitutions: []
$x0, $x1 = LDPXi $x0, 0
DBG_INSTR_REF !12, dbg-instr-ref(1, 0), debug-location !14
DBG_INSTR_REF !13, dbg-instr-ref(2, 0), debug-location !14
```
In this case, we need to create a new debug instruction number
for the `LDP` instruction, we then need to add entries into the
debugSubstitutions table to map the old instr-refs to the new ones.
After this patch, the result will be:
```
debugValueSubstitutions:
- { srcinst: 1, srcop: 0, dstinst: 3, dstop: 1, subreg: 0 }
- { srcinst: 2, srcop: 0, dstinst: 3, dstop: 0, subreg: 0 }
$x0, $x1 = LDPXi $x0, 0, debug-instr-number 3
DBG_INSTR_REF !12, dbg-instr-ref(1, 0), debug-location !14
DBG_INSTR_REF !12, dbg-instr-ref(2, 0), debug-location !14
```
However, this is not all, we also can have a case where there is a
sign-extend involved, let's look at the case:
```
debugValueSubstitutions:[]
$w1 = LDRWui $x0, 1, debug-instr-number 1
DBG_INSTR_REF !7, dbg-instr-ref(1, 0), debug-location !9
$x0 = LDRSWui $x0, 0, debug-instr-number 2
DBG_INSTR_REF !8, dbg-instr-ref(2, 0), debug-location !9
```
This will become:
```
debugValueSubstitutions:[]
$w0, $w1 = LDPWi $x0, 0
$w0 = KILL $w0, implicit-def $x0
$x0 = SBFMXri $x0, 0, 31
DBG_INSTR_REF !7, dbg-instr-ref(1, 0), debug-location !9
DBG_INSTR_REF !8, dbg-instr-ref(2, 0), debug-location !9
```
$x0 is where the final value is stored, so the sign extend (SBFMXri)
instruction contains the final value we care about we give it a new
debug-instr-number 3. Whereas, $w1 contains the final value that we care
about, therefore the LDP instruction is also given a new
debug-instr-number 4. We have to add these subsitutions to the
debugValueSubstitutions table. However, we also have to ensure that the
OpIndex that pointed to debug-instr-number 1 gets updated to 1, because
$w1 is the second operand of the LDP instruction.
The result after the patch looks like:
```
debugValueSubstitutions:
- { srcinst: 1, srcop: 0, dstinst: 4, dstop: 1, subreg: 0 }
- { srcinst: 2, srcop: 0, dstinst: 3, dstop: 0, subreg: 0 }
$w0, $w1 = LDPWi $x0, 0, debug-instr-number 4
$w0 = KILL $w0, implicit-def $x0
$x0 = SBFMXri $x0, 0, 31, debug-instr-number 3
DBG_INSTR_REF !7, dbg-instr-ref(1, 0), debug-location !9
DBG_INSTR_REF !8, dbg-instr-ref(2, 0), debug-location !9
```
This patch addresses that problem.
Commit: 27e8e08b6633a31e6a5512df7a543615db4a1d56
https://github.com/llvm/llvm-project/commit/27e8e08b6633a31e6a5512df7a543615db4a1d56
Author: Jorge Gorbe Moya <jgorbe at google.com>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
Log Message:
-----------
[bazel] port d30554b19edc27bc9ca3475b888c1b3e4eda87c4 (#138022)
Commit: 0a1dde1d7957531701ba56e357276033a927f496
https://github.com/llvm/llvm-project/commit/0a1dde1d7957531701ba56e357276033a927f496
Author: Joseph Huber <huberjn at outlook.com>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
M clang/lib/Headers/gpuintrin.h
Log Message:
-----------
[Clang] Fix GPU match any truncating 64-bit lane mask
Summary:
This is a lane mask, needs all 64 bits for those wave64 targets. At some
point we should introduce __lanemask_t for this.
Commit: 21dcf6bcd1e2845601d07e1e46f17615d595f698
https://github.com/llvm/llvm-project/commit/21dcf6bcd1e2845601d07e1e46f17615d595f698
Author: Joseph Huber <huberjn at outlook.com>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
M libc/cmake/modules/LLVMLibCLibraryRules.cmake
Log Message:
-----------
[libc] Make sure we use the right linker for bitcode linking
Summary:
We need to use the default arguments to ensure this uses the right
linker for the toolchain given cross-compiling contexts.
Commit: e9193f5fddf99188b385f2a5358dff60f7b119c4
https://github.com/llvm/llvm-project/commit/e9193f5fddf99188b385f2a5358dff60f7b119c4
Author: Tristan Ross <tristan.ross at midstall.com>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
M .github/workflows/libc-fullbuild-tests.yml
Log Message:
-----------
[libc] add uefi fullbuild to workflows (#131376)
Comes after #131246 to enable UEFI being build. Skips tests until we
have set up testing.
Commit: af4aeb325c37832e399283763345d4fc47f449eb
https://github.com/llvm/llvm-project/commit/af4aeb325c37832e399283763345d4fc47f449eb
Author: Ryosuke Niwa <rniwa at webkit.org>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
M clang/lib/StaticAnalyzer/Checkers/WebKit/RawPtrRefMemberChecker.cpp
Log Message:
-----------
[RawPtrRefMemberChecker] Make RawPtrRefMemberChecker consistent with other checkers (#137559)
Refactor RawPtrRefMemberChecker so that each subclass override
isUnsafePtr like other WebKit checkers instead of overriding
isPtrCompatible.
Commit: 69327c16d17b13cb2bc27968a557276bd82eef9a
https://github.com/llvm/llvm-project/commit/69327c16d17b13cb2bc27968a557276bd82eef9a
Author: Alan Zhao <ayzhao at google.com>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
M clang/test/Misc/time-passes.c
M clang/tools/driver/cc1_main.cpp
Log Message:
-----------
[clang] Make `-ftime-report` and `-ftime-report-json` honor `-info-output-file` (#138035)
This way, the output of `-ftime-report` and `-ftime-report-json` can be
redirected to a specific file rather than just stderr.
Commit: df6d1cf4c2e9660967a53498a991ef9c1915c61e
https://github.com/llvm/llvm-project/commit/df6d1cf4c2e9660967a53498a991ef9c1915c61e
Author: Andy Kaylor <akaylor at nvidia.com>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenDecl.cpp
M clang/lib/CIR/CodeGen/CIRGenExpr.cpp
M clang/lib/CIR/CodeGen/CIRGenFunction.h
M clang/lib/CIR/CodeGen/CIRGenStmt.cpp
M clang/lib/CIR/CodeGen/CIRGenTypes.cpp
M clang/test/CIR/CodeGen/basic.cpp
Log Message:
-----------
[CIR] Upstream support for l-value references (#138001)
This adds basic support for handling reference values.
Commit: ba3a46c1eaea31ce4135fe30d34ede660dd2c680
https://github.com/llvm/llvm-project/commit/ba3a46c1eaea31ce4135fe30d34ede660dd2c680
Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
M flang-rt/include/flang-rt/runtime/descriptor.h
Log Message:
-----------
[flang][cuda] Fix type of kNoAsyncObject (#138029)
Commit: e6ffccbaa7c908839af150be8f7e21e0f8844dcc
https://github.com/llvm/llvm-project/commit/e6ffccbaa7c908839af150be8f7e21e0f8844dcc
Author: Alex MacLean <amaclean at nvidia.com>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
M llvm/lib/Target/NVPTX/NVPTXInstrInfo.cpp
M llvm/lib/Target/NVPTX/NVPTXInstrInfo.td
Log Message:
-----------
[NVPTX][NFC] Minor cleanup in NVPTXInstrInfo.td (#138006)
Commit: af45da1d32f47dba97a9e973c4e0c61f8cc61fea
https://github.com/llvm/llvm-project/commit/af45da1d32f47dba97a9e973c4e0c61f8cc61fea
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfoVVLPatterns.td
Log Message:
-----------
[RISCV] Remove unused tablegen multiclass. NFC
Commit: 1495d132db1d26b086d2ea6b1b9c397bf4ea4a7d
https://github.com/llvm/llvm-project/commit/1495d132db1d26b086d2ea6b1b9c397bf4ea4a7d
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
M lldb/tools/lldb-dap/DAP.cpp
M lldb/tools/lldb-dap/Handler/AttachRequestHandler.cpp
M lldb/tools/lldb-dap/Handler/RequestHandler.cpp
M lldb/tools/lldb-dap/Handler/RestartRequestHandler.cpp
M lldb/tools/lldb-dap/LLDBUtils.cpp
M lldb/tools/lldb-dap/LLDBUtils.h
Log Message:
-----------
[lldb-dap] Add an RAII helper for synchronous mode (NFC) (#137900)
While debugging the flakiness of the launch and attach tests, I noticed
that we have some places in lldb-dap where we put the debugger in
synchronous mode and have an early exit, that would leave the debugger
in this state. This PR introduces an RAII helper to avoid such mistakes.
Commit: 71039bbc581b59bdec25ed1e1d4cc6e772d5bb0c
https://github.com/llvm/llvm-project/commit/71039bbc581b59bdec25ed1e1d4cc6e772d5bb0c
Author: mssefat <42645939+mssefat at users.noreply.github.com>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/SIFoldOperands.cpp
M llvm/test/CodeGen/AMDGPU/fold-imm-copy.mir
Log Message:
-----------
[AMDGPU] Fix register class constraints for si-fold-operands pass when folding immediate into copies (#131387)
Fixes https://github.com/llvm/llvm-project/issues/130020
This fixes an issue where the si-fold-operands pass would incorrectly
fold immediate values into COPY instructions targeting av_32 registers.
The pass now checks register class constraints before attempting to fold
the immediate.
Commit: 5dc3cd0ee40c00d9fb542488fa5a54ff70273112
https://github.com/llvm/llvm-project/commit/5dc3cd0ee40c00d9fb542488fa5a54ff70273112
Author: Haowei <haowei at google.com>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
M llvm/tools/llvm-exegesis/lib/AArch64/Target.cpp
Log Message:
-----------
[llvm-exegesis][AArch64] Adding missing PR_PAC_ macro defintions (#138040)
This is a follow up of 3beacfa022da2a9c94e012e25bed89e8e4867ac2, which
added the PR_PAC_APIAKEY macro to resolve the build failures on older Linux
distros. However, it missed a few other definitions. This patch fixes
this issue.
Commit: 7d05f67a7377ad67e7eb15e0f8f7cf1f537b5afa
https://github.com/llvm/llvm-project/commit/7d05f67a7377ad67e7eb15e0f8f7cf1f537b5afa
Author: Jason Eckhardt <jeckhardt at nvidia.com>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
M llvm/include/llvm/Target/TargetCallingConv.td
A llvm/test/TableGen/cc-assign-to-reg-tuple.td
M llvm/utils/TableGen/CallingConvEmitter.cpp
Log Message:
-----------
[TableGen][CallingConv] Add CCAssignToRegTuple for synthetic registers. (#137826)
Currently CCAssignToReg takes a list<Register>. There are tuple-heavy
back-ends where we would like to reference any register-- whether those
are singletons or those defined by RegisterTuples. However, the latter
are synthesized during tuple expansion and are not visible outside of
the register info emitter.
The problem is that the parser will see tuple registers as undefined
variables before the calling convention emitter is ever reached. To
defer evaluation of the symbol, we introduce CCAssignToRegTuple which
takes list<string> instead. This allows us to defer the actual
register name lookup until the emitter runs-- where we also validate
that the register actually exists.
This is currently used in a downstream back-end which will be upstreamed
very soon. In the meantime, a unit test is provided to exercise the
feature.
Commit: afd738cd9016ddef4e26b309770ba35fd017a178
https://github.com/llvm/llvm-project/commit/afd738cd9016ddef4e26b309770ba35fd017a178
Author: Reid Kleckner <rnk at google.com>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
M clang/unittests/Basic/CMakeLists.txt
M clang/unittests/Format/CMakeLists.txt
M clang/unittests/libclang/CrashTests/CMakeLists.txt
M clang/unittests/libclang/CrashTests/LibclangCrashTest.cpp
Log Message:
-----------
[clang] Shard out some small gtest binaries (#138021)
@nico mentioned that FormatTests and BasicTests are small binaries with
few dependencies, so keeping them separate is nice. I broke them out as
distinct test binaries, and they are still pretty small:
$ find tools/clang/unittests/ -type f -name '*Tests' | xargs du -cksh |
sort -nr
708M total
276M tools/clang/unittests/AllClangUnitTests
244M tools/clang/unittests/Interpreter/ClangReplInterpreterTests
167M
tools/clang/unittests/Interpreter/ExceptionTests/ClangReplInterpreterExceptionTests
13M tools/clang/unittests/Format/FormatTests
6.9M tools/clang/unittests/Basic/BasicTests
1.1M tools/clang/unittests/libclang/CrashTests/libclangCrashTests
I also broke out libclangCrashTests and re-enabled the failing test to
resolve llvm#137855.
Commit: 708053cd7ec576c67fd1c72cd6b836987fbee2ce
https://github.com/llvm/llvm-project/commit/708053cd7ec576c67fd1c72cd6b836987fbee2ce
Author: Iris Shi <0.0 at owo.li>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
M clang/include/clang/CIR/Dialect/IR/CIRTypes.td
M clang/lib/CIR/CodeGen/CIRGenExpr.cpp
M clang/lib/CIR/CodeGen/CIRGenExprAggregate.cpp
M clang/lib/CIR/CodeGen/CIRGenRecordLayout.h
M clang/lib/CIR/CodeGen/CIRGenRecordLayoutBuilder.cpp
M clang/lib/CIR/Dialect/IR/CIRTypes.cpp
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
M clang/test/CIR/CodeGen/union.c
Log Message:
-----------
[CIR] Upstream initial support for union type (#137501)
Closes #136059
Commit: c3715ecb1e1e63856a029be3c95b7e9595a56018
https://github.com/llvm/llvm-project/commit/c3715ecb1e1e63856a029be3c95b7e9595a56018
Author: Keith Smiley <keithbsmiley at gmail.com>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
A utils/bazel/llvm-project-overlay/clang-tools-extra/clang-apply-replacements/BUILD.bazel
M utils/bazel/llvm-project-overlay/clang-tools-extra/unittests/BUILD.bazel
Log Message:
-----------
[bazel] Add clang-apply-replacements BUILD file (#138054)
Commit: e6a5d73f4d68462c1913fe9ac12217850872ae4e
https://github.com/llvm/llvm-project/commit/e6a5d73f4d68462c1913fe9ac12217850872ae4e
Author: Ryosuke Niwa <rniwa at webkit.org>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
M clang/lib/StaticAnalyzer/Checkers/WebKit/PtrTypesSemantics.cpp
M clang/test/Analysis/Checkers/WebKit/call-args-checked-ptr.cpp
M clang/test/Analysis/Checkers/WebKit/call-args.cpp
M clang/test/Analysis/Checkers/WebKit/uncounted-local-vars.cpp
M clang/test/Analysis/Checkers/WebKit/uncounted-obj-arg.cpp
Log Message:
-----------
[WebKit checkers] Treat std::bit_cast as a pointer conversion (#137476)
WebKit repalced its use of WTF::bitwise_cast with std::bit_cast. Add the
support for recognizing it as a pointer conversion.
Commit: 46838e1a093510529185408349fe192c09ea42f0
https://github.com/llvm/llvm-project/commit/46838e1a093510529185408349fe192c09ea42f0
Author: Pranav Kant <prka at google.com>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
M lld/ELF/ICF.cpp
Log Message:
-----------
[lld] NFC. Rename function to better reflect its implementation (#136625)
Commit: 07deaf8464f29c34ff46983450a7412a36adcb7b
https://github.com/llvm/llvm-project/commit/07deaf8464f29c34ff46983450a7412a36adcb7b
Author: Michael Spencer <bigcheesegs at gmail.com>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Basic/Stack.h
M clang/lib/Basic/Stack.cpp
M clang/lib/Frontend/CompilerInstance.cpp
M llvm/include/llvm/Support/CrashRecoveryContext.h
A llvm/include/llvm/Support/ProgramStack.h
M llvm/include/llvm/Support/thread.h
M llvm/lib/Support/CMakeLists.txt
M llvm/lib/Support/CrashRecoveryContext.cpp
A llvm/lib/Support/ProgramStack.cpp
M llvm/unittests/Support/CMakeLists.txt
A llvm/unittests/Support/ProgramStackTest.cpp
Log Message:
-----------
Reland: [llvm][clang] Allocate a new stack instead of spawning a new thread to get more stack space (#136046)
Reland https://github.com/llvm/llvm-project/pull/133173
Clang spawns a new thread to avoid running out of stack space. This can
make debugging and performance analysis more difficult as how the
threads are connected is difficult to recover.
This patch introduces `runOnNewStack` and applies it in Clang. On
platforms that have good support for it this allocates a new stack and
moves to it using assembly. Doing split stacks like this actually runs
on most platforms, but many debuggers and unwinders reject the large or
backwards stack offsets that occur. Apple platforms and tools are known
to support this, so this only enables it there for now.
Commit: b564f5eaeb10022f5b65397e7c922c150816365b
https://github.com/llvm/llvm-project/commit/b564f5eaeb10022f5b65397e7c922c150816365b
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
M llvm/utils/gn/secondary/llvm/lib/Support/BUILD.gn
M llvm/utils/gn/secondary/llvm/unittests/Support/BUILD.gn
Log Message:
-----------
[gn build] Port 07deaf8464f2
Commit: c588224ca797886064a7a79f6c0114a6963c325e
https://github.com/llvm/llvm-project/commit/c588224ca797886064a7a79f6c0114a6963c325e
Author: NAKAMURA Takumi <geek4civic at gmail.com>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/llvm/include/llvm/Config/llvm-config.h
Log Message:
-----------
[bazel] Turn on LLVM_ENABLE_DEBUGLOC_COVERAGE_TRACKING
This has been defined in #137787 and affects in
llvmorg-21-init-10310-g92195f6fc873 (#137787).
Commit: 8effc8da292bfacb823a7e3c4134296da481fedc
https://github.com/llvm/llvm-project/commit/8effc8da292bfacb823a7e3c4134296da481fedc
Author: Owen Pan <owenpiano at gmail.com>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
M clang/docs/ClangFormatStyleOptions.rst
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Format/Format.h
M clang/lib/Format/Format.cpp
M clang/lib/Format/FormatTokenLexer.cpp
M clang/lib/Format/FormatTokenLexer.h
M clang/unittests/Format/ConfigParseTest.cpp
M clang/unittests/Format/FormatTest.cpp
Log Message:
-----------
Reland [clang-format] Add OneLineFormatOffRegex option (#137577)
Commit: e6d7f46ce9a6ffdfc206802131e0d79afb624b3f
https://github.com/llvm/llvm-project/commit/e6d7f46ce9a6ffdfc206802131e0d79afb624b3f
Author: Owen Pan <owenpiano at gmail.com>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
M clang/lib/Format/TokenAnnotator.cpp
M clang/unittests/Format/TokenAnnotatorTest.cpp
Log Message:
-----------
[clang-format] Correctly annotate user-defined conversion function call (#137914)
Fix #137770
Commit: 6efdcc188567fa2c9bde383e4397062f6d31427a
https://github.com/llvm/llvm-project/commit/6efdcc188567fa2c9bde383e4397062f6d31427a
Author: Alex MacLean <amaclean at nvidia.com>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
M llvm/lib/Target/NVPTX/NVPTXISelDAGToDAG.cpp
M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
A llvm/test/CodeGen/NVPTX/i128-ld-st.ll
Log Message:
-----------
[NVPTX] Fixup EXT_LOAD lowering for i128 values (#138049)
Ensure that when custom lowering a vector load/store to a multi-output
load/store node we confirm that the memory value type matches the type
used by the node. Also add some asserts for basic sanity checking of
load size.
Fixes https://github.com/llvm/llvm-project/issues/138034
Commit: c2c0ef50a1a679058fffe445a6e78b6d232dc231
https://github.com/llvm/llvm-project/commit/c2c0ef50a1a679058fffe445a6e78b6d232dc231
Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
M clang/include/clang/Sema/Sema.h
M clang/lib/Sema/SemaChecking.cpp
M clang/lib/Sema/SemaDeclCXX.cpp
M clang/lib/Sema/SemaExpr.cpp
M clang/lib/Sema/SemaExprCXX.cpp
M clang/lib/Sema/SemaExprObjC.cpp
M clang/lib/Sema/SemaObjC.cpp
M clang/lib/Sema/SemaOverload.cpp
Log Message:
-----------
[clang][NFC] Convert `Sema::VariadicCallType` to scoped enum
Commit: 4258998654a67fb98da16f2c56cbb5912e990a9c
https://github.com/llvm/llvm-project/commit/4258998654a67fb98da16f2c56cbb5912e990a9c
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
M clang/lib/AST/ByteCode/InterpFrame.cpp
M clang/test/AST/ByteCode/constexpr-frame-describe.cpp
Log Message:
-----------
[clang][bytecode] Only print ptr/reference types via toAPValue() (#137965)
Otherwise, convert them to an RValue to print them. This fixes the
printing of e.g. complex values.
Commit: 53c175ceafc58fcdf13fd51f73506a7d277873bb
https://github.com/llvm/llvm-project/commit/53c175ceafc58fcdf13fd51f73506a7d277873bb
Author: Prabhu Rajasekaran <prabhukr at google.com>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
M clang/lib/CodeGen/CodeGenModule.cpp
M clang/lib/CodeGen/CodeGenModule.h
Log Message:
-----------
[nfc][clang] Rename function (#137874)
Rename function to meet the coding guidelines.
Commit: 16f01b37772ba7d9fec25a27ed493a93fbbe6f87
https://github.com/llvm/llvm-project/commit/16f01b37772ba7d9fec25a27ed493a93fbbe6f87
Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
M flang-rt/lib/cuda/allocatable.cpp
M flang-rt/lib/cuda/allocator.cpp
M flang/include/flang/Runtime/CUDA/allocator.h
Log Message:
-----------
[flang][cuda] Fix signatures after argument change (#138081)
Commit: 5f3e5df48186a7e409d548deec13a68486e3b944
https://github.com/llvm/llvm-project/commit/5f3e5df48186a7e409d548deec13a68486e3b944
Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
M clang/include/clang/Sema/Sema.h
M clang/lib/Sema/SemaChecking.cpp
M clang/lib/Sema/SemaDecl.cpp
M clang/lib/Sema/SemaExpr.cpp
M clang/lib/Sema/SemaStmt.cpp
Log Message:
-----------
[clang][NFC] Convert `Sema::BuiltinCountedByRefKind` to scoped enum
Commit: 01a18809ee80b5a8bfa5a7a116e846405ab2851a
https://github.com/llvm/llvm-project/commit/01a18809ee80b5a8bfa5a7a116e846405ab2851a
Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
Date: 2025-04-30 (Wed, 30 Apr 2025)
Changed paths:
M flang-rt/include/flang-rt/runtime/allocator-registry.h
M flang-rt/include/flang-rt/runtime/descriptor.h
M flang-rt/include/flang-rt/runtime/reduction-templates.h
M flang-rt/lib/cuda/allocatable.cpp
M flang-rt/lib/cuda/allocator.cpp
M flang-rt/lib/cuda/descriptor.cpp
M flang-rt/lib/runtime/allocatable.cpp
M flang-rt/lib/runtime/array-constructor.cpp
M flang-rt/lib/runtime/assign.cpp
M flang-rt/lib/runtime/character.cpp
M flang-rt/lib/runtime/copy.cpp
M flang-rt/lib/runtime/derived.cpp
M flang-rt/lib/runtime/descriptor.cpp
M flang-rt/lib/runtime/extrema.cpp
M flang-rt/lib/runtime/findloc.cpp
M flang-rt/lib/runtime/matmul-transpose.cpp
M flang-rt/lib/runtime/matmul.cpp
M flang-rt/lib/runtime/misc-intrinsic.cpp
M flang-rt/lib/runtime/pointer.cpp
M flang-rt/lib/runtime/temporary-stack.cpp
M flang-rt/lib/runtime/tools.cpp
M flang-rt/lib/runtime/transformational.cpp
M flang-rt/unittests/Evaluate/reshape.cpp
M flang-rt/unittests/Runtime/Allocatable.cpp
M flang-rt/unittests/Runtime/CUDA/Allocatable.cpp
M flang-rt/unittests/Runtime/CUDA/AllocatorCUF.cpp
M flang-rt/unittests/Runtime/CUDA/Memory.cpp
M flang-rt/unittests/Runtime/CharacterTest.cpp
M flang-rt/unittests/Runtime/CommandTest.cpp
M flang-rt/unittests/Runtime/TemporaryStack.cpp
M flang-rt/unittests/Runtime/tools.h
M flang/include/flang/Optimizer/Dialect/CUF/CUFOps.td
M flang/include/flang/Runtime/CUDA/allocatable.h
M flang/include/flang/Runtime/CUDA/allocator.h
M flang/include/flang/Runtime/CUDA/pointer.h
M flang/include/flang/Runtime/allocatable.h
M flang/lib/Lower/Allocatable.cpp
M flang/lib/Optimizer/Builder/Runtime/Allocatable.cpp
M flang/lib/Optimizer/Dialect/CUF/CUFOps.cpp
M flang/lib/Optimizer/Transforms/CUFOpConversion.cpp
M flang/test/Fir/CUDA/cuda-allocate.fir
M flang/test/Fir/cuf-invalid.fir
M flang/test/Fir/cuf.mlir
M flang/test/HLFIR/elemental-codegen.fir
M flang/test/Lower/CUDA/cuda-allocatable.cuf
M flang/test/Lower/OpenACC/acc-declare-unwrap-defaultbounds.f90
M flang/test/Lower/OpenACC/acc-declare.f90
M flang/test/Lower/allocatable-polymorphic.f90
M flang/test/Lower/allocatable-runtime.f90
M flang/test/Lower/allocate-mold.f90
M flang/test/Lower/polymorphic.f90
M flang/test/Transforms/lower-repack-arrays.fir
Log Message:
-----------
Revert "[flang][cuda] Use a reference for asyncObject (#138010)" (#138082)
This reverts commit 9b0eaf71e674a28ee55be3afa11b5f7d4da732c0.
Commit: 4acfd83ee492ba238c4082a5467a5a8e92d45102
https://github.com/llvm/llvm-project/commit/4acfd83ee492ba238c4082a5467a5a8e92d45102
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
M clang/lib/AST/ByteCode/Context.h
Log Message:
-----------
[clang][bytecode][NFC] Remove unused Context::getStack() (#138079)
Commit: e70a8a6e0e9c3700bcfe7e9cce3c5edee6a51022
https://github.com/llvm/llvm-project/commit/e70a8a6e0e9c3700bcfe7e9cce3c5edee6a51022
Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
M clang/include/clang/Sema/Sema.h
M clang/lib/Parse/ParseDecl.cpp
M clang/lib/Parse/ParseTentative.cpp
M clang/lib/Parse/Parser.cpp
Log Message:
-----------
[clang][NFC] Convert `Sema::NameClassificationKind` to scoped enum
Commit: d0a97271a4ea2b0fe392afe498af20f8499260d2
https://github.com/llvm/llvm-project/commit/d0a97271a4ea2b0fe392afe498af20f8499260d2
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
R clang/test/AST/ByteCode/constexpr-subobj-initialization.cpp
Log Message:
-----------
[clang][bytecode] Remove obsolete test file (#138080)
The corresponding test in `test/SemaCXX` has a line using the bytecode
interpreter these days.
Commit: c51be1be3ac9c66fc0c598298edd1fd224c1da07
https://github.com/llvm/llvm-project/commit/c51be1be3ac9c66fc0c598298edd1fd224c1da07
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
M clang/lib/AST/ByteCode/ByteCodeEmitter.h
M clang/lib/AST/ByteCode/Compiler.cpp
M clang/lib/AST/ByteCode/EvalEmitter.h
M clang/lib/AST/ByteCode/Interp.cpp
M clang/test/Sema/integer-overflow.c
Log Message:
-----------
[clang][bytecode] Fix checking for integer overflow (#137962)
We need to evaluate both the True/False expressions of a conditional
operator as well as the LHS/RHS of a binary operator in more cases.
Commit: 93ff19c27a0ad21068f431c0380f5a6dd5c4abc3
https://github.com/llvm/llvm-project/commit/93ff19c27a0ad21068f431c0380f5a6dd5c4abc3
Author: Amr Hesham <amr96 at programmer.net>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
M clang/include/clang/CIR/Dialect/IR/CIRAttrs.td
M clang/lib/CIR/CodeGen/CIRGenExprConstant.cpp
M clang/lib/CIR/Dialect/IR/CIRAttrs.cpp
M clang/lib/CIR/Dialect/IR/CIRDialect.cpp
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
M clang/test/CIR/CodeGen/vector-ext.cpp
M clang/test/CIR/CodeGen/vector.cpp
M clang/test/CIR/IR/vector.cir
Log Message:
-----------
[CIR] Upstream global initialization for VectorType (#137511)
This change adds global initialization for VectorType
Issue https://github.com/llvm/llvm-project/issues/136487
Commit: ac9e1df3efcaa80b8e0fc8a16a929c0f0dc2e161
https://github.com/llvm/llvm-project/commit/ac9e1df3efcaa80b8e0fc8a16a929c0f0dc2e161
Author: Thomas Du Plessis <t at dupes.io>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
M clang-tools-extra/clangd/index/YAMLSerialization.cpp
M clang-tools-extra/clangd/index/remote/Index.proto
M clang-tools-extra/clangd/index/remote/marshalling/Marshalling.cpp
M clang-tools-extra/clangd/unittests/remote/MarshallingTests.cpp
Log Message:
-----------
[clangd] Add container field to remote index Refs grpc method (#71605)
Fixes https://github.com/clangd/clangd/issues/1358
Commit: 7ec1e0f7ba9f3b03fa6163ab62c17dc9b404303e
https://github.com/llvm/llvm-project/commit/7ec1e0f7ba9f3b03fa6163ab62c17dc9b404303e
Author: Michele Scuttari <michele.scuttari at outlook.com>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
M mlir/include/mlir/IR/SymbolTable.h
M mlir/lib/IR/SymbolTable.cpp
Log Message:
-----------
[MLIR] Add method to invalidate cached symbol table (#138014)
This PR adds a method to the `SymbolTableCollection` class to invalidate
the cached symbol table for an operation.
This is important when doing IR modifications that erase and also create
operations having the `OpTrait::SymbolTable` trait. If a symbol table of
an erased operation is not invalidated, a new operation sharing the same
address would be associated with outdated, and wrong, information.
Commit: 0d3d2f639c42b22fc1b9453c7b834dbb0f16c0dc
https://github.com/llvm/llvm-project/commit/0d3d2f639c42b22fc1b9453c7b834dbb0f16c0dc
Author: Juan Manuel Martinez Caamaño <jmartinezcaamao at gmail.com>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
M clang/lib/Lex/PPDirectives.cpp
A clang/test/Preprocessor/macro_reserved.i
Log Message:
-----------
[Clang] Do not warn for serialized builtin or command-line definitions (#137306)
When using `-dD` to generate a preprocessed output, the `#define`
directives
are preserved. This includes built-in and command-line definitions.
Before, clang would warn for reserved identifiers for serialized
built-in
and command-line definitions.
This patch adds an exception to these cases.
Commit: 9b1051281e439fcf6f6ccf03766c5bcf04ceec4b
https://github.com/llvm/llvm-project/commit/9b1051281e439fcf6f6ccf03766c5bcf04ceec4b
Author: David Green <david.green at arm.com>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
M llvm/include/llvm/CodeGen/SelectionDAGISel.h
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp
M llvm/lib/Target/AArch64/AArch64InstrInfo.td
M llvm/lib/Target/AMDGPU/SIInstrInfo.td
M llvm/lib/Target/AMDGPU/SIInstructions.td
M llvm/lib/Target/ARM/ARMInstrInfo.td
M llvm/lib/Target/RISCV/RISCVInstrInfo.td
M llvm/lib/Target/WebAssembly/WebAssemblyInstrInfo.td
M llvm/lib/Target/X86/X86InstrSSE.td
M llvm/test/CodeGen/AArch64/aarch64-mull-masks.ll
M llvm/test/TableGen/HasNoUse.td
M llvm/test/TableGen/address-space-patfrags.td
M llvm/utils/TableGen/Common/CodeGenDAGPatterns.cpp
M llvm/utils/TableGen/DAGISelMatcherEmitter.cpp
Log Message:
-----------
[DAG] Use SDValue for PatFrag checks (#137519)
If the SDNode is used it can pick up the wrong results number, for
example looking at the known bits of the first result where it should be
looking at the second. The SDValue is already present as the
SelectCodeCommon checks move from parent to child, pass the SDValue
through to CheckNodePredicate as Op so that it can use it if necessary.
SDNode *N is still generated, keeping most PatFrags the same.
Fixes #137274
Commit: 6c4dd8d1d2f1e81c2b309924afb255b58a31ceb2
https://github.com/llvm/llvm-project/commit/6c4dd8d1d2f1e81c2b309924afb255b58a31ceb2
Author: Fraser Cormack <fraser at codeplay.com>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
A libclc/clc/include/clc/math/clc_maxmag.h
A libclc/clc/include/clc/math/clc_minmag.h
M libclc/clc/lib/generic/SOURCES
A libclc/clc/lib/generic/math/clc_maxmag.cl
A libclc/clc/lib/generic/math/clc_maxmag.inc
A libclc/clc/lib/generic/math/clc_minmag.cl
A libclc/clc/lib/generic/math/clc_minmag.inc
M libclc/generic/lib/math/maxmag.cl
R libclc/generic/lib/math/maxmag.inc
M libclc/generic/lib/math/minmag.cl
R libclc/generic/lib/math/minmag.inc
Log Message:
-----------
[libclc] Move minmag & maxmag to the CLC library (#137982)
Commit: c5b750f5af72fadd4c00c120c9c585240da466b4
https://github.com/llvm/llvm-project/commit/c5b750f5af72fadd4c00c120c9c585240da466b4
Author: Fraser Cormack <fraser at codeplay.com>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
M libclc/clc/lib/generic/math/clc_tables.cl
M libclc/generic/lib/math/tables.cl
Log Message:
-----------
[libclc] Move log2/log10 tables to CLC tables impl
These two tables were being used by the CLC library but their
definitions still remained in the OpenCL layer. This worked out after
linking the two together but is a layering violation.
This had a side effect of removing the two table getters from the final
bytecode library, which were never intended to be exposed.
These two tables should probably be refactored so allow better
vectorization of log/log2/log10, but that is left to future work.
Commit: 47424df2d5c6cc5a2b2d49a8cad438d8e75fec61
https://github.com/llvm/llvm-project/commit/47424df2d5c6cc5a2b2d49a8cad438d8e75fec61
Author: David Spickett <david.spickett at linaro.org>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
M lldb/test/API/tools/lldb-server/TestLldbGdbServer.py
Log Message:
-----------
[lldb][test] Skip part of TestLldbGdbServer.py on Windows
See https://github.com/llvm/llvm-project/issues/138085.
Commit: 2dbab4ca8ddb218af555d8d1fd86b72612387582
https://github.com/llvm/llvm-project/commit/2dbab4ca8ddb218af555d8d1fd86b72612387582
Author: David Spickett <david.spickett at linaro.org>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
M lldb/test/API/tools/lldb-dap/breakpoint/TestDAP_breakpointLocations.py
M lldb/test/API/tools/lldb-dap/breakpoint/TestDAP_setBreakpoints.py
M lldb/test/API/tools/lldb-dap/commands/TestDAP_commands.py
M lldb/test/API/tools/lldb-dap/disassemble/TestDAP_disassemble.py
M lldb/test/API/tools/lldb-dap/evaluate/TestDAP_evaluate.py
M lldb/test/API/tools/lldb-dap/memory/TestDAP_memory.py
M lldb/test/API/tools/lldb-dap/variables/TestDAP_variables.py
Log Message:
-----------
[lldb][test] Disable a bunch of flakey lldb-dap tests
These, or parts of these, are all failing every so often on Linaro's
build bots with:
raise ValueError(desc)
ValueError: no response for "disconnect"
Sorry to use a global disable here but this is happening too often
and spamming unrelated PRs.
I think it's the same issue as https://github.com/llvm/llvm-project/issues/137660.
Commit: 9693bf457b8a3ae95735f86e23a94a7946ec540e
https://github.com/llvm/llvm-project/commit/9693bf457b8a3ae95735f86e23a94a7946ec540e
Author: Jannick Kremer <jannick.kremer at mailbox.org>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
M clang/bindings/python/clang/cindex.py
Log Message:
-----------
[libclang/python] Add some logical typing changes. (#138074)
This adds a few logical changes that might require discussion to the
libclang/python typing project, as the next step towards #76664 .
Some documentation is also updated to reflect the recent changes in
returned types.
Commit: 4b3acfb10a6b6388b95682c471bdbf42982be030
https://github.com/llvm/llvm-project/commit/4b3acfb10a6b6388b95682c471bdbf42982be030
Author: Aaron Ballman <aaron at aaronballman.com>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Basic/DiagnosticGroups.td
A clang/test/Sema/warn-duplicate-decl-specifier.c
Log Message:
-----------
[C] Add -Wduplicate-decl-specifier to -Wc++-compat (#138012)
The existing diagnostic, already enabled by default in C, will diagnose
use of duplicate declaration specifiers (e.g., `const const`). However,
the C++ standard claims that is ill-formed, so the diagnostic is now
also controlled via -Wc++-compat.
Note: Clang treats this as a warning in C++ rather than an error, but
GCC does treat this as an error in C++, so the compatibility concerns
are minor but do exist.
Commit: 00f9ef282c7482754a0fea497417604d1deca9fa
https://github.com/llvm/llvm-project/commit/00f9ef282c7482754a0fea497417604d1deca9fa
Author: Aaron Ballman <aaron at aaronballman.com>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Basic/DiagnosticGroups.td
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/lib/Sema/Sema.cpp
M clang/lib/Sema/SemaDecl.cpp
M clang/lib/Sema/SemaInit.cpp
M clang/test/Sema/warn-default-const-init.c
Log Message:
-----------
[C] Modify -Wdefault-const-init (#137961)
Post-commit review feedback on
https://github.com/llvm/llvm-project/pull/137166 raised a concern from
the Linux kernel about wanting to silence the new diagnostic when the
uninitialized object is a const member of a structure. These members can
be initialized later if the containing object is non-const, such as
through a call to memset, for example.
This splits the diagnostic groups into:
```
-Wc++-compat
-Wdefault-const-init
-Wdefault-const-init-field
-Wdefault-const-init-var
-Wdefault-const-init-unsafe
-Wdefault-const-init-field-unsafe
-Wdefault-const-init-var-unsafe
```
---------
Co-authored-by: Mariya Podchishchaeva <mariya.podchishchaeva at intel.com>
Commit: 21aa7b8138a140514ea90d85bf86c57de68c6d4f
https://github.com/llvm/llvm-project/commit/21aa7b8138a140514ea90d85bf86c57de68c6d4f
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
M llvm/lib/IR/Verifier.cpp
Log Message:
-----------
Verifier: Avoid unnecessary hasFnAttr (#138104)
When checking string attribute values are valid, it's not
necessary to check hasFnAttr prior to querying the value.
Commit: 212f2456fcde822fad37bfa4e69ced1a51a4c19d
https://github.com/llvm/llvm-project/commit/212f2456fcde822fad37bfa4e69ced1a51a4c19d
Author: Mohamed Emad <73320969+hulxv at users.noreply.github.com>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
M clang-tools-extra/docs/ReleaseNotes.rst
M clang-tools-extra/include-cleaner/test/tool.cpp
M clang-tools-extra/include-cleaner/tool/IncludeCleaner.cpp
Log Message:
-----------
[include-cleaner] rename enabled flags to `disable-*` (#132991)
Closes #132983
Commit: e377dc4d38b69050a3301c68637d1b6dacaee3a9
https://github.com/llvm/llvm-project/commit/e377dc4d38b69050a3301c68637d1b6dacaee3a9
Author: Lucas Ramirez <11032120+lucas-rami at users.noreply.github.com>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUAttributor.cpp
M llvm/lib/Target/AMDGPU/AMDGPUPromoteAlloca.cpp
M llvm/lib/Target/AMDGPU/AMDGPUSubtarget.cpp
M llvm/lib/Target/AMDGPU/AMDGPUSubtarget.h
M llvm/test/CodeGen/AMDGPU/attr-amdgpu-flat-work-group-size.ll
M llvm/test/CodeGen/AMDGPU/load-global-i16.ll
M llvm/test/CodeGen/AMDGPU/schedule-regpressure-limit-clustering.ll
Log Message:
-----------
[AMDGPU] Max. WG size-induced occupancy limits max. waves/EU (#137807)
The default maximum waves/EU returned by the family of
`AMDGPUSubtarget::getWavesPerEU` is currently the maximum number of
waves/EU supported by the subtarget (only a valid occupancy range in
"amdgpu-waves-per-eu" may lower that maximum). This ignores maximum
achievable occupancy imposed by flat workgroup size and LDS usage,
resulting in situations where `AMDGPUSubtarget::getWavesPerEU` produces
a maximum higher than the one from
`AMDGPUSubtarget::getOccupancyWithWorkGroupSizes`.
This limits the waves/EU range's maximum to the maximum achievable
occupancy derived from flat workgroup sizes and LDS usage. This only has
an impact on functions which restrict flat workgroup size with
"amdgpu-flat-work-group-size", since the default range of flat workgroup
sizes achieves the maximum number of waves/EU supported by the
subtarget.
Improvements to the handling of "amdgpu-waves-per-eu" are left for a
follow up PR (e.g., I think the attribute should be able to lower the
full range of waves/EU produced by these methods).
Commit: 75d1cceb948666af9b2cb26fc3933d4176a2806d
https://github.com/llvm/llvm-project/commit/75d1cceb948666af9b2cb26fc3933d4176a2806d
Author: Aaron Ballman <aaron at aaronballman.com>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
M clang/test/Sema/warn-default-const-init.c
Log Message:
-----------
Add missing RUN lines to test
These were intended to be present when 00f9ef282c7482754a0fea497417604d1deca9fa
landed
Commit: bc9aa0f4c4c6ad9dd6207097478f4e461a8fe5cb
https://github.com/llvm/llvm-project/commit/bc9aa0f4c4c6ad9dd6207097478f4e461a8fe5cb
Author: Aaron Ballman <aaron at aaronballman.com>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Basic/DiagnosticGroups.td
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/lib/Sema/SemaDecl.cpp
M clang/test/Sema/warn-default-const-init.c
A clang/test/Sema/warn-tentative-defn-compat.c
Log Message:
-----------
[C] Add -Wtentative-definition-compat (#137967)
This adds a new diagnostic to warn about redeclaration of a tentative
definition in C. This is incompatible with C++, so the new diagnostic
group is under -Wc++-compat.
Commit: 9494464b1369ffb85dc2feae773185049996c001
https://github.com/llvm/llvm-project/commit/9494464b1369ffb85dc2feae773185049996c001
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
R llvm/test/Assembler/2008-09-02-FunctionNotes2.ll
A llvm/test/Verifier/2008-09-02-FunctionNotes2.ll
Log Message:
-----------
Verifier: Move test from Assembler to right place and avoid grep (#138113)
Commit: 79b841df750e6e3d4a0e817e59c5741da4b4ef6d
https://github.com/llvm/llvm-project/commit/79b841df750e6e3d4a0e817e59c5741da4b4ef6d
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
M llvm/test/Assembler/2002-04-07-InfConstant.ll
M llvm/test/Assembler/2002-04-29-NameBinding.ll
M llvm/test/Assembler/2003-04-15-ConstantInitAssertion.ll
M llvm/test/Assembler/2003-05-12-MinIntProblem.ll
M llvm/test/Assembler/2003-05-21-MalformedStructCrash.ll
M llvm/test/Assembler/2003-08-20-ConstantExprGEP-Fold.ll
M llvm/test/Assembler/2003-11-24-SymbolTableCrash.ll
M llvm/test/Assembler/2004-01-20-MaxLongLong.ll
M llvm/test/Assembler/2004-03-30-UnclosedFunctionCrash.ll
M llvm/test/Assembler/2006-09-28-CrashOnInvalid.ll
M llvm/test/Assembler/2006-12-09-Cast-To-Bool.ll
M llvm/test/Assembler/2007-01-16-CrashOnBadCast.ll
M llvm/test/Assembler/2007-01-16-CrashOnBadCast2.ll
M llvm/test/Assembler/2007-03-18-InvalidNumberedVar.ll
M llvm/test/Assembler/2007-04-20-AlignedLoad.ll
M llvm/test/Assembler/2007-04-20-AlignedStore.ll
M llvm/test/Assembler/2007-08-06-AliasInvalid.ll
M llvm/test/Assembler/2008-01-11-VarargAttrs.ll
M llvm/test/Assembler/2008-02-18-IntPointerCrash.ll
M llvm/test/Assembler/2008-09-29-RetAttr.ll
M llvm/test/Assembler/2008-10-14-QuoteInName.ll
Log Message:
-----------
Assembler: Replace some usage of grep in tests with FileCheck (#138114)
Commit: 3015edf96e4faad0d367d0879269c1c905a4eec7
https://github.com/llvm/llvm-project/commit/3015edf96e4faad0d367d0879269c1c905a4eec7
Author: Carl Ritson <carl.ritson at amd.com>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
M llvm/cmake/modules/CrossCompile.cmake
Log Message:
-----------
[cmake] Pass LLVM_TABLEGEN_FLAGS to cross compile targets (#138086)
If ValueTypes.td contains conditional directives enabled by defs in
LLVM_TABLEGEN_FLAGS then native build tblgen and min-tblgen must be
built with matching flags.
This ensures the embedded types in TableGen are consistent with those
used for building tables.
Commit: 0fab741a2687a6c42832fe8286591ebe626c40a8
https://github.com/llvm/llvm-project/commit/0fab741a2687a6c42832fe8286591ebe626c40a8
Author: Paul Walker <paul.walker at arm.com>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
M llvm/test/Analysis/CostModel/AArch64/cmp.ll
M llvm/test/Analysis/CostModel/AArch64/vector-select.ll
M llvm/test/CodeGen/AArch64/bf16-v8-instructions.ll
M llvm/test/CodeGen/AArch64/fcmp.ll
M llvm/test/CodeGen/AArch64/fp16-v8-instructions.ll
Log Message:
-----------
[LLVM][CodeGen][AArch64] Don't scalarise v8{f16,bf16} vsetcc operations. (#135398)
I have also removed custom promotion code for the v4{f16,bf16} cases
because the same common code can be used.
Commit: 149d795ab097d66a7ad0aa5d777534eb9c7420dd
https://github.com/llvm/llvm-project/commit/149d795ab097d66a7ad0aa5d777534eb9c7420dd
Author: Paul Walker <paul.walker at arm.com>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
M llvm/test/Transforms/InstCombine/AArch64/sve-intrinsic-comb-no-active-lanes.ll
M llvm/test/Transforms/InstCombine/AArch64/sve-intrinsic-simplify-binop.ll
M llvm/test/Transforms/InstCombine/AArch64/sve-intrinsic-simplify-to-u-form.ll
Log Message:
-----------
[LLVM][InstCombine] Enable constant folding for SVE sdiv & udiv intrinsics. (#137966)
Commit: 724eea76544cd3fe4bc739886f3dd2bb92ee169d
https://github.com/llvm/llvm-project/commit/724eea76544cd3fe4bc739886f3dd2bb92ee169d
Author: Martin Storsjö <martin at martin.st>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
M llvm/test/ExecutionEngine/RuntimeDyld/X86/coff-alignment.ll
Log Message:
-----------
[llvm][test] Change an XFAIL into a more correct REQUIRES (#137942)
As this test is about executing x86_64 code with "lli", we should only
try to do it if we actually execute on an x86_64 target. So instead of
XFAILing individual architectures that can't execute it, instead change
this into requiring an x86_64 target.
Also generalize the target triple form used; don't assume that the
vendor field is set to "pc" - many mingw toolchains use the vendor field
set to "w64".
Commit: 3376071a24b772446d2f2241e4370b6d0cba6947
https://github.com/llvm/llvm-project/commit/3376071a24b772446d2f2241e4370b6d0cba6947
Author: Alex Bradbury <asb at igalia.com>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfo.cpp
Log Message:
-----------
[RISCV][NFC] Add missed // clang-format on
clang-format was turned off for the defines, but there was no matching
`// clang-format on` comment at the end. Ran into this in #137973
Commit: 49941749a84235bbe61db34cbb729d5fa65aaef2
https://github.com/llvm/llvm-project/commit/49941749a84235bbe61db34cbb729d5fa65aaef2
Author: Ross Brunton <bruntonross at protonmail.com>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
M offload/unittests/OffloadAPI/CMakeLists.txt
Log Message:
-----------
[offload] Don't print device path during configure (#138109)
Commit: 180bc5916b1dfdf4da8516ed2666de386127e8c6
https://github.com/llvm/llvm-project/commit/180bc5916b1dfdf4da8516ed2666de386127e8c6
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
M libcxx/include/__type_traits/is_unbounded_array.h
Log Message:
-----------
[libc++] Simplify the implementation of is_unbounded_array a bit (#137716)
Commit: a6459debc06f9cb86940ff5cdae35a1f52e1ed19
https://github.com/llvm/llvm-project/commit/a6459debc06f9cb86940ff5cdae35a1f52e1ed19
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
M libcxx/include/__bit/bit_floor.h
M libcxx/include/__bit/countl.h
M libcxx/include/__bit/countr.h
M libcxx/include/__bit/popcount.h
Log Message:
-----------
[libc++] Remove a few unused includes from <__bit/*> (#137934)
Commit: 001cc34275111df842edbaa874b7319eef930c81
https://github.com/llvm/llvm-project/commit/001cc34275111df842edbaa874b7319eef930c81
Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
M clang/include/clang/Basic/Diagnostic.h
M clang/include/clang/Sema/Sema.h
M clang/lib/AST/ODRDiagsEmitter.cpp
M clang/lib/Parse/ParseDecl.cpp
M clang/lib/Parse/ParseDeclCXX.cpp
M clang/lib/Parse/ParsePragma.cpp
M clang/lib/Parse/Parser.cpp
M clang/lib/Sema/SemaAccess.cpp
M clang/lib/Sema/SemaCUDA.cpp
M clang/lib/Sema/SemaChecking.cpp
M clang/lib/Sema/SemaDecl.cpp
M clang/lib/Sema/SemaDeclAttr.cpp
M clang/lib/Sema/SemaDeclCXX.cpp
M clang/lib/Sema/SemaDeclObjC.cpp
M clang/lib/Sema/SemaExpr.cpp
M clang/lib/Sema/SemaExprCXX.cpp
M clang/lib/Sema/SemaInit.cpp
M clang/lib/Sema/SemaOverload.cpp
M clang/lib/Sema/SemaStmt.cpp
M clang/lib/Sema/SemaTemplate.cpp
M clang/lib/Sema/SemaTemplateInstantiate.cpp
M clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
M clang/lib/Sema/SemaType.cpp
M clang/lib/Sema/TreeTransform.h
M llvm/include/llvm/ADT/STLForwardCompat.h
Log Message:
-----------
[clang] Add scoped enum support to `StreamingDiagnostic` (#138089)
This patch adds templated `operator<<` for diagnostics that pass scoped
enums, saving people from `llvm::to_underlying()` clutter on the side of
emitting the diagnostic. This eliminates 80 out of 220 usages of
`llvm::to_underlying()` in Clang.
I also backported `std::is_scoped_enum_v` from C++23.
Commit: b6f65f07bc0214f932aa69fc58859ad5ac9efa1a
https://github.com/llvm/llvm-project/commit/b6f65f07bc0214f932aa69fc58859ad5ac9efa1a
Author: Nicholas Guy <nicholas.guy at arm.com>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
M llvm/test/CodeGen/AArch64/neon-partial-reduce-dot-product.ll
M llvm/test/CodeGen/AArch64/partial-reduction-add.ll
M llvm/test/CodeGen/AArch64/sve-partial-reduce-dot-product.ll
M llvm/test/CodeGen/AArch64/sve-partial-reduce-wide-add.ll
Log Message:
-----------
[SelectionDAG] Improve type legalisation for PARTIAL_REDUCE_MLA (#130935)
Implement proper splitting functions for PARTIAL_REDUCE_MLA ISD nodes.
This makes the udot_8to64 and sdot_8to64 tests generate dot product
instructions for when the new ISD nodes are used.
---------
Co-authored-by: James Chesterman <james.chesterman at arm.com>
Commit: 0009a1783490a8ff69251a0ec7df1891a427cfb0
https://github.com/llvm/llvm-project/commit/0009a1783490a8ff69251a0ec7df1891a427cfb0
Author: Simon Camphausen <simon.camphausen at gmail.com>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
M mlir/include/mlir/Conversion/ArithToEmitC/ArithToEmitC.h
A mlir/include/mlir/Conversion/ConvertToEmitC/ConvertToEmitCPass.h
A mlir/include/mlir/Conversion/ConvertToEmitC/ToEmitCInterface.h
M mlir/include/mlir/Conversion/FuncToEmitC/FuncToEmitC.h
M mlir/include/mlir/Conversion/MemRefToEmitC/MemRefToEmitC.h
M mlir/include/mlir/Conversion/Passes.h
M mlir/include/mlir/Conversion/Passes.td
M mlir/include/mlir/Conversion/SCFToEmitC/SCFToEmitC.h
M mlir/include/mlir/InitAllExtensions.h
M mlir/lib/Conversion/ArithToEmitC/ArithToEmitC.cpp
M mlir/lib/Conversion/CMakeLists.txt
A mlir/lib/Conversion/ConvertToEmitC/CMakeLists.txt
A 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/MemRefToEmitC/MemRefToEmitCPass.cpp
M mlir/lib/Conversion/SCFToEmitC/SCFToEmitC.cpp
M mlir/lib/Dialect/Arith/IR/ArithDialect.cpp
M mlir/lib/Dialect/EmitC/IR/EmitC.cpp
M mlir/lib/Dialect/Func/IR/FuncOps.cpp
M mlir/lib/Dialect/MemRef/IR/MemRefDialect.cpp
M mlir/lib/Dialect/SCF/IR/SCF.cpp
M mlir/test/Conversion/ArithToEmitC/arith-to-emitc.mlir
A mlir/test/Conversion/ConvertToEmitC/func-failed.mlir
A mlir/test/Conversion/ConvertToEmitC/func.mlir
A mlir/test/Conversion/ConvertToEmitC/tosa.mlir
M mlir/test/Conversion/FuncToEmitC/func-to-emitc.mlir
M mlir/test/Conversion/MemRefToEmitC/memref-to-emitc.mlir
M mlir/test/Conversion/SCFToEmitC/for.mlir
M mlir/test/Conversion/SCFToEmitC/if.mlir
M mlir/test/Conversion/SCFToEmitC/switch.mlir
Log Message:
-----------
[mlir][EmitC] Add pass that combines all available emitc conversions (#117549)
Commit: b69dcb873476cd8e7d3f6f9ffd5b6d0bbe1a3a17
https://github.com/llvm/llvm-project/commit/b69dcb873476cd8e7d3f6f9ffd5b6d0bbe1a3a17
Author: Jan Svoboda <jan_svoboda at apple.com>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
M clang-tools-extra/clang-include-fixer/IncludeFixer.cpp
M clang-tools-extra/clangd/Compiler.cpp
M clang-tools-extra/include-cleaner/unittests/RecordTest.cpp
M clang/include/clang/Frontend/CompilerInstance.h
M clang/lib/Frontend/ASTUnit.cpp
M clang/lib/Frontend/ChainedIncludesSource.cpp
M clang/lib/Frontend/CompilerInstance.cpp
M clang/lib/Frontend/PrecompiledPreamble.cpp
M clang/lib/Frontend/Rewrite/FrontendActions.cpp
M clang/lib/StaticAnalyzer/Frontend/ModelInjector.cpp
M clang/lib/Testing/TestAST.cpp
M clang/lib/Tooling/DependencyScanning/DependencyScanningWorker.cpp
M clang/lib/Tooling/Tooling.cpp
M clang/tools/clang-import-test/clang-import-test.cpp
M clang/tools/driver/cc1_main.cpp
M clang/unittests/AST/ExternalASTSourceTest.cpp
M clang/unittests/Frontend/CodeGenActionTest.cpp
M clang/unittests/Frontend/CompilerInstanceTest.cpp
M clang/unittests/Frontend/FrontendActionTest.cpp
M clang/unittests/Frontend/OutputStreamTest.cpp
M clang/unittests/Sema/SemaNoloadLookupTest.cpp
M clang/unittests/Serialization/ForceCheckFileInputTest.cpp
M clang/unittests/Serialization/LoadSpecLazilyTest.cpp
M clang/unittests/Serialization/ModuleCacheTest.cpp
M clang/unittests/Serialization/NoCommentsTest.cpp
M clang/unittests/Serialization/PreambleInNamedModulesTest.cpp
M clang/unittests/Serialization/VarDeclConstantInitTest.cpp
M clang/unittests/Support/TimeProfilerTest.cpp
M clang/unittests/Tooling/DependencyScanning/DependencyScannerTest.cpp
M clang/unittests/Tooling/Syntax/TokensTest.cpp
M clang/unittests/Tooling/Syntax/TreeTestBase.cpp
M lldb/source/Commands/CommandObjectTarget.cpp
M lldb/source/Plugins/ExpressionParser/Clang/ClangModulesDeclVendor.cpp
Log Message:
-----------
[clang][frontend] Require invocation to construct `CompilerInstance` (#137668)
This PR makes it so that `CompilerInvocation` needs to be provided to
`CompilerInstance` on construction. There are a couple of benefits in my
view:
* Making it impossible to mis-use some `CompilerInstance` APIs. For
example there are cases, where `createDiagnostics()` was called before
`setInvocation()`, causing the `DiagnosticEngine` to use the
default-constructed `DiagnosticOptions` instead of the intended ones.
* This shrinks `CompilerInstance`'s state space.
* This makes it possible to access **the** invocation in
`CompilerInstance`'s constructor (to be used in a follow-up).
Commit: b877cfa8f25412a3946d1cde63a1dad95fd95c90
https://github.com/llvm/llvm-project/commit/b877cfa8f25412a3946d1cde63a1dad95fd95c90
Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
M clang/include/clang/Basic/Diagnostic.h
M llvm/include/llvm/ADT/STLForwardCompat.h
Log Message:
-----------
[ADT] Remove `is_scoped_enum_v` (#138134)
`std::underlying_type` is not SFINAE-friendly in Clang and GCC before 9,
and it's too much of a hassle to make it work. Instead, I'm inlining the
implementation in the only place it's needed. Fixes buildbot failure
https://lab.llvm.org/buildbot/#/builders/134/builds/17904 caused by
#138089. Demo: https://godbolt.org/z/9qo3csP98
Commit: d33c6764680ed78ffe824a83b6a33c0b609bafce
https://github.com/llvm/llvm-project/commit/d33c6764680ed78ffe824a83b6a33c0b609bafce
Author: Luke Lau <luke at igalia.com>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
M llvm/include/llvm/Analysis/ConstantFolding.h
M llvm/lib/Analysis/ConstantFolding.cpp
Log Message:
-----------
[ConstantFolding] Constify ConstantFoldInstOperands and ConstantFoldInstruction argument. NFC (#138108)
I tried to use these with a const reference in a separate patch, but the
pointers weren't marked as const. It turns out that these don't mutate
the instruction.
Commit: 0c7c82af230bd525bb96a54ca9480797b5fa2a42
https://github.com/llvm/llvm-project/commit/0c7c82af230bd525bb96a54ca9480797b5fa2a42
Author: Orlando Cazalet-Hyams <orlando.hyams at sony.com>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
M llvm/include/llvm/IR/DebugInfoMetadata.h
M llvm/lib/AsmParser/LLParser.cpp
M llvm/lib/IR/AsmWriter.cpp
M llvm/lib/IR/DebugInfoMetadata.cpp
M llvm/lib/IR/LLVMContextImpl.h
M llvm/test/CMakeLists.txt
A llvm/test/DebugInfo/KeyInstructions/Generic/parse.ll
A llvm/test/DebugInfo/KeyInstructions/lit.local.cfg
M llvm/test/lit.site.cfg.py.in
Log Message:
-----------
[KeyInstr] Add fields to DILocation behind compile time flag (#133477)
Add AtomGroup and AtomRank to DILocation behind compile time flag
EXPERIMENTAL_KEY_INSTRUCTIONS which is controlled by cmake flag
LLVM_EXPERIMENTAL_KEY_INSTRUCTIONS.
Add IR read-write roundtrip test in a directory that is unsupported unless the
CMake flag is enabled.
RFC: https://discourse.llvm.org/t/rfc-improving-is-stmt-placement-for-better-interactive-debugging/82668
Commit: 80233751f9f3c9c8c5b1d66cd93399615f4d3ba2
https://github.com/llvm/llvm-project/commit/80233751f9f3c9c8c5b1d66cd93399615f4d3ba2
Author: Schrodinger ZHU Yifan <yifanzhu at rochester.edu>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
M libc/src/setjmp/x86_64/setjmp.cpp
Log Message:
-----------
[libc][NFC] add remarks to the setjmp implementation (#137066)
We use naked functions to avoid compiler-generated prologue and
epilogue.
Despite GCC documentation listing this as an unsupported case for
extended asm, the generated code is not wrong as we only pass in
constant operands to extended asm.
See https://github.com/llvm/llvm-project/issues/137055 for related
remarks.
---------
Co-authored-by: Copilot <175728472+Copilot at users.noreply.github.com>
Commit: 64f552cefacbb36ccb5f6df7b57f532bb63f0006
https://github.com/llvm/llvm-project/commit/64f552cefacbb36ccb5f6df7b57f532bb63f0006
Author: Rahul Joshi <rjoshi at nvidia.com>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
M llvm/include/llvm/CodeGen/MachineInstr.h
M llvm/include/llvm/CodeGen/MachineInstrBuilder.h
M llvm/lib/CodeGen/MachineInstr.cpp
Log Message:
-----------
[NFC][LLVM][CodeGen] Refactor MachineInstr operand accessors (#137261)
- Change MachineInstr operand accessors to use `ArrayRef` internally to
slice the operand array into sub-arrays.
- Minor: remove unnecessary {} on `MachineInstrBuilder::add`.
Commit: 38c283370121e8f41c5f7575b547511bdac0a702
https://github.com/llvm/llvm-project/commit/38c283370121e8f41c5f7575b547511bdac0a702
Author: Philip Reames <preames at rivosinc.com>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
Log Message:
-----------
[RISCV] Use early return to simplify VLA shuffle lowering [nfc]
Commit: 47681736cbf6f32a70ca0aaf5d2671bc9c76112d
https://github.com/llvm/llvm-project/commit/47681736cbf6f32a70ca0aaf5d2671bc9c76112d
Author: Shafik Yaghmour <shafik.yaghmour at intel.com>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
M clang/lib/CodeGen/CodeGenFunction.h
Log Message:
-----------
[Clang][NFC] Explicitly delete copy ctor and assignment for CGAtomicOptionsRAII (#137275)
Static analysis flagged CGAtomicOptionsRAII as having an explicit
destructor but not having explicit copy ctor and assignment. Rule of
three says we should. We are just using this as an RAII object, no need
for either so they will be specified as deleted.
Commit: abd2c07e390c39830296ee70d4743663b02dc8df
https://github.com/llvm/llvm-project/commit/abd2c07e390c39830296ee70d4743663b02dc8df
Author: David Green <david.green at arm.com>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
M llvm/include/llvm/Analysis/TargetTransformInfo.h
M llvm/include/llvm/Analysis/TargetTransformInfoImpl.h
M llvm/include/llvm/CodeGen/BasicTTIImpl.h
M llvm/lib/Analysis/TargetTransformInfo.cpp
M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.h
M llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.cpp
M llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.h
M llvm/lib/Target/AMDGPU/R600TargetTransformInfo.cpp
M llvm/lib/Target/AMDGPU/R600TargetTransformInfo.h
M llvm/lib/Target/ARM/ARMTargetTransformInfo.cpp
M llvm/lib/Target/ARM/ARMTargetTransformInfo.h
M llvm/lib/Target/Hexagon/HexagonTargetTransformInfo.cpp
M llvm/lib/Target/Hexagon/HexagonTargetTransformInfo.h
M llvm/lib/Target/PowerPC/PPCTargetTransformInfo.cpp
M llvm/lib/Target/PowerPC/PPCTargetTransformInfo.h
M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.h
M llvm/lib/Target/SystemZ/SystemZTargetTransformInfo.cpp
M llvm/lib/Target/SystemZ/SystemZTargetTransformInfo.h
M llvm/lib/Target/WebAssembly/WebAssemblyTargetTransformInfo.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyTargetTransformInfo.h
M llvm/lib/Target/X86/X86TargetTransformInfo.cpp
M llvm/lib/Target/X86/X86TargetTransformInfo.h
Log Message:
-----------
[CostModel] Make Op0 and Op1 const in getVectorInstrCost. NFC (#137631)
This does not alter much at the moment, but allows const pointers to be
passed as Op0 and Op1, simplifying later patches
Commit: 7ffaaf47528ff42d4c037e1b003d940e51347db5
https://github.com/llvm/llvm-project/commit/7ffaaf47528ff42d4c037e1b003d940e51347db5
Author: cor3ntin <corentinjabot at gmail.com>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/include/clang/Sema/Sema.h
M clang/lib/Sema/SemaExpr.cpp
M clang/lib/Sema/TreeTransform.h
M clang/test/Parser/cxx1z-fold-expressions.cpp
M clang/test/SemaTemplate/cxx1z-fold-expressions.cpp
Log Message:
-----------
[Clang] Warning as error for fold expressions over comparison operators (#136836)
We made chained comparisons an error.
Fold-expressions over a comparison operator produce chained comparisons,
so we should be consistent there too.
We only emit the warning when instantiating the fold expression so as
not to warn on types with user-defined comparisons.
Partially addresses #129570
Commit: 2876dbcd6617898cef8396ff30b20b07556d2456
https://github.com/llvm/llvm-project/commit/2876dbcd6617898cef8396ff30b20b07556d2456
Author: Sam Tebbs <samuel.tebbs at arm.com>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-dot-product-mixed.ll
Log Message:
-----------
[AArch64] Don't allow mixed partial reductions without i8mm (#137602)
Partial reductions with mixed extends should only be allowed if i8mm is
present.
Commit: 2bb2f8ab49d66cc2ebacd099d70fb80a5f13d9b2
https://github.com/llvm/llvm-project/commit/2bb2f8ab49d66cc2ebacd099d70fb80a5f13d9b2
Author: Philip Reames <preames at rivosinc.com>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
M llvm/include/llvm/CodeGen/RegAllocEvictionAdvisor.h
M llvm/include/llvm/CodeGen/TargetRegisterInfo.h
M llvm/lib/CodeGen/RegAllocGreedy.cpp
Log Message:
-----------
[CodeGen] Remove experimental deferred spilling from GreedyRegAlloc (#137850)
This experimental option was introduced in 2015 via commit 1192294, and
the target hook was added in 2020 via commit 99e865b6. There does not
appear to have ever been a use of this target hook in tree.
This code is complicating one of the most complicated and hard to
understand parts of our code base, and was an experiment introduced
nearly 10 years ago. Let's get rid of it.
Note that the idea described in the original patch is not neccessarily a
bad one, and we might return to it someday.
Commit: c61746650178c117996e1787617f36ccda7233f7
https://github.com/llvm/llvm-project/commit/c61746650178c117996e1787617f36ccda7233f7
Author: NimishMishra <42909663+NimishMishra at users.noreply.github.com>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
M flang/lib/Lower/OpenMP/OpenMP.cpp
A flang/test/Lower/OpenMP/Todo/atomic-capture-implicit-cast.f90
A flang/test/Lower/OpenMP/atomic-implicit-cast.f90
M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
M mlir/test/Target/LLVMIR/openmp-llvm.mlir
Log Message:
-----------
[flang][llvm][OpenMP] Add implicit casts to omp.atomic (#131603)
Currently, implicit casts in Fortran are handled by the OMPIRBuilder.
This patch shifts that responsibility to FIR codegen.
Commit: 09488bcfba77d1a16b0b83c2d6b1135e5e7d5302
https://github.com/llvm/llvm-project/commit/09488bcfba77d1a16b0b83c2d6b1135e5e7d5302
Author: David Spickett <david.spickett at linaro.org>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
M lldb/source/Core/CoreProperties.td
M lldb/source/Core/Debugger.cpp
M llvm/docs/ReleaseNotes.md
Log Message:
-----------
[lldb] Disable statusline on Windows (#138111)
Something to do with control code handling in Windows terminals breaks
the statusline in various ways. It makes LLDB unusable and even if you
set the setting to disable statusline, it's too late, and the terminal
session is now in a weird state.
See https://github.com/llvm/llvm-project/issues/134846 for more details.
Until we figure this out, don't allow it to be used on Windows.
Commit: e5f09aac483e11595e5cb0c999710ec6e0fb43e9
https://github.com/llvm/llvm-project/commit/e5f09aac483e11595e5cb0c999710ec6e0fb43e9
Author: Erich Keane <ekeane at nvidia.com>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenStmtOpenACCLoop.cpp
M clang/lib/Sema/SemaOpenACC.cpp
A clang/test/CIR/CodeGenOpenACC/loop.cpp
M clang/test/CIR/CodeGenOpenACC/openacc-not-implemented.cpp
Log Message:
-----------
[OpenACC][CIR] Start work to lower 'loop' (#137972)
As can be seen by the comment, this ends up being a construct that is
going to be quite a lot of work in the future to make sure we properly
identify the upperbound, lowerbound, and step. For now, we just treat
the 'loop' as container so that we can put the 'for' loop into it.
In the future, we'll have to teach the OpenACC dialect how to derive the
upperbound, lowerbound, and step from the cir.for loop. Additionally,
we'll probably have to add a few more options to it so that we can give
it the recipes it needs to determine these for random access iterators.
For Integer and Pointer values, these should already be known.
Commit: 927cdd2c73590ef6475f7e00ce79078d6e8323bd
https://github.com/llvm/llvm-project/commit/927cdd2c73590ef6475f7e00ce79078d6e8323bd
Author: Joseph Huber <huberjn at outlook.com>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
M libc/src/stdio/printf_core/core_structs.h
Log Message:
-----------
[libc] Fix typo in uint128 type for PPC printf handling (#138157)
Commit: 0e9740ea1783ceaf8686b13ab7bf9278f34aef6a
https://github.com/llvm/llvm-project/commit/0e9740ea1783ceaf8686b13ab7bf9278f34aef6a
Author: Anshil Gandhi <95053726+gandhi56 at users.noreply.github.com>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
A llvm/test/Transforms/LoadStoreVectorizer/AMDGPU/merge-vectors-complex.ll
M llvm/test/Transforms/LoadStoreVectorizer/AMDGPU/merge-vectors.ll
Log Message:
-----------
[NFC] Precommit: Autogenerate checks for an LSV test (#138155)
Related PR: https://github.com/llvm/llvm-project/pull/134436
Commit: a7aca819d44b8d67f2cffd452e6b63741c83cd62
https://github.com/llvm/llvm-project/commit/a7aca819d44b8d67f2cffd452e6b63741c83cd62
Author: Anshil Gandhi <95053726+gandhi56 at users.noreply.github.com>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
R llvm/test/Transforms/LoadStoreVectorizer/AMDGPU/merge-vectors-complex.ll
M llvm/test/Transforms/LoadStoreVectorizer/AMDGPU/merge-vectors.ll
Log Message:
-----------
Revert "[NFC] Precommit: Autogenerate checks for an LSV test" (#138161)
Reverts llvm/llvm-project#138155
Commit: a9ccb246178a454abba8fb53499012d586e5eea9
https://github.com/llvm/llvm-project/commit/a9ccb246178a454abba8fb53499012d586e5eea9
Author: Amr Hesham <amr96 at programmer.net>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenFunction.cpp
Log Message:
-----------
[CIR][NFC] Fix an unused variable warning (#138110)
This fixes a warning where a variable assigned in 'if' statement wasn't
referenced again.
Commit: dadd91e793a7622e0ca34ad9c3993a01a437b651
https://github.com/llvm/llvm-project/commit/dadd91e793a7622e0ca34ad9c3993a01a437b651
Author: Anshil Gandhi <95053726+gandhi56 at users.noreply.github.com>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
A llvm/test/Transforms/LoadStoreVectorizer/AMDGPU/merge-vectors-complex.ll
M llvm/test/Transforms/LoadStoreVectorizer/AMDGPU/merge-vectors.ll
Log Message:
-----------
[NFC] Precommit tests for an LSV patch (#138167)
Autogenerate checks for merge-vectors.ll and introduce
merge-vectors-complex.ll with mismatched types.
Related PR: https://github.com/llvm/llvm-project/pull/134436
This is a reland of https://github.com/llvm/llvm-project/pull/138155,
which was reverted due to missed nits.
Commit: acc40ed0a747ad8f5dbb93788da7ce104c36c0a3
https://github.com/llvm/llvm-project/commit/acc40ed0a747ad8f5dbb93788da7ce104c36c0a3
Author: Shafik Yaghmour <shafik.yaghmour at intel.com>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
M clang/lib/Lex/ModuleMap.cpp
Log Message:
-----------
[Clang][NFC] Use const auto & to avoid copy (#138069)
Static analysis flagged this code as causing a copy when we never modify
ModName and therefore we can use const auto & and avoid copying.
Commit: f24606376d449fa14bc72953951c52005f590434
https://github.com/llvm/llvm-project/commit/f24606376d449fa14bc72953951c52005f590434
Author: Rahul Joshi <rjoshi at nvidia.com>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
M llvm/include/llvm/CodeGen/MachineBasicBlock.h
M llvm/include/llvm/Support/BranchProbability.h
M llvm/lib/CodeGen/MIRPrinter.cpp
M llvm/lib/CodeGen/MIRPrintingPass.cpp
M llvm/lib/CodeGen/MachineBasicBlock.cpp
Log Message:
-----------
[NFC][LLVM][CodeGen] Refactor MIR Printer (#137361)
- Move `MIPrinter` class to anonymous namespace, and remove it as a
friend of `MachineBasicBlock`.
- Move `canPredictBranchProbabilities` to `MachineBasicBlock` and change
it to use the new `BranchProbability::normalizeProbabilities` function
that accepts a range, and also to use `llvm::equal()` to check equality
of the two vectors.
- Use `ListSeparator` to print comma separate lists instead of manual
code to do that.
Commit: 35c76eb195990865ee63a0aba3c18ad3c4189e73
https://github.com/llvm/llvm-project/commit/35c76eb195990865ee63a0aba3c18ad3c4189e73
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
M flang/test/lit.cfg.py
Log Message:
-----------
[flang][OpenMP] Always set "openmp_flags" (#138153)
Many OpenMP tests use "%openmp_flags" in the RUN line. In many OpenMP
lit tests this variable is expected to at least have "-fopenmp" in it.
However, in the lit config this variable was only given a value when the
OpenMP runtime build was enabled.
If the runtime build was not enabled, %openmp_flags would expand to an
empty string, and unless a lit test specifically used -fopenmp in the
RUN line, OpenMP would be disabled.
This patch sets %openmp_flags to start with "-fopenmp" regardless of the
build configuration.
Commit: 526ae7ffb5317ebdfab3564c2c5811d1d08259b1
https://github.com/llvm/llvm-project/commit/526ae7ffb5317ebdfab3564c2c5811d1d08259b1
Author: James Newling <james.newling at gmail.com>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
M mlir/lib/Dialect/Vector/Transforms/VectorLinearize.cpp
Log Message:
-----------
[mlir][vector] Remove remaining bitwidths from linearization patterns (#138072)
In https://github.com/llvm/llvm-project/pull/136581 the bitwidth logic
was supposed to be completely removed from the linearization patterns.
But it was left in a few places. This PR removes the remainders (they
were default valued constructor arguments that were unused).
Commit: 5718460b22400e71e1832be489c9090f2c7d3ebb
https://github.com/llvm/llvm-project/commit/5718460b22400e71e1832be489c9090f2c7d3ebb
Author: James Newling <james.newling at gmail.com>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
M mlir/include/mlir/Dialect/Vector/IR/VectorOps.td
M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
M mlir/test/Dialect/Vector/CPU/X86/vector-transpose-lowering.mlir
M mlir/test/Dialect/Vector/canonicalize.mlir
M mlir/test/Dialect/Vector/invalid.mlir
M mlir/test/Dialect/Vector/ops.mlir
Log Message:
-----------
[mlir][vector] Relax constraints on shape_cast (#136587)
`vector.shape_cast` was initially designed to be the union of
collapse_shape and expand_shape. There was an inconsistency in the
verifier that allowed any shape casts when the rank did not change, which
led to a strange middle ground where you could cast from shape (4,3) to
(3,4) but not from (4,3) to (2,3,2). That issue was fixed (verifier made stricter)
in https://github.com/llvm/llvm-project/pull/135855, but further feedback
there (and polling) suggests that vector.shape_cast should rather allow all
shape casts (so more like tensor.reshape than
tensor.collapse_shape/tensor.expand_shape). This PR makes this simplification
by relaxing the verifier.
Commit: a88d580860b88bbb02797bae95032b6eb0c4579c
https://github.com/llvm/llvm-project/commit/a88d580860b88bbb02797bae95032b6eb0c4579c
Author: Alex MacLean <amaclean at nvidia.com>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
M llvm/lib/Target/NVPTX/CMakeLists.txt
M llvm/lib/Target/NVPTX/NVPTX.h
M llvm/lib/Target/NVPTX/NVPTXISelDAGToDAG.cpp
M llvm/lib/Target/NVPTX/NVPTXPassRegistry.def
A llvm/lib/Target/NVPTX/NVPTXTagInvariantLoads.cpp
M llvm/lib/Target/NVPTX/NVPTXTargetMachine.cpp
A llvm/test/CodeGen/NVPTX/byval-const-global.ll
A llvm/test/CodeGen/NVPTX/tag-invariant-loads.ll
Log Message:
-----------
[NVPTX] Pull invariant load identification into IR pass (#138015)
Pull invariant load identification, which was previously part of
DAGToDAG ISel, into a new IR pass NVPTXTagInvariantLoads. This makes it
possible to disable this optimization at O0 and reduces the complexity
of the SelectionDAG pass. Moving this logic to an IR pass also allows
for implementing a more powerful traversal in the future.
Fixes https://github.com/llvm/llvm-project/issues/138138
Commit: b6d4b7eba1dabadd934c0b92fc32bb6d658e2cf6
https://github.com/llvm/llvm-project/commit/b6d4b7eba1dabadd934c0b92fc32bb6d658e2cf6
Author: Mircea Trofin <mtrofin at google.com>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
Log Message:
-----------
[mlir][EmitC] Add Bazel rules for conversions (#138154)
Follow-up from #117549
tested by:
```
cd utils/bazel
bazelisk build --config=generic_clang @llvm-project//mlir:all
bazelisk test --config=generic_clang @llvm-project//mlir/test:all
```
Commit: deae5eef7147c5ad3acff612ab0ed00e2186d9a5
https://github.com/llvm/llvm-project/commit/deae5eef7147c5ad3acff612ab0ed00e2186d9a5
Author: alx32 <103613512+alx32 at users.noreply.github.com>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
M lld/MachO/ConcatOutputSection.cpp
M lld/MachO/ConcatOutputSection.h
M lld/test/MachO/arm64-thunks.s
Log Message:
-----------
[lld-macho] Fix branch extension logic compatibility with __objc_stubs (#137913)
Enhance branch extension logic to handle __objc_stubs identically to
__stubs
The branch extension algorithm currently has specific handling for the
`__stubs` section:
1. It ensures all `__stubs` content is directly reachable via branches
from the text section.
2. It calculates the latest text section address that might require
thunks to reach the end of `__stubs`.
The `__objc_stubs` section requires precisely the same handling due to
its similar nature, but this was not implemented.
This commit generalizes the existing logic so it applies consistently to
both the `__stubs` and `__objc_stubs` sections, ensuring correct
reachability and thunk placement for both. Without this change it's
possible to get relocation errors during linking in scenarios where the
`__objc_stubs` section is large enough.
Commit: 0a4be7898aa4b4c3dc06deabefc82e44e76b3bb6
https://github.com/llvm/llvm-project/commit/0a4be7898aa4b4c3dc06deabefc82e44e76b3bb6
Author: David Truby <david.truby at arm.com>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
M llvm/CMakeLists.txt
Log Message:
-----------
[flang] Move LLVM_ENABLE_RUNTIMES definition above uses (#138136)
Commit: 514b853972d81a2834a9d2b89df27cd9c382df7d
https://github.com/llvm/llvm-project/commit/514b853972d81a2834a9d2b89df27cd9c382df7d
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
M mlir/include/mlir/Conversion/ConvertToEmitC/ConvertToEmitCPass.h
Log Message:
-----------
[mlir] Fix the build
This patch fixes:
llvm/include/llvm/ADT/SmallVector.h:1162:7: error: implicit
instantiation of undefined template 'std::basic_string<char>'
This happens under -DCMAKE_CXX_FLAGS="-stdlib=libc++".
Commit: e25ddf908178d6ad4a2557b2800b4ea6248eb632
https://github.com/llvm/llvm-project/commit/e25ddf908178d6ad4a2557b2800b4ea6248eb632
Author: Shilei Tian <i at tianshilei.me>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
M llvm/test/CodeGen/AMDGPU/inline-attr.ll
Log Message:
-----------
[NFC][AMDGPU] Auto generate check lines for `llvm/test/CodeGen/AMDGPU/inline-attr.ll`
Commit: 334e05b4b78a5de6efdcb23f208f3453a5b364a0
https://github.com/llvm/llvm-project/commit/334e05b4b78a5de6efdcb23f208f3453a5b364a0
Author: Alan Zhao <ayzhao at google.com>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
Log Message:
-----------
[nfc] Fix formatting in clang release notes (#138172)
`-ftime-report` was supposed to be an inline code section, which
requires two backticks instead of one.
Commit: 6aa963f780d63d4c8fa80de97dd79c932bc35f4e
https://github.com/llvm/llvm-project/commit/6aa963f780d63d4c8fa80de97dd79c932bc35f4e
Author: Mikhail Zakharov <zmish1993 at gmail.com>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
M lldb/include/lldb/Target/Memory.h
M lldb/include/lldb/Target/Process.h
M lldb/source/Commands/CommandObjectProcess.cpp
M lldb/source/Commands/Options.td
M lldb/source/Target/Memory.cpp
M lldb/source/Target/Process.cpp
M lldb/source/Target/TargetProperties.td
M lldb/test/API/commands/settings/TestSettings.py
A lldb/test/Shell/Expr/TestExprWithSideEffect.cpp
A lldb/test/Shell/Expr/TestExprWithSideEffectOnConvenienceVar.cpp
A lldb/test/Shell/Expr/TestExprWithSideEffectOnConvenienceVarWindows.cpp
A lldb/test/Shell/Expr/TestProcessModificationIdOnExpr.cpp
Log Message:
-----------
[lldb] Do not bump memory modificator ID when "internal" debugger memory is updated (#129092)
This change adds a setting `target.process.track-memory-cache-changes`.
Disabling this setting prevents invalidating and updating values in
`ValueObject::UpdateValueIfNeeded` when only "internal" debugger memory
is updated. Writing to "internal" debugger memory happens when, for
instance, expressions are evaluated by visualizers (pretty printers).
One of the examples when cache invalidation has a particularly heavy
impact is visualizations of some collections: in some collections
getting collection size is an expensive operation (it requires traversal
of the collection).
At the same time evaluating user expression with side effects (visible
to target, not only to debugger) will still bump memory ID because:
- If expression is evaluated via interpreter: it will cause write to
"non-internal" memory
- If expression is JIT-compiled: then to call the function LLDB will
write to "non-internal" stack memory
The downside of disabled `target.process.track-memory-cache-changes`
setting is that convenience variables won't reevaluate synthetic
children automatically.
---------
Co-authored-by: Mikhail Zakharov <mikhail.zakharov at jetbrains.com>
Commit: 49a5dd3dac285ba12f3fcaa55cacbea5968f5a37
https://github.com/llvm/llvm-project/commit/49a5dd3dac285ba12f3fcaa55cacbea5968f5a37
Author: Shilei Tian <i at tianshilei.me>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
M llvm/test/CodeGen/AMDGPU/attributor-flatscratchinit-undefined-behavior.ll
Log Message:
-----------
[NFC][AMDGPU] Correct the check line update script for `llvm/test/CodeGen/AMDGPU/attributor-flatscratchinit-undefined-behavior.ll`
Commit: 5209668e357e0a1d295d9e9aa9dbca8f41132c0c
https://github.com/llvm/llvm-project/commit/5209668e357e0a1d295d9e9aa9dbca8f41132c0c
Author: Andy Kaylor <akaylor at nvidia.com>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenBuilder.h
M clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
A clang/test/CIR/CodeGen/pointers.cpp
Log Message:
-----------
[CIR] Upstream pointer arithmetic support (#138041)
This adds support for explicit pointer arithmetic, including unary
increment and decrement of pointer values.
Commit: 74f55c744a18b848cc780c42f0e3dde7e7c96195
https://github.com/llvm/llvm-project/commit/74f55c744a18b848cc780c42f0e3dde7e7c96195
Author: Shilei Tian <i at tianshilei.me>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
M llvm/test/CodeGen/AMDGPU/attributor-flatscratchinit-undefined-behavior.ll
Log Message:
-----------
Revert "[NFC][AMDGPU] Correct the check line update script for `llvm/test/CodeGen/AMDGPU/attributor-flatscratchinit-undefined-behavior.ll`"
This reverts commit 49a5dd3dac285ba12f3fcaa55cacbea5968f5a37.
Commit: cf9d4048fb5840b2800df532c9f93bb2fb842614
https://github.com/llvm/llvm-project/commit/cf9d4048fb5840b2800df532c9f93bb2fb842614
Author: Shilei Tian <i at tianshilei.me>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
M llvm/test/CodeGen/AMDGPU/attributor-flatscratchinit-undefined-behavior.ll
Log Message:
-----------
Reapply "[NFC][AMDGPU] Correct the check line update script for `llvm/test/CodeGen/AMDGPU/attributor-flatscratchinit-undefined-behavior.ll`"
This reverts commit 74f55c744a18b848cc780c42f0e3dde7e7c96195 with a fix for the
check lines.
Commit: 760bba4666d6cdb7b4aef3c8ce9a242f59e39216
https://github.com/llvm/llvm-project/commit/760bba4666d6cdb7b4aef3c8ce9a242f59e39216
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
M flang/include/flang/Parser/parse-tree.h
M flang/lib/Lower/OpenMP/Clauses.cpp
M flang/lib/Parser/openmp-parsers.cpp
M flang/lib/Semantics/check-omp-structure.cpp
M llvm/include/llvm/Frontend/OpenMP/OMP.td
Log Message:
-----------
[flang][OpenMP] Allow UPDATE clause to not have any arguments (#137521)
The UPDATE clause can be specified on both ATOMIC and DEPOBJ directives.
Currently, the ATOMIC directive has its own handling of it, and the
definition of the UPDATE clause only supports its use in the DEPOBJ
directive, where it takes a dependence-type as an argument.
The UPDATE clause on the ATOMIC directive may not have any arguments.
Since the implementation of the ATOMIC construct will be modified to use
the standard handling of clauses, the definition of UPDATE should
reflect that.
Commit: 1f56afa9b4d1839b8c8703ff9c7a4784546a6451
https://github.com/llvm/llvm-project/commit/1f56afa9b4d1839b8c8703ff9c7a4784546a6451
Author: Ahmed Bougacha <ahmed at bougacha.org>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
M llvm/include/llvm/CodeGen/Spiller.h
Log Message:
-----------
[InlineSpiller] Fix missing LiveRegMatrix declaration. NFC.
b25b51eb639d adds a reference to LiveRegMatrix in Spiller.h without
including the header, or adding a declaration. That breaks modules
builds.
It looks like it might get reverted in #137801, but let's fix the
breakage in the meantime.
Commit: a60984ec8d8eb84fd087ed1bcf2ebfb6512ae20d
https://github.com/llvm/llvm-project/commit/a60984ec8d8eb84fd087ed1bcf2ebfb6512ae20d
Author: Joseph Huber <huberjn at outlook.com>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
A offload/Maintainers.md
Log Message:
-----------
[Offload] Add 'Maintainers.md' file for offload (#138177)
Summary:
The offload project lacks a maintainers file. Adding it with myself and
Johannes as the still active maintainers.
Commit: d7f98a4ef9992936a92c2a71fec743ea6f3493d0
https://github.com/llvm/llvm-project/commit/d7f98a4ef9992936a92c2a71fec743ea6f3493d0
Author: Shafik Yaghmour <shafik.yaghmour at intel.com>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
M clang/lib/Lex/ModuleMap.cpp
Log Message:
-----------
[Clang][NFC] Use std::move to avoid copy (#138073)
Static analysis flagged this code for using copy when we could use
std::move.
Worth noting that CD.Message is a StringRef but Conflict.Message is
std::string. Otherwise I would have used a temporary in place and avoid
a local variable.
Commit: c2bec64833753df539ab9089555e8c039c33b9bb
https://github.com/llvm/llvm-project/commit/c2bec64833753df539ab9089555e8c039c33b9bb
Author: Jay Foad <jay.foad at amd.com>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.h
Log Message:
-----------
[AMDGPU] Simplify GCNTTIImpl::isValidAddrSpaceCast. NFCI. (#137986)
This just removes some code that references specific address spaces.
Commit: 2bff80f25d51e24d3c552e033a2863dd36ef648b
https://github.com/llvm/llvm-project/commit/2bff80f25d51e24d3c552e033a2863dd36ef648b
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
M lldb/source/Target/Memory.cpp
Log Message:
-----------
[lldb] Fix a warning
This patch fixes:
lldb/source/Target/Memory.cpp:438:3: error: 'lock_guard' may not
intend to support class template argument deduction
[-Werror,-Wctad-maybe-unsupported]
Commit: 441b68370a2fb97c1a650de15528e5600eacab6b
https://github.com/llvm/llvm-project/commit/441b68370a2fb97c1a650de15528e5600eacab6b
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
M mlir/tools/mlir-tblgen/AttrOrTypeFormatGen.cpp
Log Message:
-----------
[mlir] Fix a warning
This patch fixes:
mlir/tools/mlir-tblgen/AttrOrTypeFormatGen.cpp:586:14: error:
variable 'realParam' set but not used
[-Werror,-Wunused-but-set-variable]
Commit: 978df3b9f1b74dcb4748eca93f4bf989253d4839
https://github.com/llvm/llvm-project/commit/978df3b9f1b74dcb4748eca93f4bf989253d4839
Author: Alex MacLean <amaclean at nvidia.com>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
M llvm/test/CodeGen/NVPTX/byval-const-global.ll
Log Message:
-----------
[NVPTX][test] Fixup to get ptxas passing for byval-const-global.ll (#138175)
Commit: b2e2ae8702e9fbbe0ef0eb5929aa2d5dc867b1c5
https://github.com/llvm/llvm-project/commit/b2e2ae8702e9fbbe0ef0eb5929aa2d5dc867b1c5
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
M mlir/lib/Dialect/XeGPU/Transforms/XeGPUSubgroupDistribute.cpp
Log Message:
-----------
[mlir] Fix warnings
This patch fixes:
mlir/lib/Dialect/XeGPU/Transforms/XeGPUSubgroupDistribute.cpp:901:12:
error: variable 'origVecType' set but not used
[-Werror,-Wunused-but-set-variable]
mlir/lib/Dialect/XeGPU/Transforms/XeGPUSubgroupDistribute.cpp:908:12:
error: variable 'origTensorDescTy' set but not used
[-Werror,-Wunused-but-set-variable]
Commit: 8d02529f77f809a1a8db623a3a124a33f0be94b9
https://github.com/llvm/llvm-project/commit/8d02529f77f809a1a8db623a3a124a33f0be94b9
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/VPlan.h
Log Message:
-----------
[VPlan] Consistently use ArrayRef<VPValue *> for operands in ctors (NFC) (#137798)
Now that there is an ArrayRef constructor taking iterator_ranges, use it
consistently to slightly simplify code.
Depends on https://github.com/llvm/llvm-project/pull/137796.
PR: https://github.com/llvm/llvm-project/pull/137798
Commit: 42f5d716cbb8b391203eb880ac81f6272fd611f1
https://github.com/llvm/llvm-project/commit/42f5d716cbb8b391203eb880ac81f6272fd611f1
Author: Andre Kuhlenschmidt <andre.kuhlenschmidt at gmail.com>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
M flang/include/flang/Support/Fortran-features.h
M flang/lib/Semantics/pointer-assignment.cpp
M flang/lib/Support/Fortran-features.cpp
M flang/test/Semantics/assign02.f90
M flang/test/Semantics/call03.f90
Log Message:
-----------
[flang][frontend] warn when a volatile target is pointer associated with an non-volatile pointer (#136778)
closes #135805
Commit: 4fdb8cb42f73ebec9a3bdd37b2f27c222f9afd87
https://github.com/llvm/llvm-project/commit/4fdb8cb42f73ebec9a3bdd37b2f27c222f9afd87
Author: jimingham <jingham at apple.com>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
M lldb/include/lldb/Target/Target.h
M lldb/source/Commands/CommandObjectTarget.cpp
M lldb/source/Commands/Options.td
M lldb/source/Target/Process.cpp
M lldb/source/Target/Target.cpp
M lldb/test/API/commands/target/stop-hooks/TestStopHookScripted.py
M lldb/test/API/commands/target/stop-hooks/TestStopHooks.py
A lldb/test/API/commands/target/stop-hooks/on-core-load/TestStopHookOnCoreLoad.py
A lldb/test/API/commands/target/stop-hooks/on-core-load/linux-x86_64.core
A lldb/test/API/commands/target/stop-hooks/on-core-load/stop_hook.py
A lldb/test/API/commands/target/stop-hooks/on-core-load/test.core.yaml
M lldb/test/API/python_api/event/TestEvents.py
Log Message:
-----------
Make stop-hooks fire when lldb first gains control of a process. (#137410)
stop-hooks are supposed to trigger every time the process stops, but as
initially implemented they would only fire when control was returned to
the user. So for instance when a process was launched the stop hook
would only trigger when the process hit a breakpoint or crashed.
However, it would be really useful to be able to trigger a stop hook
when lldb first gains control over the process. One way to do that would
be to implement general "target lifecycle events" and then send process
created events that users could bind actions to.
OTOH, extending the stop hooks to fire when lldb first gains control
over the process is a pretty natural extension to the notion of a stop
hook. So this patch takes the shorter route to that ability by making
stop-hooks fire when lldb first gains control over the process.
I also added the ability to specify whether to trigger the stop hook "on
gaining control". I'm on the fence about whether to set the default to
be "trigger on gaining control" or "don't trigger on gaining control".
Since I think it's a generally useful feature, I've set the default to
"trigger on gaining control".
Commit: a073bb5afdb8715429d98ea80ecdef1390fb4962
https://github.com/llvm/llvm-project/commit/a073bb5afdb8715429d98ea80ecdef1390fb4962
Author: Susan Tan (ス-ザン タン) <zujunt at nvidia.com>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
M mlir/lib/Dialect/OpenACC/Transforms/LegalizeDataValues.cpp
M mlir/test/Dialect/OpenACC/legalize-data.mlir
Log Message:
-----------
[mlir][acc] Add LegalizeDataValues support for DeclareEnterOp (#138008)
The patch extends the existing LegalizeDataValues to support
DeclareEnter and DeclareExit pair.
Since unlike other ops, DeclareEnter and DeclareExit don't have a region
defined, we use dominance/post dominance information to ensure only the
uses within the region dominated by DeclareEnter and post dominated by
DeclareExit are updated with data on device.
Commit: c37b2549ff0150301eb23bd28c2802efc426b7f2
https://github.com/llvm/llvm-project/commit/c37b2549ff0150301eb23bd28c2802efc426b7f2
Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
M llvm/lib/Analysis/InstructionSimplify.cpp
M llvm/test/CodeGen/AMDGPU/memcpy-crash-issue63986.ll
M llvm/test/Transforms/InstCombine/store.ll
M llvm/test/Transforms/InstSimplify/gep.ll
Log Message:
-----------
Revert "[InstSimplify] Fold `getelementptr inbounds null, idx -> null` (#130742)" (#138168)
Revert #130742 for now to avoid breaking glibc failures until the
workaround patches are landed.
Commit: 3a492abf05521467bc882094272d03c3eb6251c4
https://github.com/llvm/llvm-project/commit/3a492abf05521467bc882094272d03c3eb6251c4
Author: Nishant Patel <nishant.b.patel at intel.com>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
M mlir/lib/Dialect/Vector/Transforms/VectorLinearize.cpp
M mlir/test/Dialect/Vector/linearize.mlir
Log Message:
-----------
[mlir][vector] Add linearization pattern for vector.splat (#137651)
This PR is a breakdown [2 / 4] of the PR #136193
The PR adds linearization patterns for vector.splat.
Commit: 9400270449bc848fa8dd2a7575fc4fc102e34d0d
https://github.com/llvm/llvm-project/commit/9400270449bc848fa8dd2a7575fc4fc102e34d0d
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
A llvm/test/Transforms/SLPVectorizer/X86/phi-comparator-fix-vec-ops-compare.ll
Log Message:
-----------
[SLP]Fix comparator for vector operands of extractelements in PHICompare
Need to make comparator to follow strict-weak ordering to fix compiler
crashes.
Fixes #138178
Commit: faf4e8af74eec8dac4c7e55702227d7d9a82f93c
https://github.com/llvm/llvm-project/commit/faf4e8af74eec8dac4c7e55702227d7d9a82f93c
Author: Justin Cai <justin.cai at intel.com>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
M clang/include/clang/Basic/OffloadArch.h
M clang/lib/Basic/OffloadArch.cpp
M clang/lib/Basic/Targets/NVPTX.cpp
M clang/lib/CodeGen/CGOpenMPRuntimeGPU.cpp
M clang/unittests/Basic/CMakeLists.txt
A clang/unittests/Basic/OffloadArchTest.cpp
Log Message:
-----------
[Clang][SYCL] Add initial set of Intel OffloadArch values (#138158)
Following #137070, this PR adds an initial set of Intel `OffloadArch`
values with corresponding predicates that will be used in SYCL
offloading. More Intel architectures will be added in a future PR.
Commit: 4efcc52ed839c4348c69a01538c7ecd399e4b113
https://github.com/llvm/llvm-project/commit/4efcc52ed839c4348c69a01538c7ecd399e4b113
Author: Erich Keane <ekeane at nvidia.com>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenOpenACCClause.h
M clang/test/CIR/CodeGenOpenACC/loop.cpp
M mlir/include/mlir/Dialect/OpenACC/OpenACCOps.td
M mlir/lib/Dialect/OpenACC/IR/OpenACC.cpp
Log Message:
-----------
[OpenACC][CIR] Implement Loop lowering of seq/auto/independent (#138164)
These just add a standard 'device_type' flag to the acc.loop, so
implement that lowering. This also modifies the dialect to add helpers
for these as well, to be consistent with the previous ones.
Commit: a76936f1c01c7cadbce8ea6553af758d0f614b6a
https://github.com/llvm/llvm-project/commit/a76936f1c01c7cadbce8ea6553af758d0f614b6a
Author: Andy Kaylor <akaylor at nvidia.com>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenExpr.cpp
M clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
M clang/lib/CIR/CodeGen/CIRGenFunction.h
M clang/lib/CIR/CodeGen/CIRGenStmt.cpp
M clang/test/CIR/CodeGen/loop.cpp
Log Message:
-----------
[CIR] Upstream support for range-based for loops (#138176)
This upstreams the code needed to handle CXXForRangeStmt.
Commit: 472c211f58f4169fe18f7941bb6b519e5425e621
https://github.com/llvm/llvm-project/commit/472c211f58f4169fe18f7941bb6b519e5425e621
Author: Jorge Gorbe Moya <jgorbe at google.com>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
Log Message:
-----------
[bazel] Add deps missing from 0009a1783490a8ff69251a0ec7df1891a427cfb0 to //mlir:AllExtensions
Commit: 7d6fda4fd3a529bc3e14a2a71ea6ab33883757d2
https://github.com/llvm/llvm-project/commit/7d6fda4fd3a529bc3e14a2a71ea6ab33883757d2
Author: Maksim Panchenko <maks at fb.com>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
M bolt/lib/Passes/PatchEntries.cpp
M bolt/lib/Rewrite/BinaryPassManager.cpp
Log Message:
-----------
[BOLT] Run PatchEntries pass before LongJmp (#137236)
With --force-patch option, every original function entry point is
overwritten with a trampoline to a new version of the function to
prevent the execution of the original code.
If the function size is too small for the trampoline code, we are forced
to bail out on rewriting the function. That presented a problem on
AArch64 due to LongJmp pass that assumed the presence of the new copy of
the function. If the new copy was not emitted it could have lead to a
relocation overflow.
Run PatchEntries pass before LongJmp and make the latter aware of the
functions that are not going to be emitted. Make --force-patch option
behavior on AArch64 consistent with other architectures.
Commit: cd6a614ef5a5b00899791520249b6fe11b5761dd
https://github.com/llvm/llvm-project/commit/cd6a614ef5a5b00899791520249b6fe11b5761dd
Author: Jorge Gorbe Moya <jgorbe at google.com>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
Log Message:
-----------
[bazel] Add missing dep after a073bb5afdb8715429d98ea80ecdef1390fb4962
Commit: b69957fa642635f769c3aa33a539f74497df0b4d
https://github.com/llvm/llvm-project/commit/b69957fa642635f769c3aa33a539f74497df0b4d
Author: Ely Ronnen <elyronnen at gmail.com>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
M lldb/source/Symbol/Symbol.cpp
M lldb/test/Shell/ObjectFile/ELF/eh_frame-symbols.yaml
M lldb/test/Shell/SymbolFile/Breakpad/symtab-sorted-by-size.test
M lldb/test/Shell/SymbolFile/Breakpad/symtab.test
Log Message:
-----------
[lldb] Change synthetic symbol names to have file address (#137512)
Changes the default synthetic symbol names to contain their file address
Commit: 1b1e360b76d31fcd09b93b8c05be8a93dfea432b
https://github.com/llvm/llvm-project/commit/1b1e360b76d31fcd09b93b8c05be8a93dfea432b
Author: Prabhu Rajasekaran <prabhukr at google.com>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
M clang/lib/Driver/ToolChains/UEFI.cpp
M clang/test/Driver/uefi-constructed-args.c
Log Message:
-----------
[NFC][clang] No sharedlibs for UEFI (#137872)
There is no support for shared libraries for UEFI target. Remove the
incorrect -dll flag set from UEFI toolchain.
Commit: ed8d4fe0b1d8088bd1a4f99f77afe33f435ef668
https://github.com/llvm/llvm-project/commit/ed8d4fe0b1d8088bd1a4f99f77afe33f435ef668
Author: James Newling <james.newling at gmail.com>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
A mlir/test/Dialect/Vector/linearize-subject-to-bitwidth.mlir
M mlir/test/Dialect/Vector/linearize.mlir
Log Message:
-----------
[mlir][vector] Separate bitwidth specific tests out (#138071)
In https://github.com/llvm/llvm-project/pull/136581 the logic pertaining
to bitwidth was removed from the patterns. This PR further factorizes
bitwidth logic out of the main test file.
The number of tests with bitwidth (in the new file added in this PR) is
now lower than before this PR. This is because this PR only tests the
bitwidth specific logic once (there was a fair amount of redundant
testing before).
I didn't do this test refactoring in
https://github.com/llvm/llvm-project/pull/136581 because I wanted to
make it clear that it was NFC by leaving the tests unchanged there
Commit: 1a44f38d2af8724e9819f03d4b76a50615217a8d
https://github.com/llvm/llvm-project/commit/1a44f38d2af8724e9819f03d4b76a50615217a8d
Author: James Newling <james.newling at gmail.com>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
M mlir/test/Dialect/Vector/canonicalize.mlir
M mlir/test/Dialect/Vector/canonicalize/vector-transpose.mlir
Log Message:
-----------
[mlir][vector] Canonicalize/fold 'order preserving' transposes (#135841)
Handles special case where transpose doesn't permute any non-1
dimensions (and so is effectively a shape_cast) and is adjacent to a
shape_cast that it can fold into. For example
```
%1 = vector.transpose %0, [1, 0, 3, 2] : vector<4x1x1x6xf32> to vector<1x4x6x1xf32>
```
can be folded into an adjacent shape_cast. An alternative to this PR
would be to canonicalize such transposes to shape_casts directly, but I
think it'll be difficult getting consensus that shape_cast is 'more
canonical' than transpose, so this PR compromises with the less
opinionated claim that
1) shape_cast is more canonical than shape_cast(transpose)
2) shape_cast is more canonical than transpose(shape_cast)
The pattern `ConvertIllegalShapeCastOpsToTransposes` that is specific to
transposes with scalable dimensions reverses the canonicalization added
here, so I've I've disabled this canonicalization for scalable vectors
Commit: 471fe9c68948d339016d0c4aa66c116ff31e0516
https://github.com/llvm/llvm-project/commit/471fe9c68948d339016d0c4aa66c116ff31e0516
Author: jimingham <jingham at apple.com>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
M lldb/test/API/python_api/event/TestEvents.py
Log Message:
-----------
Fix TestEvents.py after: 4fdb8cb (#138211)
I changed the option name from at-first-stop (-F) to at-initial-stop
(-I) but missed one place in the testsuite.
Commit: aa6d541065ef755bea9c6ed2b3598f0664c10002
https://github.com/llvm/llvm-project/commit/aa6d541065ef755bea9c6ed2b3598f0664c10002
Author: Luke Lau <luke at igalia.com>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M llvm/lib/Analysis/InstructionSimplify.cpp
M llvm/test/Transforms/InstSimplify/maxmin_intrinsics.ll
Log Message:
-----------
[InstSimplify] Fold {u,s}{min,max} x, poison -> poison (#138166)
Following from the discussion in
https://github.com/llvm/llvm-project/pull/138095#discussion_r2070484664,
these intrinsics are poison if any of their operands are poison, and are
marked as such in propagatesPoison in ValueTracking.cpp.
This will help fold away leftover vectors produced by VectorCombine when
scalarizing intrinsics.
Commit: 4b1f1f77b0bd7085ecb8c9a431a3161666ec0f54
https://github.com/llvm/llvm-project/commit/4b1f1f77b0bd7085ecb8c9a431a3161666ec0f54
Author: Peter Collingbourne <peter at pcc.me.uk>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
M lld/docs/ld.lld.1
Log Message:
-----------
ELF: Fix man page formatting.
Commit: 7f922f1400f00a73d1618e3f17556704c6b9436d
https://github.com/llvm/llvm-project/commit/7f922f1400f00a73d1618e3f17556704c6b9436d
Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
M flang-rt/include/flang-rt/runtime/allocator-registry.h
M flang-rt/include/flang-rt/runtime/descriptor.h
M flang-rt/include/flang-rt/runtime/reduction-templates.h
M flang-rt/lib/cuda/allocatable.cpp
M flang-rt/lib/cuda/allocator.cpp
M flang-rt/lib/cuda/descriptor.cpp
M flang-rt/lib/runtime/allocatable.cpp
M flang-rt/lib/runtime/array-constructor.cpp
M flang-rt/lib/runtime/assign.cpp
M flang-rt/lib/runtime/character.cpp
M flang-rt/lib/runtime/copy.cpp
M flang-rt/lib/runtime/derived.cpp
M flang-rt/lib/runtime/descriptor.cpp
M flang-rt/lib/runtime/extrema.cpp
M flang-rt/lib/runtime/findloc.cpp
M flang-rt/lib/runtime/matmul-transpose.cpp
M flang-rt/lib/runtime/matmul.cpp
M flang-rt/lib/runtime/misc-intrinsic.cpp
M flang-rt/lib/runtime/pointer.cpp
M flang-rt/lib/runtime/temporary-stack.cpp
M flang-rt/lib/runtime/tools.cpp
M flang-rt/lib/runtime/transformational.cpp
M flang-rt/unittests/Evaluate/reshape.cpp
M flang-rt/unittests/Runtime/Allocatable.cpp
M flang-rt/unittests/Runtime/CUDA/Allocatable.cpp
M flang-rt/unittests/Runtime/CUDA/AllocatorCUF.cpp
M flang-rt/unittests/Runtime/CUDA/Memory.cpp
M flang-rt/unittests/Runtime/CharacterTest.cpp
M flang-rt/unittests/Runtime/CommandTest.cpp
M flang-rt/unittests/Runtime/TemporaryStack.cpp
M flang-rt/unittests/Runtime/tools.h
M flang/include/flang/Optimizer/Dialect/CUF/CUFOps.td
M flang/include/flang/Runtime/CUDA/allocatable.h
M flang/include/flang/Runtime/CUDA/allocator.h
M flang/include/flang/Runtime/CUDA/pointer.h
M flang/include/flang/Runtime/allocatable.h
M flang/lib/Lower/Allocatable.cpp
M flang/lib/Optimizer/Builder/Runtime/Allocatable.cpp
M flang/lib/Optimizer/Dialect/CUF/CUFOps.cpp
M flang/lib/Optimizer/Transforms/CUFOpConversion.cpp
M flang/test/Fir/CUDA/cuda-allocate.fir
M flang/test/Fir/cuf-invalid.fir
M flang/test/Fir/cuf.mlir
M flang/test/HLFIR/elemental-codegen.fir
M flang/test/Lower/CUDA/cuda-allocatable.cuf
M flang/test/Lower/OpenACC/acc-declare-unwrap-defaultbounds.f90
M flang/test/Lower/OpenACC/acc-declare.f90
M flang/test/Lower/allocatable-polymorphic.f90
M flang/test/Lower/allocatable-runtime.f90
M flang/test/Lower/allocate-mold.f90
M flang/test/Lower/polymorphic.f90
M flang/test/Transforms/lower-repack-arrays.fir
Log Message:
-----------
[flang][cuda] Use a reference for asyncObject (#138186)
Switch from `int64_t` to `int64_t*` to fit with the rest of the
implementation.
New tentative with some fix. The previous was reverted yesterday.
Commit: 9b6b144438ccf371e51b578e642f2ce5d3aa89c8
https://github.com/llvm/llvm-project/commit/9b6b144438ccf371e51b578e642f2ce5d3aa89c8
Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
M flang-rt/include/flang-rt/runtime/allocator-registry.h
M flang-rt/include/flang-rt/runtime/descriptor.h
M flang-rt/include/flang-rt/runtime/reduction-templates.h
M flang-rt/lib/cuda/allocatable.cpp
M flang-rt/lib/cuda/allocator.cpp
M flang-rt/lib/cuda/descriptor.cpp
M flang-rt/lib/runtime/allocatable.cpp
M flang-rt/lib/runtime/array-constructor.cpp
M flang-rt/lib/runtime/assign.cpp
M flang-rt/lib/runtime/character.cpp
M flang-rt/lib/runtime/copy.cpp
M flang-rt/lib/runtime/derived.cpp
M flang-rt/lib/runtime/descriptor.cpp
M flang-rt/lib/runtime/extrema.cpp
M flang-rt/lib/runtime/findloc.cpp
M flang-rt/lib/runtime/matmul-transpose.cpp
M flang-rt/lib/runtime/matmul.cpp
M flang-rt/lib/runtime/misc-intrinsic.cpp
M flang-rt/lib/runtime/pointer.cpp
M flang-rt/lib/runtime/temporary-stack.cpp
M flang-rt/lib/runtime/tools.cpp
M flang-rt/lib/runtime/transformational.cpp
M flang-rt/unittests/Evaluate/reshape.cpp
M flang-rt/unittests/Runtime/Allocatable.cpp
M flang-rt/unittests/Runtime/CUDA/Allocatable.cpp
M flang-rt/unittests/Runtime/CUDA/AllocatorCUF.cpp
M flang-rt/unittests/Runtime/CUDA/Memory.cpp
M flang-rt/unittests/Runtime/CharacterTest.cpp
M flang-rt/unittests/Runtime/CommandTest.cpp
M flang-rt/unittests/Runtime/TemporaryStack.cpp
M flang-rt/unittests/Runtime/tools.h
M flang/include/flang/Optimizer/Dialect/CUF/CUFOps.td
M flang/include/flang/Runtime/CUDA/allocatable.h
M flang/include/flang/Runtime/CUDA/allocator.h
M flang/include/flang/Runtime/CUDA/pointer.h
M flang/include/flang/Runtime/allocatable.h
M flang/lib/Lower/Allocatable.cpp
M flang/lib/Optimizer/Builder/Runtime/Allocatable.cpp
M flang/lib/Optimizer/Dialect/CUF/CUFOps.cpp
M flang/lib/Optimizer/Transforms/CUFOpConversion.cpp
M flang/test/Fir/CUDA/cuda-allocate.fir
M flang/test/Fir/cuf-invalid.fir
M flang/test/Fir/cuf.mlir
M flang/test/HLFIR/elemental-codegen.fir
M flang/test/Lower/CUDA/cuda-allocatable.cuf
M flang/test/Lower/OpenACC/acc-declare-unwrap-defaultbounds.f90
M flang/test/Lower/OpenACC/acc-declare.f90
M flang/test/Lower/allocatable-polymorphic.f90
M flang/test/Lower/allocatable-runtime.f90
M flang/test/Lower/allocate-mold.f90
M flang/test/Lower/polymorphic.f90
M flang/test/Transforms/lower-repack-arrays.fir
Log Message:
-----------
Revert "[flang][cuda] Use a reference for asyncObject" (#138221)
Reverts llvm/llvm-project#138186
Commit: feda31e0483c47cbef549c068aab1c60e7d10572
https://github.com/llvm/llvm-project/commit/feda31e0483c47cbef549c068aab1c60e7d10572
Author: Jannick Kremer <jannick.kremer at mailbox.org>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M clang/bindings/python/clang/cindex.py
Log Message:
-----------
[libclang/python] Remove compatibility workaround for briefComment (#138135)
Remove a workaround that made cindex.py from LLVM 3.2 work with older
libclang.so versions
Commit: 2cae14fdc62a07252ad1c2c2b11678c4539416a6
https://github.com/llvm/llvm-project/commit/2cae14fdc62a07252ad1c2c2b11678c4539416a6
Author: Felipe de Azevedo Piovezan <fpiovezan at apple.com>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
M lldb/source/Symbol/Symbol.cpp
M lldb/test/Shell/ObjectFile/ELF/eh_frame-symbols.yaml
M lldb/test/Shell/SymbolFile/Breakpad/symtab-sorted-by-size.test
M lldb/test/Shell/SymbolFile/Breakpad/symtab.test
Log Message:
-----------
Revert "[lldb] Change synthetic symbol names to have file address (#137512)"
This reverts commit b69957fa642635f769c3aa33a539f74497df0b4d.
Commit: 44c4b4cef9d13ef91a771c45664dde643009f996
https://github.com/llvm/llvm-project/commit/44c4b4cef9d13ef91a771c45664dde643009f996
Author: Sirui Mu <msrlancern at gmail.com>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M clang/include/clang/CIR/Dialect/Builder/CIRBaseBuilder.h
M clang/include/clang/CIR/Dialect/IR/CIRDialect.h
M clang/include/clang/CIR/Dialect/IR/CIROps.td
M clang/include/clang/CIR/Interfaces/CIROpInterfaces.td
M clang/include/clang/CIR/MissingFeatures.h
M clang/lib/CIR/CodeGen/CIRGenCall.cpp
M clang/lib/CIR/CodeGen/CIRGenCall.h
M clang/lib/CIR/CodeGen/CIRGenExpr.cpp
M clang/lib/CIR/CodeGen/CIRGenFunction.h
M clang/lib/CIR/CodeGen/CIRGenFunctionInfo.h
M clang/lib/CIR/CodeGen/CIRGenTypes.cpp
M clang/lib/CIR/CodeGen/CIRGenTypes.h
M clang/lib/CIR/CodeGen/TargetInfo.cpp
M clang/lib/CIR/Dialect/IR/CIRDialect.cpp
M clang/test/CIR/CodeGen/call.cpp
M clang/test/CIR/IR/call.cir
M clang/test/CIR/IR/invalid-call.cir
Log Message:
-----------
[CIR] Upstream cir.call with scalar arguments (#136810)
This PR upstreams support for scalar arguments in `cir.call` operation.
Related to #132487 .
Commit: f46ff4c204b622029b02d0c7d4ed47ad162521e8
https://github.com/llvm/llvm-project/commit/f46ff4c204b622029b02d0c7d4ed47ad162521e8
Author: Jim Lin <jim at andestech.com>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M llvm/lib/CodeGen/AllocationOrder.h
Log Message:
-----------
[NFC][regalloc] Fix typo in llvm/lib/CodeGen/AllocationOrder.h.
Commit: 36541ec3ca7027aec87118262773b35964c0edec
https://github.com/llvm/llvm-project/commit/36541ec3ca7027aec87118262773b35964c0edec
Author: Eugene Epshteyn <eepshteyn at nvidia.com>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
M flang/lib/Parser/preprocessor.cpp
A flang/test/Preprocessing/pp048.F
Log Message:
-----------
[flang] Fix #else with trailing text (#138045)
Fixed the issue, where the extra text on #else line (' Z' in the example
below) caused the data from the "else" clause to be processed together
with the data of "then" clause.
```
#ifndef XYZ42
PARAMETER(A=2)
#else Z
PARAMETER(A=3)
#endif
end
```
Commit: 099a0fa3f2cf1a434e20b2fa97b6251088321467
https://github.com/llvm/llvm-project/commit/099a0fa3f2cf1a434e20b2fa97b6251088321467
Author: Snehasish Kumar <snehasishk at google.com>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
M llvm/include/llvm/ProfileData/InstrProfReader.h
M llvm/include/llvm/ProfileData/MemProf.h
M llvm/include/llvm/ProfileData/MemProfYAML.h
M llvm/lib/ProfileData/IndexedMemProfData.cpp
M llvm/lib/ProfileData/InstrProfReader.cpp
M llvm/lib/ProfileData/MemProf.cpp
M llvm/test/tools/llvm-profdata/memprof-yaml.test
M llvm/tools/llvm-profdata/llvm-profdata.cpp
M llvm/unittests/ProfileData/MemProfTest.cpp
Log Message:
-----------
[MemProf] Add v4 which contains CalleeGuids to CallSiteInfo. (#137394)
This patch adds CalleeGuids to the serialized format and increments the version number to 4. The unit tests are updated to include a new test for v4 and the YAML format is also updated to be able to roundtrip the v4 format.
Commit: ade1203337d7453a51edc549e6dba61f1c5e54e3
https://github.com/llvm/llvm-project/commit/ade1203337d7453a51edc549e6dba61f1c5e54e3
Author: Jannick Kremer <jannick.kremer at mailbox.org>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M clang/bindings/python/tests/cindex/test_cursor.py
M clang/bindings/python/tests/cindex/test_location.py
M clang/bindings/python/tests/cindex/test_source_range.py
Log Message:
-----------
[libclang/python] Add tests for equality operators. (#138132)
Adds tests for SourceRange, SourceLocation and Cursor.
This is a follow-up to #138074
Commit: 68fd69aca6c9d8129cd5dc27829a8abebea4cefc
https://github.com/llvm/llvm-project/commit/68fd69aca6c9d8129cd5dc27829a8abebea4cefc
Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M clang/include/clang/Sema/Sema.h
M clang/lib/Sema/SemaChecking.cpp
M clang/lib/Sema/SemaType.cpp
Log Message:
-----------
[clang][NFC] Convert `Sema::PointerAuthDiscArgKind` to scoped enum
Commit: 09fb9adbd2a432a83e451ee9156faceb9d76e9aa
https://github.com/llvm/llvm-project/commit/09fb9adbd2a432a83e451ee9156faceb9d76e9aa
Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M clang/include/clang/Sema/Sema.h
M clang/lib/Sema/Sema.cpp
M clang/lib/Sema/SemaDecl.cpp
M clang/lib/Sema/SemaExpr.cpp
M clang/lib/Sema/SemaType.cpp
Log Message:
-----------
[clang][NFC] Convert `Sema::NonTrivialCUnionContext` to scoped enum
Commit: 8089c3d1edf0f880415bfbc155571f4a43fcdf17
https://github.com/llvm/llvm-project/commit/8089c3d1edf0f880415bfbc155571f4a43fcdf17
Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M clang/include/clang/Sema/Sema.h
M clang/lib/Sema/SemaDecl.cpp
M clang/lib/Sema/SemaTemplate.cpp
M clang/lib/Sema/TreeTransform.h
Log Message:
-----------
[clang][NFC] Convert `Sema::NonTagKind` to scoped enum
Commit: ed673aac7aa78896ec55aa615e37432006c2830a
https://github.com/llvm/llvm-project/commit/ed673aac7aa78896ec55aa615e37432006c2830a
Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M clang/include/clang/Parse/Parser.h
M clang/include/clang/Parse/RAIIObjectsForParser.h
M clang/include/clang/Sema/Sema.h
M clang/lib/Parse/ParseExpr.cpp
M clang/lib/Sema/SemaDecl.cpp
M clang/lib/Sema/SemaDeclCXX.cpp
M clang/lib/Sema/SemaTemplate.cpp
Log Message:
-----------
[clang][NFC] Convert `Sema::OffsetOfKind` to scoped enum
Commit: 7e71db8463adfbaadbd28a6c0e8b807ff7075c3c
https://github.com/llvm/llvm-project/commit/7e71db8463adfbaadbd28a6c0e8b807ff7075c3c
Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M clang/include/clang/Sema/Sema.h
M clang/lib/Sema/SemaDecl.cpp
M clang/lib/Sema/SemaDeclAttr.cpp
Log Message:
-----------
[clang][NFC] Convert `Sema::AvailabilityMergeKind` to scoped enum
Commit: 35e743d4bf1960a9ea982227a6159325784c56b9
https://github.com/llvm/llvm-project/commit/35e743d4bf1960a9ea982227a6159325784c56b9
Author: Urvi Rav <94829943+ravurvi20 at users.noreply.github.com>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M clang/docs/OpenMPSupport.rst
M clang/include/clang/Basic/DiagnosticParseKinds.td
M clang/lib/Parse/ParseOpenMP.cpp
M clang/test/OpenMP/metadirective_ast_print.c
A clang/test/OpenMP/metadirective_default.cpp
M clang/test/OpenMP/metadirective_messages.cpp
M clang/test/OpenMP/metadirective_otherwise.cpp
Log Message:
-----------
default clause replaced by otherwise clause for metadirective in OpenMP 5.2 (#128640)
This PR replaces the `default` clause with the `otherwise` clause for
the `metadirective` in OpenMP. The `otherwise` clause serves as a
fallback condition when no directive from the when clauses is selected.
In the `when` clause, context selectors define traits evaluated to
determine the directive to be applied.
The previous merge was reverted due to a failing test case, which has
now been resolved.
---------
Co-authored-by: urvi-rav <urvi.rav at hpe.com>
Commit: 8f06f5dca05f8c63caf4cfc171b59ce673afecec
https://github.com/llvm/llvm-project/commit/8f06f5dca05f8c63caf4cfc171b59ce673afecec
Author: Kelvin Li <kkwli at users.noreply.github.com>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M flang/test/Lower/volatile-openmp.f90
Log Message:
-----------
[flang] update LIT test for AIX (NFC) (#138228)
Commit: ae344408348a5c3ff6ccdbc675c401ea83d8a708
https://github.com/llvm/llvm-project/commit/ae344408348a5c3ff6ccdbc675c401ea83d8a708
Author: Justin Bogner <mail at justinbogner.com>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
M llvm/lib/Target/DirectX/DXILFinalizeLinkage.cpp
M llvm/lib/Target/DirectX/DXILOpLowering.cpp
M llvm/lib/Target/DirectX/DirectXTargetMachine.cpp
M llvm/test/CodeGen/DirectX/llc-pipeline.ll
Log Message:
-----------
[DirectX] Make DXILOpLowering responsible for cleaning up dead intrinsics (#138199)
This moves the responsibility for cleaning up dead intrinsics from
DXILFinalizeLinkage to DXILOpLowering, and moves DXILFinalizeLinkage
back to it's pre-#136244 place in the pipeline. Doing this avoids issues
with DXIL passes running on obviously dead code, and makes it more clear
what DXILFinalizeLinkage is really doing.
This also helps with the story for #134260, as cleaning up dead
intrinsics doesn't make sense if this becomes a more generic pass.
Note that test/CodeGen/DirectX/remove-dead-intriniscs.ll already covers
most of the testing here. It'd be nice to have something that catches
the regression from changing the pass ordering but I couldn't come up
with anything that wouldn't be incredibly fragile.
Fixes #138180.
Commit: 6f39995da24d1eb5a8efc40531abff3054f2b6bf
https://github.com/llvm/llvm-project/commit/6f39995da24d1eb5a8efc40531abff3054f2b6bf
Author: Jonathan Thackray <jonathan.thackray at arm.com>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M mlir/include/mlir/Dialect/LLVMIR/LLVMEnums.td
M mlir/lib/Dialect/LLVMIR/IR/LLVMDialect.cpp
M mlir/test/Target/LLVMIR/Import/instructions.ll
M mlir/test/Target/LLVMIR/llvmir.mlir
Log Message:
-----------
[mlir] Ensure fmaximum/fminimum is defined in mlir/Dialect/LLVMIR/LLVMEnums.td (#138198)
Fix a compile error (with LLVM_ENABLE_WERROR=On) when building
`bin/flang`:
```
enumeration values 'FMaximum' and 'FMinimum' not handled in switch
```
caused by adding new LLVM IR instructions in #137701.
This wasn't picked up by the auto CI builders on GitHub, so I hadn't
realised until @kazutakahirata notified me about it.
Commit: 630a0ff2c25c4ced739b1c07633097ccbf182cd6
https://github.com/llvm/llvm-project/commit/630a0ff2c25c4ced739b1c07633097ccbf182cd6
Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M clang/include/clang/Sema/Sema.h
M clang/lib/Sema/SemaDeclCXX.cpp
M clang/lib/Sema/SemaType.cpp
Log Message:
-----------
[clang][NFC] Convert `Sema::TrivialABIHandling` to scoped enum
Commit: 32adf2c3601fd766d98410336bdcc9df6224e07b
https://github.com/llvm/llvm-project/commit/32adf2c3601fd766d98410336bdcc9df6224e07b
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
M .ci/metrics/metrics.py
M .github/workflows/premerge.yaml
Log Message:
-----------
[Github][CI] Rename New Premerge Jobs (#138024)
This patch renames the new premerge job as suggested in
https://discourse.llvm.org/t/github-ci-notifications-and-main-branch/85868/10.
This uses more industry standard terms (like CI vs premerge checks which
might be somewhat of a LLVM CI idiom?) and makes it more generic if we
end up doing postcommit testing through Github.
Commit: be6497ff7583248d76a6710dd48cfeb63dd68f27
https://github.com/llvm/llvm-project/commit/be6497ff7583248d76a6710dd48cfeb63dd68f27
Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M clang/include/clang/Sema/Sema.h
M clang/lib/Sema/SemaExpr.cpp
M clang/lib/Sema/SemaExprCXX.cpp
M clang/lib/Sema/SemaLambda.cpp
M clang/lib/Sema/SemaOpenMP.cpp
M clang/lib/Sema/TreeTransform.h
Log Message:
-----------
[clang][NFC] Convert `Sema::TryCaptureKind` to scoped enum
Commit: 048befe9ef7edab3580a922d69664b21e2a532fa
https://github.com/llvm/llvm-project/commit/048befe9ef7edab3580a922d69664b21e2a532fa
Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M clang/include/clang/Sema/Sema.h
M clang/lib/Sema/SemaExpr.cpp
M clang/lib/Sema/SemaExprCXX.cpp
M clang/lib/Sema/SemaLambda.cpp
M clang/lib/Sema/SemaOpenMP.cpp
M clang/lib/Sema/TreeTransform.h
Log Message:
-----------
Revert "[clang][NFC] Convert `Sema::TryCaptureKind` to scoped enum"
This reverts commit be6497ff7583248d76a6710dd48cfeb63dd68f27.
Commit: 0294c3615c5dcb5eee140bd3fa9ba3c084e1836f
https://github.com/llvm/llvm-project/commit/0294c3615c5dcb5eee140bd3fa9ba3c084e1836f
Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M clang/include/clang/Sema/Sema.h
M clang/lib/Sema/SemaExpr.cpp
M clang/lib/Sema/SemaExprCXX.cpp
M clang/lib/Sema/SemaLambda.cpp
M clang/lib/Sema/SemaOpenMP.cpp
M clang/lib/Sema/TreeTransform.h
Log Message:
-----------
[clang][NFC] Reland "Convert `Sema::TryCaptureKind` to scoped enum"
Commit: aea2f6f69cd256d85a0d3986c0e72181bb5247ab
https://github.com/llvm/llvm-project/commit/aea2f6f69cd256d85a0d3986c0e72181bb5247ab
Author: cor3ntin <corentinjabot at gmail.com>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/AST/DeclCXX.cpp
M clang/test/SemaCXX/lambda-unevaluated.cpp
Log Message:
-----------
[Clang] incorrect assertion when checking template template parameter of a lambda (#138121)
When a lambda is used in an alias declaration, we were trying to refer
to its call operator. However, that could happen before (or during) the
call operator is defined.
So we should not assume a lambda always has a call operator.
Fixes #136432
Fixes #137014
Fixes #138018
Commit: b4ab53c3b04787f430c2e3484998951c48b05968
https://github.com/llvm/llvm-project/commit/b4ab53c3b04787f430c2e3484998951c48b05968
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-01 (Thu, 01 May 2025)
Changed paths:
M llvm/lib/Target/Mips/MipsDelaySlotFiller.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.cpp
Log Message:
-----------
[Target] Use llvm::max_element (NFC) (#137926)
Commit: 8b752b9874489229e4afceadd958fdc9ff7a2edb
https://github.com/llvm/llvm-project/commit/8b752b9874489229e4afceadd958fdc9ff7a2edb
Author: Jonas Hahnfeld <jonas.hahnfeld at cern.ch>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M clang/unittests/Tooling/QualTypeNamesTest.cpp
Log Message:
-----------
[clang] Add test for QualTypes in template class NNS (#137804)
Recently commit dc17429ae6 removed some code related to template
arguments in NestedNameSpecifier::print that would not pass on the
TemplateParameterList. This would cause printIntegral to add type
suffixes for the unsigned parameter, but only for the prefix. Add a
regression test to prevent such problems from coming back.
Commit: 3f367a65d31a7178e222a7babae7baa0a93ff292
https://github.com/llvm/llvm-project/commit/3f367a65d31a7178e222a7babae7baa0a93ff292
Author: Henrich Lauko <xlauko at mail.muni.cz>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M clang/include/clang/CIR/Dialect/IR/CIROps.td
A clang/include/clang/CIR/Dialect/IR/CIRTypeConstraints.td
M clang/include/clang/CIR/Dialect/IR/CIRTypes.h
M clang/include/clang/CIR/Dialect/IR/CIRTypes.td
M clang/include/clang/CIR/Dialect/IR/CMakeLists.txt
M clang/lib/CIR/Dialect/IR/CIRTypes.cpp
M clang/lib/CIR/Dialect/IR/CMakeLists.txt
Log Message:
-----------
[CIR] Refactor IntType constraints (#138106)
- Adds `CIR_` prefixes to integer type constraints types to disambiguate their names from other dialects.
- Renames `PrimitiveInt` to `CIR_AnyFundamentalIntType` to align more with constrian conventions.
- Adds bunch of helper constraint classes to be able to define base types to reduce clutter of necessary type casts.
- Reworks constraints to use `CIR_ConfinedType` to avoid repeating validation checks.
- Adds `IntOfWidths` variadic bitwidth constraint to reduce boilerplate code needed to handle multi-bitwidth parameters.
- Constraints are moved into a separate file, which starts decoupling of constraints and types to remove the cyclic dependency between types and attributes and will eventually help fix several outstanding TODOs.
This mirrors incubator changes from https://github.com/llvm/clangir/pull/1593
Commit: ff28e1a5a92da380c2869aba09971687c26d2f0f
https://github.com/llvm/llvm-project/commit/ff28e1a5a92da380c2869aba09971687c26d2f0f
Author: Henrich Lauko <xlauko at mail.muni.cz>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M clang/include/clang/CIR/Dialect/IR/CIRTypeConstraints.td
M clang/include/clang/CIR/Dialect/IR/CIRTypes.h
M clang/include/clang/CIR/Dialect/IR/CIRTypes.td
M clang/lib/CIR/Dialect/IR/CIRTypes.cpp
A clang/test/CIR/IR/invalid-long-double.cir
Log Message:
-----------
[CIR] Refactor floating point type constraints (#138112)
- This cleans up moves cir floating point type constraints to dedicated constraints file, and fixes long double verifier to use constraints directly.
- Renames `CIR_AnyFloat` to `CIR_AnyFloatType`.
This mirrors inbubator changes from https://github.com/llvm/clangir/pull/1594
Commit: 4109bac3301eb7b7033eec3c8e8107be8cad9bc9
https://github.com/llvm/llvm-project/commit/4109bac3301eb7b7033eec3c8e8107be8cad9bc9
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M clang/lib/CodeGen/CodeGenFunction.cpp
M llvm/include/llvm/IR/Constants.h
M llvm/lib/Bitcode/Reader/BitcodeReader.cpp
M llvm/lib/CodeGen/AsmPrinter/WinCFGuard.cpp
M llvm/lib/IR/Constants.cpp
M llvm/lib/IR/Function.cpp
M llvm/lib/IR/LLVMContextImpl.h
M llvm/lib/Transforms/IPO/Attributor.cpp
M llvm/lib/Transforms/IPO/GlobalOpt.cpp
M llvm/lib/Transforms/IPO/LowerTypeTests.cpp
M llvm/lib/Transforms/IPO/OpenMPOpt.cpp
M llvm/lib/Transforms/IPO/PartialInlining.cpp
M llvm/lib/Transforms/IPO/SCCP.cpp
M llvm/test/tools/llvm-reduce/reduce-functions-blockaddress-wrong-function.ll
M llvm/test/tools/llvm-reduce/reduce-functions-blockaddress.ll
M llvm/tools/llvm-reduce/deltas/ReduceFunctions.cpp
M llvm/tools/llvm-reduce/deltas/Utils.cpp
M llvm/tools/llvm-reduce/deltas/Utils.h
M mlir/test/Target/LLVMIR/Import/blockaddress.ll
Log Message:
-----------
[IR] Do not store Function inside BlockAddress (#137958)
Currently BlockAddresses store both the Function and the BasicBlock they
reference, and the BlockAddress is part of the use list of both the
Function and BasicBlock.
This is quite awkward, because this is not really a use of the function
itself (and walks of function uses generally skip block addresses for
that reason). This also has weird implications on function RAUW (as that
will replace the function in block addresses in a way that generally
doesn't make sense), and causes other peculiar issues, like the ability
to have multiple block addresses for one block (with different
functions).
Instead, I believe it makes more sense to specify only the basic block
and let the function be implied by the BB parent. This does mean that we
may have block addresses without a function (if the BB is not inserted),
but this should only happen during IR construction.
Commit: 140c2b6d081b781b19f50bf1c4fbf4b17bfacdc1
https://github.com/llvm/llvm-project/commit/140c2b6d081b781b19f50bf1c4fbf4b17bfacdc1
Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M clang/include/clang/Sema/Sema.h
M clang/lib/Parse/ParseOpenMP.cpp
M clang/lib/Sema/SemaDecl.cpp
M clang/lib/Sema/SemaDeclCXX.cpp
M clang/lib/Sema/SemaExpr.cpp
M clang/lib/Sema/SemaExprCXX.cpp
M clang/lib/Sema/SemaInit.cpp
M clang/lib/Sema/SemaOpenMP.cpp
M clang/lib/Sema/SemaStmt.cpp
M clang/lib/Sema/SemaType.cpp
Log Message:
-----------
[clang][NFC] Convert `Sema::AllowFoldKind` to scoped enum
Commit: a8ec6e8788832cff77ec855a2331438c937fb5da
https://github.com/llvm/llvm-project/commit/a8ec6e8788832cff77ec855a2331438c937fb5da
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M llvm/docs/LangRef.rst
M llvm/lib/IR/Verifier.cpp
A llvm/test/Verifier/global-initializer-sized.ll
M llvm/test/Verifier/scalable-global-vars.ll
Log Message:
-----------
[IR] Require that global value initializers are sized (#137358)
While external globals can be unsized, I don't think an unsized
initializer makes sense.
It seems like the backend currently ends up treating this as a zero-size
global. If people want that behavior, they should declare it as such.
Commit: f66f2fe0e5be6dc6eb3ef4d42af8692f9adcdc80
https://github.com/llvm/llvm-project/commit/f66f2fe0e5be6dc6eb3ef4d42af8692f9adcdc80
Author: jeremyd2019 <github at jdrake.com>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M lld/COFF/Driver.cpp
M lld/COFF/Writer.cpp
A lld/test/COFF/cygwin-symbols.s
Log Message:
-----------
[LLD][COFF] add __{data,bss}_{start,end}__ symbols for Cygwin support (#136180)
Cygwin requires these symbols for its fork emulation to know what data
to copy into the child. GNU ld defines these symbols for MinGW targets
also, so do the same here.
Cygwin also has the `.data_cygwin_nocopy` section, which is merged into
`.data` outside the `__data_start__` to `__data_end__` range. This
excludes it from fork's copying. AFAIK it's only used by the Cygwin DLL
itself (which requires a custom linker script to link, that's not
supported by LLD), but the section is included in GNU ld's default
linker script so handle it here too.
Signed-off-by: Jeremy Drake <github at jdrake.com>
Commit: 592243c1cb3ea53b34033132a87b0d14af9d1079
https://github.com/llvm/llvm-project/commit/592243c1cb3ea53b34033132a87b0d14af9d1079
Author: Mateusz Mikuła <oss at mateuszmikula.dev>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M clang/include/clang/Support/Compiler.h
Log Message:
-----------
[Clang][Cygwin] Fix symbol visibility definition (#138118)
Currently building for Cygwin hits this error:
```
In file included from /h/projects/llvm-project/clang/lib/Basic/Attributes.cpp:17:
/h/projects/llvm-project/clang/include/clang/Basic/ParsedAttrInfo.h:180:73: error: invalid declarator before ‘;’ token
180 | extern template class CLANG_TEMPLATE_ABI Registry<clang::ParsedAttrInfo>;
```
That's because `CLANG_TEMPLATE_ABI` ends up not being defined. The
solution here is to follow MinGW case.
Commit: db247ddc9d5411ace70b478f7119eb44a43a8e5c
https://github.com/llvm/llvm-project/commit/db247ddc9d5411ace70b478f7119eb44a43a8e5c
Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M clang/include/clang/Sema/Sema.h
M clang/lib/Sema/SemaChecking.cpp
M clang/lib/Sema/SemaExpr.cpp
M clang/lib/Sema/SemaExprCXX.cpp
Log Message:
-----------
[clang][NFC] Convert `Sema::ArithConvKind` to scoped enum
Commit: 9bc20fbbadb18a1c3415d4442066ed35a6bcc175
https://github.com/llvm/llvm-project/commit/9bc20fbbadb18a1c3415d4442066ed35a6bcc175
Author: Mateusz Mikuła <oss at mateuszmikula.dev>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M clang/tools/CMakeLists.txt
M clang/tools/libclang/CMakeLists.txt
Log Message:
-----------
[Clang][Cygwin] Disable shared libs on Cygwin by default (#138119)
This change follows MinGW decisions, otherwise build with GCC fail with:
```
FAILED: bin/msys-clang-cpp-21.0git.dll lib/libclang-cpp.dll.a
...
/usr/lib/gcc/x86_64-pc-msys/13.3.0/../../../../x86_64-pc-msys/bin/ld: error: export ordinal too large: 92250
```
Co-authored-by: jeremyd2019 <github at jdrake.com>
Commit: 8a84a19cf9ccbc1d0878f51b0466dc3a3b93dbe3
https://github.com/llvm/llvm-project/commit/8a84a19cf9ccbc1d0878f51b0466dc3a3b93dbe3
Author: Mateusz Mikuła <oss at mateuszmikula.dev>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M llvm/lib/Support/Unix/Signals.inc
Log Message:
-----------
[LLVM][Cygwin] Fix Signals compatibility with Cygwin API (#138117)
Cygwin types sometimes do not match Linux exactly. Like in this case:
```
In file included from /h/projects/llvm-project/llvm/include/llvm/Support/Error.h:23,
from /h/projects/llvm-project/llvm/include/llvm/Support/FileSystem.h:34,
from /h/projects/llvm-project/llvm/lib/Support/Signals.cpp:22:
/h/projects/llvm-project/llvm/include/llvm/Support/Format.h: In instantiation of ‘llvm::format_object<Ts>::format_object(const char*, const Ts& ...) [with Ts = {int, char [4096]}]’:
/h/projects/llvm-project/llvm/include/llvm/Support/Format.h:126:10: required from ‘llvm::format_object<Ts ...> llvm::format(const char*, const Ts& ...) [with Ts = {int, char [4096]}]’
/h/projects/llvm-project/llvm/lib/Support/Unix/Signals.inc:850:19: required from here
/h/projects/llvm-project/llvm/include/llvm/Support/Format.h:106:34: error: no matching function for call to ‘std::tuple<int, char [4096]>::tuple(const int&, const char [4096])’
106 | : format_object_base(fmt), Vals(vals...) {
| ^~~~~~~~~~~~~
```
Casting here is safe and solves the issue.
Commit: 68bfe91b5a34f80dbcc4f0a7fa5d7aa1cdf959c2
https://github.com/llvm/llvm-project/commit/68bfe91b5a34f80dbcc4f0a7fa5d7aa1cdf959c2
Author: Prabhu Rajasekaran <prabhukr at google.com>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M llvm/lib/Target/X86/X86CallingConv.td
M llvm/lib/Target/X86/X86RegisterInfo.cpp
M llvm/lib/Target/X86/X86RegisterInfo.h
M llvm/lib/Target/X86/X86Subtarget.h
Log Message:
-----------
[llvm] X86_64 CC for UEFI (#137905)
Select appropriate registers for X86_64 UEFI.
Commit: abe93fe7c88c477343c884036982ddc15f820425
https://github.com/llvm/llvm-project/commit/abe93fe7c88c477343c884036982ddc15f820425
Author: Mateusz Mikuła <oss at mateuszmikula.dev>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M clang/tools/libclang/CIndexer.cpp
Log Message:
-----------
[Clang][Cygwin] Remove erroneous _WIN32 define and clean up Cygwin code (#138120)
With this define present and building with Clang the build fails:
```
In file included from /h/projects/llvm-project/clang/tools/libclang/CIndexer.cpp:36:
In file included from /usr/include/w32api/windows.h:69:
In file included from /usr/include/w32api/windef.h:9:
In file included from /usr/include/w32api/minwindef.h:163:
In file included from /usr/include/w32api/winnt.h:1658:
In file included from /usr/lib/clang/20/include/x86intrin.h:15:
In file included from /usr/lib/clang/20/include/immintrin.h:24:
In file included from /usr/lib/clang/20/include/xmmintrin.h:31:
/usr/lib/clang/20/include/mm_malloc.h:45:22: error: use of undeclared identifier '_aligned_malloc'; did you mean 'aligned_alloc'?
45 | __mallocedMemory = _aligned_malloc(__size, __align);
| ^
```
Removing it allows the build with Clang to succeed and doesn't break
build with GCC.
The "#define _WIN32" was originally "#define LLVM_ON_WIN32", but this
was changed into a plain "#define _WIN32" (which not necessarily is
something that is supported to do) in
1865df49960e34cc90d0083b0e0cd4771c0feb35 as part of a larger
refactoring.
This cygwin specific code isn't needed for converting paths anymore, as
dladdr takes care of it. (dladdr was added to cygwin in 2017, according
to the tags in version 2.8.0.)
Co-authored-by: Jeremy Drake <github at jdrake.com>
Commit: df344285e260109e016e28a14e663f376d8e903c
https://github.com/llvm/llvm-project/commit/df344285e260109e016e28a14e663f376d8e903c
Author: Nathan Gauër <brioche at google.com>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M llvm/include/llvm/IR/GenericConvergenceVerifierImpl.h
M llvm/test/Assembler/convergence-control.ll
A llvm/test/Transforms/ADCE/convergence.ll
A llvm/test/Transforms/BDCE/convergence.ll
M llvm/test/Transforms/FunctionAttrs/convergent.ll
M llvm/test/Verifier/convergencectrl-invalid.ll
Log Message:
-----------
[IR] Relax convergence requirements on call (#135794)
Before this commit, having a convergence token on a non-convergent call
was considered to be an error.
This commit relaxes this requirement and allows convergence tokens to be
present on non-convergent calls.
When such token is present, they have no effect as the underlying call
is non-convergent.
This allows passes like DCE to strip `convergent` attribute from
functions for which all convergent operations have been stripped. When
this happens, a convergence token can still exist in the call-site,
causing the verifier to complain.
Alternatives have been considered in #134863 and #134844.
Commit: d0dcfd4c68171c3b9b863626c08efa7f38cd0c54
https://github.com/llvm/llvm-project/commit/d0dcfd4c68171c3b9b863626c08efa7f38cd0c54
Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M clang/include/clang/Sema/Sema.h
M clang/lib/Sema/SemaChecking.cpp
M clang/lib/Sema/SemaExpr.cpp
Log Message:
-----------
[clang][NFC] Convert `Sema::VarArgKind` to scoped enum
Commit: aa10f879dcbb3a08698d8c956de9cdf3b03def66
https://github.com/llvm/llvm-project/commit/aa10f879dcbb3a08698d8c956de9cdf3b03def66
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M llvm/docs/CommandGuide/llvm-reduce.rst
Log Message:
-----------
llvm-reduce: Fix trailing whitespace in command guide (#138240)
Commit: df264170f7f83530e03fb1ac22b3241797e86fe4
https://github.com/llvm/llvm-project/commit/df264170f7f83530e03fb1ac22b3241797e86fe4
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M llvm/lib/Transforms/ObjCARC/ProvenanceAnalysisEvaluator.cpp
M llvm/test/Transforms/ObjCARC/provenance.ll
Log Message:
-----------
[ObjC][ProvenanceEval] Only evaluate pointers (#136876)
I believe this pass should only be calling PA.related() on pointer
arguments -- the operation is not really meaningful for non-pointers.
I've adjusted the test to use ptr loads instead of i8 loads, which I
believe aligns with how these special globals would actually be used,
and which is probably what this was intending to test.
Ran into this while trying to eliminate illegal non-pointer AA queries.
Commit: daa4061d61216456baa83ab404e096200e327fb4
https://github.com/llvm/llvm-project/commit/daa4061d61216456baa83ab404e096200e327fb4
Author: David Spickett <david.spickett at linaro.org>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M lldb/include/lldb/Target/Memory.h
M lldb/include/lldb/Target/Process.h
M lldb/source/Commands/CommandObjectProcess.cpp
M lldb/source/Commands/Options.td
M lldb/source/Target/Memory.cpp
M lldb/source/Target/Process.cpp
M lldb/source/Target/TargetProperties.td
M lldb/test/API/commands/settings/TestSettings.py
R lldb/test/Shell/Expr/TestExprWithSideEffect.cpp
R lldb/test/Shell/Expr/TestExprWithSideEffectOnConvenienceVar.cpp
R lldb/test/Shell/Expr/TestExprWithSideEffectOnConvenienceVarWindows.cpp
R lldb/test/Shell/Expr/TestProcessModificationIdOnExpr.cpp
Log Message:
-----------
Revert "[lldb] Do not bump memory modificator ID when "internal" debugger memory is updated (#129092)"
And a follow up warning fix.
This reverts commit 6aa963f780d63d4c8fa80de97dd79c932bc35f4e
and 2bff80f25d51e24d3c552e033a2863dd36ef648b.
This is failing on Windows on Arm: https://lab.llvm.org/buildbot/#/builders/141/builds/8375
Seems to produce the line the test wants but not in the right place.
Reverting while I investigate.
Commit: 40edb37bb370541b71657fc308ba26b1ec2deb16
https://github.com/llvm/llvm-project/commit/40edb37bb370541b71657fc308ba26b1ec2deb16
Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M llvm/lib/CodeGen/StackSlotColoring.cpp
Log Message:
-----------
[StackSlotColoring] Fix issue where colors for a StackID are dropped (#138140)
In InitializeSlots, if an interval with a non-zero StackID (A) is
encountered we set All/UsedColors to a size of A + 1. If after this we
process another interval with a non-zero StackID (B), where B < A, then
we resize All/UsedColors to size < A + 1, and lose the BitVector
associated with A.
AFAIK this is a latent bug upstream, but when adding a new TargetStackID
locally I hit a `NextColors[StackID] != -1 && "No more spill slots?"`
assertion due to this issue.
Commit: ff8060a642377a17a1dfadb865634583cde4e097
https://github.com/llvm/llvm-project/commit/ff8060a642377a17a1dfadb865634583cde4e097
Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M clang/include/clang/Sema/Sema.h
M clang/lib/Sema/SemaARM.cpp
M clang/lib/Sema/SemaExpr.cpp
M clang/lib/Sema/SemaExprCXX.cpp
M clang/lib/Sema/SemaInit.cpp
M clang/lib/Sema/SemaOverload.cpp
M clang/lib/Sema/SemaPseudoObject.cpp
Log Message:
-----------
[clang][NFC] Convert `Sema::AssignConvertType` to scoped enum
Commit: 461255e0c17265141009437ba3887f49f9838a40
https://github.com/llvm/llvm-project/commit/461255e0c17265141009437ba3887f49f9838a40
Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M clang/include/clang/Sema/Sema.h
M clang/lib/Sema/SemaCoroutine.cpp
M clang/lib/Sema/SemaExprCXX.cpp
Log Message:
-----------
[clang][NFC] Convert `Sema::AllocationFunctionScope` to scoped enum
Commit: f7fdc8d0cf7cd5caa7d463e1e80e0d5a08c71bb2
https://github.com/llvm/llvm-project/commit/f7fdc8d0cf7cd5caa7d463e1e80e0d5a08c71bb2
Author: David Spickett <david.spickett at linaro.org>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M llvm/unittests/Support/ProgramStackTest.cpp
Log Message:
-----------
[llvm][Support] Disable runOnNewStack test when threading is disabled
On our buildbot https://lab.llvm.org/buildbot/#/builders/122/builds/1478,
one of the new tests added by https://github.com/llvm/llvm-project/pull/136046
failed.
This is because on non-Apple Silicon platforms, the implementation
is to start a new thread, but when threading is disabled this is the
same as calling a function normally.
Commit: c0917ab2e1cf603c3746f519fe1826869767bd8b
https://github.com/llvm/llvm-project/commit/c0917ab2e1cf603c3746f519fe1826869767bd8b
Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M clang/include/clang/Sema/Sema.h
M clang/lib/Parse/Parser.cpp
M clang/lib/Sema/SemaExprCXX.cpp
M clang/lib/Sema/TreeTransform.h
Log Message:
-----------
[clang][NFC] Convert `Sema::IfExistsResult` to scoped enum
Commit: 4ba27780d34916d4a856e6593035b15a5cace56e
https://github.com/llvm/llvm-project/commit/4ba27780d34916d4a856e6593035b15a5cace56e
Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M clang/include/clang/Sema/Sema.h
M clang/lib/Sema/SemaCXXScopeSpec.cpp
M clang/lib/Sema/SemaDecl.cpp
M clang/lib/Sema/SemaDeclCXX.cpp
M clang/lib/Sema/SemaDeclObjC.cpp
M clang/lib/Sema/SemaExpr.cpp
M clang/lib/Sema/SemaExprMember.cpp
M clang/lib/Sema/SemaExprObjC.cpp
M clang/lib/Sema/SemaInit.cpp
M clang/lib/Sema/SemaLookup.cpp
M clang/lib/Sema/SemaOpenMP.cpp
M clang/lib/Sema/SemaTemplate.cpp
M clang/lib/Sema/SemaTemplateVariadic.cpp
Log Message:
-----------
[clang][NFC] Convert `Sema::CorrectTypoKind` to scoped enum
Commit: 083b4a3d66c2d3e87b9b35104b59e07a004b5d3e
https://github.com/llvm/llvm-project/commit/083b4a3d66c2d3e87b9b35104b59e07a004b5d3e
Author: Dominik Steenken <dost at de.ibm.com>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M llvm/lib/Target/SystemZ/SystemZFrameLowering.cpp
M llvm/lib/Transforms/Utils/EntryExitInstrumenter.cpp
A llvm/test/CodeGen/SystemZ/mcount.ll
Log Message:
-----------
[SystemZ] Add proper mcount handling (#135767)
When compiling with `-pg`, the `EntryExitInstrumenterPass` will insert
calls to the glibc function `mcount` at the begining of each
`MachineFunction`.
On SystemZ, these calls require special handling:
- The call to `mcount` needs to happen at the beginning of the prologue.
- Prior to the call to `mcount`, register `%r14`, the return address of
the callee function, must be stored 8 bytes above the stack pointer
`%r15`. After the call to `mcount` returns, that register needs to be
restored.
This commit adds some special handling to the EntryExitInstrumenterPass
that keeps the insertion of the mcount function into the module, but
skips over insertion of the actual call in order to perform this
insertion in the `emitPrologue` function. There, a simple sequence of
store/call/load is inserted, which implements the above.
The desired change in the `EntryExitInstrumenterPass` necessitated the
addition of a new attribute and attribute kind to each function, which
is used to trigger the postprocessing, aka call insertion, in
`emitPrologue`. Note that the new attribute must be of a different kind
than the `mcount` atribute, since otherwise it would replace that
attribute and later be deleted by the code that intended to delete
`mcount`. The new attribnute is called `insert-mcount`, while the
attribute kind is `systemz-backend`, to clearly mark it as a
SystemZ-specific backend concern.
This PR should address issue #121137 . The test inserted here is derived
from the example given in that issue.
Commit: 6e63b68389983194b5007d8d489e74d1ffcea500
https://github.com/llvm/llvm-project/commit/6e63b68389983194b5007d8d489e74d1ffcea500
Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M clang/include/clang/Sema/Sema.h
M clang/lib/Sema/SemaDecl.cpp
M clang/lib/Sema/SemaDeclCXX.cpp
M clang/lib/Sema/SemaOverload.cpp
Log Message:
-----------
[clang][NFC] Convert `Sema::OverloadKind` to scoped enum
Commit: e4d9be3d1205ddcdc131658409fcfa0f76aa1317
https://github.com/llvm/llvm-project/commit/e4d9be3d1205ddcdc131658409fcfa0f76aa1317
Author: Lukacma <Marian.Lukac at arm.com>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M clang/include/clang/Basic/arm_sve.td
M clang/test/CodeGen/AArch64/sve2-intrinsics/acle_sve2_bdep.c
M clang/test/CodeGen/AArch64/sve2-intrinsics/acle_sve2_bext.c
M clang/test/CodeGen/AArch64/sve2-intrinsics/acle_sve2_bgrp.c
M clang/test/Sema/aarch64-sve2-intrinsics/acle_sve2_aes_bitperm_sha3_sm4.cpp
Log Message:
-----------
[Clang][AArch64] make bitperm intrinsics available in streaming mode (#129700)
Based on recent changes in armv9.6 BitPerm instructions and thus
intrinsics are available in streaming mode when
[FEAT_SSVE_BitPerm](https://developer.arm.com/documentation/109697/2024_12/Feature-descriptions/The-Armv9-6-architecture-extension?lang=en#md463-the-armv96-architecture-extension__feat_FEAT_SSVE_BitPerm)
is available. This patch reflects this change and is based on [ACLE
proposal](https://github.com/ARM-software/acle/pull/385).
Commit: 8b56fb7a705a368c691b203a430009342b440886
https://github.com/llvm/llvm-project/commit/8b56fb7a705a368c691b203a430009342b440886
Author: AZero13 <gfunni234 at gmail.com>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M llvm/lib/Target/X86/X86LowerTileCopy.cpp
Log Message:
-----------
[X86] Check for AMXTile in asserting (#136507)
Assert if hasAMXTILE is false.
Commit: cf2f13a867fb86b5c7ce33df8a569477dce71f4f
https://github.com/llvm/llvm-project/commit/cf2f13a867fb86b5c7ce33df8a569477dce71f4f
Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M clang/include/clang/Sema/Sema.h
M clang/lib/Sema/SemaDecl.cpp
M clang/lib/Sema/SemaDeclCXX.cpp
M clang/lib/Sema/SemaExceptionSpec.cpp
M clang/lib/Sema/SemaExprCXX.cpp
M clang/lib/Sema/SemaOverload.cpp
M clang/lib/Sema/SemaStmt.cpp
M clang/lib/Sema/SemaTemplate.cpp
M clang/lib/Sema/SemaTemplateVariadic.cpp
M clang/lib/Sema/SemaType.cpp
Log Message:
-----------
[clang][NFC] Convert `Sema::CCEKind` to scoped enum
Commit: 7f5c34bc5e54e0fb149275d9ee6805e9e6a7a3ea
https://github.com/llvm/llvm-project/commit/7f5c34bc5e54e0fb149275d9ee6805e9e6a7a3ea
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M llvm/include/llvm/IR/BasicBlock.h
M llvm/lib/IR/BasicBlock.cpp
M llvm/lib/IR/Constants.cpp
Log Message:
-----------
[IR] Replace blockaddress refcount with single flag (#138239)
BasicBlock currently has a blockaddress refcount. However,
blockaddresses are uniqued, which means that there can only be a single
blockaddress for a given BasicBlock. Prior to #137958 there were some
edge case exceptions to this, but now it always holds. As such, replace
the refcount with a single flag.
As we're now just tracking two bits, I've dropped the BasicBlockBits
structure, as I found it more annoying than useful (esp with the weird
AIX workarounds). Instead handle the subclass data the same way we do in
Operators.
Commit: 3d4f979e271d2a1fe0906f4d1b16db108838f98f
https://github.com/llvm/llvm-project/commit/3d4f979e271d2a1fe0906f4d1b16db108838f98f
Author: Aaron Ballman <aaron at aaronballman.com>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M clang/lib/Sema/SemaInit.cpp
M clang/test/Sema/attr-nonstring.c
Log Message:
-----------
[C] Allow __attribute__((nonstring)) on multidimensional arrays (#138133)
This addresses post-commit review feedback from the Linux kernel folks
and improves compatibility with the same feature in GCC
Commit: 85c810060e1a2a90dc4ec184b4c4275db17ef28f
https://github.com/llvm/llvm-project/commit/85c810060e1a2a90dc4ec184b4c4275db17ef28f
Author: Aaron Ballman <aaron at aaronballman.com>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Basic/DiagnosticGroups.td
M clang/include/clang/Basic/DiagnosticLexKinds.td
M clang/include/clang/Basic/IdentifierTable.h
M clang/include/clang/Basic/TokenKinds.def
M clang/lib/Basic/IdentifierTable.cpp
M clang/lib/Lex/Preprocessor.cpp
M clang/lib/Sema/SemaDecl.cpp
M clang/test/OpenMP/assumes_messages.c
A clang/test/Sema/c++-keyword-in-c.c
A clang/test/Sema/c++-keyword-in-objc.m
Log Message:
-----------
[C] Diagnose use of C++ keywords in C (#137234)
This adds a new diagnostic group, -Wc++-keyword, which is off by default
and grouped under -Wc++-compat. The diagnostic catches use of C++
keywords in C code.
This change additionally fixes an issue with -Wreserved-identifier not
diagnosing use of reserved identifiers in function parameter lists in a
function declaration which is not a definition.
Fixes https://github.com/llvm/llvm-project/issues/21898
Commit: 72f5ac442da0e4af3a856d11f2c6dfd1c790998d
https://github.com/llvm/llvm-project/commit/72f5ac442da0e4af3a856d11f2c6dfd1c790998d
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M llvm/tools/llvm-reduce/deltas/ReduceOperandsToArgs.cpp
Log Message:
-----------
llvm-reduce: Stop setting intermediate cloned function names
The name will be stolen from the original function, so there's
no point in setting an initial suffixed name.
Commit: da3022577e1f277999922acaef9be169c20dfd48
https://github.com/llvm/llvm-project/commit/da3022577e1f277999922acaef9be169c20dfd48
Author: William <113542065+saturn691 at users.noreply.github.com>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M libc/src/__support/FPUtil/FEnvImpl.h
M libc/src/__support/FPUtil/nearest_integer.h
M libc/src/__support/FPUtil/sqrt.h
M libc/src/string/memory_utils/aarch64/inline_bcmp.h
M libc/src/string/memory_utils/aarch64/inline_memcmp.h
M libc/src/string/memory_utils/aarch64/inline_memmove.h
M libc/src/string/memory_utils/aarch64/inline_memset.h
M libc/src/string/memory_utils/inline_bcmp.h
M libc/src/string/memory_utils/inline_memcmp.h
M libc/src/string/memory_utils/inline_memset.h
M libc/src/string/memory_utils/op_aarch64.h
Log Message:
-----------
[libc] Add support for string/memory_utils functions for AArch64 without HW FP/SIMD (#137592)
Add conditional compilation to add support for AArch64 without vector
registers and/or hardware FPUs by using the generic implementation.
**Context:**
A few functions were hard-coded to use vector registers/hardware FPUs.
This meant that libc would not compile on architectures that did not
support these features. This fix falls back on the generic
implementation if a feature is not supported.
Commit: f33dc8e4388cb1cc6a9212bc0618542c80b5c1ee
https://github.com/llvm/llvm-project/commit/f33dc8e4388cb1cc6a9212bc0618542c80b5c1ee
Author: Aaron Ballman <aaron at aaronballman.com>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M clang/test/Sema/warn-duplicate-decl-specifier.c
Log Message:
-----------
Add additional test coverage
Test was requested via post-commit review
Commit: 74ca51eac39dbed18dbcbcd0f00b50562b90361f
https://github.com/llvm/llvm-project/commit/74ca51eac39dbed18dbcbcd0f00b50562b90361f
Author: Rahul Joshi <rjoshi at nvidia.com>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M llvm/include/llvm/TableGen/Record.h
M llvm/lib/TableGen/Record.cpp
Log Message:
-----------
[NFC][TableGen] Use private inheritance for TrailingObjects (#138027)
- Use private inheritance for `TrailingObjects` as suggested in the
documentation for `TrailingObjects` class.
- Move std::uninitialized_copy calls from various `get` functions to the
constructors of respective classes.
- Eliminate `NumArgNames` from `DagInit`. Its always equal to `NumArgs`.
- Eliminate unused `name_size/name_empty` from `DagInit`.
Commit: 9060ca01913776cbed78b03e72d7700adc2201b7
https://github.com/llvm/llvm-project/commit/9060ca01913776cbed78b03e72d7700adc2201b7
Author: Jay Foad <jay.foad at amd.com>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUCodeGenPrepare.cpp
M llvm/test/CodeGen/AMDGPU/codegen-prepare-addrspacecast-non-null.ll
Log Message:
-----------
[AMDGPU] Check for nonnull loads feeding addrspacecast (#138184)
Handle nonnull loads just like nonnull arguments when checking for
addrspacecasts that are known never null.
Commit: 5060f08c3a98c2e4976d7ec380d9d8ea1888a68c
https://github.com/llvm/llvm-project/commit/5060f08c3a98c2e4976d7ec380d9d8ea1888a68c
Author: John Brawn <john.brawn at arm.com>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/AArch64/AArch64InstrInfo.td
M llvm/test/CodeGen/AArch64/arm64-fast-isel-conversion-fallback.ll
M llvm/test/CodeGen/AArch64/atomicrmw-fmax.ll
M llvm/test/CodeGen/AArch64/atomicrmw-fmin.ll
M llvm/test/CodeGen/AArch64/bf16-instructions.ll
M llvm/test/CodeGen/AArch64/bf16_fast_math.ll
M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-fcopysign.ll
Log Message:
-----------
[AArch64] Use pattern to select bf16 fpextend (#137212)
Currently bf16 fpextend is lowered to a vector shift. Instead leave it
as fpextend and have an instruction selection pattern which selects to a
shift later. Doing this means that DAGCombiner patterns for fpextend
will be applied, leading to better codegen. It also means that in some
situations we use a mov instruction where we previously have a dup
instruction, but I don't think this makes any difference.
Commit: 41035f4aa8139353a532509e5d4406dbb07446ac
https://github.com/llvm/llvm-project/commit/41035f4aa8139353a532509e5d4406dbb07446ac
Author: Ivan Ho <ivan.ho at cl.cam.ac.uk>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M mlir/CMakeLists.txt
M mlir/cmake/modules/CMakeLists.txt
A mlir/cmake/modules/IRDLToCpp.cmake
M mlir/cmake/modules/MLIRConfig.cmake.in
M mlir/include/mlir/Dialect/IRDL/IR/IRDLOps.td
M mlir/include/mlir/InitAllTranslations.h
A mlir/include/mlir/Target/IRDLToCpp/IRDLToCpp.h
A mlir/include/mlir/Target/IRDLToCpp/TranslationRegistration.h
M mlir/lib/Dialect/IRDL/IR/IRDL.cpp
M mlir/lib/Target/CMakeLists.txt
A mlir/lib/Target/IRDLToCpp/CMakeLists.txt
A mlir/lib/Target/IRDLToCpp/IRDLToCpp.cpp
A mlir/lib/Target/IRDLToCpp/Templates/DialectDecl.txt
A mlir/lib/Target/IRDLToCpp/Templates/DialectDef.txt
A mlir/lib/Target/IRDLToCpp/Templates/Header.txt
A mlir/lib/Target/IRDLToCpp/Templates/PerOperationDecl.txt
A mlir/lib/Target/IRDLToCpp/Templates/PerOperationDef.txt
A mlir/lib/Target/IRDLToCpp/Templates/TypeDecl.txt
A mlir/lib/Target/IRDLToCpp/Templates/TypeDef.txt
A mlir/lib/Target/IRDLToCpp/Templates/TypeHeaderDecl.txt
A mlir/lib/Target/IRDLToCpp/Templates/TypeHeaderDef.txt
A mlir/lib/Target/IRDLToCpp/TemplatingUtils.h
A mlir/lib/Target/IRDLToCpp/TranslationRegistration.cpp
M mlir/test/Dialect/IRDL/invalid.irdl.mlir
A mlir/test/Dialect/IRDL/invalid_names.irdl.mlir
M mlir/test/Dialect/IRDL/regions-ops.irdl.mlir
M mlir/test/lib/Dialect/CMakeLists.txt
A mlir/test/lib/Dialect/TestIRDLToCpp/CMakeLists.txt
A mlir/test/lib/Dialect/TestIRDLToCpp/TestIRDLToCppDialect.cpp
A mlir/test/lib/Dialect/TestIRDLToCpp/TestIRDLToCppDialect.h
A mlir/test/lib/Dialect/TestIRDLToCpp/test.testd.mlir
A mlir/test/lib/Dialect/TestIRDLToCpp/test_conversion.testd.mlir
A mlir/test/lib/Dialect/TestIRDLToCpp/test_irdl_to_cpp.irdl.mlir
A mlir/test/lib/Dialect/TestIRDLToCpp/test_irdl_to_cpp_invalid_unsupported_types.irdl.mlir
M mlir/test/tblgen-to-irdl/TestDialect.td
A mlir/tools/mlir-irdl-to-cpp/CMakeLists.txt
A mlir/tools/mlir-irdl-to-cpp/mlir-irdl-to-cpp.cpp
M mlir/tools/mlir-opt/CMakeLists.txt
M mlir/tools/mlir-opt/mlir-opt.cpp
Log Message:
-----------
[MLIR][IRDL] Added IRDL to C++ Translation (#133982)
This PR introduces a new tool, mlir-irdl-to-cpp, that converts IRDL to
C++ definitions.
The C++ definitions allow use of the IRDL-defined dialect in MLIR C++
infrastructure, enabling the use of conversion patterns with IRDL
dialects for example. This PR also adds CMake utilities to easily
integrate the IRDL dialects into MLIR projects.
Note that most IRDL features are not supported. In general, we are only
able to define simple types and operations.
- The only type constraint supported is `irdl.any`.
- Variadic operands and results are not supported.
- Verifiers for the IRDL constraints are not generated.
- Attributes are not supported.
---------
Co-authored-by: Théo Degioanni <theo.degioanni.llvm.deluge062 at simplelogin.fr>
Co-authored-by: Fehr Mathieu <mathieu.fehr at gmail.com>
Commit: 26a1366380796f95f308faab5010b019c4b75b10
https://github.com/llvm/llvm-project/commit/26a1366380796f95f308faab5010b019c4b75b10
Author: Pavel Labath <pavel at labath.sk>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M lldb/source/Plugins/ExpressionParser/Clang/ClangASTMetadata.cpp
M lldb/source/Plugins/ExpressionParser/Clang/ClangASTMetadata.h
M lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp
M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp
M lldb/test/API/lang/cpp/dynamic-value/Makefile
M lldb/test/API/lang/cpp/dynamic-value/TestDynamicValue.py
M lldb/test/API/lang/cpp/dynamic-value/a.h
A lldb/test/API/lang/cpp/dynamic-value/forward-a.cpp
M lldb/test/API/lang/cpp/dynamic-value/pass-to-base.cpp
Log Message:
-----------
[lldb] Fix dynamic type resolution for types parsed from declarations (#137974)
This fixes a regression caused by us starting to parse types from
declarations. The code in TypeSystemClang was assuming that the value
held in ClangASTMetadata was authoritative, but this isn't (and cannot)
be the case when the type is parsed from a forward-declaration.
For the fix, I add a new "don't know" state to ClangASTMetadata, and
make sure DWARFASTParserClang sets it only when it encounters a forward
declaration. In this case, the type system will fall back to completing
the type.
This does mean that we will be completing more types than before, but
I'm hoping this will offset by the fact that we don't search for
definition DIEs eagerly. In particular, I don't expect it to make a
difference in -fstandalone-debug scenarios, since types will nearly
always be present as definitions.
To avoid this cost, we'd need to create some sort of a back channel to
query the DWARFASTParser about the dynamicness of the type without
actually completing it. I'd like to avoid that if it is not necessary.
Commit: cffb8aee140ce0c022060941b7b60025dd70395c
https://github.com/llvm/llvm-project/commit/cffb8aee140ce0c022060941b7b60025dd70395c
Author: Alexander Peskov <apeskov at nvidia.com>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
A llvm/test/DebugInfo/NVPTX/debug-bool-var.ll
Log Message:
-----------
[DEBUGINFO] Propagate debug metadata for sext SDNode. (#135971)
In some cases of chained `sext` operators the debug metadata can be
missed. This patch propagates proper metadata to resulting node.
Particular case of issue is NVPTX codegen for function with bool local
variable:
```
void test(int i) {
bool xyz = i == 0;
foo(i);
}
```
---------
Signed-off-by: Alexander Peskov <apeskov at nvidia.com>
Commit: f6ac5276ee364b3b22ce746439e0ce3224dc9091
https://github.com/llvm/llvm-project/commit/f6ac5276ee364b3b22ce746439e0ce3224dc9091
Author: Ross Brunton <ross at codeplay.com>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M offload/liboffload/include/OffloadImpl.hpp
M offload/liboffload/src/OffloadImpl.cpp
M offload/unittests/OffloadAPI/kernel/olGetKernel.cpp
Log Message:
-----------
[Offload] Ensure all `llvm::Error`s are handled (#137339)
`llvm::Error`s containing errors must be explicitly handled or an assert
will be raised. With this change, `ol_impl_result_t` can accept and
consume an `llvm::Error` for errors raised by PluginInterface that have
multiple causes and other places now call `llvm::consumeError`.
Note that there is currently no facility for PluginInterface to
communicate exact error codes, but the constructor is designed in
such a way that it can be easily added later. This MR is to
convert a crash into an error code.
A new test was added, however due to the aforementioned issue with
error codes, it does not pass and instead is marked as a skip.
Commit: 7d01b85c2a0aa8bc91f731cfeb2a7b6885b8d04a
https://github.com/llvm/llvm-project/commit/7d01b85c2a0aa8bc91f731cfeb2a7b6885b8d04a
Author: David Spickett <david.spickett at linaro.org>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M lldb/include/lldb/Target/Memory.h
M lldb/include/lldb/Target/Process.h
M lldb/source/Commands/CommandObjectProcess.cpp
M lldb/source/Commands/Options.td
M lldb/source/Target/Memory.cpp
M lldb/source/Target/Process.cpp
M lldb/source/Target/TargetProperties.td
M lldb/test/API/commands/settings/TestSettings.py
A lldb/test/Shell/Expr/TestExprWithSideEffect.cpp
A lldb/test/Shell/Expr/TestExprWithSideEffectOnConvenienceVar.cpp
A lldb/test/Shell/Expr/TestExprWithSideEffectOnConvenienceVarWindows.cpp
A lldb/test/Shell/Expr/TestProcessModificationIdOnExpr.cpp
Log Message:
-----------
Reland "[lldb] Do not bump memory modificator ID when "internal" debugger memory is updated (#129092)"
This reverts commit daa4061d61216456baa83ab404e096200e327fb4.
Original PR https://github.com/llvm/llvm-project/pull/129092.
I have restricted the test to X86 Windows because it turns out the only
reason that `expr x.get()` would change m_memory_id is that on x86 we
have to write the return address to the stack in ABIWindows_X86_64::PrepareTrivialCall:
```
// Save return address onto the stack
if (!process_sp->WritePointerToMemory(sp, return_addr, error))
return false;
```
This is not required on AArch64 so m_memory_id was not changed:
```
(lldb) expr x.get()
(int) $0 = 0
(lldb) process status -d
Process 15316 stopped
* thread #1, stop reason = Exception 0x80000003 encountered at address 0x7ff764a31034
frame #0: 0x00007ff764a31038 TestProcessModificationIdOnExpr.cpp.tmp`main at TestProcessModificationIdOnExpr.cpp:35
32 __builtin_debugtrap();
33 __builtin_debugtrap();
34 return 0;
-> 35 }
36
37 // CHECK-LABEL: process status -d
38 // CHECK: m_stop_id: 2
ProcessModID:
m_stop_id: 3
m_last_natural_stop_id: 0
m_resume_id: 0
m_memory_id: 0
```
Really we should find a better way to force a memory write here, but
I can't think of one right now.
Commit: 543f112e148a81de290d099f10784dc3ff698aa4
https://github.com/llvm/llvm-project/commit/543f112e148a81de290d099f10784dc3ff698aa4
Author: Aaron Ballman <aaron at aaronballman.com>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Basic/DiagnosticGroups.td
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/lib/Sema/JumpDiagnostics.cpp
M clang/lib/Sema/SemaDecl.cpp
A clang/test/Sema/warn-jump-bypasses-init.c
Log Message:
-----------
[C] Add -Wjump-bypasses-init (#138009)
We already diagnose when a jump bypasses initialization in C++ because
such code is ill-formed there. However, we were not using this to
diagnose those same jumps in C.
-Wjump-bypasses-init is grouped under -Wc++-compat and diagnoses this
situation as a compatibility issue with C++. This diagnostic is off by
default.
The diagnostic could perhaps be enabled by default for C, but due to the
design of jump diagnostic handling, it not a trivial task. For now,
we'll add the diagnostic as off-by-default so we get incremental
improvement, but a follow-up could try to refactor jump diagnostics so
we can enable this by default in C and have it as a C++ compatibility
diagnostic as well.
Commit: a4ceac7e3e04c32cb3e334eb89b54d8e99a298f8
https://github.com/llvm/llvm-project/commit/a4ceac7e3e04c32cb3e334eb89b54d8e99a298f8
Author: Aaron Ballman <aaron at aaronballman.com>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/AST/ASTContext.h
M clang/include/clang/AST/ASTStructuralEquivalence.h
M clang/include/clang/Basic/DiagnosticASTKinds.td
M clang/include/clang/Parse/Parser.h
M clang/include/clang/Sema/Sema.h
M clang/lib/AST/ASTContext.cpp
M clang/lib/AST/ASTImporter.cpp
M clang/lib/AST/ASTStructuralEquivalence.cpp
M clang/lib/Parse/ParseDecl.cpp
M clang/lib/Sema/SemaDecl.cpp
M clang/lib/Sema/SemaType.cpp
M clang/lib/Serialization/ASTReader.cpp
M clang/lib/Serialization/ASTReaderDecl.cpp
M clang/test/ASTMerge/struct/test.c
A clang/test/C/C23/n3037.c
A clang/test/C/C23/n3037_1.c
M clang/test/C/drs/dr1xx.c
M clang/unittests/AST/StructuralEquivalenceTest.cpp
M clang/www/c_status.html
Log Message:
-----------
[C23] Implement WG14 N3037 (#132939)
This changes the type compatibility rules so that it is permitted to
redefine tag types within the same TU so long as they are equivalent
definitions.
It is intentionally not being exposed as an extension in older C
language modes. GCC does not do so and the feature doesn't seem
compelling enough to warrant it.
Commit: 98e31b75f1ad7bd838d11b1ab5f610965ed6e64e
https://github.com/llvm/llvm-project/commit/98e31b75f1ad7bd838d11b1ab5f610965ed6e64e
Author: David Green <david.green at arm.com>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64InstrInfo.td
Log Message:
-----------
[AArch64] Cleanup SDValue(N,0) to Op in tablegen PatFrag. NFC
Commit: 0b2ab11321d2b400987e9ade28a221dff67aea7d
https://github.com/llvm/llvm-project/commit/0b2ab11321d2b400987e9ade28a221dff67aea7d
Author: Aaron Ballman <aaron at aaronballman.com>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M clang/lib/Basic/IdentifierTable.cpp
Log Message:
-----------
Simplify implementation; NFC
Suggestion came via post-commit review feedback
Commit: e66592509b7d56c8a6db8883be2257325f1d7b56
https://github.com/llvm/llvm-project/commit/e66592509b7d56c8a6db8883be2257325f1d7b56
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M llvm/include/llvm/IR/Function.h
M llvm/lib/IR/Function.cpp
A llvm/test/tools/llvm-reduce/reduce-instructions-to-return-nonvoid-noncallee-use.ll
A llvm/test/tools/llvm-reduce/reduce-instructions-to-return.ll
M llvm/test/tools/llvm-reduce/reduce-operands-fp.ll
M llvm/test/tools/llvm-reduce/reduce-operands-int.ll
M llvm/test/tools/llvm-reduce/reduce-operands-ptr.ll
M llvm/tools/llvm-reduce/CMakeLists.txt
M llvm/tools/llvm-reduce/DeltaManager.cpp
M llvm/tools/llvm-reduce/DeltaPasses.def
A llvm/tools/llvm-reduce/deltas/ReduceValuesToReturn.cpp
A llvm/tools/llvm-reduce/deltas/ReduceValuesToReturn.h
Log Message:
-----------
llvm-reduce: Add values to return reduction (#132686)
In void functions, try to replace instruction uses
with a new non-void return. If the return type matches
the instruction, also try to directly return it.
This handles most of the cases, but doesn't try to handle
all of the weird exception related terminators.
Also doesn't try to replace argument uses, although it could. We
could also handle cases where we can insert a simple cast to an
original return value. I didn't think too hard about where to put this
in the default pass order. In many cases it obviates the need for most
of the CFG folds, but I've left it near the end initially.
I also think this is too aggressive about removing dead code, and
should leave existing dead code alone. I'm also not sure why we have
both "removeUnreachableBlocks" and EliminateUnreachableBlocks" in Utils.
Fixes #66039, fixes #107327
Commit: aa4b44e69979b12d85e2b88cd8c924ce2e800b96
https://github.com/llvm/llvm-project/commit/aa4b44e69979b12d85e2b88cd8c924ce2e800b96
Author: Nick Sarnie <nick.sarnie at intel.com>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M clang/lib/CodeGen/CGCall.cpp
Log Message:
-----------
[clang][NFC] Fix some clang-format mistakes (#138036)
Fixes for https://github.com/llvm/llvm-project/pull/138000
Signed-off-by: Sarnie, Nick <nick.sarnie at intel.com>
Commit: 26bc8b0ffa4335fa18359de7c224f1460a8c102c
https://github.com/llvm/llvm-project/commit/26bc8b0ffa4335fa18359de7c224f1460a8c102c
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
A llvm/test/tools/llvm-reduce/reduce-values-to-return-args.ll
M llvm/tools/llvm-reduce/DeltaPasses.def
M llvm/tools/llvm-reduce/deltas/ReduceValuesToReturn.cpp
M llvm/tools/llvm-reduce/deltas/ReduceValuesToReturn.h
Log Message:
-----------
llvm-reduce: Reduce with early return of arguments (#133627)
Extend the instruction -> return reduction with one that inserts
return of function arguments. Not sure how useful this really is. This
has more freedom since we could insert the return anywhere in the function,
but this just inserts the return in the entry block.
Commit: e3a81df38cb67d472d66db3e918a46bd534ea11c
https://github.com/llvm/llvm-project/commit/e3a81df38cb67d472d66db3e918a46bd534ea11c
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M llvm/test/tools/llvm-reduce/reduce-instructions-to-return.ll
A llvm/test/tools/llvm-reduce/reduce-values-to-return-new-return-type.ll
M llvm/tools/llvm-reduce/deltas/ReduceValuesToReturn.cpp
Log Message:
-----------
llvm-reduce: Change function return types if function is not called (#134035)
Extend the early return on value reduction to mutate the function return
type if the function has no call uses. This could be generalized to rewrite
cases where all callsites are used, but it turns out that complicates the
visitation order given we try to compute all opportunities up front.
This is enough to cleanup the common case where we end up with one
function with a return of an uninteresting constant.
Commit: 1ab70fed622bcbd4a679f66b1c638cdd46f0365c
https://github.com/llvm/llvm-project/commit/1ab70fed622bcbd4a679f66b1c638cdd46f0365c
Author: Reilly Brogan <reilly at reillybrogan.com>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M flang/CMakeLists.txt
M flang/tools/f18/CMakeLists.txt
Log Message:
-----------
[flang] Enable installing binding header and modules as part of distribution (#133962)
This allows the C/Fortran interop header (`ISO_Fortran_binding.h`) and
the Fortran module interfaces (`.mod` files) to be installed with
`LLVM_DISTRIBUTION_COMPONENTS`.
Signed-off-by: Reilly Brogan <reilly at reillybrogan.com>
Commit: 65438787c7729d84964a25c2db5f7996dd1343cc
https://github.com/llvm/llvm-project/commit/65438787c7729d84964a25c2db5f7996dd1343cc
Author: Shafik Yaghmour <shafik.yaghmour at intel.com>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M clang/lib/Sema/SemaExprObjC.cpp
Log Message:
-----------
[Clang][NFC] assert IFaceT in SemaObjC::HandleExprPropertyRefExpr (#138026)
Static analysis flagged that we use IFaceT in HandleExprPropertyRefExpr
without checking even though getInterfaceType() can return nullptr. The
comments make it clear the assumption is that we will always have an
interface, so we will document this via an assert.
Fixes: https://github.com/llvm/llvm-project/issues/134954
Commit: a18adb2358cac0f14cce5faf27f607c2b1601ed9
https://github.com/llvm/llvm-project/commit/a18adb2358cac0f14cce5faf27f607c2b1601ed9
Author: Andre Kuhlenschmidt <andre.kuhlenschmidt at gmail.com>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M flang/lib/Semantics/check-declarations.cpp
M flang/lib/Semantics/resolve-names.cpp
M flang/lib/Semantics/semantics.cpp
M flang/test/Lower/OpenMP/cray-pointers01.f90
M flang/test/Semantics/declarations08.f90
A flang/test/Semantics/resolve125.f90
Log Message:
-----------
[flang] fix scoping of cray pointer declarations and add check for initialization (#136776)
This PR:
- makes Cray pointer declarations shadow previous bindings instead of
modifying them,
- errors when the pointee of a cray pointee has the SAVE attribute, and
- adds a missing newline after dumping the list of cray pointers in a
scope.
Closes #135579
Commit: 04e32b8a33bbbd184114aba23c017706b957fb95
https://github.com/llvm/llvm-project/commit/04e32b8a33bbbd184114aba23c017706b957fb95
Author: Théo Degioanni <theo.degioanni.llvm.deluge062 at simplelogin.fr>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M mlir/CMakeLists.txt
M mlir/cmake/modules/CMakeLists.txt
R mlir/cmake/modules/IRDLToCpp.cmake
M mlir/cmake/modules/MLIRConfig.cmake.in
M mlir/include/mlir/Dialect/IRDL/IR/IRDLOps.td
M mlir/include/mlir/InitAllTranslations.h
R mlir/include/mlir/Target/IRDLToCpp/IRDLToCpp.h
R mlir/include/mlir/Target/IRDLToCpp/TranslationRegistration.h
M mlir/lib/Dialect/IRDL/IR/IRDL.cpp
M mlir/lib/Target/CMakeLists.txt
R mlir/lib/Target/IRDLToCpp/CMakeLists.txt
R mlir/lib/Target/IRDLToCpp/IRDLToCpp.cpp
R mlir/lib/Target/IRDLToCpp/Templates/DialectDecl.txt
R mlir/lib/Target/IRDLToCpp/Templates/DialectDef.txt
R mlir/lib/Target/IRDLToCpp/Templates/Header.txt
R mlir/lib/Target/IRDLToCpp/Templates/PerOperationDecl.txt
R mlir/lib/Target/IRDLToCpp/Templates/PerOperationDef.txt
R mlir/lib/Target/IRDLToCpp/Templates/TypeDecl.txt
R mlir/lib/Target/IRDLToCpp/Templates/TypeDef.txt
R mlir/lib/Target/IRDLToCpp/Templates/TypeHeaderDecl.txt
R mlir/lib/Target/IRDLToCpp/Templates/TypeHeaderDef.txt
R mlir/lib/Target/IRDLToCpp/TemplatingUtils.h
R mlir/lib/Target/IRDLToCpp/TranslationRegistration.cpp
M mlir/test/Dialect/IRDL/invalid.irdl.mlir
R mlir/test/Dialect/IRDL/invalid_names.irdl.mlir
M mlir/test/Dialect/IRDL/regions-ops.irdl.mlir
M mlir/test/lib/Dialect/CMakeLists.txt
R mlir/test/lib/Dialect/TestIRDLToCpp/CMakeLists.txt
R mlir/test/lib/Dialect/TestIRDLToCpp/TestIRDLToCppDialect.cpp
R mlir/test/lib/Dialect/TestIRDLToCpp/TestIRDLToCppDialect.h
R mlir/test/lib/Dialect/TestIRDLToCpp/test.testd.mlir
R mlir/test/lib/Dialect/TestIRDLToCpp/test_conversion.testd.mlir
R mlir/test/lib/Dialect/TestIRDLToCpp/test_irdl_to_cpp.irdl.mlir
R mlir/test/lib/Dialect/TestIRDLToCpp/test_irdl_to_cpp_invalid_unsupported_types.irdl.mlir
M mlir/test/tblgen-to-irdl/TestDialect.td
R mlir/tools/mlir-irdl-to-cpp/CMakeLists.txt
R mlir/tools/mlir-irdl-to-cpp/mlir-irdl-to-cpp.cpp
M mlir/tools/mlir-opt/CMakeLists.txt
M mlir/tools/mlir-opt/mlir-opt.cpp
Log Message:
-----------
Revert "[MLIR][IRDL] Added IRDL to C++ Translation" (#138285)
Reverts llvm/llvm-project#133982
Commit: 580da48a93ea3065cced426bb37df65a933c21f7
https://github.com/llvm/llvm-project/commit/580da48a93ea3065cced426bb37df65a933c21f7
Author: Anchu Rajendran S <asudhaku at amd.com>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M clang/include/clang/Driver/Options.td
M clang/lib/Driver/ToolChains/Flang.cpp
M flang/include/flang/Frontend/CodeGenOptions.def
M flang/include/flang/Optimizer/Transforms/Passes.td
M flang/include/flang/Tools/CrossToolHelpers.h
M flang/lib/Frontend/CompilerInvocation.cpp
M flang/lib/Optimizer/Passes/Pipelines.cpp
M flang/lib/Optimizer/Transforms/FunctionAttr.cpp
A flang/test/Driver/func-attr-instrument-functions.f90
Log Message:
-----------
[flang][flang-driver] Support flag -finstrument-functions (#137996)
Commit: c54122fe538f0edbf5a7a6f2a62bf4973a00262c
https://github.com/llvm/llvm-project/commit/c54122fe538f0edbf5a7a6f2a62bf4973a00262c
Author: Xiang Li <python3kgae at outlook.com>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M mlir/lib/IR/AsmPrinter.cpp
M mlir/test/IR/pretty-resources-print.mlir
Log Message:
-----------
[NFC][mlir][AsmPrinter] Don't compute resourceStr when --mlir-elide-resource-strings-if-larger=0 (#138275)
When skipping the printing of large DenseResourceElementsAttr with
--mlir-elide-resource-strings-if-larger,
we need to compute resourceStr to check if the string is small enough to
print.
With --mlir-elide-resource-strings-if-larger set to 0, nothing should be
printed, but we still compute the size.
This change will allow an early return when
--mlir-elide-resource-strings-if-larger=0, making the print process
faster.
Commit: 9a26b2903bd1c3fbb3a71747f9c53aec93158595
https://github.com/llvm/llvm-project/commit/9a26b2903bd1c3fbb3a71747f9c53aec93158595
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlanUtils.h
M llvm/test/Transforms/LoopVectorize/AArch64/conditional-branches-cost.ll
M llvm/test/Transforms/LoopVectorize/uniform_across_vf_induction1.ll
M llvm/test/Transforms/LoopVectorize/uniform_across_vf_induction1_and.ll
M llvm/test/Transforms/LoopVectorize/uniform_across_vf_induction1_div_urem.ll
M llvm/test/Transforms/LoopVectorize/uniform_across_vf_induction1_lshr.ll
M llvm/test/Transforms/LoopVectorize/uniform_across_vf_induction2.ll
Log Message:
-----------
[VPlan] Don't rely on region check in isUniformAfterVectorization. (#137883)
Generalize isUniformAfterVectorization check to not rely on the region,
but purely work on checking operands and opcodes.
This will be needed when disolving the vector region
(https://github.com/llvm/llvm-project/pull/117506) and improves codegen
slightly in some cases.
PR: https://github.com/llvm/llvm-project/pull/137883
Commit: ee3610efb511ec0a8d5ebd2016ce23b4b4344cd1
https://github.com/llvm/llvm-project/commit/ee3610efb511ec0a8d5ebd2016ce23b4b4344cd1
Author: Aaron Ballman <aaron at aaronballman.com>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M clang/lib/AST/ASTStructuralEquivalence.cpp
Log Message:
-----------
Remove unused function; NFC
Commit: ace189b23b4f4ce6dc7b6ae31b25943f89a14aa0
https://github.com/llvm/llvm-project/commit/ace189b23b4f4ce6dc7b6ae31b25943f89a14aa0
Author: Dmitry Vasilyev <dvassiliev at accesssoftek.com>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M lldb/test/API/tools/lldb-server/TestLldbGdbServer.py
Log Message:
-----------
[lldb][test] Disable flaky TestLldbGdbServer.py (#138263)
See #138085 for details.
Commit: 52d2b589b2d7adc3e2b4ea503df4131e088de61f
https://github.com/llvm/llvm-project/commit/52d2b589b2d7adc3e2b4ea503df4131e088de61f
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M llvm/lib/Transforms/Utils/SimplifyIndVar.cpp
M llvm/test/Analysis/ScalarEvolution/guards.ll
M llvm/test/Transforms/IndVarSimplify/canonicalize-cmp.ll
M llvm/test/Transforms/IndVarSimplify/cycled_phis.ll
M llvm/test/Transforms/IndVarSimplify/floating-point-iv.ll
M llvm/test/Transforms/IndVarSimplify/floating-point-small-iv.ll
M llvm/test/Transforms/IndVarSimplify/implied-via-addition.ll
M llvm/test/Transforms/IndVarSimplify/iv-sext.ll
M llvm/test/Transforms/IndVarSimplify/lftr.ll
M llvm/test/Transforms/IndVarSimplify/pr102597.ll
M llvm/test/Transforms/IndVarSimplify/pr126012.ll
M llvm/test/Transforms/IndVarSimplify/pr66986.ll
M llvm/test/Transforms/IndVarSimplify/preserving-debugloc.ll
M llvm/test/Transforms/IndVarSimplify/scev-invalidation.ll
M llvm/test/Transforms/IndVarSimplify/shift-range-checks.ll
M llvm/test/Transforms/LoopDeletion/invalidate-scev-after-hoisting.ll
Log Message:
-----------
[IndVarSimplify] Set samesign when converting signed comparison to unsigned comparison in eliminateIVComparison. (#138215)
Commit: d6dbe7799e638702309e23fc7b73d4be2231e2ac
https://github.com/llvm/llvm-project/commit/d6dbe7799e638702309e23fc7b73d4be2231e2ac
Author: Shilei Tian <i at tianshilei.me>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M llvm/include/llvm/Pass.h
M llvm/lib/Target/AMDGPU/AMDGPU.h
M llvm/lib/Target/AMDGPU/AMDGPUAttributor.cpp
M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
M llvm/test/LTO/AMDGPU/closed-world-assumption.ll
Log Message:
-----------
[AMDGPU][Attributor] Add `ThinOrFullLTOPhase` as an argument (#123994)
Commit: 4ec473e0e19c1586f27ebc146249b10acb3b8769
https://github.com/llvm/llvm-project/commit/4ec473e0e19c1586f27ebc146249b10acb3b8769
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M llvm/lib/CodeGen/GlobalMergeFunctions.cpp
M llvm/lib/Target/RISCV/RISCVLoadStoreOptimizer.cpp
M llvm/lib/Target/SPIRV/SPIRVAPI.cpp
M llvm/lib/Target/SPIRV/SPIRVSubtarget.cpp
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/utils/TableGen/DAGISelMatcherOpt.cpp
Log Message:
-----------
[llvm] Remove redundant calls to std::unique_ptr<T>::get (NFC) (#138236)
Commit: 32ca368c1e5de75f8800a45de883ee93d5854c91
https://github.com/llvm/llvm-project/commit/32ca368c1e5de75f8800a45de883ee93d5854c91
Author: Min-Yih Hsu <min.hsu at sifive.com>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M llvm/lib/Target/PowerPC/PPC.td
Log Message:
-----------
[PPC][NFC] Remove duplicate processor feature from pwr9/10/11 and future (#137903)
The new TableGen warning introduced in
https://github.com/llvm/llvm-project/commit/951292be2c21bc903e63729338d872a878d2d49c
shows the following warnings:
```
warning: Processor future contains duplicate feature 'predictable-select-expensive'
warning: Processor pwr10 contains duplicate feature 'predictable-select-expensive'
warning: Processor pwr11 contains duplicate feature 'predictable-select-expensive'
warning: Processor pwr9 contains duplicate feature 'predictable-select-expensive'
```
Commit: e777e7a5d21b2fb3e77f16b86c4531f35a0a5cac
https://github.com/llvm/llvm-project/commit/e777e7a5d21b2fb3e77f16b86c4531f35a0a5cac
Author: Erich Keane <ekeane at nvidia.com>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/lib/Sema/SemaOpenACCClause.cpp
M clang/test/SemaOpenACC/compute-construct-num_gangs-clause.c
M clang/test/SemaOpenACC/compute-construct-num_workers-clause.c
M clang/test/SemaOpenACC/compute-construct-vector_length-clause.c
M clang/test/SemaOpenACC/loop-construct-collapse-clause.cpp
M clang/test/SemaOpenACC/loop-construct-tile-clause.cpp
Log Message:
-----------
[OpenACC] Implement better dupe catching for device_type clauses (#138196)
Previously we just checked duplicates for a handful of clauses between
active device_type clauses. However, after looking into the
implementation for 'collapse', I discovered that duplicate device_type
identifiers with duplicate versions of htese clause are problematic.
This patch corrects this and now catches these conflicts.
Commit: 7220fdad0cbf42a9d134e157ba5821192327f4f3
https://github.com/llvm/llvm-project/commit/7220fdad0cbf42a9d134e157ba5821192327f4f3
Author: Asher Mancinelli <ashermancinelli at gmail.com>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M flang/include/flang/Optimizer/Dialect/FIROps.h
M flang/lib/Optimizer/Dialect/FIROps.cpp
M flang/lib/Optimizer/HLFIR/IR/HLFIROps.cpp
M flang/test/Fir/invalid.fir
M flang/test/Fir/volatile.fir
M flang/test/Fir/volatile2.fir
M flang/test/HLFIR/volatile.fir
M flang/test/HLFIR/volatile1.fir
M flang/test/HLFIR/volatile2.fir
M flang/test/HLFIR/volatile3.fir
M flang/test/HLFIR/volatile4.fir
A flang/test/Lower/volatile-allocatable1.f90
M flang/test/Lower/volatile-openmp.f90
M flang/test/Lower/volatile-string.f90
M flang/test/Lower/volatile1.f90
M flang/test/Lower/volatile2.f90
M flang/test/Lower/volatile3.f90
M flang/test/Lower/volatile4.f90
Log Message:
-----------
[flang] Hide strict volatility checks behind flag (#138183)
Enabling volatility lowering by default revealed some issues in lowering
and op verification.
For example, given volatile variable of a nested type, accessing
structure members of a structure member would result in a volatility
mismatch when the inner structure member is designated (and thus a
verification error at compile time).
In other cases, I found correct codegen when the checks were disabled,
also related to allocatable types and how we handle volatile references
of boxes.
This hides the strict verification of fir and hlfir ops behind a flag so
I can iteratively improve lowering of volatile variables without causing
compile-time failures, keeping the strict verification on when running
tests.
Commit: 39e6e888a8155583713e1b8b256119a2be7902e0
https://github.com/llvm/llvm-project/commit/39e6e888a8155583713e1b8b256119a2be7902e0
Author: John Harrison <harjohn at google.com>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M lldb/tools/lldb-dap/README.md
M lldb/tools/lldb-dap/package.json
M lldb/tools/lldb-dap/src-ts/debug-configuration-provider.ts
Log Message:
-----------
[lldb-dap] Adding defaults to VSCode settings for user level defaults. (#137694)
This adds support for loading user level defaults in VSCode. The
defaults are stored as basic settings that are loaded when the debug
configuration is resolved. Not all settings are currently supported, I
limited it to settings that would likely apply across multiple
launch.json configurations.
This should resolve #134564
Commit: 58addfbbcc520d925e93f33b2c68dcf657496828
https://github.com/llvm/llvm-project/commit/58addfbbcc520d925e93f33b2c68dcf657496828
Author: Richard Howell <rmaz at users.noreply.github.com>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M lld/MachO/InputFiles.cpp
A lld/test/MachO/reexport-without-rpath.s
Log Message:
-----------
[lld] handle re-exports for full framework paths (#137989)
Framework load paths can be either the top level framework name, or
subpaths of the framework bundle pointing to specific framework binary
versions. Extend the framework lookup logic to handle the latter case.
Commit: a635bbf1418e351651ed86230eab3d13f871f971
https://github.com/llvm/llvm-project/commit/a635bbf1418e351651ed86230eab3d13f871f971
Author: Aaron Ballman <aaron at aaronballman.com>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/lib/Sema/Sema.cpp
M clang/lib/Sema/SemaDecl.cpp
M clang/lib/Sema/SemaInit.cpp
M clang/test/Sema/sizeless-1.c
M clang/test/Sema/typedef-retain.c
M clang/test/Sema/warn-default-const-init.c
M clang/test/SemaOpenCL/invalid-block.cl
Log Message:
-----------
[C] Update the -Wdefault-const-init-unsafe wording (#138266)
This drops the "and is incompatible with C++" phrasing from the
diagnostic unless -Wc++-compat is explicitly passed. This makes the
diagnostic less confusing when it is on by default rather than enabled
because of C++ compatibility concerns
Commit: b5dbddd2004a42a8c80dc38e9571b4d29b395d17
https://github.com/llvm/llvm-project/commit/b5dbddd2004a42a8c80dc38e9571b4d29b395d17
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
Log Message:
-----------
[DAG] visitEXTRACT_SUBVECTOR - change fold helper methods to take operands instead of EXTRACT_SUBVECTOR node. NFC. (#138279)
Call with the individual subvector type, source vector and index operands instead of the original EXTRACT_SUBVECTOR node.
Some of these folds still assumed that EXTRACT_SUBVECTOR/INSERT_SUBVECTOR nodes could have variable indices, despite us moving to all constant indices some time ago - all of that code has now been simplified.
I've moved the narrowExtractedVectorBinOp call higher up, but it won't affect fold order - it didn't rely on the peekThroughBitcasts call, and worked on BinOps, not BUILD_VECTOR/INSERT_SUBVECTOR nodes.
Prep work to make it easier for more of these folds to work through BITCAST nodes.
Commit: 8313d2a8dbc5e23741d7c67c3b009fc3f6de4875
https://github.com/llvm/llvm-project/commit/8313d2a8dbc5e23741d7c67c3b009fc3f6de4875
Author: erichkeane <ekeane at nvidia.com>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/lib/Sema/SemaOpenACC.cpp
M clang/lib/Sema/SemaOpenACCClause.cpp
M clang/lib/Sema/SemaOpenACCClauseAppertainment.cpp
M clang/test/ParserOpenACC/parse-clauses.c
M clang/test/SemaOpenACC/atomic-construct.cpp
M clang/test/SemaOpenACC/combined-construct-auto_seq_independent-clauses.c
M clang/test/SemaOpenACC/combined-construct-default-clause.c
M clang/test/SemaOpenACC/combined-construct-default-clause.cpp
M clang/test/SemaOpenACC/combined-construct-device_type-clause.c
M clang/test/SemaOpenACC/combined-construct-gang-clause.cpp
M clang/test/SemaOpenACC/combined-construct-num_gangs-clause.c
M clang/test/SemaOpenACC/combined-construct-num_workers-clause.c
M clang/test/SemaOpenACC/combined-construct-reduction-clause.cpp
M clang/test/SemaOpenACC/combined-construct-self-clause.c
M clang/test/SemaOpenACC/combined-construct-self-clause.cpp
M clang/test/SemaOpenACC/combined-construct-vector-clause.cpp
M clang/test/SemaOpenACC/combined-construct-vector_length-clause.c
M clang/test/SemaOpenACC/combined-construct-worker-clause.cpp
M clang/test/SemaOpenACC/compute-construct-async-clause.c
M clang/test/SemaOpenACC/compute-construct-default-clause.c
M clang/test/SemaOpenACC/compute-construct-default-clause.cpp
M clang/test/SemaOpenACC/compute-construct-device_type-clause.c
M clang/test/SemaOpenACC/compute-construct-num_gangs-clause.c
M clang/test/SemaOpenACC/compute-construct-num_workers-clause.c
M clang/test/SemaOpenACC/compute-construct-reduction-clause.c
M clang/test/SemaOpenACC/compute-construct-reduction-clause.cpp
M clang/test/SemaOpenACC/compute-construct-self-clause.c
M clang/test/SemaOpenACC/compute-construct-self-clause.cpp
M clang/test/SemaOpenACC/compute-construct-vector_length-clause.c
M clang/test/SemaOpenACC/data-construct-async-clause.c
M clang/test/SemaOpenACC/data-construct-default-clause.c
M clang/test/SemaOpenACC/data-construct-device_type-clause.c
M clang/test/SemaOpenACC/data-construct-if-clause.c
M clang/test/SemaOpenACC/data-construct.cpp
M clang/test/SemaOpenACC/init-construct.cpp
M clang/test/SemaOpenACC/loop-construct-auto_seq_independent-clauses.c
M clang/test/SemaOpenACC/loop-construct-collapse-clause.cpp
M clang/test/SemaOpenACC/loop-construct-device_type-clause.c
M clang/test/SemaOpenACC/loop-construct-gang-clause.cpp
M clang/test/SemaOpenACC/loop-construct-reduction-clause.cpp
M clang/test/SemaOpenACC/loop-construct-tile-clause.cpp
M clang/test/SemaOpenACC/loop-construct-vector-clause.cpp
M clang/test/SemaOpenACC/loop-construct-worker-clause.cpp
M clang/test/SemaOpenACC/routine-construct-clauses.cpp
M clang/test/SemaOpenACC/set-construct.cpp
M clang/test/SemaOpenACC/shutdown-construct.cpp
M clang/test/SemaOpenACC/update-construct.cpp
Log Message:
-----------
[OpenACC] Fixup previous-clause diagnostics
Brought up in a previous review as a TODO, we could be better about how
we highlight what hte previous clause was, and how to show that the
'device_type' is the one being targetted. This patch rewords the
diagnostics and updates a massive number of tests.
Commit: 5d16a18c4bd0fed88086bc1e93e6fb6f1be4caab
https://github.com/llvm/llvm-project/commit/5d16a18c4bd0fed88086bc1e93e6fb6f1be4caab
Author: Snehasish Kumar <snehasishk at google.com>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M llvm/lib/IR/DebugInfoMetadata.cpp
M llvm/unittests/IR/MetadataTest.cpp
Log Message:
-----------
[Metadata] Return the valid DebugLoc if one of them is null with -pick-merged-source-locations. (#138148)
Previously when getMergedLocation was passed nullptr as one of the
parameters we returned nullptr. Change that behaviour to instead return
a valid DebugLoc. This is beneficial for binaries from which SamplePGO
profiles are obtained.
Commit: b752822c445b9fba1f59a2822c7b675561749dd4
https://github.com/llvm/llvm-project/commit/b752822c445b9fba1f59a2822c7b675561749dd4
Author: erichkeane <ekeane at nvidia.com>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M clang/lib/Sema/SemaOpenACCClauseAppertainment.cpp
Log Message:
-----------
[NFCI]Prospective fix for MVSC Build bot-
The previous code hits an assert inside the MSVC compiler version 16.8,
which is our minimum supported version. This patch looks on godbolt
like it avoids this crash, so submitting it to hopefully unbreak the
bot.
Commit: cb068dcec1b30528f0d06916911f55b4bd61b0bb
https://github.com/llvm/llvm-project/commit/cb068dcec1b30528f0d06916911f55b4bd61b0bb
Author: cor3ntin <corentinjabot at gmail.com>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/AST/ExprConstant.cpp
M clang/test/SemaCXX/builtin-object-size-cxx14.cpp
Log Message:
-----------
[Clang] Fix handling of reference types in tryEvaluateBuiltinObjectSize (#138247)
The order of operation was slightly incorrect, as we were checking for
incomplete types *before* handling reference types.
Fixes #129397
---------
Co-authored-by: Erich Keane <ekeane at nvidia.com>
Commit: 173ec728d287f989053bd77521b3497b069c98a2
https://github.com/llvm/llvm-project/commit/173ec728d287f989053bd77521b3497b069c98a2
Author: Dominik Steenken <dost at de.ibm.com>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M llvm/lib/Target/SystemZ/SystemZFrameLowering.cpp
M llvm/test/CodeGen/SystemZ/mcount.ll
Log Message:
-----------
[SystemZ] Fix a bug introduced by #135767 (#138280)
Commit `083b4a3d66` introduced a store-and-load pair around the `BRASL`
call to mcount. That load instruction did not properly declare its
target register as defined, leading to a bad machine instruction.
This commit fixes this by explicitly labeling `%r14` on the load as
`def`.
Commit: aa613777af4a2f2d5103e5e67da96f41ca2bb19e
https://github.com/llvm/llvm-project/commit/aa613777af4a2f2d5103e5e67da96f41ca2bb19e
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M llvm/lib/Analysis/KernelInfo.cpp
M llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
M llvm/lib/CodeGen/PeepholeOptimizer.cpp
M llvm/lib/DebugInfo/DWARF/DWARFVerifier.cpp
M llvm/lib/IR/ConvergenceVerifier.cpp
M llvm/lib/Support/Mustache.cpp
M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
M llvm/lib/Target/SPIRV/SPIRVPrepareFunctions.cpp
M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
Log Message:
-----------
[llvm] Remove redundant control flow (NFC) (#138304)
Commit: e59ed0fb0f3324ae3fce4080e15472a316713dfd
https://github.com/llvm/llvm-project/commit/e59ed0fb0f3324ae3fce4080e15472a316713dfd
Author: cor3ntin <corentinjabot at gmail.com>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Sema/SemaExprCXX.cpp
M clang/test/SemaCXX/type-traits.cpp
Log Message:
-----------
[Clang] __has_unique_object_representations should not accept Incomplete[] (#138291)
This implements [LWG4113](https://cplusplus.github.io/LWG/issue411)
This is technically a breaking change, but it's a fix, and I think
anyone who relies on this today is in a world of hurt.
Fixes #118350
Commit: a4e9cfd117301b662fb3cee52ce3762c525917d3
https://github.com/llvm/llvm-project/commit/a4e9cfd117301b662fb3cee52ce3762c525917d3
Author: Shilei Tian <i at tianshilei.me>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M llvm/include/llvm/Pass.h
M llvm/lib/IR/Pass.cpp
Log Message:
-----------
[NFC] Fix a potential compile error in `llvm::to_string(ThinOrFullLTOPhase Phase)`
https://github.com/llvm/llvm-project/pull/123994#discussion_r2071940298
Commit: 52c62364e76be0c66ba69764a80999aa651f6b59
https://github.com/llvm/llvm-project/commit/52c62364e76be0c66ba69764a80999aa651f6b59
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M clang/lib/Sema/SemaOpenMP.cpp
M llvm/include/llvm/Frontend/Directive/DirectiveBase.td
M llvm/include/llvm/Frontend/OpenMP/OMP.td
M llvm/include/llvm/TableGen/DirectiveEmitter.h
M llvm/utils/TableGen/Basic/DirectiveEmitter.cpp
Log Message:
-----------
[OpenMP] Remove "alternativeName" from Clause and Directive classes (#138179)
The "alternativeName" was introduced ~5 years ago in D82405, and at the
moment it has only one use, the one that the original change introduced.
OpenMP 6.0 spec has introduced different spellings of some directives,
but the "alternativeName" is not an adequate mechanism to implement it.
For those reasons remove the "alternativeName" member from both Clause
and Directive in DirectiveBase.td.
Since the alternativeName text appeared in a number of clang OpenMP
tests, implement `getOpenMPClauseNameForDiag` in SemaOpenMP.cpp to
preserve the text of the diagnostics.
Commit: 12778374881e84bf2a8571f2815ed1e94ffe5709
https://github.com/llvm/llvm-project/commit/12778374881e84bf2a8571f2815ed1e94ffe5709
Author: Bruno Cardoso Lopes <bruno.cardoso at gmail.com>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M mlir/lib/Dialect/LLVMIR/IR/LLVMAttrs.cpp
M mlir/test/Dialect/LLVMIR/debuginfo.mlir
Log Message:
-----------
[MLIR][LLVM] Debug info: fix DIDerivedTypeAttr relation to DIScopeAttr (#138200)
Fix `di_subprogram` references to scopes composed of `di_derived_type`s,
which currently fail to parse with:
```
error: failed to parse LLVM_DISubprogramAttr parameter 'scope' which is to be a `DIScopeAttr`
```
Commit: 2f16cbc700004c9d60c4ea03d102ce5d3b1343b8
https://github.com/llvm/llvm-project/commit/2f16cbc700004c9d60c4ea03d102ce5d3b1343b8
Author: Baranov Victor <bar.victor.2002 at gmail.com>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M clang-tools-extra/docs/clang-tidy/checks/boost/use-ranges.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/casting-through-void.rst
Log Message:
-----------
[clang-tidy][NFC][doc] fix typos in docs. (#138305)
Fixed typos in docs of `clang-tidy` checks.
Commit: 0ddcd209ddc8956eb52d642937a4397c6b08449c
https://github.com/llvm/llvm-project/commit/0ddcd209ddc8956eb52d642937a4397c6b08449c
Author: jimingham <jingham at apple.com>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M lldb/source/Core/ModuleList.cpp
Log Message:
-----------
Don't hold the Target's ModuleListLock over running LoadScriptingResourceInTarget (#138216)
That calls an unknown amount of Python code, and can do quite a bit of
work - especially if people do things like launch scripted processes in
this script affordance. Doing that while holding a major lock like the
ModuleList lock is asking for trouble.
I tried to make a test that would actually stall without this, but I
couldn't come up with anything that reliably failed. You always have to
get pretty unlucky.
Commit: cce6de83138223db07d538824e0c398d5da83190
https://github.com/llvm/llvm-project/commit/cce6de83138223db07d538824e0c398d5da83190
Author: cor3ntin <corentinjabot at gmail.com>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M clang/include/clang/Sema/Overload.h
M clang/lib/Sema/SemaOverload.cpp
M clang/test/SemaCXX/overload-resolution-deferred-templates.cpp
Log Message:
-----------
[Clang] Never consider conversion from single-element braced-init-list perfect (#138307)
We might prefer a template std::initializer list constructor.
Fix a regression introduced by #136203
https://github.com/llvm/llvm-project/pull/136203#issuecomment-2843498895
GCC had a similar issue and a similar fix
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=100963
Commit: 1101b767329dd163d528fa5f667a6c0dbdde0ad5
https://github.com/llvm/llvm-project/commit/1101b767329dd163d528fa5f667a6c0dbdde0ad5
Author: cor3ntin <corentinjabot at gmail.com>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Sema/SemaDecl.cpp
A clang/test/CXX/drs/cwg30xx.cpp
M clang/www/cxx_dr_status.html
Log Message:
-----------
[Clang] Implement CWG3005 Function parameters should never be name-independent (#138245)
We already attempted to implement this (it was the intent of the paper),
in that parameters were never considered name-independent. However, we
failed to check that any previously found parameter declaration was also
name-independent.
Note that, as worded, the current resolution is insufficient (I wrote to
CWG with better wording), but there is some consensus on the design
outcome.
Fixes #136373
Commit: 3715de976e41654db83a0aef5be50790024639ea
https://github.com/llvm/llvm-project/commit/3715de976e41654db83a0aef5be50790024639ea
Author: Lily Orth-Smith <lilyorthsmith at gmail.com>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M mlir/include/mlir/Conversion/Passes.td
M mlir/include/mlir/Conversion/VectorToLLVM/ConvertVectorToLLVM.h
M mlir/include/mlir/Dialect/Vector/TransformOps/VectorTransformOps.td
M mlir/lib/Conversion/VectorToLLVM/ConvertVectorToLLVM.cpp
M mlir/lib/Conversion/VectorToLLVM/ConvertVectorToLLVMPass.cpp
M mlir/lib/Dialect/Vector/TransformOps/VectorTransformOps.cpp
A mlir/test/Conversion/VectorToLLVM/use-vector-alignment.mlir
Log Message:
-----------
[mlir] Add use-vector-alignment flag to ConvertVectorToLLVMPass (#137389)
In ConvertVectorToLLVM, the only option for setting alignment of
`vector.gather`, `vector.scatter`, and the `vector.load/store` ops was
to extract it from the datatype of the memref type. However, this is
insufficient for hardware backends requiring alignment of vector types.
This PR introduces the `use-vector-alignment` option to the
`ConvertVectorToLLVMPass`, which makes the pass use the alignment of the
vector type of these operations instead of the alignment of the memref
type.
---------
Co-authored-by: Lily Orth-Smith <lorthsmith at microsoft.com>
Commit: 55e39100dae2a131c7cbcdbbe628c0b82f8c12ca
https://github.com/llvm/llvm-project/commit/55e39100dae2a131c7cbcdbbe628c0b82f8c12ca
Author: Oliver Hunt <oliver at apple.com>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M clang/include/clang/Basic/FPOptions.def
M clang/include/clang/Basic/LangOptions.def
M clang/include/clang/Basic/LangOptions.h
Log Message:
-----------
[clang] Remove FEM_Indeterminable (#137661)
Remove FEM_Indeterminable as it is unused and cannot be stored safely in
an unsigned bitfield
Commit: 4fcbdb2c89a5f7a95e844ea8ff62893447938cd1
https://github.com/llvm/llvm-project/commit/4fcbdb2c89a5f7a95e844ea8ff62893447938cd1
Author: Amr Hesham <amr96 at programmer.net>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M clang/include/clang/CIR/Dialect/IR/CIROps.td
M clang/lib/CIR/CodeGen/CIRGenExpr.cpp
M clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
M clang/lib/CIR/Dialect/IR/CIRDialect.cpp
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.h
M clang/test/CIR/CodeGen/vector-ext.cpp
M clang/test/CIR/CodeGen/vector.cpp
A clang/test/CIR/IR/invalid-vector-create-wrong-size.cir
A clang/test/CIR/IR/invalid-vector-create-wrong-type.cir
M clang/test/CIR/IR/vector.cir
Log Message:
-----------
[CIR] Upstream local initialization for VectorType (#138107)
This change adds local initialization for VectorType
Issue https://github.com/llvm/llvm-project/issues/136487
Commit: d76a1639e0b641d9761293608be7bce88fa30f86
https://github.com/llvm/llvm-project/commit/d76a1639e0b641d9761293608be7bce88fa30f86
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
A llvm/test/tools/llvm-reduce/reduce-values-to-return-callbr.ll
A llvm/test/tools/llvm-reduce/reduce-values-to-return-invoke.ll
M llvm/test/tools/llvm-reduce/remove-bb-switch-default.ll
M llvm/tools/llvm-reduce/deltas/ReduceValuesToReturn.cpp
M llvm/tools/llvm-reduce/deltas/Utils.cpp
Log Message:
-----------
llvm-reduce: Support exotic terminators in instructions-to-return (#134794)
Use splitBasicBlock and avoid directly dealing with the specific of
how to trim the existing terminators. We just need to deal with
unconditional branch to return.
Commit: a9ce60ee885e25cba54c8900605563ff66e067b7
https://github.com/llvm/llvm-project/commit/a9ce60ee885e25cba54c8900605563ff66e067b7
Author: Oliver Hunt <oliver at apple.com>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M clang/include/clang/Basic/LangOptions.h
Log Message:
-----------
[clang] Complete the revert of 1a14ef1 (#138341)
When merging the fix for FEM_Indeterminate I reverted the follow on
warning fixes, but misread this diff and retained the explicitly
defaulted constructor.
Commit: 17fdcda3790c669fc3d378cb192d66f3d29da47c
https://github.com/llvm/llvm-project/commit/17fdcda3790c669fc3d378cb192d66f3d29da47c
Author: Andy Kaylor <akaylor at nvidia.com>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenDecl.cpp
Log Message:
-----------
[CIR][NFC] Upstream bulk handling for Decl kinds (#138319)
This adds explicit case statements for Decl types that weren't
explicitly present in the emitDecl function. Those that need no handling
are just accepted. Those that will need handling still go to errorNYI,
but the default statement is removed.
Commit: f313b0af15857dada7743af310229b6944fd1c61
https://github.com/llvm/llvm-project/commit/f313b0af15857dada7743af310229b6944fd1c61
Author: Shafik Yaghmour <shafik.yaghmour at intel.com>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M clang/lib/StaticAnalyzer/Core/CheckerContext.cpp
Log Message:
-----------
[Clang][NFC] Capture by ref to avoid copying std::string (#138231)
Static analysis flagged capturing BName by value as opposed to by
reference. Updated capture to be by reference.
Commit: 9b4f747827489c5969ff903c728e65c545f58eaa
https://github.com/llvm/llvm-project/commit/9b4f747827489c5969ff903c728e65c545f58eaa
Author: Eric Astor <epastor at google.com>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
A llvm/include/llvm/MC/MCParser/MCMasmParser.h
M llvm/include/llvm/MC/MCSymbolCOFF.h
M llvm/lib/MC/MCParser/COFFMasmParser.cpp
M llvm/lib/MC/MCParser/MasmParser.cpp
M llvm/lib/Target/X86/AsmParser/X86AsmParser.cpp
A llvm/test/tools/llvm-ml/proc_distance.asm
Log Message:
-----------
[ms] [llvm-ml] Implement support for PROC NEAR/FAR (#131707)
Matches ML.EXE by translating "ret" instructions inside a `PROC FAR` to "retf", and automatically prepending a `push cs` to all near calls to a `PROC FAR`.
Commit: 312d6b488ef9d7c0e4d649827820db7285e36406
https://github.com/llvm/llvm-project/commit/312d6b488ef9d7c0e4d649827820db7285e36406
Author: Eli Friedman <efriedma at quicinc.com>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M llvm/include/llvm/Support/Win64EH.h
M llvm/lib/MC/MCWin64EH.cpp
M llvm/lib/Target/AArch64/AsmParser/AArch64AsmParser.cpp
M llvm/lib/Target/AArch64/MCTargetDesc/AArch64ELFStreamer.cpp
M llvm/lib/Target/AArch64/MCTargetDesc/AArch64TargetStreamer.h
M llvm/lib/Target/AArch64/MCTargetDesc/AArch64WinCOFFStreamer.cpp
M llvm/test/MC/AArch64/seh.s
M llvm/test/tools/llvm-readobj/COFF/arm64-win-error1.s
M llvm/tools/llvm-readobj/ARMWinEHPrinter.cpp
M llvm/tools/llvm-readobj/ARMWinEHPrinter.h
Log Message:
-----------
[AArch64] Implement assembler support for new SVE SEH unwind opcodes. (#137895)
In order to support the AArch64 ABI, Microsoft has extended the unwinder
to support additional opcodes. (Updated documentation at
https://learn.microsoft.com/en-us/cpp/build/arm64-exception-handling .)
First in a series of patches to support SVE on Windows.
Commit: 692f832b190a93383cb4ed8912856ff651e453d2
https://github.com/llvm/llvm-project/commit/692f832b190a93383cb4ed8912856ff651e453d2
Author: Eric Astor <epastor at google.com>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
R llvm/include/llvm/MC/MCParser/MCMasmParser.h
M llvm/include/llvm/MC/MCSymbolCOFF.h
M llvm/lib/MC/MCParser/COFFMasmParser.cpp
M llvm/lib/MC/MCParser/MasmParser.cpp
M llvm/lib/Target/X86/AsmParser/X86AsmParser.cpp
R llvm/test/tools/llvm-ml/proc_distance.asm
Log Message:
-----------
Revert "[ms] [llvm-ml] Implement support for PROC NEAR/FAR" (#138353)
Reverts llvm/llvm-project#131707 - apparently it had gotten into a bad
state, and will need relanding.
Commit: 105ce585d35eff433031d3edce977eba97eeb6ff
https://github.com/llvm/llvm-project/commit/105ce585d35eff433031d3edce977eba97eeb6ff
Author: Muzammil <55665739+Muzammiluddin-Syed-ECE at users.noreply.github.com>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M mlir/include/mlir/Dialect/AMDGPU/IR/AMDGPU.td
M mlir/lib/Conversion/AMDGPUToROCDL/AMDGPUToROCDL.cpp
M mlir/test/Conversion/AMDGPUToROCDL/mfma-gfx950.mlir
M mlir/test/Dialect/AMDGPU/ops.mlir
Log Message:
-----------
[mlir][amdgpu] Define an amdgpu.scaling_mfma wrapper (#137498)
Create a wrapper around the new scaled MFMAs that operate on specific
element types and tile sizes.
See [Issue](https://github.com/iree-org/iree/issues/20616).
---------
Signed-off-by: Muzammiluddin Syed <muzasyed at amd.com>
Commit: 123758b1f4a8106926d95268ea8dc27158b6393a
https://github.com/llvm/llvm-project/commit/123758b1f4a8106926d95268ea8dc27158b6393a
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M clang/lib/CodeGen/CGCall.cpp
M clang/lib/CodeGen/CGExprScalar.cpp
M clang/lib/CodeGen/TargetBuiltins/ARM.cpp
M llvm/include/llvm/IR/IRBuilder.h
M llvm/lib/IR/AutoUpgrade.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
M llvm/lib/Target/AMDGPU/AMDGPUCodeGenPrepare.cpp
M llvm/lib/Target/AMDGPU/AMDGPUInstCombineIntrinsic.cpp
M llvm/lib/Transforms/Vectorize/LoopIdiomVectorize.cpp
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
Log Message:
-----------
[IRBuilder] Add versions of createInsertVector/createExtractVector that take a uint64_t index. (#138324)
Most callers want a constant index. Instead of making every caller
create a ConstantInt, we can do it in IRBuilder. This is similar to
createInsertElement/createExtractElement.
Commit: 50e1db7194e70ddf235edad289e726ed5c6027b7
https://github.com/llvm/llvm-project/commit/50e1db7194e70ddf235edad289e726ed5c6027b7
Author: Steven Perron <stevenperron at google.com>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M clang/include/clang/Driver/Options.td
M clang/lib/Driver/ToolChains/HLSL.cpp
A clang/test/Driver/dxc_fspv_extension.hlsl
Log Message:
-----------
[HLSL][SPIRV] Add CLI option `-fspv-extension` (#137985)
This commit implements DXC's `-fspv-extension` options. It is
implemented by replaced it with the equivalent `-spirv-ext` option. Note
that if the option is not used, that is the same as enabling all
extension, so `-spirv-ext=all` is used.
Fixes https://github.com/llvm/llvm-project/issues/137647
---------
Co-authored-by: Cassandra Beckley <cbeckley at google.com>
Commit: 880de1cae2e50e28984e56f97689e39bd60e12a3
https://github.com/llvm/llvm-project/commit/880de1cae2e50e28984e56f97689e39bd60e12a3
Author: Reid Kleckner <rnk at google.com>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M mlir/include/mlir/Pass/Pass.h
M mlir/lib/Pass/Pass.cpp
Log Message:
-----------
[mlir] Declare explicit typeid to fix dylib build (#138357)
This makes the dyn_cast<PassExecutionAction> work outside the dylib,
i.e. from the unit test binary, when the CMake setting
MLIR_LINK_MLIR_DYLIB is ON.
Fixes #138202
Commit: e8825900838a11afe326e202d19a3df6e3408422
https://github.com/llvm/llvm-project/commit/e8825900838a11afe326e202d19a3df6e3408422
Author: Andy Kaylor <akaylor at nvidia.com>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M clang/include/clang/CIR/MissingFeatures.h
M clang/lib/CIR/CodeGen/CIRGenConstantEmitter.h
M clang/lib/CIR/CodeGen/CIRGenExprConstant.cpp
M clang/lib/CIR/CodeGen/CIRGenModule.cpp
M clang/lib/CIR/CodeGen/CIRGenModule.h
Log Message:
-----------
[CIR] Refactor global variable emission and initialization (#138222)
When global variable support was initially upstreamed, we took some
shortcuts and only implemented the minimum support for simple variables
and constant initializers.
This change refactors the code that creates global variables to
introduce more of the complexities that are present in the incubator and
the classic codegen. I can't really say this is NFC, because the code
executed is very different and it will report different NYI diagnostics,
but for the currently implemented cases, it results in the same output.
Commit: 6b25cfbb98b25bb3d127e7b7fd462e6dcf3f9f7e
https://github.com/llvm/llvm-project/commit/6b25cfbb98b25bb3d127e7b7fd462e6dcf3f9f7e
Author: Peter Collingbourne <peter at pcc.me.uk>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
A lld/utils/run_benchmark.py
Log Message:
-----------
Add lld benchmarking script.
The purpose of this script is to measure the performance effect
of an lld change in a statistically sound way, automating all the
tedious parts of doing so. It copies the test case into /tmp as well as
running the test binaries from /tmp to reduce the influence on the test
machine's storage medium on the results. It accounts for measurement
bias caused by binary layout (using the --randomize-section-padding
flag to link the test binaries) and by environment variable size
(implemented by hyperfine [1]). Runs of the base and test case are
interleaved to account for environmental factors which may influence
the result due to the passage of time. The results of running hyperfine
are collected into a results.csv file in the output directory and
may be analyzed by the user with a tool such as ministat.
Requirements: Linux host, hyperfine [2] in $PATH, run from a build
directory configured to use ninja and a recent version of lld that
supports --randomize-section-padding, /tmp is tmpfs.
[1] https://github.com/sharkdp/hyperfine/blob/3cedcc38d0c430cbf38b4364b441c43a938d2bf3/src/util/randomized_environment_offset.rs#L1
[2] https://github.com/sharkdp/hyperfine
Reviewers: rnk, MaskRay, smithp35
Reviewed By: rnk
Pull Request: https://github.com/llvm/llvm-project/pull/138367
Commit: ebe7fd6df492cfe0aa01d1188644cadec601f9d6
https://github.com/llvm/llvm-project/commit/ebe7fd6df492cfe0aa01d1188644cadec601f9d6
Author: Sudharsan Veeravalli <quic_svs at quicinc.com>
Date: 2025-05-03 (Sat, 03 May 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfoXqci.td
M llvm/test/MC/RISCV/xqcilo-valid.s
Log Message:
-----------
[RISCV] Add some more compress patterns for Xqcilo instructions (#138309)
There are some load/store instructions that are a part of the Zcb
extension that the Xqcilo instructions can be compressed to. Add
patterns for the same.
Commit: 659f5acd038afbb281b4d1d410762f40954e08c8
https://github.com/llvm/llvm-project/commit/659f5acd038afbb281b4d1d410762f40954e08c8
Author: Princeton Ferro <pferro at nvidia.com>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M llvm/lib/Target/NVPTX/NVPTX.td
M llvm/test/CodeGen/NVPTX/sm-version.ll
Log Message:
-----------
[NVPTX] Add support for PTX ISA v8.8 (#136639)
Support PTX version 8.8 (`-mattr=+ptx88`) from CUDA 12.9. The following
new targets are also added:
- SM103 and SM121: sm_103, sm_103a, sm_121, sm_121a.
Also, some things were reformatted.
https://docs.nvidia.com/cuda/parallel-thread-execution/#changes-in-ptx-isa-version-8-8
Commit: 2b62a311d76cfe5cdceab73b3fe145ee50449d08
https://github.com/llvm/llvm-project/commit/2b62a311d76cfe5cdceab73b3fe145ee50449d08
Author: Shilei Tian <i at tianshilei.me>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/test/Driver/hip-options.hip
M clang/test/Driver/openmp-offload-gpu.c
Log Message:
-----------
[Clang][Driver] Enable internalization by default for AMDGPU (#138365)
Commit: fba68b41190805d1755d24a829d7cdc74e946095
https://github.com/llvm/llvm-project/commit/fba68b41190805d1755d24a829d7cdc74e946095
Author: satyajanga <satyajanga at gmail.com>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M lldb/source/Commands/CommandObjectPlatform.cpp
Log Message:
-----------
[LLDB][NFC] Remove unneeded conditional (#138321)
we already check for `platform_sp` not null in one line below.
existing code
```
if (platform_sp) {
Status error;
if (platform_sp) {
...
...
}
}
```
`platform_sp` null check is redundant and error variable is unused.
### TEST PLAN
manual test
```
satyajanga at devvm21837:toolchain $ ./bin/lldb
LLDB logging initialized. Logs stored in: /tmp
(lldb) platform select host
Platform: host
Triple: x86_64-*-linux-gnu
OS Version: 6.9.0 (6.9.0-0_fbk5_hardened_1_gf368ae920c1a)
Hostname: 127.0.0.1
WorkingDir: /home/satyajanga/llvm-sand/build/Debug/fbcode-x86_64/toolchain
Kernel: #1 SMP Tue Feb 11 07:24:41 PST 2025
Kernel: Linux
Release: 6.9.0-0_fbk5_hardened_1_gf368ae920c1a
Version: #1 SMP Tue Feb 11 07:24:41 PST 2025
(lldb) platform process list
144 matching processes were found on "host"
PID PARENT USER TRIPLE NAME
====== ====== ========== ============================== ============================
130461 874915 satyajanga x86_64-*-linux-gnu sushd
135505 874915 satyajanga x86_64-*-linux-gnu hg.real
817146 874915 satyajanga x86_64-*-linux-gnu vscode-thrift
874915 1 satyajanga
874947 874915 satyajanga
```
and running the existing tests
```
satyajanga at devvm21837:toolchain $ ./bin/llvm-lit -v ~/llvm-sand/external/llvm-project/lldb/test/API/commands/platform/
-- Testing: 9 tests, 9 workers --
PASS: lldb-api :: commands/platform/file/read/TestPlatformFileRead.py (1 of 9)
PASS: lldb-api :: commands/platform/file/close/TestPlatformFileClose.py (2 of 9)
UNSUPPORTED: lldb-api :: commands/platform/sdk/TestPlatformSDK.py (3 of 9)
PASS: lldb-api :: commands/platform/basic/TestPlatformPython.py (4 of 9)
PASS: lldb-api :: commands/platform/basic/TestPlatformCommand.py (5 of 9)
PASS: lldb-api :: commands/platform/connect/TestPlatformConnect.py (6 of 9)
PASS: lldb-api :: commands/platform/process/launch/TestPlatformProcessLaunch.py (7 of 9)
PASS: lldb-api :: commands/platform/launchgdbserver/TestPlatformLaunchGDBServer.py (8 of 9)
PASS: lldb-api :: commands/platform/process/list/TestProcessList.py (9 of 9)
Testing Time: 13.48s
Total Discovered Tests: 9
Unsupported: 1 (11.11%)
Passed : 8 (88.89%)
satyajanga at devvm21837:toolchain $
```
Commit: d3506ee573a2aa1403817642ef45f8c0305bb572
https://github.com/llvm/llvm-project/commit/d3506ee573a2aa1403817642ef45f8c0305bb572
Author: Owen Pan <owenpiano at gmail.com>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M clang/lib/Format/UnwrappedLineParser.cpp
M clang/unittests/Format/FormatTest.cpp
Log Message:
-----------
[clang-format] RemoveParentheses shouldn't remove empty parentheses (#138229)
Fix #138124
Commit: 79210feb2993ff9a79ef11f8a7016a527d4fcf22
https://github.com/llvm/llvm-project/commit/79210feb2993ff9a79ef11f8a7016a527d4fcf22
Author: Owen Pan <owenpiano at gmail.com>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M clang/lib/Format/UnwrappedLineParser.cpp
M clang/unittests/Format/FormatTest.cpp
Log Message:
-----------
[clang-format] Fix a crash on formatting missing r_paren/r_brace (#138230)
Fix #138097
Commit: d11df058416aa2e13c6b2559c1ce21209c445bab
https://github.com/llvm/llvm-project/commit/d11df058416aa2e13c6b2559c1ce21209c445bab
Author: Kaitlin Peng <kaitlinpeng at microsoft.com>
Date: 2025-05-02 (Fri, 02 May 2025)
Changed paths:
M clang/lib/Headers/hlsl/hlsl_intrinsic_helpers.h
M clang/lib/Headers/hlsl/hlsl_intrinsics.h
A clang/test/CodeGenHLSL/builtins/ldexp.hlsl
A clang/test/SemaHLSL/BuiltIns/ldexp-errors.hlsl
Log Message:
-----------
[HLSL] Implement the `ldexp` intrinsic (#138182)
Closes #99133.
Implemented `ldexp` entirely in `hlsl_intrinsics.h` and
`hlsl_intrinsic_helpers.h`, added coresponding tests in
`clang/test/CodeGenHLSL/builtins/ldexp.hlsl` and
`clang/test/SemaHLSL/BuiltIns/ldexp-errors.hlsl`.
Commit: c63687c04f96e3b1db9ce0f70e5f331fce69959b
https://github.com/llvm/llvm-project/commit/c63687c04f96e3b1db9ce0f70e5f331fce69959b
Author: Carl Ritson <carl.ritson at amd.com>
Date: 2025-05-03 (Sat, 03 May 2025)
Changed paths:
M llvm/include/llvm/MC/MCInstrDesc.h
M llvm/utils/TableGen/InstrInfoEmitter.cpp
Log Message:
-----------
[MC][TableGen] Expand ImplicitOffset field of MCInstrDesc (#138127)
Increase width of ImplicitOffset to `int` from `short` to allow more
table capacity.
Reorder the elements to maintain natural alignment.
Commit: 883afa4ef93d824ec11981ccad04af1cd1e4ce29
https://github.com/llvm/llvm-project/commit/883afa4ef93d824ec11981ccad04af1cd1e4ce29
Author: Baoshan <pangbw at gmail.com>
Date: 2025-05-03 (Sat, 03 May 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/SIShrinkInstructions.cpp
M llvm/test/CodeGen/AMDGPU/v_swap_b16.ll
M llvm/test/CodeGen/AMDGPU/v_swap_b32.mir
Log Message:
-----------
[AMDGPU] remove move instruction if there is no user of it (#136735)
Co-authored-by: Baoshan Pang <bpang at fortinet.com>
Commit: 8c3aa3e81c68ee3807148a6ab416af71fecce38f
https://github.com/llvm/llvm-project/commit/8c3aa3e81c68ee3807148a6ab416af71fecce38f
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2025-05-03 (Sat, 03 May 2025)
Changed paths:
M libcxx/include/__vector/vector.h
M libcxx/include/__vector/vector_bool.h
Log Message:
-----------
[libc++][NFC] Replace typedefs with using declarations in <vector> (#134083)
This brings the code base a bit closer to using `using` declarations
everywhere.
Commit: e92013c68589101b2150e3becd9eda651914fe58
https://github.com/llvm/llvm-project/commit/e92013c68589101b2150e3becd9eda651914fe58
Author: Thomas Preud'homme <thomas.preudhomme at arm.com>
Date: 2025-05-03 (Sat, 03 May 2025)
Changed paths:
M mlir/lib/Dialect/Tosa/IR/TosaOps.cpp
Log Message:
-----------
[MLIR][TOSA] Simplify getZeroPoint (#138344)
Commit: b006756d44def73fda09c7cb99b1c2347436aadb
https://github.com/llvm/llvm-project/commit/b006756d44def73fda09c7cb99b1c2347436aadb
Author: clubby789 <jamie at hill-daniel.co.uk>
Date: 2025-05-03 (Sat, 03 May 2025)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
M llvm/test/Transforms/InstCombine/malloc-free-mismatched.ll
Log Message:
-----------
[InstCombine] Fix crash when alloc functions are missing `alloc-family` (#138310)
Fixes #63477 by bailing out instead of crashing.
Co-authored-by: Jamie <jamie at osec.io>
Commit: 1c68e0e4814e7e0f006a238e1c656c78aa10516b
https://github.com/llvm/llvm-project/commit/1c68e0e4814e7e0f006a238e1c656c78aa10516b
Author: Oliver Hunt <oliver at apple.com>
Date: 2025-05-03 (Sat, 03 May 2025)
Changed paths:
M clang/include/clang/Parse/Parser.h
M clang/lib/Parse/ParseDecl.cpp
M clang/lib/Parse/ParseDeclCXX.cpp
A clang/test/Sema/ptrauth-struct-function-ptr-field.c
Log Message:
-----------
[clang][ptrauth] reject incorrectly placed ptrauth qualifier (#138376)
When parsing a function pointer typed field we use
Parser::ParseTypeQualifierListOpt, but then drops subsequent type
attributes and qualifiers unless explicitly handled.
There is an existing solution for the _Atomic qualifier, and this PR
simply extends that to __ptrauth for now. In future we may want to
investigate a more robust mechanism to ensure type qualifiers are not
silently dropped so that future type qualifiers do not suffer the same
problem.
Commit: 5b02a2647594719454611132b7c05318d959bf58
https://github.com/llvm/llvm-project/commit/5b02a2647594719454611132b7c05318d959bf58
Author: Corentin Jabot <corentinjabot at gmail.com>
Date: 2025-05-03 (Sat, 03 May 2025)
Changed paths:
M clang/include/clang/Sema/Overload.h
Log Message:
-----------
[Clang][NFC] Fix typos introduced in #138307
Commit: edb690dc5b5e7804797a497c0b01f1563e67bd00
https://github.com/llvm/llvm-project/commit/edb690dc5b5e7804797a497c0b01f1563e67bd00
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-05-03 (Sat, 03 May 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/VPlan.h
M llvm/lib/Transforms/Vectorize/VPlanConstruction.cpp
M llvm/lib/Transforms/Vectorize/VPlanSLP.cpp
M llvm/lib/Transforms/Vectorize/VPlanTransforms.h
M llvm/unittests/Transforms/Vectorize/VPlanHCFGTest.cpp
M llvm/unittests/Transforms/Vectorize/VPlanSlpTest.cpp
M llvm/unittests/Transforms/Vectorize/VPlanTestBase.h
Log Message:
-----------
Reapply "[VPlan] Add canonical IV during construction (NFC)."
This reverts commit d431921677ae923d189ff2d6f188f676a2964ed8.
Missing gtests have been updated.
Original message:
This addresses an existing TODO and simply moves the current code to add
canonical IV recipes to the initial skeleton construction, at the same
place where the corresponding region will be introduced.
Commit: fdea1b6504770462138a92c9c9aa6b669f7f4217
https://github.com/llvm/llvm-project/commit/fdea1b6504770462138a92c9c9aa6b669f7f4217
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-03 (Sat, 03 May 2025)
Changed paths:
M llvm/lib/Transforms/Utils/IRNormalizer.cpp
Log Message:
-----------
[Utils] Use StringRef::starts_with (NFC) (#138379)
Commit: d328510f238cca5a95b75fcdaf9dfaddbc7d87c0
https://github.com/llvm/llvm-project/commit/d328510f238cca5a95b75fcdaf9dfaddbc7d87c0
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-03 (Sat, 03 May 2025)
Changed paths:
M llvm/lib/Transforms/Instrumentation/InstrProfiling.cpp
Log Message:
-----------
[Instrumentation] Remove an unused local variable (NFC) (#138383)
Commit: b23c1865c0b1625c6fc03259b610d4639dd5c92a
https://github.com/llvm/llvm-project/commit/b23c1865c0b1625c6fc03259b610d4639dd5c92a
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-03 (Sat, 03 May 2025)
Changed paths:
M llvm/tools/llvm-lto/llvm-lto.cpp
M llvm/tools/llvm-objdump/SourcePrinter.cpp
M llvm/tools/llvm-readobj/llvm-readobj.cpp
Log Message:
-----------
[tools] Remove unused local variables (NFC) (#138384)
Commit: b4fac94181c4cf17dbb7ecc2ae975712b0e4a6d1
https://github.com/llvm/llvm-project/commit/b4fac94181c4cf17dbb7ecc2ae975712b0e4a6d1
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-03 (Sat, 03 May 2025)
Changed paths:
M llvm/unittests/Support/FormatVariadicTest.cpp
M llvm/unittests/Support/YAMLIOTest.cpp
M llvm/unittests/Target/SPIRV/SPIRVAPITest.cpp
M llvm/unittests/Target/SPIRV/SPIRVConvergenceRegionAnalysisTests.cpp
M llvm/unittests/tools/llvm-exegesis/RISCV/TargetTest.cpp
Log Message:
-----------
[llvm] Remove unused using decls (NFC) (#138386)
Commit: 0b96d22f95eeef00ec40723f0d59ccb4389dc1b6
https://github.com/llvm/llvm-project/commit/0b96d22f95eeef00ec40723f0d59ccb4389dc1b6
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-03 (Sat, 03 May 2025)
Changed paths:
M llvm/lib/Target/SPIRV/SPIRVBuiltins.cpp
Log Message:
-----------
[SPIRV] Use StringRef instead of std::string (NFC) (#138408)
We can use StringRef for PassPrefix because it is used only with
StringRef::starts_with.
Commit: 7cc5e64a26f7c752646577e4e72d9f52cac8870d
https://github.com/llvm/llvm-project/commit/7cc5e64a26f7c752646577e4e72d9f52cac8870d
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-03 (Sat, 03 May 2025)
Changed paths:
M llvm/lib/FileCheck/FileCheckImpl.h
Log Message:
-----------
[FileCheck] Use default member initialization in ExpressionFormat (NFC) (#138409)
Commit: ea08dd8dc395e5f711f3acc542d3b4f0d4c8dfc0
https://github.com/llvm/llvm-project/commit/ea08dd8dc395e5f711f3acc542d3b4f0d4c8dfc0
Author: David Green <david.green at arm.com>
Date: 2025-05-03 (Sat, 03 May 2025)
Changed paths:
A llvm/test/Transforms/VectorCombine/AArch64/shuffle-of-intrinscis.ll
Log Message:
-----------
[AArch64] Add shuffle-of-intrinsics VectorCombine test coverage. NFC
Commit: d1e38eab95b07b422194427474521623916bbf29
https://github.com/llvm/llvm-project/commit/d1e38eab95b07b422194427474521623916bbf29
Author: Michał Górny <mgorny at gentoo.org>
Date: 2025-05-03 (Sat, 03 May 2025)
Changed paths:
M offload/CMakeLists.txt
Log Message:
-----------
[offload] Fix enabling unittests in standalone builds (#138418)
Modify the unittest logic in offload to only look for
`third-party/unittest` directory when `llvm_gtest` is not provided by
LLVM itself (in-tree or installed). This makes it possible to run
unittests in sparse checkouts without the `third-party/unittest` tree.
While at it, also make sure `LLVM_THIRD_PARTY_DIR` is actually set while
performing standalone builds. The logic is copied from `compiler-rt`.
---------
Co-authored-by: Joseph Huber <huberjn at outlook.com>
Commit: 56e01c97430b0536b3b387c1decc74942e804460
https://github.com/llvm/llvm-project/commit/56e01c97430b0536b3b387c1decc74942e804460
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-03 (Sat, 03 May 2025)
Changed paths:
M llvm/include/llvm/DebugInfo/GSYM/InlineInfo.h
Log Message:
-----------
[DebugInfo] Use default member initialization in InlineInfo (NFC) (#138410)
Commit: db0a7adb5467bb36d038fb8cf12ac6175cb7b7db
https://github.com/llvm/llvm-project/commit/db0a7adb5467bb36d038fb8cf12ac6175cb7b7db
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-03 (Sat, 03 May 2025)
Changed paths:
M llvm/include/llvm/ExecutionEngine/JITLink/JITLinkMemoryManager.h
Log Message:
-----------
[ExecutionEngine] Use default member initialization in Segment (NFC) (#138411)
Note that orc::ExecutorAddr default-constructs itself with Addr being 0.
Commit: 9e9c9c49cc818cacaa55b4911c845cb45995d572
https://github.com/llvm/llvm-project/commit/9e9c9c49cc818cacaa55b4911c845cb45995d572
Author: Min-Yih Hsu <min.hsu at sifive.com>
Date: 2025-05-03 (Sat, 03 May 2025)
Changed paths:
M llvm/lib/Target/CSKY/CSKY.td
Log Message:
-----------
[CSKY] Remove duplicate processor features in ck807e/ck807ef (#138316)
The new TableGen warning introduced in 951292b shows the following
warnings:
```
warning: Processor ck807e contains duplicate feature 'edsp'
warning: Processor ck807e contains duplicate feature 'dsp1e2'
warning: Processor ck807e contains duplicate feature 'dspe60'
warning: Processor ck807ef contains duplicate feature 'edsp'
warning: Processor ck807ef contains duplicate feature 'dsp1e2'
warning: Processor ck807ef contains duplicate feature 'dspe60'
```
Commit: daf32369dd1230628e4ca6fc919859bc33dc0032
https://github.com/llvm/llvm-project/commit/daf32369dd1230628e4ca6fc919859bc33dc0032
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-05-03 (Sat, 03 May 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/VPlan.cpp
M llvm/lib/Transforms/Vectorize/VPlanHelpers.h
Log Message:
-----------
[VPlan] Move scalarizeInstruction out of ILV (NFC).
15bb1db4a9830 removed the last dependency on ILV, move the code out of
ILV in preparation of consolidating in VPlanRecipes.cpp.
Commit: 8d8a3d9fdcbe823b94e2821b7beb8ead5288b14e
https://github.com/llvm/llvm-project/commit/8d8a3d9fdcbe823b94e2821b7beb8ead5288b14e
Author: Amr Hesham <amr96 at programmer.net>
Date: 2025-05-03 (Sat, 03 May 2025)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenExprConstant.cpp
Log Message:
-----------
[CIR][NFC] Fix an unused variable warning (#138415)
This fixes a warning where a variable assigned in 'if' statement wasn't
referenced again.
Commit: ebdf2e06ffbf1cc0d41f159bf02a7f35947626ee
https://github.com/llvm/llvm-project/commit/ebdf2e06ffbf1cc0d41f159bf02a7f35947626ee
Author: Mikhail R. Gadelha <mikhail at igalia.com>
Date: 2025-05-03 (Sat, 03 May 2025)
Changed paths:
M libc/cmake/modules/LLVMLibCTestRules.cmake
Log Message:
-----------
[libc] Add missing dependency for test target (#138423)
It seems we were missing a dependency when adding a new test target,
e.g., test libc.test.src.math.sqrt_test.__unit__ would create a
custom target in the form of:
```
add_custom_target(
libc.test.src.__support.FPUtil.dyadic_float_test.__unit__
COMMAND ${LIBC_UNITTEST_ENV} ${CMAKE_CROSSCOMPILING_EMULATOR} libc.test.src.__support.FPUtil.dyadic_float_test.__unit__.__build__
COMMENT Running unit test libc.test.src.__support.FPUtil.dyadic_float_test.__unit__ )
```
but it wouldn't set that it depends on
libc.test.src.__support.FPUtil.dyadic_float_test.__unit__.__build__
being built.
For some reason, it would break the rv32 buildbot, as it would try to
run a test but the __build__ is nowhere to be found, since it wasn't
built in the first place.
Commit: 9633f87e34dddce49619e7fc2d75c659c61a9db1
https://github.com/llvm/llvm-project/commit/9633f87e34dddce49619e7fc2d75c659c61a9db1
Author: jeremyd2019 <github at jdrake.com>
Date: 2025-05-04 (Sun, 04 May 2025)
Changed paths:
M llvm/cmake/config-ix.cmake
Log Message:
-----------
[LLVM][Cygwin] Define _GNU_SOURCE on Cygwin as well. (#138329)
Without it, certain functions such as dladdr are not make available by
the headers.
Signed-off-by: Jeremy Drake <github at jdrake.com>
Commit: 497fbd0ee0c4c50d46b5b777cdcc3a532d1dcc91
https://github.com/llvm/llvm-project/commit/497fbd0ee0c4c50d46b5b777cdcc3a532d1dcc91
Author: jeremyd2019 <github at jdrake.com>
Date: 2025-05-04 (Sun, 04 May 2025)
Changed paths:
M llvm/CMakeLists.txt
Log Message:
-----------
[LLVM][Cygwin] Remove special case for CXX extensions on Cygwin. (#138328)
This is no longer necessary, and results in an inconvenient define of
`i386` on i386 Cygwin targets which breaks compiling
llvm/include/llvm/ExecutionEngine/JITLink/i386.h.
Signed-off-by: Jeremy Drake <github at jdrake.com>
Commit: 74d921c01ab4aefb5f7f14062ab4aef50d5c6413
https://github.com/llvm/llvm-project/commit/74d921c01ab4aefb5f7f14062ab4aef50d5c6413
Author: jeremyd2019 <github at jdrake.com>
Date: 2025-05-04 (Sun, 04 May 2025)
Changed paths:
M clang/tools/clang-shlib/CMakeLists.txt
Log Message:
-----------
[Clang][Cygwin] don't use -Bsymbolic-functions (#138217)
GNU ld seems to ignore this option, but LLD treats the presence of this
unknown option as an error.
Commit: deec7fb42dd27d38b2d2925f5e635f27007a0bd7
https://github.com/llvm/llvm-project/commit/deec7fb42dd27d38b2d2925f5e635f27007a0bd7
Author: Owen Pan <owenpiano at gmail.com>
Date: 2025-05-03 (Sat, 03 May 2025)
Changed paths:
M clang/lib/Format/TokenAnnotator.cpp
M clang/unittests/Format/TokenAnnotatorTest.cpp
Log Message:
-----------
[clang-format] Correctly annotate tok::star in braced list (#138389)
Fix #138382
Commit: bb1e3df7009af1bf4b60e1ff4ddb5b7f94d6bff9
https://github.com/llvm/llvm-project/commit/bb1e3df7009af1bf4b60e1ff4ddb5b7f94d6bff9
Author: Fangrui Song <i at maskray.me>
Date: 2025-05-03 (Sat, 03 May 2025)
Changed paths:
M lld/test/ELF/sparcv9-reloc.s
M lld/test/ELF/sparcv9-tls-le.s
M llvm/lib/Target/Sparc/MCTargetDesc/SparcInstPrinter.cpp
M llvm/test/MC/Sparc/sparc-assembly-exprs.s
M llvm/test/MC/Sparc/sparc-fixups.s
M llvm/test/MC/Sparc/sparc-little-endian.s
M llvm/test/MC/Sparc/sparc-tls-relocations.s
M llvm/test/MC/Sparc/sparc64-bpr-offset.s
Log Message:
-----------
SparcInstPrinter: Support llvm-objdump --print-imm-hex
... to align with other targets, e.g., https://reviews.llvm.org/D77853
(AArch64) and https://reviews.llvm.org/D83634 (AVR).
binutils's sparc port uses %d when imm<=9, diverging from other ports.
We do not follow the binutils sparc port behavior.
Commit: b1f13293d7672c5f84175d07c92b66142defaf1a
https://github.com/llvm/llvm-project/commit/b1f13293d7672c5f84175d07c92b66142defaf1a
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-03 (Sat, 03 May 2025)
Changed paths:
M llvm/include/llvm/Transforms/Scalar/Reassociate.h
Log Message:
-----------
[Scalar] Use default member initialization in OverflowTracking (NFC) (#138412)
Commit: 7d423c09c0e063eeeaa2f91100eb6f04dc15767c
https://github.com/llvm/llvm-project/commit/7d423c09c0e063eeeaa2f91100eb6f04dc15767c
Author: Fangrui Song <i at maskray.me>
Date: 2025-05-03 (Sat, 03 May 2025)
Changed paths:
M llvm/lib/Target/Sparc/MCTargetDesc/SparcAsmBackend.cpp
M llvm/lib/Target/Sparc/MCTargetDesc/SparcELFObjectWriter.cpp
M llvm/lib/Target/Sparc/MCTargetDesc/SparcFixupKinds.h
M llvm/lib/Target/Sparc/MCTargetDesc/SparcMCCodeEmitter.cpp
M llvm/lib/Target/Sparc/MCTargetDesc/SparcMCExpr.cpp
M llvm/lib/Target/Sparc/MCTargetDesc/SparcMCExpr.h
Log Message:
-----------
Sparc: Use mc::isRelocation and remove GOT fixup kinds that map to relocation types
Simplify code, which is enabled by
40789ce7f1b7cff6de82b7f93db25a8c54194d46 ("MCFixup: Move relocation values before FK_NONE")
Commit: 4cde986df42273b272efd7a49cc813cd3af0115c
https://github.com/llvm/llvm-project/commit/4cde986df42273b272efd7a49cc813cd3af0115c
Author: Fangrui Song <i at maskray.me>
Date: 2025-05-03 (Sat, 03 May 2025)
Changed paths:
M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchAsmBackend.cpp
M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchAsmBackend.h
M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchFixupKinds.h
M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchMCCodeEmitter.cpp
Log Message:
-----------
LoongArch: Sink #include llvm/BinaryFormat/ELF.h from LoongArchMCExpr.h. NFC
Remove a fishy `#undef LoongArch` and an unneeded user-provided dtor.
Commit: c32571287ecbe7f5eb5bb7ccb5fbb8e99ea53dec
https://github.com/llvm/llvm-project/commit/c32571287ecbe7f5eb5bb7ccb5fbb8e99ea53dec
Author: Fangrui Song <i at maskray.me>
Date: 2025-05-03 (Sat, 03 May 2025)
Changed paths:
M llvm/lib/Target/Sparc/MCTargetDesc/SparcAsmBackend.cpp
M llvm/lib/Target/Sparc/MCTargetDesc/SparcELFObjectWriter.cpp
M llvm/lib/Target/Sparc/MCTargetDesc/SparcFixupKinds.h
M llvm/lib/Target/Sparc/MCTargetDesc/SparcMCExpr.cpp
M llvm/test/MC/Sparc/sparc-tls-relocations.s
Log Message:
-----------
Sparc: Remove TLS fixup kinds that map to relocationtypes
As described in #136088 (for RISC-V), the `llvm-mc -show-encoding`
output no longer displays descriptive fixup names. Just remove
-show-encoding.
Commit: e276216221b09b296a65c1a6d09e1ae641edcc8e
https://github.com/llvm/llvm-project/commit/e276216221b09b296a65c1a6d09e1ae641edcc8e
Author: Fangrui Song <i at maskray.me>
Date: 2025-05-03 (Sat, 03 May 2025)
Changed paths:
M llvm/lib/Target/Sparc/MCTargetDesc/SparcAsmBackend.cpp
M llvm/test/MC/Sparc/sparc-pic.s
M llvm/test/MC/Sparc/sparc-relocations.s
Log Message:
-----------
Sparc: Remove incorrect STT_SECTION adjustment special case for WPLT30
`call local` should perform STT_SECTION adjustment as well as `call .Ltmp0`.
The early support 9fc29098dfa684de53dd180aa93e94c39c388631 from 2014 was
confused.
Commit: 56433e874b96bf7b3da02c13226a996d4fa5aef8
https://github.com/llvm/llvm-project/commit/56433e874b96bf7b3da02c13226a996d4fa5aef8
Author: Koakuma <koachan at protonmail.com>
Date: 2025-05-04 (Sun, 04 May 2025)
Changed paths:
M llvm/lib/Target/Sparc/SparcInstr64Bit.td
M llvm/lib/Target/Sparc/SparcInstrInfo.td
Log Message:
-----------
[SPARC][IAS][NFC] Tidy up LDSTUB and 64-bit mul/div instruction definitions
Reviewers: brad0, rorth, s-barannikov
Reviewed By: s-barannikov
Pull Request: https://github.com/llvm/llvm-project/pull/138398
Commit: c34d2fb59974dbad07a41987896dff7da8ec8a67
https://github.com/llvm/llvm-project/commit/c34d2fb59974dbad07a41987896dff7da8ec8a67
Author: Koakuma <koachan at protonmail.com>
Date: 2025-05-04 (Sun, 04 May 2025)
Changed paths:
M llvm/lib/Target/Sparc/Sparc.td
Log Message:
-----------
[SPARC] Mark Niagara3 as VIS3-capable
>From SPARC T3 Supplement to the UltraSPARC Architecture 2007 Specification:
> T3 SPARC core has a new 9 stage floating point pipeline and added Fused
> Multiply-Add (FMADD) instruction and VIS 3.0 Instructions compared to
> UltraSPARC T2/T2+.
Reviewers: rorth, s-barannikov, brad0
Reviewed By: s-barannikov
Pull Request: https://github.com/llvm/llvm-project/pull/138399
Commit: de7e23f0e8ca18d3f4b27183cd3930ab831c6c83
https://github.com/llvm/llvm-project/commit/de7e23f0e8ca18d3f4b27183cd3930ab831c6c83
Author: Fangrui Song <i at maskray.me>
Date: 2025-05-03 (Sat, 03 May 2025)
Changed paths:
A llvm/test/MC/Sparc/relocation-specifier.s
M llvm/test/MC/Sparc/sparc-assembly-exprs.s
M llvm/test/MC/Sparc/sparc-relocations.s
R llvm/test/MC/Sparc/sparc-tls-relocations.s
Log Message:
-----------
Sparc: Improve tests
* Remove unuseful -filetype=asm -show-encoding output from relocation tests.
* Test STT_TLS for TLS relocations
* Test r_offset for a few relocations
* Test ASM output for many relocations
Commit: f7b2c9a439dc4d5d847d7e8c0f36ab2eb5ea81e6
https://github.com/llvm/llvm-project/commit/f7b2c9a439dc4d5d847d7e8c0f36ab2eb5ea81e6
Author: Fangrui Song <i at maskray.me>
Date: 2025-05-03 (Sat, 03 May 2025)
Changed paths:
M llvm/lib/Target/Sparc/MCTargetDesc/SparcMCExpr.cpp
M llvm/lib/Target/Sparc/MCTargetDesc/SparcMCExpr.h
M llvm/lib/Target/Sparc/SparcAsmPrinter.cpp
Log Message:
-----------
Sparc: Modernize getSpecifierName. NFC
Make the style similar to LoongArch/RISCV.
Remove comment "FIXME: use %got22/%got10, if system assembler supports them."
%got22/%got10 are not available in gas.
Commit: 2d287f51eff2a5fbf84458a33f7fb2493cf67965
https://github.com/llvm/llvm-project/commit/2d287f51eff2a5fbf84458a33f7fb2493cf67965
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-03 (Sat, 03 May 2025)
Changed paths:
M llvm/lib/Support/Mustache.cpp
M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
M llvm/lib/Target/AMDGPU/AMDGPULowerModuleLDSPass.cpp
M llvm/lib/Target/AMDGPU/AMDGPUSwLowerLDS.cpp
M llvm/lib/Target/AMDGPU/GCNSchedStrategy.h
M llvm/lib/Target/Hexagon/HexagonOptAddrMode.cpp
M llvm/lib/Target/SPIRV/SPIRVIRMapping.h
M llvm/lib/Transforms/Instrumentation/NumericalStabilitySanitizer.cpp
M llvm/lib/Transforms/Scalar/LowerMatrixIntrinsics.cpp
Log Message:
-----------
[llvm] Use *(Set|Map)::contains (NFC) (#138431)
Commit: c22bc215ac9496ee5f6e55ba0b0904dc825c6f56
https://github.com/llvm/llvm-project/commit/c22bc215ac9496ee5f6e55ba0b0904dc825c6f56
Author: Mallikarjuna Gouda <mgouda at mips.com>
Date: 2025-05-04 (Sun, 04 May 2025)
Changed paths:
M llvm/lib/Target/Mips/Mips.td
A llvm/lib/Target/Mips/MipsScheduleI6400.td
A llvm/test/tools/llvm-mca/Mips/i6400.s
A llvm/test/tools/llvm-mca/Mips/lit.local.cfg
Log Message:
-----------
[MIPS] Reland Scheduling model for MIPS i6400 and i6500 CPUs (#132704) (#137984)
Relands #132704 with a fix in the testcase:
Add llvm/test/tools/llvm-mca/Mips/lit.local.cfg
Add scheduling model for the MIPS i6400 and i6500, an in-order MIPS64R6
processor.
i6400 and i6500 share same instruction latencies.
CPU has following pipelines
- Two ALUs
- Multiply and Divide unit (MDU)
- Branch Unit (CTU)
- Load/Store Unit (LSU)
- Short Floating-point Unit and
- Long Floating-point Unit
Latency information is available at:
https://mips.com/wp-content/uploads/2025/03/MIPS_I6500-F_Data_Sheet_Rev1.10_3-17-2025.pdf
Commit: 1ec9dd256ea287796261ba88d7bdfbeaba38343d
https://github.com/llvm/llvm-project/commit/1ec9dd256ea287796261ba88d7bdfbeaba38343d
Author: Fangrui Song <i at maskray.me>
Date: 2025-05-03 (Sat, 03 May 2025)
Changed paths:
M llvm/lib/Target/Sparc/AsmParser/SparcAsmParser.cpp
M llvm/lib/Target/Sparc/MCTargetDesc/SparcELFObjectWriter.cpp
M llvm/lib/Target/Sparc/MCTargetDesc/SparcMCCodeEmitter.cpp
M llvm/lib/Target/Sparc/SparcInstrInfo.td
M llvm/test/MC/Sparc/sparc-fixups.s
Log Message:
-----------
Sparc: Refactor R_SPARC_13/R_SPARC_GOT13 handling and fix a bug referencing absolute symbol
https://reviews.llvm.org/D47136 did not correctly handle `ld [%i0 + abs], %o0; abs = 7`
To fix it and make fixup handling less hacky,
* Change TableGen MEMri to use simm13Op instead of i32imm
* Emit a fixup of kind fixup_sparc_13 in SparcMCCodeEmitter::getSImm13OpValue
* Convert fixup_sparc_13 to either R_SPARC_13/R_SPARC_GOT13 in getRelocType
This postpones 13/GOT13 decision to relocation generation, ensuring that
we suppress the relocation when referencing an absolute symbol, matching
gas.
Commit: 55fa7e1ef4851c3c773ea9c11a0ae01798d028c3
https://github.com/llvm/llvm-project/commit/55fa7e1ef4851c3c773ea9c11a0ae01798d028c3
Author: Fangrui Song <i at maskray.me>
Date: 2025-05-03 (Sat, 03 May 2025)
Changed paths:
M llvm/lib/Target/Sparc/AsmParser/SparcAsmParser.cpp
Log Message:
-----------
Sparc: Remove fishy VK_WPLT30 special case
I think 9fc29098dfa684de53dd180aa93e94c39c388631 (2014) was misguided
and added the unneeded special case. It probably wanted to handle
R_SPARC_WPLT30/R_SPARC_WDISP30 in PDC/PIC but it's not correct
to check the property in AsmParser.
Commit: 1add318c176b92f5daba46b3a099aff60aa8d8c8
https://github.com/llvm/llvm-project/commit/1add318c176b92f5daba46b3a099aff60aa8d8c8
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-04 (Sun, 04 May 2025)
Changed paths:
M llvm/lib/IR/DroppedVariableStats.cpp
Log Message:
-----------
[IR] Avoid repeated hash lookups (NFC) (#138430)
Commit: a9699a334bc9666570418a3bed9520bcdc21518b
https://github.com/llvm/llvm-project/commit/a9699a334bc9666570418a3bed9520bcdc21518b
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-04 (Sun, 04 May 2025)
Changed paths:
M llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
M llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
M llvm/lib/CodeGen/LiveDebugValues/InstrRefBasedImpl.cpp
M llvm/lib/CodeGen/MachineCSE.cpp
M llvm/lib/CodeGen/RenameIndependentSubregs.cpp
M llvm/lib/CodeGen/SelectionDAG/ScheduleDAGFast.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
Log Message:
-----------
[CodeGen] Use range-based for loops (NFC) (#138434)
Commit: 47f391fd0e1d9ae6a91e625cff5490dd89a8a17e
https://github.com/llvm/llvm-project/commit/47f391fd0e1d9ae6a91e625cff5490dd89a8a17e
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-04 (Sun, 04 May 2025)
Changed paths:
M llvm/lib/CodeGen/AssignmentTrackingAnalysis.cpp
M llvm/lib/CodeGen/BranchRelaxation.cpp
M llvm/lib/CodeGen/ComplexDeinterleavingPass.cpp
M llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
M llvm/lib/CodeGen/LiveDebugVariables.cpp
M llvm/lib/CodeGen/ModuloSchedule.cpp
M llvm/lib/CodeGen/RemoveLoadsIntoFakeUses.cpp
M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
Log Message:
-----------
[CodeGen] Remove unused local variables (NFC) (#138441)
Commit: 6ab7cb78994e1e2ec8adf07517eb3a205fee5be6
https://github.com/llvm/llvm-project/commit/6ab7cb78994e1e2ec8adf07517eb3a205fee5be6
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-04 (Sun, 04 May 2025)
Changed paths:
M llvm/lib/Transforms/IPO/FunctionImport.cpp
M llvm/lib/Transforms/IPO/IROutliner.cpp
M llvm/lib/Transforms/IPO/Internalize.cpp
M llvm/lib/Transforms/Instrumentation/NumericalStabilitySanitizer.cpp
M llvm/lib/Transforms/ObjCARC/ObjCARCOpts.cpp
M llvm/lib/Transforms/Scalar/LoopInterchange.cpp
M llvm/lib/Transforms/Scalar/NewGVN.cpp
M llvm/lib/Transforms/Scalar/SimpleLoopUnswitch.cpp
M llvm/lib/Transforms/Utils/EscapeEnumerator.cpp
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/lib/Transforms/Vectorize/VPlan.cpp
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
Log Message:
-----------
[Transforms] Remove unused local variables (NFC) (#138442)
Commit: f35e172833f1bdd502e2847e13c3a58430bc654b
https://github.com/llvm/llvm-project/commit/f35e172833f1bdd502e2847e13c3a58430bc654b
Author: serge-sans-paille <sguelton at mozilla.com>
Date: 2025-05-04 (Sun, 04 May 2025)
Changed paths:
M clang/include/clang/Driver/Options.td
Log Message:
-----------
[clang] Document -fstrict-flex-arrays option (#138388)
Fix #138185
Commit: 4e81ee4a158b7c8e4b468c9370abb042a59129b6
https://github.com/llvm/llvm-project/commit/4e81ee4a158b7c8e4b468c9370abb042a59129b6
Author: Rainer Orth <ro at gcc.gnu.org>
Date: 2025-05-04 (Sun, 04 May 2025)
Changed paths:
M clang/lib/Driver/ToolChains/Solaris.cpp
M clang/test/Driver/solaris-ld.c
Log Message:
-----------
[Driver] Use AddRunTimeLibs on Solaris (#137596)
When linking `libomp.so` on Solaris, I encountered
```
clang: warning: argument unused during compilation: '-static-libgcc' [-Wunused-command-line-argument]
```
This happens because `Solaris.cpp` (`solaris::Linker::ConstructJob`)
links `-lgcc_s` and `-lgcc` on its own instead of using the common
`CommonArgs.cpp` (`tools::AddRunTimeLibs`) which handles
`-static-libgcc` out of the box.
This patch switches to `AddRunTimeLibs` and adds a test for
`-static-libgcc` handling. In `solaris-ld.c`, a few tests had to be
adjusted because `-lgcc` is now linked before `-lgcc_s`.
Tested on `amd64-pc-solaris2.11` and `sparcv9-sun-solaris2.11`.
Commit: 1b60b83adad8c62140ce8cc092179ed06df7ff09
https://github.com/llvm/llvm-project/commit/1b60b83adad8c62140ce8cc092179ed06df7ff09
Author: Younan Zhang <zyn7109 at gmail.com>
Date: 2025-05-04 (Sun, 04 May 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Sema/SemaOverload.cpp
M clang/test/SemaCXX/cxx2a-consteval.cpp
Log Message:
-----------
[Clang] Don't retain template FoundDecl for conversion function calls (#138377)
Commit: 6e205197178376cfbe3dc5f568bc880b23d4bc8b
https://github.com/llvm/llvm-project/commit/6e205197178376cfbe3dc5f568bc880b23d4bc8b
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-05-04 (Sun, 04 May 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/VPlan.cpp
M llvm/lib/Transforms/Vectorize/VPlan.h
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
Log Message:
-----------
[VPlan] Add VPPhiAccessors to provide interface for phi recipes (NFC) (#129388)
Add a VPPhiAccessors class to provide interfaces to access incoming
values and blocks.
The first user is VPWidenPhiRecipe, with the other phi-like recipes
following soon.
This will also be used to verify def-use chains where users are phi-like
recipes, simplifying https://github.com/llvm/llvm-project/pull/124838.
PR: https://github.com/llvm/llvm-project/pull/129388
Commit: e01cefd85d52ea579fe8fd21fa7986c9e64119e1
https://github.com/llvm/llvm-project/commit/e01cefd85d52ea579fe8fd21fa7986c9e64119e1
Author: Sergei Barannikov <barannikov88 at gmail.com>
Date: 2025-05-04 (Sun, 04 May 2025)
Changed paths:
M llvm/lib/Target/Sparc/AsmParser/SparcAsmParser.cpp
Log Message:
-----------
[Sparc] Remove unused parameter (NFC)
Commit: 5f4bc4330a395e3cd5caea00448946512233dc68
https://github.com/llvm/llvm-project/commit/5f4bc4330a395e3cd5caea00448946512233dc68
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-04 (Sun, 04 May 2025)
Changed paths:
M llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp
Log Message:
-----------
[WebAssembly] Remove an unused using decl (NFC) (#138432)
The "using" decl seems to be unused since it was first introduced in:
commit a8e1135baa9074f7c088c8e1999561f88699b56e
Author: Heejin Ahn <aheejin at gmail.com>
Date: Thu Jan 9 22:36:10 2025 -0800
Commit: d144c13ae59501a61ff1524412bb289261618539
https://github.com/llvm/llvm-project/commit/d144c13ae59501a61ff1524412bb289261618539
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-04 (Sun, 04 May 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/AArch64/AArch64RegisterInfo.cpp
M llvm/lib/Target/AArch64/MCTargetDesc/AArch64ELFStreamer.cpp
M llvm/lib/Target/AMDGPU/AMDGPUCallLowering.cpp
M llvm/lib/Target/AMDGPU/AMDGPUIGroupLP.cpp
M llvm/lib/Target/AMDGPU/AMDGPURegisterBankInfo.cpp
M llvm/lib/Target/AMDGPU/R600ISelLowering.cpp
M llvm/lib/Target/AMDGPU/SIFoldOperands.cpp
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
M llvm/lib/Target/ARM/ARMFrameLowering.cpp
M llvm/lib/Target/ARM/ARMTargetTransformInfo.cpp
M llvm/lib/Target/Hexagon/AsmParser/HexagonAsmParser.cpp
M llvm/lib/Target/Hexagon/HexagonVectorLoopCarriedReuse.cpp
M llvm/lib/Target/Mips/MipsCallLowering.cpp
M llvm/lib/Target/RISCV/GISel/RISCVCallLowering.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyLowerEmscriptenEHSjLj.cpp
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/lib/Target/X86/X86LoadValueInjectionLoadHardening.cpp
M llvm/lib/Target/X86/X86LowerAMXType.cpp
Log Message:
-----------
[Target] Remove unused local variables (NFC) (#138443)
Commit: 2f3067ed69098d9eefb92eda17649bf450641889
https://github.com/llvm/llvm-project/commit/2f3067ed69098d9eefb92eda17649bf450641889
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-04 (Sun, 04 May 2025)
Changed paths:
M llvm/include/llvm/CodeGen/SDPatternMatch.h
M llvm/include/llvm/Support/GenericLoopInfoImpl.h
M llvm/lib/Analysis/BranchProbabilityInfo.cpp
M llvm/lib/Analysis/LoopAccessAnalysis.cpp
M llvm/lib/Bitcode/Reader/BitcodeReader.cpp
M llvm/lib/ExecutionEngine/Orc/GetDylibInterface.cpp
M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
M llvm/lib/IR/SafepointIRVerifier.cpp
M llvm/lib/ObjCopy/CommonConfig.cpp
M llvm/lib/ProfileData/InstrProf.cpp
M llvm/tools/dsymutil/DwarfLinkerForBinary.cpp
M llvm/tools/llvm-exegesis/lib/ParallelSnippetGenerator.cpp
M llvm/unittests/Analysis/MemorySSATest.cpp
M llvm/unittests/ExecutionEngine/Orc/CoreAPIsTest.cpp
M llvm/unittests/Frontend/OpenMPIRBuilderTest.cpp
M llvm/unittests/IR/DominatorTreeTest.cpp
M llvm/unittests/Support/Path.cpp
Log Message:
-----------
[llvm] Remove unused local variables (NFC) (#138454)
Commit: 46c730656a03c2dd7127425d7319476caac17b0c
https://github.com/llvm/llvm-project/commit/46c730656a03c2dd7127425d7319476caac17b0c
Author: Mark de Wever <koraq at xs4all.nl>
Date: 2025-05-04 (Sun, 04 May 2025)
Changed paths:
M .github/workflows/libcxx-build-and-test.yaml
M libcxx/utils/ci/run-buildbot-container
Log Message:
-----------
[libc++][CI] Use latest Docker image. (#132539)
This image was updated in #132271.
Due to issues with upstream packages, it uses #134497 instead.
Commit: f002f300c5e1f9ce8adf00441b7e879fec36a071
https://github.com/llvm/llvm-project/commit/f002f300c5e1f9ce8adf00441b7e879fec36a071
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-04 (Sun, 04 May 2025)
Changed paths:
M clang/lib/CodeGen/CGBuiltin.cpp
M clang/lib/CodeGen/CGCUDANV.cpp
M clang/lib/CodeGen/CGDeclCXX.cpp
M clang/lib/CodeGen/CGExpr.cpp
M clang/lib/CodeGen/CGExprAgg.cpp
M clang/lib/CodeGen/CGHLSLRuntime.cpp
M clang/lib/CodeGen/CGObjCGNU.cpp
M clang/lib/CodeGen/CGStmtOpenMP.cpp
M clang/lib/Driver/ToolChains/CommonArgs.cpp
M clang/lib/Driver/ToolChains/HLSL.cpp
M clang/lib/Driver/ToolChains/OHOS.cpp
M clang/lib/Frontend/InitPreprocessor.cpp
M clang/lib/Lex/PPDirectives.cpp
M clang/lib/Parse/ParsePragma.cpp
M clang/lib/Sema/SemaCodeComplete.cpp
M clang/lib/Sema/SemaDeclAttr.cpp
M clang/lib/Sema/SemaDeclObjC.cpp
M clang/lib/Sema/SemaInit.cpp
M clang/lib/Sema/SemaOpenMP.cpp
M clang/lib/Serialization/ASTReader.cpp
M clang/lib/Serialization/ASTWriter.cpp
M clang/lib/StaticAnalyzer/Checkers/GenericTaintChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/LocalizationChecker.cpp
M clang/lib/Tooling/DependencyScanning/ModuleDepCollector.cpp
M clang/tools/libclang/CIndex.cpp
M clang/unittests/StaticAnalyzer/CallDescriptionTest.cpp
M clang/utils/TableGen/ClangAttrEmitter.cpp
Log Message:
-----------
[clang] Remove unused local variables (NFC) (#138453)
Commit: 58e6883c8b6e571d6bd774645ee2b6348cfed6ba
https://github.com/llvm/llvm-project/commit/58e6883c8b6e571d6bd774645ee2b6348cfed6ba
Author: Raul Tambre <raul at tambre.ee>
Date: 2025-05-04 (Sun, 04 May 2025)
Changed paths:
M clang/include/clang/Driver/Distro.h
M clang/lib/Driver/Distro.cpp
Log Message:
-----------
[clang] Add support for Debian 14 Forky and Debian 15 Duke (#138460)
Futureproofs our single Debian-specific special case for roughly the next 6 years.
See: https://lists.debian.org/debian-devel-announce/2025/01/msg00004.html
Commit: 3fc6ed89c0123cc001af8f67dbfc8dda242378f2
https://github.com/llvm/llvm-project/commit/3fc6ed89c0123cc001af8f67dbfc8dda242378f2
Author: Nico Weber <thakis at chromium.org>
Date: 2025-05-04 (Sun, 04 May 2025)
Changed paths:
M llvm/utils/gn/secondary/llvm/test/BUILD.gn
Log Message:
-----------
[gn] port 0c7c82af230bd
Commit: b713ec9761db566c2fd0962df7c4299d905370b0
https://github.com/llvm/llvm-project/commit/b713ec9761db566c2fd0962df7c4299d905370b0
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2025-05-04 (Sun, 04 May 2025)
Changed paths:
M llvm/utils/gn/secondary/llvm/lib/Target/NVPTX/BUILD.gn
Log Message:
-----------
[gn build] Port a88d580860b8
Commit: 8db15333934e239d855d5930fe6edca79ce54967
https://github.com/llvm/llvm-project/commit/8db15333934e239d855d5930fe6edca79ce54967
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2025-05-04 (Sun, 04 May 2025)
Changed paths:
M llvm/utils/gn/secondary/llvm/tools/llvm-reduce/BUILD.gn
Log Message:
-----------
[gn build] Port e66592509b7d
Commit: ac69fcf54f28128d0b72143c88a3a7a87dfd3bd4
https://github.com/llvm/llvm-project/commit/ac69fcf54f28128d0b72143c88a3a7a87dfd3bd4
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2025-05-04 (Sun, 04 May 2025)
Changed paths:
M llvm/utils/gn/secondary/clang/unittests/Basic/BUILD.gn
Log Message:
-----------
[gn build] Port faf4e8af74ee
Commit: 61714c16be4935d03f52ea7f11cee2f58a82d9fd
https://github.com/llvm/llvm-project/commit/61714c16be4935d03f52ea7f11cee2f58a82d9fd
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-04 (Sun, 04 May 2025)
Changed paths:
M lldb/source/Commands/CommandObjectCommands.cpp
M lldb/source/Core/FormatEntity.cpp
M lldb/source/DataFormatters/CXXFunctionPointer.cpp
M lldb/source/Expression/DiagnosticManager.cpp
M lldb/source/Interpreter/CommandObject.cpp
M lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunication.cpp
M lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.cpp
M lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
M lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp
M lldb/source/Plugins/SymbolFile/NativePDB/CompileUnitIndex.cpp
M lldb/source/Target/Platform.cpp
M lldb/source/Utility/ArchSpec.cpp
M lldb/unittests/Utility/LogTest.cpp
Log Message:
-----------
[lldb] Remove unused local variables (NFC) (#138457)
Commit: 4c587f549cbbea0ac1db2b983b8c5fb4fff82d72
https://github.com/llvm/llvm-project/commit/4c587f549cbbea0ac1db2b983b8c5fb4fff82d72
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-04 (Sun, 04 May 2025)
Changed paths:
M clang/lib/AST/DeclBase.cpp
M clang/lib/Serialization/ASTReader.cpp
M clang/tools/libclang/CXCursor.cpp
M clang/utils/TableGen/ClangBuiltinTemplatesEmitter.cpp
Log Message:
-----------
[clang] Use *(Set|Map)::contains (NFC) (#138464)
Commit: c3ff3b2ba36aa638ab6101096799d3960bbd6f17
https://github.com/llvm/llvm-project/commit/c3ff3b2ba36aa638ab6101096799d3960bbd6f17
Author: Alex Rønne Petersen <alex at alexrp.com>
Date: 2025-05-04 (Sun, 04 May 2025)
Changed paths:
M llvm/lib/Target/Sparc/MCTargetDesc/SparcAsmBackend.cpp
M llvm/lib/Target/Sparc/MCTargetDesc/SparcELFObjectWriter.cpp
M llvm/lib/Target/Sparc/MCTargetDesc/SparcFixupKinds.h
M llvm/lib/Target/Sparc/MCTargetDesc/SparcMCExpr.cpp
M llvm/lib/Target/Sparc/MCTargetDesc/SparcMCExpr.h
M llvm/test/MC/Sparc/relocation-specifier.s
Log Message:
-----------
[SPARC][MC] Fix `%gdop_hix22()` and `%gdop_lox10()` to use correct relocations (#137915)
1bfc5e7 introduced support for `%gdop_hix22()` and `%gdop_lox10()`.
However, it incorrectly mapped them to `R_SPARC_GOTDATA_HIX22` and
`R_SPARC_GOTDATA_LOX10`. They should in fact emit
`R_SPARC_GOTDATA_OP_HIX22` and `R_SPARC_GOTDATA_OP_LOX10`.
This became a problem when assembling glibc's PIC startup code:
```asm
sethi %gdop_hix22(main), %o0
xor %o0, %gdop_lox10(main), %o0
ldx [%l7 + %o0], %o0, %gdop(main)
```
After the `xor`, `%o0` should contain the GOT offset for `main`, but
because of the incorrect relocations, it actually ends up containing the
address of `main`, which of course makes the following `ldx` fail.
Commit: 142f99ad645f9e77dd5adb470e41c55ce6d37b2b
https://github.com/llvm/llvm-project/commit/142f99ad645f9e77dd5adb470e41c55ce6d37b2b
Author: Rainer Orth <ro at gcc.gnu.org>
Date: 2025-05-04 (Sun, 04 May 2025)
Changed paths:
M clang/test/Driver/solaris-ld.c
Log Message:
-----------
[clang][Driver][test] Fix Driver/solaris-ld.c (#138466)
`Clang :: Driver/solaris-ld.c` currently `FAIL`s on two buildbots:
[fuchsia-x86_64-linux](https://lab.llvm.org/buildbot/#/builders/11/builds/14369)
and
[llvm-clang-win-x-aarch64](https://lab.llvm.org/buildbot/#/builders/193/builds/7452).
Judging from `linux-ld.c`, all subtests need `-rtlib=platform
--unwindlib=platform` whenever host and target have different `rtlib`
and `unwindlib` defaults, which is what this patch does for
`solaris-ld.c`, too.
Tested on `amd64-pc-solaris2.11`, `sparcv9-sun-solaris2.11`, and
`x86_64-pc-linux-gnu`.
Commit: c51a3aa6ceb63a58ab7658ea999c65b818da6b1d
https://github.com/llvm/llvm-project/commit/c51a3aa6ceb63a58ab7658ea999c65b818da6b1d
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-04 (Sun, 04 May 2025)
Changed paths:
M llvm/lib/Analysis/ModuleSummaryAnalysis.cpp
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
M llvm/lib/DebugInfo/DWARF/DWARFVerifier.cpp
M llvm/lib/ExecutionEngine/Orc/TargetProcess/SimpleRemoteEPCServer.cpp
M llvm/lib/ObjCopy/wasm/WasmReader.cpp
M llvm/lib/Target/AMDGPU/SIShrinkInstructions.cpp
M llvm/lib/Target/ARM/ARMSubtarget.cpp
M llvm/lib/Target/Hexagon/HexagonConstExtenders.cpp
M llvm/lib/Transforms/IPO/IROutliner.cpp
M llvm/tools/sancov/sancov.cpp
M llvm/unittests/DebugInfo/CodeView/TypeHashingTest.cpp
M llvm/unittests/XRay/GraphTest.cpp
M llvm/utils/TableGen/AsmWriterEmitter.cpp
M llvm/utils/TableGen/DFAEmitter.cpp
M llvm/utils/TableGen/GlobalISelCombinerEmitter.cpp
Log Message:
-----------
[llvm] Remove unused local variables (NFC) (#138467)
Commit: a1803ea063c06c005ba50053f0e2cdb8f852871f
https://github.com/llvm/llvm-project/commit/a1803ea063c06c005ba50053f0e2cdb8f852871f
Author: Schrodinger ZHU Yifan <yifanzhu at rochester.edu>
Date: 2025-05-04 (Sun, 04 May 2025)
Changed paths:
M libc/config/linux/riscv/entrypoints.txt
M libc/include/llvm-libc-types/jmp_buf.h
M libc/src/setjmp/riscv/CMakeLists.txt
A libc/src/setjmp/riscv/sigsetjmp.cpp
Log Message:
-----------
[libc] implement sigsetjmp/siglongjmp for riscv (#137992)
See https://godbolt.org/z/jo7s6j7sq for compiled code.
```c++
#if __riscv_xlen == 64
#define STORE(A, B, C) "sd " #A ", %c[" #B "](" #C ")\n\t"
#define LOAD(A, B, C) "ld " #A ", %c[" #B "](" #C ")\n\t"
#elif __riscv_xlen == 32
#define STORE(A, B, C) "sw " #A ", %c[" #B "](" #C ")\n\t"
#define LOAD(A, B, C) "lw " #A ", %c[" #B "](" #C ")\n\t"
#else
#error "Unsupported RISC-V architecture"
#endif
namespace LIBC_NAMESPACE_DECL {
[[gnu::naked]]
LLVM_LIBC_FUNCTION(int, sigsetjmp, (sigjmp_buf, int)) {
// clang-format off
asm("beqz a1, .Lnosave\n\t"
STORE(ra, retaddr, a0)
STORE(s0, extra, a0)
"mv s0, a0\n\t"
"call %c[setjmp]\n\t"
"mv a1, a0\n\t"
"mv a0, s0\n\t"
LOAD(s0, extra, a0)
LOAD(ra, retaddr, a0)
"tail %c[epilogue]\n"
".Lnosave:\n\t"
"tail %c[setjmp]"
// clang-format on
::[retaddr] "i"(offsetof(__jmp_buf, sig_retaddr)),
[extra] "i"(offsetof(__jmp_buf, sig_extra)), [setjmp] "i"(setjmp),
[epilogue] "i"(sigsetjmp_epilogue)
: "a0", "a1", "s0");
}
```
Commit: b807a2bc13e96c6819a90e72b99c823c1f3b2d0e
https://github.com/llvm/llvm-project/commit/b807a2bc13e96c6819a90e72b99c823c1f3b2d0e
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-05-04 (Sun, 04 May 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
Log Message:
-----------
[VPlan] Move VPReplicateRecipe::execute to VPlanRecipes.cpp (NFC).
Consolidate ::execute implementation in VPlanRecipes.cpp, in line with
other ::execute implementations.
Commit: 1812a43a22a82adccf46d6589b8460a3a7a2678e
https://github.com/llvm/llvm-project/commit/1812a43a22a82adccf46d6589b8460a3a7a2678e
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-04 (Sun, 04 May 2025)
Changed paths:
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/SMTConstraintManager.h
M clang/lib/Sema/SemaPPC.cpp
M clang/lib/Sema/SemaTemplateDeduction.cpp
M clang/lib/StaticAnalyzer/Checkers/WebKit/PtrTypesSemantics.cpp
M clang/lib/StaticAnalyzer/Core/BugReporter.cpp
M clang/lib/StaticAnalyzer/Core/SimpleSValBuilder.cpp
M clang/unittests/Tooling/CompilationDatabaseTest.cpp
Log Message:
-----------
[clang] Remove unused local variables (NFC) (#138468)
Commit: d3e792cec1c29d2abd52983cc200cd1551ceb2cd
https://github.com/llvm/llvm-project/commit/d3e792cec1c29d2abd52983cc200cd1551ceb2cd
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-04 (Sun, 04 May 2025)
Changed paths:
M lld/COFF/DebugTypes.cpp
M lld/ELF/Driver.cpp
M lld/wasm/WriterUtils.cpp
Log Message:
-----------
[lld] Remove unused local variables (NFC) (#138470)
Commit: 1d955489c3c2fc2da89826a5cd6bf7954cf133b7
https://github.com/llvm/llvm-project/commit/1d955489c3c2fc2da89826a5cd6bf7954cf133b7
Author: Nico Weber <thakis at chromium.org>
Date: 2025-05-04 (Sun, 04 May 2025)
Changed paths:
M llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
M llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
M llvm/lib/CodeGen/LiveDebugValues/InstrRefBasedImpl.cpp
M llvm/lib/CodeGen/MachineCSE.cpp
M llvm/lib/CodeGen/RenameIndependentSubregs.cpp
M llvm/lib/CodeGen/SelectionDAG/ScheduleDAGFast.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
Log Message:
-----------
Revert "[CodeGen] Use range-based for loops (NFC) (#138434)"
This reverts commit a9699a334bc9666570418a3bed9520bcdc21518b.
Breaks CodeGen/AMDGPU/collapse-endcf.ll in several configs
(sanitizer builds; macOS; possibly more), see comments on
https://github.com/llvm/llvm-project/pull/138434
Commit: f02386db26affa28eb050174f080567ca8d4b60f
https://github.com/llvm/llvm-project/commit/f02386db26affa28eb050174f080567ca8d4b60f
Author: Fangrui Song <i at maskray.me>
Date: 2025-05-04 (Sun, 04 May 2025)
Changed paths:
M llvm/lib/Target/Sparc/MCTargetDesc/SparcMCCodeEmitter.cpp
M llvm/lib/Target/Sparc/SparcMCInstLower.cpp
Log Message:
-----------
Sparc: Don't build SparcMCExpr with a zero specifier
Commit: 4426355bb662204e07f464717cfb208ea93e3048
https://github.com/llvm/llvm-project/commit/4426355bb662204e07f464717cfb208ea93e3048
Author: Fangrui Song <i at maskray.me>
Date: 2025-05-04 (Sun, 04 May 2025)
Changed paths:
M llvm/lib/Target/Sparc/SparcAsmPrinter.cpp
Log Message:
-----------
Sparc: Format class SparcAsmPrinter. NFC
Commit: 944e60f08e3571db12f8ee15e7793e6a6e157c3b
https://github.com/llvm/llvm-project/commit/944e60f08e3571db12f8ee15e7793e6a6e157c3b
Author: Fangrui Song <i at maskray.me>
Date: 2025-05-04 (Sun, 04 May 2025)
Changed paths:
M llvm/lib/Target/Sparc/CMakeLists.txt
M llvm/lib/Target/Sparc/Sparc.h
M llvm/lib/Target/Sparc/SparcAsmPrinter.cpp
R llvm/lib/Target/Sparc/SparcMCInstLower.cpp
M llvm/utils/gn/secondary/llvm/lib/Target/Sparc/BUILD.gn
Log Message:
-----------
Sparc: Merge SparcMCInstLower.cpp into SparcAsmPrinter.cpp
Similar to https://reviews.llvm.org/D152311 for RISCV.
Commit: dc7037d4ef1572e2652507de8c4108a3282a5a33
https://github.com/llvm/llvm-project/commit/dc7037d4ef1572e2652507de8c4108a3282a5a33
Author: Fangrui Song <i at maskray.me>
Date: 2025-05-04 (Sun, 04 May 2025)
Changed paths:
M llvm/lib/Target/Sparc/MCTargetDesc/SparcMCExpr.cpp
M llvm/lib/Target/Sparc/MCTargetDesc/SparcMCExpr.h
Log Message:
-----------
Sparc: Remove unused VK_13. NFC
Commit: 26d71f9ef2215081119066d8396afd65e07f7a43
https://github.com/llvm/llvm-project/commit/26d71f9ef2215081119066d8396afd65e07f7a43
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-04 (Sun, 04 May 2025)
Changed paths:
M llvm/lib/Transforms/IPO/ConstantMerge.cpp
M llvm/lib/Transforms/Scalar/GVN.cpp
M llvm/lib/Transforms/Scalar/Reassociate.cpp
M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
Log Message:
-----------
[Transforms] Use range-based for loops (NFC) (#138476)
Commit: ed2f89fa00c784c6a4290955fb2c68dea033fe59
https://github.com/llvm/llvm-project/commit/ed2f89fa00c784c6a4290955fb2c68dea033fe59
Author: Fangrui Song <i at maskray.me>
Date: 2025-05-04 (Sun, 04 May 2025)
Changed paths:
M llvm/lib/Target/Sparc/AsmParser/SparcAsmParser.cpp
M llvm/lib/Target/Sparc/MCTargetDesc/SparcAsmBackend.cpp
M llvm/lib/Target/Sparc/MCTargetDesc/SparcELFObjectWriter.cpp
M llvm/lib/Target/Sparc/MCTargetDesc/SparcFixupKinds.h
M llvm/lib/Target/Sparc/MCTargetDesc/SparcMCCodeEmitter.cpp
M llvm/lib/Target/Sparc/MCTargetDesc/SparcMCExpr.cpp
M llvm/lib/Target/Sparc/MCTargetDesc/SparcMCExpr.h
M llvm/lib/Target/Sparc/SparcAsmPrinter.cpp
M llvm/lib/Target/Sparc/SparcISelLowering.cpp
Log Message:
-----------
Simplify R_SPARC_WDISP30 and R_SPARC_WPLT30 handling
Instead of determining the relocation type during SparcMCExpr
construction (in AsmParser or AsmPrinter), use fixup_sparc_call30 and
expand it to either R_SPARC_WDISP30 or R_SPARC_WPLT30.
Commit: 935e5e127ca330d2cb162520bee8274380a621b2
https://github.com/llvm/llvm-project/commit/935e5e127ca330d2cb162520bee8274380a621b2
Author: Fangrui Song <i at maskray.me>
Date: 2025-05-04 (Sun, 04 May 2025)
Changed paths:
M llvm/lib/Target/Sparc/Disassembler/SparcDisassembler.cpp
A llvm/test/MC/Disassembler/Sparc/invalid.s
Log Message:
-----------
SparcDisassembler: Ensure Size is initialized
To fix uninitialized value with an invalid encoding.
Commit: f39696e7dee4f1dce8c10d2b17f987643c480895
https://github.com/llvm/llvm-project/commit/f39696e7dee4f1dce8c10d2b17f987643c480895
Author: Fangrui Song <i at maskray.me>
Date: 2025-05-04 (Sun, 04 May 2025)
Changed paths:
M llvm/lib/MC/MCAssembler.cpp
M llvm/lib/Target/Sparc/MCTargetDesc/SparcAsmBackend.cpp
M llvm/lib/Target/Sparc/MCTargetDesc/SparcELFObjectWriter.cpp
M llvm/lib/Target/Sparc/MCTargetDesc/SparcFixupKinds.h
M llvm/lib/Target/Sparc/MCTargetDesc/SparcMCExpr.cpp
M llvm/lib/Target/Sparc/MCTargetDesc/SparcMCExpr.h
M llvm/lib/Target/Sparc/SparcAsmPrinter.cpp
M llvm/lib/Target/Sparc/SparcISelLowering.cpp
Log Message:
-----------
Sparc: Remove fixup kinds and specifiers for H44/M44/L44
The simm13 format OR instruction should use one single fixup kind, while
it currently uses a lot more, including %m44/%l44.
This change refactors R_SPARC_H44/R_SPARC_M44/R_SPARC_M44 handling to
remove fixup kinds and specifiers. We utilize the [0,
FirstLiteralRelocationKind) MCFixupKind range to encode raw relocation
types that may be resolved (see the MCAssembler.cpp change).
The `evaluateAsRelocatableImpl` implementation resembles
PPCMCExpr::evaluateAsRelocatableImpl.
Commit: b3e8b21c57cc5549767d21a2be43baeec431c6f7
https://github.com/llvm/llvm-project/commit/b3e8b21c57cc5549767d21a2be43baeec431c6f7
Author: Fangrui Song <i at maskray.me>
Date: 2025-05-04 (Sun, 04 May 2025)
Changed paths:
M llvm/lib/Target/Sparc/AsmParser/SparcAsmParser.cpp
M llvm/lib/Target/Sparc/MCTargetDesc/SparcAsmBackend.cpp
M llvm/lib/Target/Sparc/MCTargetDesc/SparcELFObjectWriter.cpp
M llvm/lib/Target/Sparc/MCTargetDesc/SparcFixupKinds.h
M llvm/lib/Target/Sparc/MCTargetDesc/SparcMCExpr.cpp
M llvm/lib/Target/Sparc/MCTargetDesc/SparcMCExpr.h
M llvm/lib/Target/Sparc/SparcAsmPrinter.cpp
M llvm/lib/Target/Sparc/SparcISelLowering.cpp
M llvm/test/MC/Sparc/relocation-specifier.s
Log Message:
-----------
Sparc: Remove fixup kinds and specifiers for GOT10/GOT13/GOT22/PC10/PC22
Similar to f39696e7dee4f1dce8c10d2b17f987643c480895
Commit: aafbddee808b8c81e2401ddcb6803f582ccb6892
https://github.com/llvm/llvm-project/commit/aafbddee808b8c81e2401ddcb6803f582ccb6892
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-04 (Sun, 04 May 2025)
Changed paths:
M clang/tools/clang-linker-wrapper/ClangLinkerWrapper.cpp
Log Message:
-----------
[clang-linker-wrapper] Remove unused local variables (NFC) (#138480)
Commit: b975487ce98ff68989dc626feba21b95bfffe8db
https://github.com/llvm/llvm-project/commit/b975487ce98ff68989dc626feba21b95bfffe8db
Author: Fangrui Song <i at maskray.me>
Date: 2025-05-04 (Sun, 04 May 2025)
Changed paths:
A llvm/test/MC/Sparc/Directives/data.s
A llvm/test/MC/Sparc/Misc/elf-feature.s
A llvm/test/MC/Sparc/Misc/elf-machine-type.s
A llvm/test/MC/Sparc/Misc/little-endian.s
A llvm/test/MC/Sparc/Relocations/expr.s
A llvm/test/MC/Sparc/Relocations/reloc-directive.s
A llvm/test/MC/Sparc/Relocations/relocation-specifier-pic.s
A llvm/test/MC/Sparc/Relocations/relocation-specifier.s
A llvm/test/MC/Sparc/Relocations/relocation.s
R llvm/test/MC/Sparc/elf-sparc-feature.s
R llvm/test/MC/Sparc/elf-sparc-machine-type.s
R llvm/test/MC/Sparc/reloc-directive.s
R llvm/test/MC/Sparc/relocation-specifier.s
R llvm/test/MC/Sparc/sparc-assembly-exprs.s
R llvm/test/MC/Sparc/sparc-directives.s
R llvm/test/MC/Sparc/sparc-fixups.s
R llvm/test/MC/Sparc/sparc-little-endian.s
R llvm/test/MC/Sparc/sparc-pic.s
R llvm/test/MC/Sparc/sparc-relocations.s
Log Message:
-----------
Sparc: Reorganize relocation and ELF tests
Following the subdirectory schemes of newer ports (LoongArch, M68k).
Commit: 9a7e307b64b52fac74df9d1f7c2696939e4627f1
https://github.com/llvm/llvm-project/commit/9a7e307b64b52fac74df9d1f7c2696939e4627f1
Author: Luke Lau <luke at igalia.com>
Date: 2025-05-05 (Mon, 05 May 2025)
Changed paths:
M llvm/test/Transforms/VectorCombine/AArch64/scalarize-scalable.ll
M llvm/test/Transforms/VectorCombine/X86/insert-binop-with-constant-inseltpoison.ll
M llvm/test/Transforms/VectorCombine/X86/insert-binop-with-constant.ll
A llvm/test/Transforms/VectorCombine/binop-scalarize.ll
Log Message:
-----------
[VectorCombine] Add tests for UB issue, remove immediate UB from existing tests. NFC (#138395)
This adds a test that exercises the part of scalarizeBinOpOrCmp that
produces immediate UB as described in
https://github.com/llvm/llvm-project/pull/138095#discussion_r2070133432,
but is fortunately currently folded into a correct transform.
I also noticed a bunch of immediate UB in some of the existing tests so
this also cleans them up. They should still all be scalarized though.
Commit: aa15596b5f2cb5b89a2ba7b46b154351bea2d3c9
https://github.com/llvm/llvm-project/commit/aa15596b5f2cb5b89a2ba7b46b154351bea2d3c9
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-04 (Sun, 04 May 2025)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
M llvm/lib/LTO/LTO.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp
M llvm/lib/Target/AMDGPU/AMDGPURegisterBankInfo.cpp
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
M llvm/lib/Target/ARM/ARMISelLowering.cpp
M llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
M llvm/lib/Target/AVR/AVRISelDAGToDAG.cpp
M llvm/lib/Target/BPF/BPFMIChecking.cpp
M llvm/lib/Target/Hexagon/HexagonVExtract.cpp
M llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
M llvm/lib/Target/PowerPC/PPCISelDAGToDAG.cpp
M llvm/lib/Target/Sparc/SparcISelLowering.cpp
M llvm/lib/Target/VE/VEISelDAGToDAG.cpp
M llvm/lib/Target/X86/X86ISelDAGToDAG.cpp
M llvm/lib/Transforms/Instrumentation/MemorySanitizer.cpp
Log Message:
-----------
[llvm] Remove unused local variables (NFC) (#138478)
Commit: f27dc238698041da5e35a2a6f252c63c5b69838d
https://github.com/llvm/llvm-project/commit/f27dc238698041da5e35a2a6f252c63c5b69838d
Author: Fangrui Song <i at maskray.me>
Date: 2025-05-04 (Sun, 04 May 2025)
Changed paths:
M llvm/test/MC/Sparc/Relocations/relocation.s
Log Message:
-----------
Sparc: Test WDISP16/WDISP19/WDISP22 and data relocations
Commit: 9ddec137879da7645039da7277b4d0c1dcf40416
https://github.com/llvm/llvm-project/commit/9ddec137879da7645039da7277b4d0c1dcf40416
Author: Fangrui Song <i at maskray.me>
Date: 2025-05-04 (Sun, 04 May 2025)
Changed paths:
M llvm/lib/Target/Sparc/MCTargetDesc/SparcAsmBackend.cpp
M llvm/lib/Target/Sparc/MCTargetDesc/SparcELFObjectWriter.cpp
M llvm/lib/Target/Sparc/MCTargetDesc/SparcFixupKinds.h
M llvm/lib/Target/Sparc/MCTargetDesc/SparcMCCodeEmitter.cpp
Log Message:
-----------
Sparc: Remove fixup kinds for WDISP16/WDISP19/WDISP22
Similar to f39696e7dee4f1dce8c10d2b17f987643c480895
Commit: a5d48db1bebc74c256a0e6a9adf98389b1f4d7a2
https://github.com/llvm/llvm-project/commit/a5d48db1bebc74c256a0e6a9adf98389b1f4d7a2
Author: Fangrui Song <i at maskray.me>
Date: 2025-05-04 (Sun, 04 May 2025)
Changed paths:
M llvm/lib/Target/Sparc/AsmParser/SparcAsmParser.cpp
M llvm/lib/Target/Sparc/MCTargetDesc/SparcMCExpr.cpp
M llvm/lib/Target/Sparc/MCTargetDesc/SparcMCExpr.h
Log Message:
-----------
Sparc: Remove specifiers for GOTDATA_OP
Commit: 8040003f17abfcf23394527de90c59ccb671b7fd
https://github.com/llvm/llvm-project/commit/8040003f17abfcf23394527de90c59ccb671b7fd
Author: Fangrui Song <i at maskray.me>
Date: 2025-05-04 (Sun, 04 May 2025)
Changed paths:
M llvm/lib/Target/Sparc/MCTargetDesc/SparcAsmBackend.cpp
M llvm/lib/Target/Sparc/MCTargetDesc/SparcELFObjectWriter.cpp
M llvm/lib/Target/Sparc/MCTargetDesc/SparcFixupKinds.h
M llvm/lib/Target/Sparc/MCTargetDesc/SparcMCExpr.cpp
Log Message:
-----------
Sparc: Remove fixup kinds for HH22/HM10/LM22 / HI22/LO10/HIX22/LOX10
Commit: dcb43307ce05974a06006a890933b63a0c3925d1
https://github.com/llvm/llvm-project/commit/dcb43307ce05974a06006a890933b63a0c3925d1
Author: Ye Luo <yeluo at anl.gov>
Date: 2025-05-05 (Mon, 05 May 2025)
Changed paths:
M offload/DeviceRTL/CMakeLists.txt
Log Message:
-----------
[Offload] Fix dependency issue #126143 in CMake
Commit: 1fc8b1bcb1ccca25926b3d92331df681fb49e766
https://github.com/llvm/llvm-project/commit/1fc8b1bcb1ccca25926b3d92331df681fb49e766
Author: Fangrui Song <i at maskray.me>
Date: 2025-05-04 (Sun, 04 May 2025)
Changed paths:
M llvm/lib/Target/Sparc/AsmParser/SparcAsmParser.cpp
M llvm/lib/Target/Sparc/MCTargetDesc/SparcELFObjectWriter.cpp
M llvm/lib/Target/Sparc/MCTargetDesc/SparcMCAsmInfo.cpp
M llvm/lib/Target/Sparc/MCTargetDesc/SparcMCExpr.cpp
M llvm/lib/Target/Sparc/MCTargetDesc/SparcMCExpr.h
M llvm/lib/Target/Sparc/SparcAsmPrinter.cpp
M llvm/lib/Target/Sparc/SparcISelLowering.cpp
M llvm/lib/Target/Sparc/SparcTargetObjectFile.cpp
Log Message:
-----------
Sparc: Remove specifiers for HH22/HM10/LM22, TLS, and DISP32
Commit: 003fa7731d81a47c98e9c55f80d509933c9b91f6
https://github.com/llvm/llvm-project/commit/003fa7731d81a47c98e9c55f80d509933c9b91f6
Author: Fangrui Song <i at maskray.me>
Date: 2025-05-04 (Sun, 04 May 2025)
Changed paths:
M llvm/lib/Target/Sparc/AsmParser/SparcAsmParser.cpp
M llvm/lib/Target/Sparc/MCTargetDesc/SparcMCExpr.cpp
M llvm/lib/Target/Sparc/MCTargetDesc/SparcMCExpr.h
M llvm/lib/Target/Sparc/SparcAsmPrinter.cpp
M llvm/lib/Target/Sparc/SparcISelLowering.cpp
Log Message:
-----------
Sparc: Remove VK_LO/VK_HI and replace enum Specifier with uint16_t
Commit: ecc73a6f1ce61a17250a45ee7cda289cc264f608
https://github.com/llvm/llvm-project/commit/ecc73a6f1ce61a17250a45ee7cda289cc264f608
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2025-05-05 (Mon, 05 May 2025)
Changed paths:
M clang/lib/AST/ByteCode/Context.cpp
M clang/lib/AST/ByteCode/Context.h
M clang/lib/AST/ByteCode/EvalEmitter.cpp
M clang/lib/AST/ByteCode/EvalEmitter.h
M clang/lib/AST/ByteCode/EvaluationResult.h
M clang/lib/AST/ByteCode/Pointer.h
M clang/lib/AST/ExprConstant.cpp
M clang/test/SemaCXX/gnu-asm-constexpr.cpp
M clang/test/SemaCXX/static-assert-cxx26.cpp
Log Message:
-----------
[clang][bytecode] Use bytecode interpreter in EvaluateCharRangeAsString (#138461)
This was always using the ast walker.
Commit: 1b0a0c7382bff13e272dd547210edfa6bb06d15f
https://github.com/llvm/llvm-project/commit/1b0a0c7382bff13e272dd547210edfa6bb06d15f
Author: Nathan Ridge <zeratul976 at hotmail.com>
Date: 2025-05-05 (Mon, 05 May 2025)
Changed paths:
M clang-tools-extra/clangd/index/FileIndex.cpp
M clang-tools-extra/clangd/index/FileIndex.h
M clang-tools-extra/clangd/index/StdLib.cpp
M clang-tools-extra/clangd/unittests/StdLibTests.cpp
M clang-tools-extra/clangd/unittests/TestTU.cpp
Log Message:
-----------
[clangd] Store documentation when indexing standard library (#133681)
Fixes https://github.com/clangd/clangd/issues/2344
Commit: 0054ab4dc84b2c8c054fc89df4ca745514ca0da4
https://github.com/llvm/llvm-project/commit/0054ab4dc84b2c8c054fc89df4ca745514ca0da4
Author: Björn Pettersson <bjorn.a.pettersson at ericsson.com>
Date: 2025-05-05 (Mon, 05 May 2025)
Changed paths:
M clang/tools/c-index-test/c-index-test.c
M llvm/include/llvm/Support/AutoConvert.h
Log Message:
-----------
[NFC] Fix c++ style comment in c file (#138244)
Fix "C++ style comments are not allowed in ISO C90" warnings in some C
files.
Commit: 249d9492a2228df5a0628858e69e5221d7243d0c
https://github.com/llvm/llvm-project/commit/249d9492a2228df5a0628858e69e5221d7243d0c
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-05-05 (Mon, 05 May 2025)
Changed paths:
M llvm/lib/Transforms/Scalar/DeadStoreElimination.cpp
M llvm/test/Transforms/DeadStoreElimination/assume.ll
M llvm/test/Transforms/DeadStoreElimination/simple.ll
Log Message:
-----------
[DSE] Only consider provenance captures (#138286)
As a memory analysis, DSE only cares about provenance captures. Address
captures can be ignored as they cannot be used to read or modify memory.
Commit: 5c3d679516ce054d307abbfd0ad494d4924d70a6
https://github.com/llvm/llvm-project/commit/5c3d679516ce054d307abbfd0ad494d4924d70a6
Author: arun-thmn <arun.thangamani at intel.com>
Date: 2025-05-05 (Mon, 05 May 2025)
Changed paths:
M mlir/include/mlir/Dialect/X86Vector/X86Vector.td
M mlir/lib/Dialect/X86Vector/IR/X86VectorDialect.cpp
M mlir/lib/Dialect/X86Vector/Transforms/LegalizeForLLVMExport.cpp
M mlir/test/Dialect/X86Vector/legalize-for-llvm.mlir
M mlir/test/Dialect/X86Vector/roundtrip.mlir
M mlir/test/Target/LLVMIR/x86vector.mlir
Log Message:
-----------
[mlir][x86vector] AVX Convert/Broadcast F16 to F32 instructions (#137917)
Adds AVX broadcast and conversion from F16 to packed F32 (similar to PR:
https://github.com/llvm/llvm-project/pull/136830). The instructions that
are added:
- VBCSTNESH2PS
- VCVTNEEPH2PS
- VCVTNEOPH2PS
Commit: 0f6b671a9b76ccd089f35156d47aae8f21be7e39
https://github.com/llvm/llvm-project/commit/0f6b671a9b76ccd089f35156d47aae8f21be7e39
Author: Sven van Haastregt <sven.vanhaastregt at arm.com>
Date: 2025-05-05 (Mon, 05 May 2025)
Changed paths:
M clang/test/CodeGenOpenCL/kernel-attributes.cl
Log Message:
-----------
[OpenCL] Add test for __kernel_exec macro (#138287)
The `__kernel_exec` macro is mandated by the OpenCL C specification and
supplied by `opencl-c-base.h`, but it was not covered in any tests.
Commit: 529b6fcb00aabbed17365e5fb3abbc2ae127c967
https://github.com/llvm/llvm-project/commit/529b6fcb00aabbed17365e5fb3abbc2ae127c967
Author: Anutosh Bhat <andersonbhat491 at gmail.com>
Date: 2025-05-05 (Mon, 05 May 2025)
Changed paths:
M clang/include/clang/Interpreter/Interpreter.h
M clang/lib/Interpreter/DeviceOffload.cpp
M clang/lib/Interpreter/DeviceOffload.h
M clang/lib/Interpreter/Interpreter.cpp
Log Message:
-----------
[clang-repl] Fix destructor for interpreter for the cuda negation case (#138091)
Check this error for more context
(https://github.com/compiler-research/CppInterOp/actions/runs/14749797085/job/41407625681?pr=491#step:10:531)
This fails with
```
* thread #1, name = 'CppInterOpTests', stop reason = signal SIGSEGV: address not mapped to object (fault address: 0x55500356d6d3)
* frame #0: 0x00007fffee41cfe3 libclangCppInterOp.so.21.0gitclang::PragmaNamespace::~PragmaNamespace() + 99
frame #1: 0x00007fffee435666 libclangCppInterOp.so.21.0gitclang::Preprocessor::~Preprocessor() + 3830
frame #2: 0x00007fffee20917a libclangCppInterOp.so.21.0gitstd::_Sp_counted_base<(__gnu_cxx::_Lock_policy)2>::_M_release() + 58
frame #3: 0x00007fffee224796 libclangCppInterOp.so.21.0gitclang::CompilerInstance::~CompilerInstance() + 838
frame #4: 0x00007fffee22494d libclangCppInterOp.so.21.0gitclang::CompilerInstance::~CompilerInstance() + 13
frame #5: 0x00007fffed95ec62 libclangCppInterOp.so.21.0gitclang::IncrementalCUDADeviceParser::~IncrementalCUDADeviceParser() + 98
frame #6: 0x00007fffed9551b6 libclangCppInterOp.so.21.0gitclang::Interpreter::~Interpreter() + 102
frame #7: 0x00007fffed95598d libclangCppInterOp.so.21.0gitclang::Interpreter::~Interpreter() + 13
frame #8: 0x00007fffed9181e7 libclangCppInterOp.so.21.0gitcompat::createClangInterpreter(std::vector<char const*, std::allocator<char const*>>&) + 2919
```
Problem :
1) The destructor currently handles no clearance for the DeviceParser
and the DeviceAct. We currently only have this
https://github.com/llvm/llvm-project/blob/976493822443c52a71ed3c67aaca9a555b20c55d/clang/lib/Interpreter/Interpreter.cpp#L416-L419
2) The ownership for DeviceCI currently is present in
IncrementalCudaDeviceParser. But this should be similar to how the
combination for hostCI, hostAction and hostParser are managed by the
Interpreter. As on master the DeviceAct and DeviceParser are managed by
the Interpreter but not DeviceCI. This is problematic because :
IncrementalParser holds a Sema& which points into the DeviceCI. On
master, DeviceCI is destroyed before the base class ~IncrementalParser()
runs, causing Parser::reset() to access a dangling Sema (and as Sema
holds a reference to Preprocessor which owns PragmaNamespace) we see
this
```
* frame #0: 0x00007fffee41cfe3 libclangCppInterOp.so.21.0gitclang::PragmaNamespace::~PragmaNamespace() + 99
frame #1: 0x00007fffee435666 libclangCppInterOp.so.21.0gitclang::Preprocessor::~Preprocessor() + 3830
```
Commit: 1b479e8314462d798dacf0263206da95f666cd47
https://github.com/llvm/llvm-project/commit/1b479e8314462d798dacf0263206da95f666cd47
Author: Christian Sigg <csigg at google.com>
Date: 2025-05-05 (Mon, 05 May 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/clang/BUILD.bazel
M utils/bazel/llvm-project-overlay/lld/BUILD.bazel
M utils/bazel/llvm-project-overlay/llvm/BUILD.bazel
R utils/bazel/llvm-project-overlay/llvm/tblgen.bzl
M utils/bazel/llvm-project-overlay/mlir/python/BUILD.bazel
M utils/bazel/llvm-project-overlay/mlir/tblgen.bzl
Log Message:
-----------
[bazel] NFC: Change `tbl_outs` to dicts. (#137788)
There were some `gentbl_cc_library` targets left to convert.
Allow `gentbl_filegroup` rule to take a dict as well and change all
targets.
Move lld/BUILD.bazel from //llvm:tblgen.bzl to //mlir:tblgen.bzl, delete
the former.
This makes the BUILD files shorter and more readable.
Commit: 56097bce97b4f0a9717268e9ddc1bb72bc49390c
https://github.com/llvm/llvm-project/commit/56097bce97b4f0a9717268e9ddc1bb72bc49390c
Author: Jim Lin <jim at andestech.com>
Date: 2025-05-05 (Mon, 05 May 2025)
Changed paths:
M clang/include/clang/Basic/BuiltinsRISCVXCV.td
Log Message:
-----------
[RISCV][Clang] Fix typo: RISCXCVBuiltin -> RISCVXCVBuiltin. NFC.
Commit: 3416d4fcee01b63002b95774e9aff35a0ab8ef9e
https://github.com/llvm/llvm-project/commit/3416d4fcee01b63002b95774e9aff35a0ab8ef9e
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-05-05 (Mon, 05 May 2025)
Changed paths:
M llvm/lib/Analysis/AliasAnalysis.cpp
M llvm/lib/Analysis/BasicAliasAnalysis.cpp
Log Message:
-----------
[AA] Assert that alias() arguments are pointers (#138242)
Assert instead of returning NoAlias for non-pointers. This makes sure
that people don't confuse alias (working on locations) with
getModRefInfo (working on instructions).
Commit: b492ec5899082af9f34d79be9750b5e5c5d082e1
https://github.com/llvm/llvm-project/commit/b492ec5899082af9f34d79be9750b5e5c5d082e1
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-05-05 (Mon, 05 May 2025)
Changed paths:
M clang/lib/AST/ExternalASTSource.cpp
M clang/tools/clang-linker-wrapper/ClangLinkerWrapper.cpp
M llvm/include/llvm/CodeGen/CodeGenTargetMachineImpl.h
M llvm/include/llvm/Passes/CodeGenPassBuilder.h
M llvm/include/llvm/Support/Error.h
M llvm/include/llvm/Support/ErrorHandling.h
M llvm/lib/LTO/LTOBackend.cpp
M llvm/lib/Support/Error.cpp
M llvm/lib/Support/ErrorHandling.cpp
M llvm/lib/Support/raw_ostream.cpp
M llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.cpp
M llvm/lib/Target/DirectX/DXILIntrinsicExpansion.cpp
M llvm/lib/Target/DirectX/DXILOpBuilder.cpp
M llvm/lib/Target/DirectX/DXILResourceAccess.cpp
M llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVBaseInfo.cpp
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.cpp
M llvm/lib/Transforms/IPO/BlockExtractor.cpp
M llvm/lib/Transforms/IPO/EmbedBitcodePass.cpp
M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
M llvm/lib/Transforms/Instrumentation/GCOVProfiling.cpp
M llvm/lib/Transforms/Scalar/LICM.cpp
M llvm/lib/Transforms/Scalar/LoopPassManager.cpp
M llvm/lib/Transforms/Scalar/LoopUnrollPass.cpp
M llvm/tools/opt/optdriver.cpp
M mlir/lib/TableGen/AttrOrTypeDef.cpp
Log Message:
-----------
[ErrorHandling] Add reportFatalInternalError + reportFatalUsageError (NFC) (#138251)
This implements the result of the discussion at:
https://discourse.llvm.org/t/rfc-report-fatal-error-and-the-default-value-of-gencrashdialog/73587
There are two different use cases for report_fatal_error, so replace it
with two functions reportFatalInternalError() and
reportFatalUsageError(). The former indicates a bug in LLVM and
generates a crash dialog. The latter does not. The names have been
suggested by rnk and people seemed to like them.
This replaces a lot of the usages that passed an explicit value for
GenCrashDiag. I did not bulk replace remaining report_fatal_error usage
-- they probably require case by case review for which function to use.
Commit: 93680b5242bf9a1555f95f633d45e348cf103527
https://github.com/llvm/llvm-project/commit/93680b5242bf9a1555f95f633d45e348cf103527
Author: Jugst3r <38359364+Jugst3r at users.noreply.github.com>
Date: 2025-05-05 (Mon, 05 May 2025)
Changed paths:
M clang/bindings/python/clang/cindex.py
M clang/docs/ReleaseNotes.rst
M clang/include/clang-c/Index.h
M clang/tools/c-index-test/c-index-test.c
M clang/tools/libclang/CIndex.cpp
Log Message:
-----------
Remove duplicate API (#132776)
And adapt the existing code to account for the comments made when
introducing the duplicate API.
Note that this introduces a retro-incompatibility with LLVM 19.
cc @sebastianpoeplau
Commit: 5f24ae925121807c70068d20182b50a2a4b37a97
https://github.com/llvm/llvm-project/commit/5f24ae925121807c70068d20182b50a2a4b37a97
Author: Aaron Ballman <aaron at aaronballman.com>
Date: 2025-05-05 (Mon, 05 May 2025)
Changed paths:
M clang/lib/Sema/SemaExpr.cpp
M clang/test/Sema/implicit-void-ptr-cast.c
Log Message:
-----------
[C] Update -Wimplicit-void-ptr-cast for null pointer constants (#138271)
Null pointer constants require a bit of extra effort to handle in C.
Fixes #138145
Commit: 8f3fc7241145ab164dd7859e4349c2ff62619b94
https://github.com/llvm/llvm-project/commit/8f3fc7241145ab164dd7859e4349c2ff62619b94
Author: Jay Foad <jay.foad at amd.com>
Date: 2025-05-05 (Mon, 05 May 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/SIInstructions.td
Log Message:
-----------
[AMDGPU] Use Reg32Types for move-immediate patterns (#138422)
This just avoids having another copy of the list of valid 32-bit pointer
types.
Commit: 43c05d97389d479f78ca18b5d7957f51cb4022fd
https://github.com/llvm/llvm-project/commit/43c05d97389d479f78ca18b5d7957f51cb4022fd
Author: Aaron Ballman <aaron at aaronballman.com>
Date: 2025-05-05 (Mon, 05 May 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Basic/DiagnosticGroups.td
M clang/test/Sema/warn-jump-bypasses-init.c
Log Message:
-----------
Rename -Wjump-bypasses-init to -Wjump-misses-init
This matches the GCC diagnostic name which covers the same
functionality.
Commit: 112291ad35a9b83501ff0f9e89de494d2df17b3c
https://github.com/llvm/llvm-project/commit/112291ad35a9b83501ff0f9e89de494d2df17b3c
Author: Stefan Weigl-Bosker <stefan at s00.xyz>
Date: 2025-05-05 (Mon, 05 May 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Lex/Pragma.cpp
A clang/test/Preprocessor/_Pragma-in-include.c
Log Message:
-----------
[clang][lex] Fix lexing malformed pragma within include directive (#138165)
this patch fixes a crash triggered by lexing past eof when emitting a
diagnostic for a malformed `_Pragma` directive within an `include`
directive.
Fixed by by preventing the lexer from eating a `tok::eod`.
Fixes #138094
Commit: 4c43d6ae984e13c3d5b01e3f7254bbf2956ffa1b
https://github.com/llvm/llvm-project/commit/4c43d6ae984e13c3d5b01e3f7254bbf2956ffa1b
Author: Raul Tambre <raul at tambre.ee>
Date: 2025-05-05 (Mon, 05 May 2025)
Changed paths:
M clang/docs/CommandGuide/clang.rst
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Basic/LangStandards.def
M clang/test/Driver/unknown-std.c
Log Message:
-----------
[clang] Alias iso9899:2024 to C23, update documentation (#138459)
Commit: b06a014f01ffa279a7add9e22d21fcc2d2fb208f
https://github.com/llvm/llvm-project/commit/b06a014f01ffa279a7add9e22d21fcc2d2fb208f
Author: Arthur Eubanks <aeubanks at google.com>
Date: 2025-05-05 (Mon, 05 May 2025)
Changed paths:
M clang/tools/libclang/CMakeLists.txt
Log Message:
-----------
[cmake] Reenable libclang.dll when LLVM_ENABLE_PIC (#138343)
This was disabled for Windows/Mingw in #138343, but it's actually
linkable and is being used by some people.
Commit: a94e56095808f4784afcf8e50819ba594c5e8219
https://github.com/llvm/llvm-project/commit/a94e56095808f4784afcf8e50819ba594c5e8219
Author: Hans Wennborg <hans at hanshq.net>
Date: 2025-05-05 (Mon, 05 May 2025)
Changed paths:
M clang/lib/Sema/JumpDiagnostics.cpp
M clang/test/Sema/warn-jump-bypasses-init.c
Log Message:
-----------
Only emit -Wmicrosoft-goto in C++ mode (#138507)
Follow-up to #138009 which added diagnostics for "jump past
initialization" in C mode, in which case they're not an MS extension.
Commit: 07bc54bf4554398b199f4dc849e5193b98422f23
https://github.com/llvm/llvm-project/commit/07bc54bf4554398b199f4dc849e5193b98422f23
Author: Martin Storsjö <martin at martin.st>
Date: 2025-05-05 (Mon, 05 May 2025)
Changed paths:
M llvm/lib/DWARFLinker/Parallel/DWARFLinkerCompileUnit.cpp
M llvm/lib/DWARFLinker/Parallel/DWARFLinkerCompileUnit.h
M llvm/lib/DWARFLinker/Parallel/TypePool.h
Log Message:
-----------
[DWARFLinkerParallel] Fix incorrect uses of compare_exchange_weak (#138129)
The documentation for compare_exchange_weak says that it is allowed to
spuriously fail. If compare_exchange_weak is called in a loop, spurious
failures usually are benign - but in these cases, a spurious failure
would give incorrect behaviour.
E.g. in TypePool::getOrCreateTypeEntryBody, we assume that if the
compare_exchange call returned false, we had been preempted by another
thread and that DIE is non-null.
This fixes running the dsymutil tests on Windows on aarch64 (built with
a mingw toolchain with libc++).
Commit: 45d96df7976ffa9eb5b951fc0f8f481ea6c43610
https://github.com/llvm/llvm-project/commit/45d96df7976ffa9eb5b951fc0f8f481ea6c43610
Author: Diana Picus <Diana-Magda.Picus at amd.com>
Date: 2025-05-05 (Mon, 05 May 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
M llvm/lib/Target/AMDGPU/AMDGPURegisterBankInfo.cpp
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
M llvm/lib/Target/AMDGPU/SIInstructions.td
A llvm/test/CodeGen/AMDGPU/legalize-amdgcn.dead.mir
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.dead.ll
Log Message:
-----------
[AMDGPU] Support arbitrary types in amdgcn.dead (#134841)
Legalize the amdgcn.dead intrinsic to work with types other than i32. It
still generates IMPLICIT_DEFs.
Remove some of the previous code for selecting/reg bank mapping it for
32-bit types, since everything is done in the legalizer now.
Commit: f49ee00ec47f596269639987f5ea8755a358ca16
https://github.com/llvm/llvm-project/commit/f49ee00ec47f596269639987f5ea8755a358ca16
Author: Shan Huang <52285902006 at stu.ecnu.edu.cn>
Date: 2025-05-05 (Mon, 05 May 2025)
Changed paths:
M llvm/lib/Transforms/Scalar/ConstraintElimination.cpp
A llvm/test/Transforms/ConstraintElimination/salvage-dbg-values-replaced-by-constant-2.ll
A llvm/test/Transforms/ConstraintElimination/salvage-dbg-values-replaced-by-constant.ll
Log Message:
-----------
[DebugInfo][ConstraintElimination] Fix debug value loss in replacing comparisons with the speculated constants (#136839)
Fix #135736
Commit: f33821628d0e03f5389e1f4339b4d10f6a8883b5
https://github.com/llvm/llvm-project/commit/f33821628d0e03f5389e1f4339b4d10f6a8883b5
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-05-05 (Mon, 05 May 2025)
Changed paths:
M llvm/test/Transforms/FunctionAttrs/nocapture.ll
Log Message:
-----------
[FunctionAttrs] Add test for SCC with address only capture (NFC)
Commit: d6f1de3107bb2367065cf39a6468b9466524be75
https://github.com/llvm/llvm-project/commit/d6f1de3107bb2367065cf39a6468b9466524be75
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2025-05-05 (Mon, 05 May 2025)
Changed paths:
M clang/lib/AST/ByteCode/Interp.cpp
Log Message:
-----------
[clang][bytecode] Bail out on invalid function declarations (#138503)
Commit: 003e501487b5a9380395ebf34eb28bb3423493b4
https://github.com/llvm/llvm-project/commit/003e501487b5a9380395ebf34eb28bb3423493b4
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-05-05 (Mon, 05 May 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp
Log Message:
-----------
AMDGPU: Fix gcc -Wenum-compare warning (#138529)
Commit: 541ad3fb71258b51356f707c2477c660968a7bd8
https://github.com/llvm/llvm-project/commit/541ad3fb71258b51356f707c2477c660968a7bd8
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-05-05 (Mon, 05 May 2025)
Changed paths:
M llvm/lib/Transforms/Scalar/MemCpyOptimizer.cpp
Log Message:
-----------
[MemCpyOpt] Drop outdated TODO (NFC)
This code was already changed to make use of UseCC/ResultCC.
We can't restrict the check to provenance or address only, as both
are relevant here.
Commit: aadf35cb41db9bc4594d9a70cfdc6d43d795a097
https://github.com/llvm/llvm-project/commit/aadf35cb41db9bc4594d9a70cfdc6d43d795a097
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-05-05 (Mon, 05 May 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlanVerifier.cpp
M llvm/unittests/Transforms/Vectorize/VPlanVerifierTest.cpp
Log Message:
-----------
[VPlan] Verify number preds and operands matches for VPIRPhis. (NFC)
Extend the verifier to ensure the number of predecessors and operands
match for VPIRPhis.
Commit: 76b9973a78023bb7fa42e8e63c7b40799b6c8900
https://github.com/llvm/llvm-project/commit/76b9973a78023bb7fa42e8e63c7b40799b6c8900
Author: Philip Reames <preames at rivosinc.com>
Date: 2025-05-05 (Mon, 05 May 2025)
Changed paths:
M llvm/test/Transforms/DeadStoreElimination/memset-and-memcpy.ll
Log Message:
-----------
[DSE] Strengthen test coverage for memset.pattern
Commit: 15f7e029403a61412bc8c397c9205f7a930055dc
https://github.com/llvm/llvm-project/commit/15f7e029403a61412bc8c397c9205f7a930055dc
Author: Aaron Ballman <aaron at aaronballman.com>
Date: 2025-05-05 (Mon, 05 May 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Sema/SemaDecl.cpp
M clang/test/C/C23/n3030.c
M clang/test/C/C23/n3037.c
M clang/test/C/drs/dr0xx.c
M clang/test/C/drs/dr1xx.c
A clang/test/Sema/c23-decl-in-prototype.c
M clang/test/Sema/decl-in-prototype.c
M clang/test/Sema/enum.c
Log Message:
-----------
[C23] Disable diagnostic on struct defn in prototype (#138516)
Thanks to changes to type compatibility rules via WG14 N3007, these
functions can now be called with a compatible type even within the same
TU, which makes the -Wvisibility diagnostic too chatty to have on by
default.
So in C23 mode, -Wvisibility will only diagnose an incomplete tag type
declared in a function prototype. If the tag is defined in the
prototype, the diagnostic is silenced.
Commit: 2df4be28f5f68cbd012d439360f3399335ea4bfb
https://github.com/llvm/llvm-project/commit/2df4be28f5f68cbd012d439360f3399335ea4bfb
Author: Shafik Yaghmour <shafik.yaghmour at intel.com>
Date: 2025-05-05 (Mon, 05 May 2025)
Changed paths:
M clang/lib/StaticAnalyzer/Core/CoreEngine.cpp
Log Message:
-----------
[Clang][NFC] Use std::move for Detail in timeTraceMetadata (#138352)
Static analysis flagged the use of Detail because we were not using
std::move when returning values. Modified the returns to use std::move.
Commit: c3773f7ca8615bca2b121de9326437ebe497fca5
https://github.com/llvm/llvm-project/commit/c3773f7ca8615bca2b121de9326437ebe497fca5
Author: Feng Zou <feng.zou at intel.com>
Date: 2025-05-05 (Mon, 05 May 2025)
Changed paths:
M llvm/lib/Target/X86/X86SuppressAPXForReloc.cpp
A llvm/test/CodeGen/X86/apx/check-nf-in-suppress-reloc-pass.ll
Log Message:
-----------
[X86][APX] Fix the assertion of NF instruction with relocation (#138500)
The assertion should be raised only for the NF instructions with
GOTTPOFF relocation.
Commit: 0764f65a7fb06703610b33a86ca79025fa4050a4
https://github.com/llvm/llvm-project/commit/0764f65a7fb06703610b33a86ca79025fa4050a4
Author: Maksim Ivanov <emaxx at google.com>
Date: 2025-05-05 (Mon, 05 May 2025)
Changed paths:
M clang/include/clang/AST/Type.h
M clang/lib/AST/Type.cpp
Log Message:
-----------
[clang] Fix nondeterminism in MemberPointerType (#137910)
This commit fixes the nondeterminism issue in C++ header module enabled builds which were observed after
https://github.com/llvm/llvm-project/pull/132401.
The issue was related to the fact that the hash set operation in MemberPointerType::Profile() was triggering getMostRecentDecl(). As the latter may trigger the loading of new entities from the external AST source, this
was presumably causing reentrant modification of data structure or some other issue that affects
compiler's output in a nondeterministic way (likely depending on specific values hashes/pointers have).
The change should otherwise be a no-op, because whether we take a "most recent" or "any" Decl shouldn't
matter since `getCanonicalDecl()` is called on it anyway inside `MemberPointerType::Profile()`.
We haven't been able to come up with a deterministic regression test for this fix.
Commit: c66ce080412a7fd73295b7663ab97a81278dd48e
https://github.com/llvm/llvm-project/commit/c66ce080412a7fd73295b7663ab97a81278dd48e
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-05-05 (Mon, 05 May 2025)
Changed paths:
A llvm/test/Transforms/Inline/noalias-escape-source.ll
Log Message:
-----------
[Inline] Add tests for captures-before check for scoped AA metadata (NFC)
Commit: a7bff2a1c60f0d30a1049a3658b5dbf415023f5f
https://github.com/llvm/llvm-project/commit/a7bff2a1c60f0d30a1049a3658b5dbf415023f5f
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-05-05 (Mon, 05 May 2025)
Changed paths:
M llvm/test/Transforms/SimplifyCFG/speculate-store.ll
Log Message:
-----------
[SimplifyCFG] Add test for addr-only capture in store speculation (NFC)
Commit: 8870ce1aa0ddf4df4f25ae834a1fab167895892d
https://github.com/llvm/llvm-project/commit/8870ce1aa0ddf4df4f25ae834a1fab167895892d
Author: Asher Mancinelli <ashermancinelli at gmail.com>
Date: 2025-05-05 (Mon, 05 May 2025)
Changed paths:
M flang/docs/Aliasing.md
Log Message:
-----------
[flang][docs] Add note about Cray pointers and the TARGET attribute (#137993)
We found some tests checking for loops assigning between Cray pointer
handles and their pointees which produced "incorrect" results with
optimizations enabled; this is because the compiler expects Cray
pointers not to alias with any other entity.
[The HPE documentation for Cray Fortran extensions
specifies:](https://support.hpe.com/hpesc/public/docDisplay?docId=a00113911en_us&docLocale=en_US&page=Types.html#cray-poiter-type)
> the compiler assumes that the storage of a pointee is
> never overlaid on the storage of another variable
Jean pointed out that if a user's code uses entities that alias via Cray
pointers, they may add the TARGET attribute to inform Flang of this
aliasing, but that Flang's behavior is in line with Cray's own
documentation and we should not make any changes to our alias analysis
to try and detect this case.
Updating documentation so that users that encounter this situation have
a way to allow their code to compile as they intend.
Commit: 44856d957e3a878e1f15d5ab0009bff9c4d87e6d
https://github.com/llvm/llvm-project/commit/44856d957e3a878e1f15d5ab0009bff9c4d87e6d
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-05-05 (Mon, 05 May 2025)
Changed paths:
A llvm/test/CodeGen/ARM/shouldRewriteCopySrc.ll
Log Message:
-----------
ARM: Add test which shows overriding shouldRewriteCopySrc does something
Split out from #125219
Commit: 4418a8e5ef865bc5062a338697ddd44b14c8005d
https://github.com/llvm/llvm-project/commit/4418a8e5ef865bc5062a338697ddd44b14c8005d
Author: Alex Rønne Petersen <alex at alexrp.com>
Date: 2025-05-05 (Mon, 05 May 2025)
Changed paths:
M llvm/include/llvm/BinaryFormat/DynamicTags.def
M llvm/include/llvm/BinaryFormat/ELFRelocs/Sparc.def
M llvm/lib/ObjectYAML/ELFYAML.cpp
M llvm/test/tools/llvm-readobj/ELF/dynamic-tags-machine-specific.test
A llvm/test/tools/llvm-readobj/ELF/reloc-types-sparcv9.test
Log Message:
-----------
[SPARC] Add llvm-readobj support, update ELF reloc types and dynamic tags. (#137916)
Values sourced from binutils.
Commit: 0eff4108cb1e0a597ba70a4e1b8e1ce3ae0cfd46
https://github.com/llvm/llvm-project/commit/0eff4108cb1e0a597ba70a4e1b8e1ce3ae0cfd46
Author: Ilia Kuklin <ikuklin at accesssoftek.com>
Date: 2025-05-05 (Mon, 05 May 2025)
Changed paths:
M lldb/source/ValueObject/ValueObject.cpp
M lldb/test/API/python_api/sbvalue_const_addrof/main.cpp
Log Message:
-----------
[LLDB] Fix `ValueObject::AddressOf()` return value (#137688)
`ValueObject::AddressOf()` used to return address as a value which has
it's own address, allowing to do `value.AddressOf().AddressOf()`.
This patch makes the return address a simple const value.
Commit: 640103b91ac892cfbeeb614495698c321437b567
https://github.com/llvm/llvm-project/commit/640103b91ac892cfbeeb614495698c321437b567
Author: Krzysztof Drewniak <Krzysztof.Drewniak at amd.com>
Date: 2025-05-05 (Mon, 05 May 2025)
Changed paths:
M mlir/include/mlir/IR/BuiltinAttributeInterfaces.h
M mlir/include/mlir/IR/BuiltinAttributeInterfaces.td
M mlir/include/mlir/IR/BuiltinAttributes.td
M mlir/lib/IR/BuiltinAttributeInterfaces.cpp
M mlir/lib/IR/BuiltinAttributes.cpp
M mlir/lib/IR/BuiltinTypes.cpp
Log Message:
-----------
[mlir][MemRef][~NFC] Move getStridesAndOffset() onto layouts (#138011)
This commit refactors the getStridesAndOffet() method on MemRefType to
just call `MemRefLayoutAttrInterface::getStridesAndOffset(shape,
strides& offset&)`, allowing downstream users and future layouts (ex, a
potential contiguous layout) to implement it without needing to patch
BuiltinTypes or without needing them to conform their affine maps to the
canonical strided form.
Commit: 9c9013f703f0b5736fc33df05de3fabaab22459e
https://github.com/llvm/llvm-project/commit/9c9013f703f0b5736fc33df05de3fabaab22459e
Author: Akhilesh Moorthy <62468417+isakhilesh at users.noreply.github.com>
Date: 2025-05-05 (Mon, 05 May 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/SIFoldOperands.cpp
A llvm/test/CodeGen/AMDGPU/swdev504645-global-fold.ll
Log Message:
-----------
[AMDGPU] Handle MachineOperandType global address in SIFoldOperands. (#135424)
This patch handles the global operand type properly, fixing the
bug : Assertion `(isFI() || isCPI() || isTargetIndex() ||
isJTI()) && "Wrong MachineOperand accessor"` failed.
Fixes SWDEV-504645
---------
Co-authored-by: Matt Arsenault <arsenm2 at gmail.com>
Commit: 721cba476d68bae13e9c0a0060fd37c386050e74
https://github.com/llvm/llvm-project/commit/721cba476d68bae13e9c0a0060fd37c386050e74
Author: Frederik Harwath <frederik.harwath at amd.com>
Date: 2025-05-05 (Mon, 05 May 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/SIPeepholeSDWA.cpp
M llvm/test/CodeGen/AMDGPU/bf16.ll
M llvm/test/CodeGen/AMDGPU/ctlz_zero_undef.ll
M llvm/test/CodeGen/AMDGPU/cttz_zero_undef.ll
M llvm/test/CodeGen/AMDGPU/dagcombine-fmul-sel.ll
M llvm/test/CodeGen/AMDGPU/extract_vector_elt-f16.ll
M llvm/test/CodeGen/AMDGPU/extract_vector_elt-i16.ll
M llvm/test/CodeGen/AMDGPU/fmax_legacy.f16.ll
M llvm/test/CodeGen/AMDGPU/fmaximum3.ll
M llvm/test/CodeGen/AMDGPU/fmin_legacy.f16.ll
M llvm/test/CodeGen/AMDGPU/fminimum3.ll
M llvm/test/CodeGen/AMDGPU/fneg-modifier-casting.ll
M llvm/test/CodeGen/AMDGPU/insert_vector_dynelt.ll
M llvm/test/CodeGen/AMDGPU/insert_vector_elt.v2bf16.ll
M llvm/test/CodeGen/AMDGPU/insert_vector_elt.v2i16.ll
M llvm/test/CodeGen/AMDGPU/llvm.maximum.f16.ll
M llvm/test/CodeGen/AMDGPU/llvm.minimum.f16.ll
A llvm/test/CodeGen/AMDGPU/sdwa-peephole-cndmask-wave32.mir
A llvm/test/CodeGen/AMDGPU/sdwa-peephole-cndmask-wave64.mir
M llvm/test/CodeGen/AMDGPU/select-fabs-fneg-extract.v2f16.ll
M llvm/test/CodeGen/AMDGPU/select.f16.ll
Log Message:
-----------
[AMDGPU] SIPeepholeSDWA: Handle V_CNDMASK_B32_e64 (#137930)
The VOP3 form of the V_CNDMASK_B32 instruction takes a carry-in
operand. The conversion to SDWA implies a conversion to VOP2 form
which reads from VCC instead.
Convert V_CNDMASK_B32_e64 instructions that might be converted to SDWA
to V_CNDMASK_B32_e32 first and introduce a copy of the carry-in operand
to VCC.
Closes #133431.
---------
Co-authored-by: Matt Arsenault <arsenm2 at gmail.com>
Commit: d0096e8f9627d0d2704db3449ee1a958af19169c
https://github.com/llvm/llvm-project/commit/d0096e8f9627d0d2704db3449ee1a958af19169c
Author: Fangrui Song <i at maskray.me>
Date: 2025-05-05 (Mon, 05 May 2025)
Changed paths:
M llvm/test/CodeGen/SPARC/exception.ll
M llvm/test/MC/Sparc/Relocations/relocation-specifier.s
Log Message:
-----------
Sparc: Improve SETHI and R_SPARC_DISP32 tests
* adjustFixupValue is called even when a R_SPARC_HIX22/R_SPARC_LOX10
relocation is generated. This will be fixed shortly.
* Enhanced the %h44 test to show that we don't check overflow.
* Test R_SPARC_DISP32 in .gcc_except_table and .eh_frame . The original
support did not test -filetype=obj output.
Commit: f14a4ac4d6949666e0930f88d22798042446bb91
https://github.com/llvm/llvm-project/commit/f14a4ac4d6949666e0930f88d22798042446bb91
Author: Fangrui Song <i at maskray.me>
Date: 2025-05-05 (Mon, 05 May 2025)
Changed paths:
M llvm/lib/Target/Sparc/MCTargetDesc/SparcAsmBackend.cpp
M llvm/test/MC/Sparc/Relocations/relocation-specifier.s
Log Message:
-----------
Sparc: Suppress applyFixup when a relocation is generated
The computed R_SPARC_HIX22/R_SPARC_LOX10 value is non-zero even when the
input is 0. We should suppress applyFixup when a relocation is
generated.
Commit: 13b4a097a887142687346005a72814abff5a8f7b
https://github.com/llvm/llvm-project/commit/13b4a097a887142687346005a72814abff5a8f7b
Author: Fangrui Song <i at maskray.me>
Date: 2025-05-05 (Mon, 05 May 2025)
Changed paths:
M llvm/lib/Target/Sparc/MCTargetDesc/SparcAsmBackend.cpp
M llvm/lib/Target/Sparc/MCTargetDesc/SparcMCExpr.cpp
Log Message:
-----------
Sparc: Move H44/M44/L44 computation back to adjustFixupValue
Essentially revert the evaluateAsRelocatableImpl part from
f39696e7dee4f1dce8c10d2b17f987643c480895. Ensure that absolute
relocation evaluation is in one place. SparcAsmBackend.cpp enables
better diagnostics if needed.
Commit: 15c2f79153abe3dcee60aaeefe68946b1e93a1ed
https://github.com/llvm/llvm-project/commit/15c2f79153abe3dcee60aaeefe68946b1e93a1ed
Author: Philip Reames <preames at rivosinc.com>
Date: 2025-05-05 (Mon, 05 May 2025)
Changed paths:
M llvm/test/Transforms/DeadStoreElimination/memset-and-memcpy.ll
A llvm/test/Transforms/GVN/memset-pattern.ll
Log Message:
-----------
[DSE/GVN] Continue to improve memset.pattern testing [nfc]
This batch reveals two missed optimizations, but only one of which
is regression as compared to the memset_patternN libcall family.
Commit: 13926e149081ca2771bdea7c08c07d92d87f7818
https://github.com/llvm/llvm-project/commit/13926e149081ca2771bdea7c08c07d92d87f7818
Author: cor3ntin <corentinjabot at gmail.com>
Date: 2025-05-05 (Mon, 05 May 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/AST/ExprCXX.h
M clang/include/clang/Sema/Sema.h
M clang/lib/Sema/SemaExpr.cpp
M clang/lib/Sema/TreeTransform.h
M clang/test/SemaCXX/paren-list-agg-init.cpp
Log Message:
-----------
[Clang] Preserve CXXParenListInitExpr in TreeTransform. (#138518)
We were converting a CXXParenListInitExpr to a ParenListExpr in
TreeTransform.
However, ParenListExpr is typeless, so Clang could not rebuild the
correct initialization sequence in some contexts.
Fixes #72880
Commit: 1ba89ad2c6e405bd5ac0c44e2ee5aa5504c7aba1
https://github.com/llvm/llvm-project/commit/1ba89ad2c6e405bd5ac0c44e2ee5aa5504c7aba1
Author: jimingham <jingham at apple.com>
Date: 2025-05-05 (Mon, 05 May 2025)
Changed paths:
M lldb/source/Plugins/DynamicLoader/MacOSX-DYLD/DynamicLoaderDarwin.cpp
A lldb/test/API/macosx/branch-islands/Makefile
A lldb/test/API/macosx/branch-islands/TestBranchIslands.py
A lldb/test/API/macosx/branch-islands/foo.c
A lldb/test/API/macosx/branch-islands/main.c
A lldb/test/API/macosx/branch-islands/padding1.s
A lldb/test/API/macosx/branch-islands/padding2.s
Log Message:
-----------
Handle step-in over a Darwin "branch island". (#138330)
Commit: 0926d94453096a37ec324a51d88ec203baedc3ea
https://github.com/llvm/llvm-project/commit/0926d94453096a37ec324a51d88ec203baedc3ea
Author: KRM7 <rugasikrisztian at gmail.com>
Date: 2025-05-05 (Mon, 05 May 2025)
Changed paths:
M llvm/include/llvm/CodeGen/GlobalISel/Utils.h
M llvm/lib/CodeGen/GlobalISel/CSEMIRBuilder.cpp
M llvm/lib/CodeGen/GlobalISel/Utils.cpp
M llvm/unittests/CodeGen/GlobalISel/CSETest.cpp
Log Message:
-----------
[GlobalISel] Take the result size into account when const folding icmp (#134365)
The current implementation always creates a 1 bit constant for the
result of the `G_ICMP`, which will cause issues if the destination
register size is larger than that. With asserts enabled, it will cause a
crash in `buildConstant`:
```
llvm/lib/CodeGen/GlobalISel/MachineIRBuilder.cpp:322: virtual MachineInstrBuilder llvm::MachineIRBuilder::buildConstant(const DstOp &, const ConstantInt &): Assertion `EltTy.getScalarSizeInBits() == Val.getBitWidth() && "creating constant with the wrong size"' failed.
```
Commit: c0e52f3ec7f147c2c1414ef0f2a5f08c413a587b
https://github.com/llvm/llvm-project/commit/c0e52f3ec7f147c2c1414ef0f2a5f08c413a587b
Author: Asher Mancinelli <ashermancinelli at gmail.com>
Date: 2025-05-05 (Mon, 05 May 2025)
Changed paths:
M flang/lib/Lower/ConvertExprToHLFIR.cpp
A flang/test/Lower/volatile-derived-type.f90
Log Message:
-----------
[flang] Component references are volatile if their parent is (#138339)
Component references inherit volatility from their base derived types.
Moved the base type volatility check before the box type is built, and
merge it (instead of overwrite it) with the volatility of the base type.
Commit: e1cff21f65fc876f7a9d0531a4b4d2aa3f0b4f21
https://github.com/llvm/llvm-project/commit/e1cff21f65fc876f7a9d0531a4b4d2aa3f0b4f21
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-05 (Mon, 05 May 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/SIPeepholeSDWA.cpp
Log Message:
-----------
[AMDGPU] Fix a warning
This patch fixes:
llvm/lib/Target/AMDGPU/SIPeepholeSDWA.cpp:1102:8: error: unused
variable 'Converted' [-Werror,-Wunused-variable]
Commit: 15f7c6ed70c82ead0f2bd6725fa0c4ec9a6b2dfa
https://github.com/llvm/llvm-project/commit/15f7c6ed70c82ead0f2bd6725fa0c4ec9a6b2dfa
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-05 (Mon, 05 May 2025)
Changed paths:
M mlir/lib/Dialect/AMDGPU/Transforms/TransferReadToLoad.cpp
M mlir/lib/Dialect/Affine/Analysis/Utils.cpp
M mlir/lib/Dialect/Affine/TransformOps/AffineTransformOps.cpp
M mlir/lib/Dialect/Affine/Utils/Utils.cpp
M mlir/lib/Dialect/Affine/Utils/ViewLikeInterfaceUtils.cpp
M mlir/lib/Dialect/EmitC/IR/EmitC.cpp
M mlir/lib/Dialect/GPU/IR/GPUDialect.cpp
M mlir/lib/Dialect/Linalg/IR/LinalgOps.cpp
M mlir/lib/Dialect/Linalg/TransformOps/LinalgTransformOps.cpp
M mlir/lib/Dialect/Linalg/Transforms/ElementwiseOpFusion.cpp
M mlir/lib/Dialect/Linalg/Transforms/Fusion.cpp
M mlir/lib/Dialect/Linalg/Transforms/Promotion.cpp
M mlir/lib/Dialect/Linalg/Transforms/TilingInterfaceImpl.cpp
M mlir/lib/Dialect/MemRef/IR/MemRefOps.cpp
M mlir/lib/Dialect/MemRef/Transforms/ExpandStridedMetadata.cpp
M mlir/lib/Dialect/MemRef/Transforms/FoldMemRefAliasOps.cpp
M mlir/lib/Dialect/Mesh/Interfaces/ShardingInterface.cpp
M mlir/lib/Dialect/SCF/Transforms/BufferizableOpInterfaceImpl.cpp
M mlir/lib/Dialect/SCF/Transforms/TileUsingInterface.cpp
M mlir/lib/Dialect/SPIRV/IR/SPIRVOps.cpp
M mlir/lib/Dialect/SPIRV/IR/SPIRVParsingUtils.h
M mlir/lib/Dialect/SparseTensor/Transforms/SparseGPUCodegen.cpp
M mlir/lib/Dialect/Tensor/IR/TensorOps.cpp
Log Message:
-----------
[mlir] Remove unused local variables (NFC) (#138481)
Commit: f81193ddfdae8fbdc6e2b4a40c5b8a11c9327939
https://github.com/llvm/llvm-project/commit/f81193ddfdae8fbdc6e2b4a40c5b8a11c9327939
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-05 (Mon, 05 May 2025)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/ScheduleDAGFast.cpp
Log Message:
-----------
[SelectionDAG] Remove obsolete comments (NFC) (#138483)
These functions do not return boolean values.
Commit: cdc9a4b5f81a2bc41b6452585a77f681deb4c53c
https://github.com/llvm/llvm-project/commit/cdc9a4b5f81a2bc41b6452585a77f681deb4c53c
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-05 (Mon, 05 May 2025)
Changed paths:
M llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
M llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
M llvm/lib/CodeGen/LiveDebugValues/InstrRefBasedImpl.cpp
M llvm/lib/CodeGen/MachineCSE.cpp
M llvm/lib/CodeGen/SelectionDAG/ScheduleDAGFast.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
Log Message:
-----------
[CodeGen] Use range-based for loops (NFC) (#138488)
This is a reland of #138434 except that:
- the bits for llvm/lib/CodeGen/RenameIndependentSubregs.cpp
have been dropped because they caused a test failure under asan, and
- the bits for llvm/lib/CodeGen/SelectionDAG/ScheduleDAGFast.cpp have
been improved with structured bindings.
Commit: 8ae9a204f0cd7c6747519b3a222a60a7b15fb4f7
https://github.com/llvm/llvm-project/commit/8ae9a204f0cd7c6747519b3a222a60a7b15fb4f7
Author: Shilei Tian <i at tianshilei.me>
Date: 2025-05-05 (Mon, 05 May 2025)
Changed paths:
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/test/Driver/hip-options.hip
M clang/test/Driver/openmp-offload-gpu.c
Log Message:
-----------
[Clang][Driver] Only enable internalization for OpenMP target offloading with ThinLTO on AMDGPU (#138547)
Commit: e7e204234362cf9df412f91d0b401fabfbde3706
https://github.com/llvm/llvm-project/commit/e7e204234362cf9df412f91d0b401fabfbde3706
Author: Aaron Ballman <aaron at aaronballman.com>
Date: 2025-05-05 (Mon, 05 May 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Sema/SemaExpr.cpp
M clang/test/SemaCXX/vla.cpp
Log Message:
-----------
Fix crash with invalid VLA in a type trait (#138543)
Transforming an expression to a potentially evaluated expression can
fail. If it does so, no longer attempt to make the type trait
expression, instead return an error expression. This ensures we don't
try to compute the dependence for an invalid type.
Fixes #138444
Commit: 71ee3366faea88fa5abcec0c38936b1b264643a3
https://github.com/llvm/llvm-project/commit/71ee3366faea88fa5abcec0c38936b1b264643a3
Author: Brox Chen <guochen2 at amd.com>
Date: 2025-05-05 (Mon, 05 May 2025)
Changed paths:
M llvm/test/CodeGen/AMDGPU/combine_andor_with_cmps.ll
M llvm/test/CodeGen/AMDGPU/omod.ll
M llvm/test/CodeGen/AMDGPU/vopc_dpp.mir
Log Message:
-----------
[AMDGPU][True16][CodeGen] clean up a few codegen test for true16 mode (#138542)
This is a NFC patch.
Clean up three test for true16 mode:
1. remove strayed test line
2. remove t16 test line from fake16 mir test
3. update check-label to shrink test size
Commit: fc0f074d0d9380a48f15f2c10d39fe8f1694abd1
https://github.com/llvm/llvm-project/commit/fc0f074d0d9380a48f15f2c10d39fe8f1694abd1
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-05 (Mon, 05 May 2025)
Changed paths:
M llvm/unittests/CodeGen/GlobalISel/CSETest.cpp
Log Message:
-----------
[CodeGen] Fix warnings
This patch fixes:
third-party/unittest/googletest/include/gtest/gtest.h:1379:11:
error: comparison of integers of different signs: 'const unsigned
long' and 'const int' [-Werror,-Wsign-compare]
Commit: abd10578653a4f16c81c6a164f6367af64f21194
https://github.com/llvm/llvm-project/commit/abd10578653a4f16c81c6a164f6367af64f21194
Author: cor3ntin <corentinjabot at gmail.com>
Date: 2025-05-05 (Mon, 05 May 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Sema/Sema.h
M clang/lib/Sema/SemaAvailability.cpp
M clang/lib/Sema/SemaTemplateInstantiate.cpp
M clang/test/CXX/dcl.dcl/dcl.attr/dcl.attr.deprecated/p1.cpp
Log Message:
-----------
[Clang] Minimal support for availability attributes on partial specializations (#138426)
There are some limitations.
Because we only know which partial specialization to refer to when
instantiating, and because we can't instantiate the class before we
require a complete type, we can only use the partial specialization once
we have a complete class.
Similarly, because we don't know if a class is ever going to be
complete, we always warn on availability of the primary. Therefore, we
only warn for the partial specialization if we did not warn on the
primary.
I considered alternatives to address that second limitation:
- Delay warnings to the end of the TU
- Tracking where each availability attribute originally comes from.
However, both of these have drawbacks, and the use case is probably less
motivated than wanting to deprecate the use of a specific
specialization.
Fixes #44496
Commit: 91867337ada52fb113d3d4808b5acb5790b869ff
https://github.com/llvm/llvm-project/commit/91867337ada52fb113d3d4808b5acb5790b869ff
Author: erichkeane <ekeane at nvidia.com>
Date: 2025-05-05 (Mon, 05 May 2025)
Changed paths:
M clang/lib/Sema/SemaOpenACCClause.cpp
M clang/test/SemaOpenACC/loop-construct-collapse-clause.cpp
Log Message:
-----------
[OpenACC] Fix infinite loop bug with the device_type checking
I noticed while writing a test that we ended up infinite looping thanks
to an early exit not correctly setting the next step of the loop.
Commit: 9d90f8ba7113fd9c7b2662682ad94b744ed2b78c
https://github.com/llvm/llvm-project/commit/9d90f8ba7113fd9c7b2662682ad94b744ed2b78c
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-05-05 (Mon, 05 May 2025)
Changed paths:
M llvm/lib/Target/ARM/ARMBaseRegisterInfo.cpp
M llvm/lib/Target/ARM/ARMBaseRegisterInfo.h
M llvm/test/CodeGen/ARM/shouldRewriteCopySrc.ll
Log Message:
-----------
ARM: Remove override of shouldRewriteCopySrc (#125219)
All of the overrides of shouldRewriteCopySrc appear to be hacks
for bugs in the base implementation, so I'm trying to delete
all of the overrides. I was expecting this to find an example
issue like the x86 version, but no tests change with this.
Commit: 1e353fa5c3f0e13730cd175a90332b8ab113011d
https://github.com/llvm/llvm-project/commit/1e353fa5c3f0e13730cd175a90332b8ab113011d
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-05-05 (Mon, 05 May 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
Log Message:
-----------
AMDGPU: Fix -Wextra (#138539)
Another stupid gcc warning. Ideally we would directly use the enum type,
but subregister indexes are emitted as an anonymous enum.
Fixes #125548
Commit: c50cba6275271fba69be661b9ec0665b2be88dbc
https://github.com/llvm/llvm-project/commit/c50cba6275271fba69be661b9ec0665b2be88dbc
Author: Jacob Lalonde <jalalonde at fb.com>
Date: 2025-05-05 (Mon, 05 May 2025)
Changed paths:
M lldb/include/lldb/Utility/RangeMap.h
M lldb/source/Target/Process.cpp
A lldb/test/API/functionalities/process_save_core_minidump/TestProcessSaveCoreMinidumpYaml.py
A lldb/test/API/functionalities/process_save_core_minidump/minidump_mem64.yaml
Log Message:
-----------
[LLDB][SBSaveCore] Sbsavecore subregions bug (#138206)
Custom regions in Process::GetUserSpecifiedCoreFileSaveRanges originally
used `FindEntryThatContains`. This made sense on my first attempt, but
what we really want are *intersecting* regions. This is so the user can
specify arbitrary memory, and if it's available we output it to the core
(Minidump or MachO).
Commit: e165225e49f71b468a35ca15c7ae397471cbfef0
https://github.com/llvm/llvm-project/commit/e165225e49f71b468a35ca15c7ae397471cbfef0
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-05-05 (Mon, 05 May 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
Log Message:
-----------
[VPlan] Simplify check in collectUsersInLatchExitBlock. (NFC)
Unswitch the check in collectUsersInLatchExitBlock as suggested in
https://github.com/llvm/llvm-project/pull/136455.
The assertion is now checked by the verifier since aadf35cb41d.
Commit: 7f5bf77c657719f6f305139f7dd6d1871f4041e5
https://github.com/llvm/llvm-project/commit/7f5bf77c657719f6f305139f7dd6d1871f4041e5
Author: Joseph Huber <huberjn at outlook.com>
Date: 2025-05-05 (Mon, 05 May 2025)
Changed paths:
M libc/test/integration/src/__support/GPU/match.cpp
Log Message:
-----------
[libc] Temporarily disable hanging test on sm_60 (#138561)
Commit: 4fb7d1953d3f72f73d580f8549838bedad031d0b
https://github.com/llvm/llvm-project/commit/4fb7d1953d3f72f73d580f8549838bedad031d0b
Author: Ryan Buchner <92571492+bababuck at users.noreply.github.com>
Date: 2025-05-05 (Mon, 05 May 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/SIRegisterInfo.cpp
M llvm/test/CodeGen/AMDGPU/accvgpr-spill-scc-clobber.mir
A llvm/test/CodeGen/AMDGPU/agpr-spill-copy.mir
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.1024bit.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.512bit.ll
M llvm/test/CodeGen/AMDGPU/av_spill_cross_bb_usage.mir
M llvm/test/CodeGen/AMDGPU/pei-build-av-spill.mir
M llvm/test/CodeGen/AMDGPU/pei-build-spill.mir
M llvm/test/CodeGen/AMDGPU/spill-agpr-partially-undef.mir
M llvm/test/CodeGen/AMDGPU/vgpr-spill-scc-clobber.mir
Log Message:
-----------
[AMDGPU] Remove implicit definition of register group when restoring the last sub-register after a spill (#133986)
Extension of https://reviews.llvm.org/D141101 to remove the define flag
from the last stack memory access. Fixes case where COPY instructions
are used for some of the stack restoration, but the copies get optimized
away during the machine-cp pass.
Prior to this change, was possible to produce the following code:
$agpr16_agpr17_agpr18_agpr19 = SCRATCH_LOAD_DWORDX4_ST 64, 0, implicit
$exec, implicit $flat_scr, implicit-def
$agpr16_agpr17_agpr18_agpr19_agpr20_agpr21_agpr22_agpr23_agpr24_agpr25_agpr26_agpr27_agpr28_agpr29_agpr30_agpr31
:: (load (s128) from %stack.17, align 4, addrspace 5)
$agpr20_agpr21_agpr22_agpr23 = SCRATCH_LOAD_DWORDX4_ST 80, 0, implicit
$exec, implicit $flat_scr :: (load (s128) from %stack.17 + 16, align 4,
addrspace 5)
$agpr24_agpr25_agpr26_agpr27 = SCRATCH_LOAD_DWORDX4_ST 96, 0, implicit
$exec, implicit $flat_scr :: (load (s128) from %stack.17 + 32, align 4,
addrspace 5)
$agpr31 = COPY $agpr112, implicit
$agpr16_agpr17_agpr18_agpr19_agpr20_agpr21_agpr22_agpr23_agpr24_agpr25_agpr26_agpr27_agpr28_agpr29_agpr30_agpr31
$agpr30 = COPY $agpr208, implicit
$agpr16_agpr17_agpr18_agpr19_agpr20_agpr21_agpr22_agpr23_agpr24_agpr25_agpr26_agpr27_agpr28_agpr29_agpr30_agpr31
$agpr28_agpr29 = SCRATCH_LOAD_DWORDX2_ST 112, 0, implicit $exec,
implicit $flat_scr, implicit-def
$agpr16_agpr17_agpr18_agpr19_agpr20_agpr21_agpr22_agpr23_agpr24_agpr25_agpr26_agpr27_agpr28_agpr29_agpr30_agpr31
:: (load (s64) from %stack.17 + 48, align 4, addrspace 5)
where `$agpr30 = COPY $agpr208` would be optimized away by `machine-cp`
pass. Instead, change to:
$agpr28_agpr29 = SCRATCH_LOAD_DWORDX2_ST 112, 0, implicit $exec,
implicit $flat_scr :: (load (s64) from %stack.17 + 48, align 4,
addrspace 5)
Fixes #131386.
Made the simple fix, but I'm not completely comfortable with this change
since the reason for the previous inclusion of `IsLastSubReg` is unclear
to me.
@krzysz00
Commit: b32c6d18a458d8a4d18f5b3efa5a9d7ffb2abba9
https://github.com/llvm/llvm-project/commit/b32c6d18a458d8a4d18f5b3efa5a9d7ffb2abba9
Author: Rainer Orth <ro at gcc.gnu.org>
Date: 2025-05-05 (Mon, 05 May 2025)
Changed paths:
M openmp/runtime/src/kmp.h
M openmp/runtime/src/kmp_affinity.cpp
M openmp/runtime/src/kmp_platform.h
M openmp/runtime/src/kmp_wrapper_getpid.h
Log Message:
-----------
[OpenMP] Fix KMP_OS_AIX handling (#138499)
When building `openmp` on Linux/sparc64, I get
```
In file included fromopenmp/runtime/src/kmp_utility.cpp:16:
openmp/runtime/src/kmp_wrapper_getpid.h:47:2: warning: No gettid found, use getpid instead [-W#warnings]
47 | #warning No gettid found, use getpid instead
| ^
```
This is highly confusing since `<sys/syscall.h>` **does** define
`SYS_gettid` and the header is supposed to be included:
```
#if !defined(KMP_OS_AIX) && !defined(KMP_OS_HAIKU)
#include <sys/syscall.h>
#endif
```
However, this actually is **not** the case for two reasons:
- `KMP_OS_HAIKU` is always defined, either as 1 on Haiku or as 0
otherwise.
- `KMP_OS_AIX` is even worse: it is only defined as 1 on on AIX, but
undefined otherwise.
All those `KMP_OS_*` macros are supposed to always be defined as 1/0 as
appropriate, and to be checked with `#if`, not `#ifdef`. AIX is
violating this, causing the problem above.
Other targets probably get `<sys/syscall.h>` indirectly otherwise, but
Linux/sparc64 does not.
This patch fixes this by also defining `KMP_OS_AIX` as 0 on other OSes
and changing the checks to `#if` as necessary.
Tested on `sparc64-unknown-linux-gnu`, `sparcv9-sun-solaris2.11`,
`amd64-pc-solaris2.11`, and `x86_64-pc-linux-gnu`.
Commit: c296b1258c418ab069447eb137dd15012ef8dd96
https://github.com/llvm/llvm-project/commit/c296b1258c418ab069447eb137dd15012ef8dd96
Author: Volodymyr Sapsai <vsapsai at apple.com>
Date: 2025-05-05 (Mon, 05 May 2025)
Changed paths:
M clang/lib/Lex/PPExpressions.cpp
M clang/unittests/Lex/PPCallbacksTest.cpp
Log Message:
-----------
[clang] Provide to `PPCallbacks` full expression range even in single file parse mode. (#138358)
Restore the behavior existing prior to
fe2eefc4718f57e1753f7bd51c158fc03d70b34f. Make reporting of unevaluated
directive source range more consistent and with fewer assumptions. In
case of a failed evaluation don't assume any specific token and don't
assume correct `PPValue` range tracking.
Commit: c275fdc0bca34b2e53e00435fc72b0ca4b736348
https://github.com/llvm/llvm-project/commit/c275fdc0bca34b2e53e00435fc72b0ca4b736348
Author: Howard Chu <1007273067 at qq.com>
Date: 2025-05-05 (Mon, 05 May 2025)
Changed paths:
M libc/docs/gpu/rpc.rst
Log Message:
-----------
[libc][gpu][docs] Fix typos in GPU libc's documentation (#138565)
Fix typos in GPU libc's documentation about the rpc implementation.
Commit: d4706e17f55d058316d1cc3ce86bee14ad11f5d6
https://github.com/llvm/llvm-project/commit/d4706e17f55d058316d1cc3ce86bee14ad11f5d6
Author: Brox Chen <guochen2 at amd.com>
Date: 2025-05-05 (Mon, 05 May 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/SIFixSGPRCopies.cpp
M llvm/lib/Target/AMDGPU/VOP1Instructions.td
M llvm/test/CodeGen/AMDGPU/fix-sgpr-copies-f16-true16.mir
A llvm/test/CodeGen/AMDGPU/fix-sgpr-copies-vgpr16-to-spgr32.ll
Log Message:
-----------
[AMDGPU][True16][CodeGen] readfirstlane for vgpr16 copy to sgpr32 (#118037)
i16 can be selected into sgpr32 or vgpr16 in isel lowering in true16
mode. And thus, it creates cases that we copy from vgpr16 to sgpr32 in
ext selection and this seems inevitable without sgpr16 support.
legalize the src/dst reg when we decide to lower this special copy to a
readfirstlane in fix-sgpr-copy pass and add a lit test
Commit: 1ff2953f5e393eb8634ea3c4ccc85221e76dfcb9
https://github.com/llvm/llvm-project/commit/1ff2953f5e393eb8634ea3c4ccc85221e76dfcb9
Author: jimingham <jingham at apple.com>
Date: 2025-05-05 (Mon, 05 May 2025)
Changed paths:
M lldb/source/Plugins/DynamicLoader/MacOSX-DYLD/DynamicLoaderDarwin.cpp
R lldb/test/API/macosx/branch-islands/Makefile
R lldb/test/API/macosx/branch-islands/TestBranchIslands.py
R lldb/test/API/macosx/branch-islands/foo.c
R lldb/test/API/macosx/branch-islands/main.c
R lldb/test/API/macosx/branch-islands/padding1.s
R lldb/test/API/macosx/branch-islands/padding2.s
Log Message:
-----------
Revert "Handle step-in over a Darwin "branch island". (#138330)" (#138569)
This reverts commit 1ba89ad2c6e405bd5ac0c44e2ee5aa5504c7aba1.
This was failing on the Green Dragon bot, which has an older OS than
have on hand, so I'll have to dig up one and see why it's failing there.
Commit: 02e0a954a014bc44796c84abe5445ae0d20eeeb5
https://github.com/llvm/llvm-project/commit/02e0a954a014bc44796c84abe5445ae0d20eeeb5
Author: Sarah Spall <sarahspall at microsoft.com>
Date: 2025-05-05 (Mon, 05 May 2025)
Changed paths:
M clang/lib/CodeGen/CGExprScalar.cpp
M clang/test/CodeGenHLSL/BasicFeatures/InitLists.hlsl
Log Message:
-----------
[HLSL] Handle init list with OpaqueValueExprs in CGExprScalar (#138541)
When an HLSL Init list is producing a Scalar, handle OpaqueValueExprs in
the Init List with 'emitInitListOpaqueValues'
Copied from 'AggExprEmitter::VisitCXXParenListOrInitListExpr'
Closes #136408
---------
Co-authored-by: Chris B <beanz at abolishcrlf.org>
Commit: 93509064a61973c2e696607e4802f73c32dbac83
https://github.com/llvm/llvm-project/commit/93509064a61973c2e696607e4802f73c32dbac83
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-05-05 (Mon, 05 May 2025)
Changed paths:
M llvm/lib/Target/ARM/ARMBaseRegisterInfo.cpp
M llvm/lib/Target/ARM/ARMBaseRegisterInfo.h
M llvm/test/CodeGen/ARM/shouldRewriteCopySrc.ll
Log Message:
-----------
Revert "ARM: Remove override of shouldRewriteCopySrc (#125219)"
This reverts commit 9d90f8ba7113fd9c7b2662682ad94b744ed2b78c.
Test fails the machine verifier. There's a bug somewhere, the
unrepresentable cases should be avoided by the default logic.
Commit: 46f5852ad9a8025bc30d10d4e88af99fae2edbc8
https://github.com/llvm/llvm-project/commit/46f5852ad9a8025bc30d10d4e88af99fae2edbc8
Author: Dmitry Vasilyev <dvassiliev at accesssoftek.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M llvm/include/llvm/Demangle/Utility.h
Log Message:
-----------
[llvm] Fixed Demangle OutputBuffer (#138564)
The [llvm-clang-x86_64-expensive-checks-win](https://lab.llvm.org/buildbot/#/builders/14/builds/3075)
buildbot has been broken by #133249.
DemangleTests causes the exception 0x80000003 inside CRT in case of the debug build on Windows.
Commit: f5b7d42d3d5601323e43bdda105475a06a51c6a1
https://github.com/llvm/llvm-project/commit/f5b7d42d3d5601323e43bdda105475a06a51c6a1
Author: Amr Hesham <amr96 at programmer.net>
Date: 2025-05-05 (Mon, 05 May 2025)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
M clang/test/CIR/CodeGen/vector-ext.cpp
M clang/test/CIR/CodeGen/vector.cpp
Log Message:
-----------
[CIR] Upstream local VectorType with 0 init elements (#138346)
This change adds local zero initialization for VectorType
Issue https://github.com/llvm/llvm-project/issues/136487
Commit: 673047ea2b49439d8b746adc03eb882d582e0625
https://github.com/llvm/llvm-project/commit/673047ea2b49439d8b746adc03eb882d582e0625
Author: enh-google <enh at google.com>
Date: 2025-05-05 (Mon, 05 May 2025)
Changed paths:
M libc/src/stdlib/qsort_r.h
Log Message:
-----------
qsort_r.h: qsort_r() is POSIX now. (#138545)
Commit: 9544943e2458597dc2cdcbed6de2a8d50da0d382
https://github.com/llvm/llvm-project/commit/9544943e2458597dc2cdcbed6de2a8d50da0d382
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2025-05-05 (Mon, 05 May 2025)
Changed paths:
M lldb/tools/lldb-dap/Handler/AttachRequestHandler.cpp
Log Message:
-----------
[lldb-dap] Specify the executable path in the attach info (#138557)
Currently, we are only using the executable name when attaching. The
AttachRequestHandler isn't setting the path in the attach info, which
means that we rely on the target when attaching by name. When wo go down
this path, we only look at the executable's filename, not its full path.
Since we know the full path from the attach arguments, we should specify
it in the attach info.
Fixes #138197
Commit: 75532b21b18d10f455b6d45983dc0a11a7d5434f
https://github.com/llvm/llvm-project/commit/75532b21b18d10f455b6d45983dc0a11a7d5434f
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-05-05 (Mon, 05 May 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlan.cpp
M llvm/lib/Transforms/Vectorize/VPlanHelpers.h
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
Log Message:
-----------
[VPlan] Replace getPreheaderBBFor with getCFGPredecessor. (NFC)
Replace existing uses of getPreheaderBBFor with the newly added more
general getCFGPredecessor.
Commit: 28934fe4cf95512537a61d0f75a7155724050cdb
https://github.com/llvm/llvm-project/commit/28934fe4cf95512537a61d0f75a7155724050cdb
Author: Bruno Cardoso Lopes <bruno.cardoso at gmail.com>
Date: 2025-05-05 (Mon, 05 May 2025)
Changed paths:
M mlir/include/mlir/Dialect/LLVMIR/LLVMAttrDefs.td
M mlir/include/mlir/Dialect/LLVMIR/LLVMDialect.td
M mlir/include/mlir/Dialect/LLVMIR/LLVMEnums.td
M mlir/lib/Dialect/LLVMIR/IR/LLVMAttrs.cpp
M mlir/lib/Target/LLVMIR/Dialect/LLVMIR/LLVMToLLVMIRTranslation.cpp
M mlir/lib/Target/LLVMIR/ModuleImport.cpp
M mlir/test/Dialect/LLVMIR/invalid.mlir
M mlir/test/Dialect/LLVMIR/module-roundtrip.mlir
M mlir/test/Target/LLVMIR/Import/import-failure.ll
M mlir/test/Target/LLVMIR/Import/module-flags.ll
M mlir/test/Target/LLVMIR/llvmir.mlir
Log Message:
-----------
[MLIR][LLVM] Add ProfileSummary module flag support (#138070)
Add one more of these module flags.
Unlike "CG Profile", LLVM proper does not verify the content of the
metadata, but returns a nullptr in case it's ill-formed (it's up to the
user to take action). This prompted me to implement warning checks,
preventing the importer to consume broken data.
Commit: 29e4fb64b3253c5fcf4ddd928291855ec247220a
https://github.com/llvm/llvm-project/commit/29e4fb64b3253c5fcf4ddd928291855ec247220a
Author: Bruno Cardoso Lopes <bruno.cardoso at gmail.com>
Date: 2025-05-05 (Mon, 05 May 2025)
Changed paths:
M mlir/lib/Target/LLVMIR/LLVMImportInterface.cpp
M mlir/test/Dialect/LLVMIR/roundtrip.mlir
M mlir/test/Target/LLVMIR/Import/intrinsic-prefer-unregistered.ll
M mlir/test/Target/LLVMIR/Import/intrinsic-unregistered.ll
Log Message:
-----------
[MLIR][LLVM] Importer: fix void returning intrinsic calls (#138325)
Commit: 7aa67378f01f9b9c69724f72659e0b5a22300703
https://github.com/llvm/llvm-project/commit/7aa67378f01f9b9c69724f72659e0b5a22300703
Author: Sergei Barannikov <barannikov88 at gmail.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M llvm/lib/Target/Sparc/CMakeLists.txt
M llvm/lib/Target/Sparc/SparcISelDAGToDAG.cpp
M llvm/lib/Target/Sparc/SparcISelLowering.cpp
M llvm/lib/Target/Sparc/SparcISelLowering.h
M llvm/lib/Target/Sparc/SparcInstrInfo.td
A llvm/lib/Target/Sparc/SparcSelectionDAGInfo.cpp
A llvm/lib/Target/Sparc/SparcSelectionDAGInfo.h
M llvm/lib/Target/Sparc/SparcSubtarget.cpp
M llvm/lib/Target/Sparc/SparcSubtarget.h
Log Message:
-----------
[Sparc] TableGen-erate SDNode descriptions (#138450)
Part of #119709.
Commit: 9281947a7dd8ae40c70548989cb0bbbf27e6cd10
https://github.com/llvm/llvm-project/commit/9281947a7dd8ae40c70548989cb0bbbf27e6cd10
Author: Rahul Joshi <rjoshi at nvidia.com>
Date: 2025-05-05 (Mon, 05 May 2025)
Changed paths:
M llvm/include/llvm/TableGen/Record.h
M llvm/utils/TableGen/Common/CodeGenRegisters.cpp
M llvm/utils/TableGen/Common/CodeGenRegisters.h
Log Message:
-----------
[NFC][TableGen] Code cleanup in CodeGenRegister (#137994)
- Use range for loops.
- Wrap complex LLVM_DEBUG() macros in {} to have clang-format format the
contents similar to regular code.
- Extract repeated code snippets for debug dumping into helper lambda.
- Add `BitsInit::getBits()` to get all contained bits.
Commit: 00e7a0229525075362dc6e8625fa662799eac5fc
https://github.com/llvm/llvm-project/commit/00e7a0229525075362dc6e8625fa662799eac5fc
Author: Jeffrey Byrnes <jeffrey.byrnes at amd.com>
Date: 2025-05-05 (Mon, 05 May 2025)
Changed paths:
M llvm/include/llvm/CodeGen/TargetSchedule.h
M llvm/lib/CodeGen/ScheduleDAGInstrs.cpp
M llvm/lib/CodeGen/TargetSchedule.cpp
M llvm/test/CodeGen/AMDGPU/mai-hazards-gfx942.mir
A llvm/test/CodeGen/AMDGPU/sched-no-schedmodel.mir
Log Message:
-----------
[ScheduleDAG] Allow disabling the SchedModel / Itineraries during Scheduling (#138057)
This provides the `disable-schedmodel-in-sched-mi` flag. Using this, we
will disable the SchedModel / Itineraries during scheduling. This has
the effect of not using any latency / hardware resource information for
scheduling decisions.
We have the `schedmodel` flag, but this disables the `SchedModel` for
all passes. This allows disabling only for scheduling while preserving
the behavior of other passes (e.g. MachineLICM). This is conceptually
similar to other flags like `enable-aa-sched-mi`
Commit: c0a264e6a905b1b97755ca9bb1ac82790e0e3d1b
https://github.com/llvm/llvm-project/commit/c0a264e6a905b1b97755ca9bb1ac82790e0e3d1b
Author: Philip Reames <preames at rivosinc.com>
Date: 2025-05-05 (Mon, 05 May 2025)
Changed paths:
M llvm/include/llvm/IR/InstVisitor.h
M llvm/include/llvm/IR/IntrinsicInst.h
M llvm/lib/Analysis/Lint.cpp
M llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
M llvm/lib/CodeGen/PreISelIntrinsicLowering.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
M llvm/lib/IR/IRBuilder.cpp
M llvm/lib/Transforms/Scalar/InferAddressSpaces.cpp
M llvm/lib/Transforms/Scalar/LoopIdiomRecognize.cpp
M llvm/lib/Transforms/Scalar/MemCpyOptimizer.cpp
Log Message:
-----------
[IntrinsicInst] Remove MemCpyInlineInst and MemSetInlineInst [nfc] (#138568)
I'm looking for ways to simplify the Mem*Inst class structure, and these
two seem to have fairly minimal justification, so let's remove them.
Commit: 25fc52e655fb4bfd3bb89948d5cbfe011e1b8984
https://github.com/llvm/llvm-project/commit/25fc52e655fb4bfd3bb89948d5cbfe011e1b8984
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2025-05-05 (Mon, 05 May 2025)
Changed paths:
M libcxx/docs/ReleaseNotes/20.rst
M libcxx/include/__configuration/availability.h
A libcxx/test/libcxx/vendor/apple/disable-availability.sh.cpp
Log Message:
-----------
[libc++] Re-introduce _LIBCPP_DISABLE_AVAILABILITY (#134158)
The `_LIBCPP_DISABLE_AVAILABILITY` macro was removed in afae1a5f32bb as an
intended no-op. It turns out that some projects are making use of that
macro to work around a Clang bug with availability annotations that
still exists: https://github.com/llvm/llvm-project/issues/134151.
Since that Clang bug still hasn't been fixed, I feel that we must sill
honor that unfortunate macro until we've figured out how to get rid of
it without breaking code.
Commit: 04364fb888eea6db9811510607bed4b200bcb082
https://github.com/llvm/llvm-project/commit/04364fb888eea6db9811510607bed4b200bcb082
Author: Kees Cook <kees at kernel.org>
Date: 2025-05-05 (Mon, 05 May 2025)
Changed paths:
M clang/include/clang/Sema/Sema.h
M clang/lib/Sema/SemaDecl.cpp
M clang/test/Sema/init-randomized-struct.c
Log Message:
-----------
[randstruct] Also randomize composite function pointer structs (#138385)
Check for struct members that are structs filled only with function
pointers by recursively examining it. Since the lamba
IsFunctionPointerOrForwardDecl cannot call itself directly, move it into
a helper function, EntirelyFunctionPointers, so it can be called from
the lambda.
Add test for composite function pointer structs getting automatically
randomized.
Add more tests for validating automatic randomization vs explicitly
annotated with "randomize_layout", and excluded with
"no_randomize_layout".
Reorder the "should we randomize?" "if" statement to check for
enablement before checking for Record details.
Fixes #138355
Commit: dfcb8cb2a92c9f72ddde5ea08dadf2f640197d32
https://github.com/llvm/llvm-project/commit/dfcb8cb2a92c9f72ddde5ea08dadf2f640197d32
Author: Joseph Huber <huberjn at outlook.com>
Date: 2025-05-05 (Mon, 05 May 2025)
Changed paths:
M offload/DeviceRTL/include/Synchronization.h
Log Message:
-----------
[OpenMP] Add pre sm_70 load hack back in (#138589)
Summary:
Different ordering modes aren't supported for an atomic load, so we just
do an add of zero as the same thing. It's less efficient, but it works.
Fixes https://github.com/llvm/llvm-project/issues/138560
Commit: 230f332cf0139fed88145c9d2dd410c36348f2e4
https://github.com/llvm/llvm-project/commit/230f332cf0139fed88145c9d2dd410c36348f2e4
Author: Mikhail R. Gadelha <mikhail at igalia.com>
Date: 2025-05-05 (Mon, 05 May 2025)
Changed paths:
M libc/src/sys/stat/linux/chmod.cpp
Log Message:
-----------
[libc] Swap order of syscall on chmod (#138427)
We define SYS_fchmodat2 on libc but the syscall is not available on old
kernels, so prefer the SYS_fchmodat version when possible.
Commit: 3ceec268413860b466b14600ce67d8bbd09ff75c
https://github.com/llvm/llvm-project/commit/3ceec268413860b466b14600ce67d8bbd09ff75c
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2025-05-05 (Mon, 05 May 2025)
Changed paths:
M lldb/packages/Python/lldbsuite/test/tools/lldb-dap/lldbdap_testcase.py
M lldb/test/API/tools/lldb-dap/attach/TestDAP_attach.py
M lldb/test/API/tools/lldb-dap/attach/TestDAP_attachByPortNum.py
M lldb/test/API/tools/lldb-dap/commands/TestDAP_commands.py
Log Message:
-----------
[lldb-dap] Give attach test binaries unique names (#138435)
Give the test binaries used for attaching unique names to avoid
accidentally attaching to the wrong binary.
Fixes #138197
Commit: a04ab7b81f5f6cc2e00b30007d267b19b0095157
https://github.com/llvm/llvm-project/commit/a04ab7b81f5f6cc2e00b30007d267b19b0095157
Author: Asher Mancinelli <ashermancinelli at gmail.com>
Date: 2025-05-05 (Mon, 05 May 2025)
Changed paths:
M flang/test/Lower/volatile-derived-type.f90
Log Message:
-----------
[flang][nfc] Fix test unneccesarily checking type layout (#138585)
Test added in #138339 unneccesarily had CHECK lines with the type
layout, which fails on aix.
Commit: f1447dab30547c73881619980ff054cf833d0ec9
https://github.com/llvm/llvm-project/commit/f1447dab30547c73881619980ff054cf833d0ec9
Author: Koakuma <koachan at protonmail.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M llvm/lib/Target/Sparc/SparcISelLowering.cpp
M llvm/lib/Target/Sparc/SparcISelLowering.h
M llvm/lib/Target/Sparc/SparcInstrVIS.td
A llvm/test/CodeGen/SPARC/float-vis3.ll
Log Message:
-----------
[SPARC] Use op-then-neg instructions when we have VIS3 (#138603)
Commit: b86b5296cb649c06abbb6471d6f0f777b91a29c9
https://github.com/llvm/llvm-project/commit/b86b5296cb649c06abbb6471d6f0f777b91a29c9
Author: Muhammad Omair Javaid <omair.javaid at linaro.org>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M lldb/test/API/lang/cpp/dynamic-value/TestDynamicValue.py
Log Message:
-----------
[lldb][test] Mark DynamicValueTestCase XFAIL on Windows
The newly added test test_from_forward_decl in TestDynamicValue.py
by PR #137974 is failing on Windows due to issues with dynamic type
resolution. This is a known issue tracked in PR24663.
LLDB Windows on Arm Buildbot Failure:
https://lab.llvm.org/buildbot/#/builders/141/builds/8391
This change marks the test as XFAIL on Windows using the consistent
with how similar tests in the same file are handled.
Commit: 492ad848b1c319ad9641208aaadb41bc575a9c3f
https://github.com/llvm/llvm-project/commit/492ad848b1c319ad9641208aaadb41bc575a9c3f
Author: Steven Perron <stevenperron at google.com>
Date: 2025-05-05 (Mon, 05 May 2025)
Changed paths:
M llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.cpp
M llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.h
M llvm/lib/Target/SPIRV/SPIRVIRMapping.h
M llvm/lib/Target/SPIRV/SPIRVISelLowering.cpp
M llvm/lib/Target/SPIRV/SPIRVISelLowering.h
M llvm/test/CodeGen/SPIRV/hlsl-resources/StructuredBuffer.ll
A llvm/test/CodeGen/SPIRV/spirv-explicit-layout.ll
Log Message:
-----------
[SPIRV] Add explicit layout (#135789)
Adds code to add offset decorations when needed. This could cause a
type mismatch for memory instructions. We add code to fix up OpLoad
instructions, so that we could get some tests. Other memory operations
will be handled in another PR.
Part of https://github.com/llvm/llvm-project/issues/134119.
Commit: 3e235a7c601d80d6e8a0392ebec859068659ec19
https://github.com/llvm/llvm-project/commit/3e235a7c601d80d6e8a0392ebec859068659ec19
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2025-05-05 (Mon, 05 May 2025)
Changed paths:
M lldb/include/lldb/Core/FormatEntity.h
M lldb/source/Core/FormatEntity.cpp
M lldb/unittests/Core/FormatEntityTest.cpp
Log Message:
-----------
[lldb] Support alternatives for scope format entries (#137751)
This PR implements support for specifying multiple alternatives for
scope format entries. Scopes are used to enclose things that should only
be printed when everything in the scope resolves.
For example, the following scope only resolves if both
`${line.file.basename}` and `${line.number}` resolve. `
```
{ at ${line.file.basename}:${line.number}}
```
However, the current implementation doesn't let you specify what to
print when they don't resolve. This PR adds support for specifying
multiple alternative scopes, which are evaluated left-to-right.
For example:
```
{ at ${line.file.basename}:${line.number}| in ${function.name}| <unknown location>}
```
This will resolve to:
- ` at ${line.file.basename}:${line.number}` if the corresponding
variables resolve.
- Otherwise, this resolves to ` in ${function.name}` if
`${function.name}` resolves.
- Otherwise, this resolves to ` <unknown location>` which always
resolves.
This PR makes the `|` character a special character within a scope, but
allows it to be escaped.
I ended up with this approach because it fit quite nicely in the
existing architecture of the format entries and by limiting the
functionality to scopes, it sidesteps some complexity, like dealing with
recursion.
Commit: 0bd065dc943ff65e0749a9f2a7b7a672acd45193
https://github.com/llvm/llvm-project/commit/0bd065dc943ff65e0749a9f2a7b7a672acd45193
Author: Jeffrey Byrnes <jeffrey.byrnes at amd.com>
Date: 2025-05-05 (Mon, 05 May 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/GCNIterativeScheduler.cpp
M llvm/test/CodeGen/AMDGPU/coalesce-copy-to-agpr-to-av-registers.mir
Log Message:
-----------
[AMDGPU] Extend test coverage for cross RC register coalescing (#132137)
Add some test cases for subregister to subregister copies. Also add
cases where the register class is not required by the instruction.
Commit: 37da5a10f0cf8375c8d1237e9015efae8a8161c1
https://github.com/llvm/llvm-project/commit/37da5a10f0cf8375c8d1237e9015efae8a8161c1
Author: Alex MacLean <amaclean at nvidia.com>
Date: 2025-05-05 (Mon, 05 May 2025)
Changed paths:
M llvm/include/llvm/IR/IntrinsicsNVVM.td
M llvm/lib/Target/NVPTX/NVPTXUtilities.cpp
M llvm/lib/Target/NVPTX/NVPTXUtilities.h
M llvm/lib/Target/NVPTX/NVVMIntrRange.cpp
M llvm/test/CodeGen/NVPTX/intr-range.ll
M llvm/test/CodeGen/NVPTX/intrinsic-old.ll
Log Message:
-----------
[NVPTX] Add ranges to intrinsic definitions, cleanup NVVMIntrRange (#138338)
Pull the global intrinsic ranges out of NVVMIntrRange and into the
intrinsic table-gen definitions. Also improve range inference for
cluster SReg intrinsics.
Commit: 7682f663b571830c937156a338017caf0c83e7cd
https://github.com/llvm/llvm-project/commit/7682f663b571830c937156a338017caf0c83e7cd
Author: Bruno Cardoso Lopes <bruno.cardoso at gmail.com>
Date: 2025-05-05 (Mon, 05 May 2025)
Changed paths:
M mlir/include/mlir/Target/LLVMIR/ModuleImport.h
M mlir/lib/Target/LLVMIR/ModuleImport.cpp
M mlir/test/Target/LLVMIR/Import/import-failure.ll
M mlir/test/Target/LLVMIR/Import/instructions.ll
Log Message:
-----------
[MLIR][LLVMIR] Import calls with mismatching signature as indirect call (#135895)
LLVM IR currently [accepts](https://godbolt.org/z/nqnEsW1ja):
```
define void @incompatible_call_and_callee_types() {
call void @callee(i64 0)
ret void
}
define void @callee({ptr, i64}, i32) {
ret void
}
```
This currently fails to import. Even though these constructs are
dangerous and probably indicate some ODR violation (or optimization
bug), they are "valid" and should be imported into LLVM IR dialect. This
PR implements that by using an indirect call to represent it.
Translation already works nicely and outputs the same source llvm IR
file.
The error is now a warning, the tests in
`mlir/test/Target/LLVMIR/Import/import-failure.ll` already use `CHECK`
lines, so no need to add extra diagnostic tests.
Commit: 8b9ae65d51a14cac5a312bb19cb4757a88fc240b
https://github.com/llvm/llvm-project/commit/8b9ae65d51a14cac5a312bb19cb4757a88fc240b
Author: Jeffrey Byrnes <Jeffrey.Byrnes at amd.com>
Date: 2025-05-05 (Mon, 05 May 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/GCNIterativeScheduler.cpp
M llvm/test/CodeGen/AMDGPU/coalesce-copy-to-agpr-to-av-registers.mir
Log Message:
-----------
Revert "[AMDGPU] Extend test coverage for cross RC register coalescing (#132137)"
This reverts commit 0bd065dc943ff65e0749a9f2a7b7a672acd45193.
Commit: 1c1238d3615a7e1a99570d1e02de3b538d2e0669
https://github.com/llvm/llvm-project/commit/1c1238d3615a7e1a99570d1e02de3b538d2e0669
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2025-05-05 (Mon, 05 May 2025)
Changed paths:
M lldb/tools/lldb-dap/DAP.cpp
Log Message:
-----------
[lldb-dap] Don't error out when the process is in eStateUnloaded (#138601)
DAP::WaitForProcessToStop treats the process in eStateUnloaded as an
error. The process is in this state when it has just been created
(before an attach or launch) or when it's restarted. Neither should be
treated as errors.
The current implementation can trigger this error (and a corresponding
test failure) when we call WaitForProcessToStop after attaching in
asynchronous mode (for example when using ConnectRemote which is always
asynchronous (due to a bug).
Commit: 43eafc0c4aca0b2fd159c09d4b162c1941b4f4ed
https://github.com/llvm/llvm-project/commit/43eafc0c4aca0b2fd159c09d4b162c1941b4f4ed
Author: Paul Kirth <paulkirth at google.com>
Date: 2025-05-05 (Mon, 05 May 2025)
Changed paths:
M llvm/lib/Transforms/Utils/Local.cpp
A llvm/test/Transforms/GVNSink/pr138345.ll
Log Message:
-----------
[llvm][gvn-sink] Don't try to sink inline asm (#138414)
Fixes #138345. Before this patch, gvn-sink would try to sink inline
assembly statements. Other GVN passes avoid them (see
https://github.com/llvm/llvm-project/blob/b4fac94181c4cf17dbb7ecc2ae975712b0e4a6d1/llvm/lib/Transforms/Scalar/GVN.cpp#L2932
Similarly, gvn-sink should skip these instructions, since they are not
safe to move. To do this, we update the early exit in
canReplaceOperandWithVariable, since it should have caught this case.
It's more efficient to also skip numbering in GVNSink if the instruction
is InlineAsm, but that should be infrequent.
The test added is reduced from a failure when compiling Fuchsia with
gvn-sink.
Commit: 8404b29b4151d95135ccc8d0d985be5ec8bb6f49
https://github.com/llvm/llvm-project/commit/8404b29b4151d95135ccc8d0d985be5ec8bb6f49
Author: Paul Kirth <paulkirth at google.com>
Date: 2025-05-05 (Mon, 05 May 2025)
Changed paths:
M llvm/lib/Transforms/Utils/Local.cpp
Log Message:
-----------
[llvm][NFC] Fix bracing from #138414 (#138620)
I had forgotten to upload the formatting change.
Commit: 5709a2c595073d3e05275f098149d58bbf626080
https://github.com/llvm/llvm-project/commit/5709a2c595073d3e05275f098149d58bbf626080
Author: Nico Weber <thakis at chromium.org>
Date: 2025-05-05 (Mon, 05 May 2025)
Changed paths:
M llvm/utils/gn/secondary/llvm/lib/Target/Sparc/BUILD.gn
Log Message:
-----------
[gn build] Port 7aa67378f01f
Commit: ca1ebff9decdd64804079a3e3ae62f613ca76a9e
https://github.com/llvm/llvm-project/commit/ca1ebff9decdd64804079a3e3ae62f613ca76a9e
Author: Min-Yih Hsu <min.hsu at sifive.com>
Date: 2025-05-05 (Mon, 05 May 2025)
Changed paths:
A clang/test/Driver/print-enabled-extensions/riscv-sifive-p870.c
M clang/test/Driver/riscv-cpus.c
M clang/test/Misc/target-invalid-cpu-note/riscv.c
M llvm/docs/ReleaseNotes.md
M llvm/lib/Target/RISCV/RISCVProcessors.td
Log Message:
-----------
[RISCV] Add processor definition for SiFive P870 (#137725)
SiFive P870 is a RVA23 compatible high-performance CPU:
https://www.sifive.com/cores/performance-p800
Scheduling model will be added in a follow-up PR.
Commit: 658cac84a1c235fd579899d047bebcbe64572447
https://github.com/llvm/llvm-project/commit/658cac84a1c235fd579899d047bebcbe64572447
Author: Jim Lin <jim at andestech.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M clang/include/clang/Basic/BuiltinsRISCVXCV.td
M clang/lib/CodeGen/TargetBuiltins/RISCV.cpp
M clang/lib/Headers/riscv_corev_alu.h
M clang/test/CodeGen/RISCV/riscv-xcvalu-c-api.c
M clang/test/CodeGen/RISCV/riscv-xcvalu.c
M llvm/test/CodeGen/RISCV/xcvalu.ll
Log Message:
-----------
[RISCV] Rename XCValu intrinsic name *_slet(u) to *_sle(u)) (#138498)
The instruction name and intrinsic name have been renamed to sle(u). The
`t` was removed. Please refer to
https://github.com/openhwgroup/core-v-sw/blob/master/specifications/corev-builtin-spec.md.
Commit: c6c2e21028cadef854cf22f6ecaa5eb9d224b76d
https://github.com/llvm/llvm-project/commit/c6c2e21028cadef854cf22f6ecaa5eb9d224b76d
Author: NAKAMURA Takumi <geek4civic at gmail.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/llvm/BUILD.bazel
Log Message:
-----------
[bazel] Update Sparc (for #138450)
Commit: 6234aba28a956f3577e526d225b20874822e9c25
https://github.com/llvm/llvm-project/commit/6234aba28a956f3577e526d225b20874822e9c25
Author: Prabhu Rajasekaran <prabhukr at google.com>
Date: 2025-05-05 (Mon, 05 May 2025)
Changed paths:
M llvm/lib/Target/X86/X86FrameLowering.cpp
Log Message:
-----------
[llvm] No DWARF CFI for UEFI (#138602)
UEFI target uses WinCFI. Update emitEpilogue function to reflect this.
Commit: 425340511f39068b4839ae05af559f924b4cb534
https://github.com/llvm/llvm-project/commit/425340511f39068b4839ae05af559f924b4cb534
Author: Peter Collingbourne <pcc at google.com>
Date: 2025-05-05 (Mon, 05 May 2025)
Changed paths:
M llvm/lib/Target/AArch64/MCTargetDesc/AArch64ELFObjectWriter.cpp
M llvm/test/MC/AArch64/adrp-auth-relocation.s
M llvm/test/MC/AArch64/error-location.s
M llvm/test/MC/AArch64/ilp32-diagnostics.s
Log Message:
-----------
AArch64: Clean up relocation error messages.
"<foo> relocation is not supported in ILP32" is more accurate than
what we have now.
Also, remove "LP64 eqv:" annotations because they create a maintenance
burden and are unlikely to be helpful.
Reviewers: kovdan01, MaskRay
Reviewed By: MaskRay
Pull Request: https://github.com/llvm/llvm-project/pull/138625
Commit: 3f1267e1b39c31cea390c7425e88b01d3304d8c7
https://github.com/llvm/llvm-project/commit/3f1267e1b39c31cea390c7425e88b01d3304d8c7
Author: Alexey Bader <alexey.bader at intel.com>
Date: 2025-05-05 (Mon, 05 May 2025)
Changed paths:
M clang/tools/clang-offload-bundler/ClangOffloadBundler.cpp
Log Message:
-----------
[NFC][clang-offload-bundler] Simplify main function (#138555)
Applied "no else after return" rule from the LLVM's Coding Standards
https://llvm.org/docs/CodingStandards.html#don-t-use-else-after-a-return
Commit: cd6c4b61034850fffcb221a449a8ee1fdd8ada8a
https://github.com/llvm/llvm-project/commit/cd6c4b61034850fffcb221a449a8ee1fdd8ada8a
Author: Brox Chen <guochen2 at amd.com>
Date: 2025-05-05 (Mon, 05 May 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp
M llvm/test/CodeGen/AMDGPU/frem.ll
M llvm/test/CodeGen/AMDGPU/mad-mix-lo.ll
M llvm/test/CodeGen/AMDGPU/mad-mix.ll
Log Message:
-----------
[AMDGPU][True16][CodeGen] optimize codegen for mad-mix in true16 (#124995)
remove unnecessary COPY for SDAG for mad-mix pattern
Commit: ffc5f79e2aeda12d8c185d9e838f2c8bfd45a01d
https://github.com/llvm/llvm-project/commit/ffc5f79e2aeda12d8c185d9e838f2c8bfd45a01d
Author: Fangrui Song <i at maskray.me>
Date: 2025-05-05 (Mon, 05 May 2025)
Changed paths:
M llvm/lib/Target/LoongArch/AsmParser/LoongArchAsmParser.cpp
M llvm/lib/Target/LoongArch/LoongArchMCInstLower.cpp
M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchELFObjectWriter.cpp
M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchMCCodeEmitter.cpp
M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchMCExpr.cpp
M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchMCExpr.h
Log Message:
-----------
LoongArch: Replace most Specifier members with raw relocation types
Follow Sparc.
Commit: f1985d583d283fc662c94ef39feeb58bed19ac2c
https://github.com/llvm/llvm-project/commit/f1985d583d283fc662c94ef39feeb58bed19ac2c
Author: Oliver Hunt <oliver at apple.com>
Date: 2025-05-05 (Mon, 05 May 2025)
Changed paths:
M clang/lib/Sema/SemaExprCXX.cpp
A clang/test/SemaCXX/type-aware-new-delete-transparent-contexts.cpp
Log Message:
-----------
[clang] Ensure type aware allocators handle transparent decl contexts (#138616)
We were testing the immediate DeclContext for found new and delete
operators, which is incorrect if the declarations are contained by a
transparent decl as can be induced with extern or export statements.
Commit: 4ff98fd2f8f8c086f097d704308dc8f1d5b79f0b
https://github.com/llvm/llvm-project/commit/4ff98fd2f8f8c086f097d704308dc8f1d5b79f0b
Author: Boaz Brickner <brickner at google.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M llvm/include/llvm/Linker/Linker.h
Log Message:
-----------
[Linker] Update `linkInModule()` comment following change from `bool OverrideSymbols` to `unsigned Flags` (#138531)
Original change:
https://github.com/llvm/llvm-project/commit/020d4fb17f92410117bc858f586fead7c5088696.
Commit: ca59a2b86811cbe3ef993ca9b55f6d03a1effcf3
https://github.com/llvm/llvm-project/commit/ca59a2b86811cbe3ef993ca9b55f6d03a1effcf3
Author: quic_hchandel <quic_hchandel at quicinc.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfoXqci.td
M llvm/test/MC/RISCV/xqcibm-valid.s
M llvm/test/MC/RISCV/xqcicm-valid.s
Log Message:
-----------
[RISCV] Add compress patterns for qc.extu and qc.mveqi (#138630)
Commit: d83983999d975357ada46d482c29b83fac41b90c
https://github.com/llvm/llvm-project/commit/d83983999d975357ada46d482c29b83fac41b90c
Author: Rainer Orth <ro at gcc.gnu.org>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M openmp/runtime/src/kmp_global.cpp
Log Message:
-----------
[OpenMP] Use TLS for gtid on Solaris (#138508)
When running the `openmp` testsuite on Solaris/amd64, many tests `FAIL`
like
```
# | OMP: Error #11: Stack overflow detected for OpenMP thread #1
```
In a `Debug` build, I also get
```
# | Assertion failure at kmp_runtime.cpp(203): __kmp_gtid_get_specific() < 0 || __kmp_gtid_get_specific() == i.
```
Further investigation shows that just setting `__kmp_gtid_mode` to 3
massively reduces the number of failures.
Tested on `amd64-pc-solaris2.11` and `x86_64-pc-linux-gnu`.
Commit: 30ec488716263200f7e6004c4670c77f6ec9fab9
https://github.com/llvm/llvm-project/commit/30ec488716263200f7e6004c4670c77f6ec9fab9
Author: Rainer Orth <ro at gcc.gnu.org>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M openmp/runtime/src/kmp_wrapper_getpid.h
Log Message:
-----------
[OpenMP] Use pthread_self for __kmp_gettid on Solaris (#138510)
Building `openmp` on Solaris/amd64, I get
```
In file included from openmp/runtime/src/kmp_utility.cpp:16:
openmp/runtime/src/kmp_wrapper_getpid.h:47:2: warning: No gettid found, use getpid instead [-W#warnings]
47 | #warning No gettid found, use getpid instead
| ^
```
There's no reason to do this: Solaris can use `pthread_self` just as AIX
does.
Tested on `amd64-pc-solaris2.11` and `x86_64-pc-linux-gnu`.
Commit: c24b9ca3da1a36c78652f5c2e046a91af1b63aed
https://github.com/llvm/llvm-project/commit/c24b9ca3da1a36c78652f5c2e046a91af1b63aed
Author: Rainer Orth <ro at gcc.gnu.org>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M openmp/runtime/src/z_Linux_asm.S
Log Message:
-----------
[OpenMP] Provide __kmp_unnamed_critical_addr on SPARC (#138517)
`libomp.so` currently fails to link on SPARC, both Solaris/sparcv9 and
Linux/sparc64:
```
Undefined first referenced
symbol in file
__kmp_unnamed_critical_addr projects/openmp/runtime/src/CMakeFiles/omp.dir/kmp_gsupport.cpp.o
ld: fatal: symbol referencing errors
```
This patch provides the necessary definition. While at it, I noticed
that on non-x86 targets the symbol wasn't marked as `@object`, which
this patch corrects, too.
Tested on `sparcv9-sun-solaris2.11`, `sparc64-unknown-linux-gnu`,
`amd64-pc-solaris2.11`, and `x86_64-pc-linux-gnu`.
Commit: 3f1eafaa04f1c04ae5c7aae3e452eb75c507584d
https://github.com/llvm/llvm-project/commit/3f1eafaa04f1c04ae5c7aae3e452eb75c507584d
Author: Rainer Orth <ro at gcc.gnu.org>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M openmp/runtime/src/kmp_affinity.h
Log Message:
-----------
[OpenMP] Provide __NR_sched_[gs]etaffinity on Linux/sparc64 (#138525)
`libomp` doesn't currently build on Linux/sparc64 due to lack of
`__NR_sched_setaffinity` and `__NR_sched_getaffinity` definitions.
This patch provides those.
Tested on `sparcv9-sun-solaris2.11`, `sparc64-unknown-linux-gnu`,
`amd64-pc-solaris2.11`, and `x86_64-pc-linux-gnu`.
Commit: bb2aa1adcc4ad1508b477a2f53aa4ab922b4f99f
https://github.com/llvm/llvm-project/commit/bb2aa1adcc4ad1508b477a2f53aa4ab922b4f99f
Author: Srinivasa Ravi <srinivasar at nvidia.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M mlir/include/mlir/Dialect/LLVMIR/NVVMOps.td
M mlir/lib/Dialect/LLVMIR/IR/NVVMDialect.cpp
M mlir/test/Target/LLVMIR/nvvm/cvt_fp6x2.mlir
A mlir/test/Target/LLVMIR/nvvm/cvt_fp8x2.mlir
M mlir/test/Target/LLVMIR/nvvmir-invalid.mlir
Log Message:
-----------
[MLIR][NVVM] Update support for conversions to f8x2 and f6x2 types (#137781)
This change:
- Adds the `cvt.f32x2.to.f8x2`, `cvt.f16x2.to.f8x2`, and
`cvt.bf16x2.to.f8x2`
Ops to the NVVM dialect for the conversions to `.e4m3x2`, `e5m2x2`,
and `.ue8m0x2` types.
- Renames the recently added `cvt.to.f6x2` Op to `cvt.f32x2.to.f6x2`
for consistency with the other conversion Ops.
For more information, see PTX ISA:
https://docs.nvidia.com/cuda/parallel-thread-execution/#data-movement-and-conversion-instructions-cvt
Commit: 7aabf47522625e227433cc9603e0b6858c5dd66d
https://github.com/llvm/llvm-project/commit/7aabf47522625e227433cc9603e0b6858c5dd66d
Author: Clément Fournier <clement.fournier at tu-dresden.de>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M mlir/include/mlir/Dialect/Affine/Passes.h
M mlir/include/mlir/Dialect/Affine/Passes.td
M mlir/lib/Dialect/Affine/IR/AffineOps.cpp
M mlir/lib/Dialect/Affine/Transforms/CMakeLists.txt
A mlir/lib/Dialect/Affine/Transforms/RaiseMemrefDialect.cpp
A mlir/test/Dialect/Affine/raise-memref.mlir
Log Message:
-----------
[mlir][affine] Add pass --affine-raise-from-memref (#138004)
This adds a pass that converts memref.load/store into affine.load/store.
This is useful as those memref operators are ignored by passes like
--affine-scalrep as they don't implement the
Affine[Read/Write]OpInterface. Doing this allows you to put as much of
your program in affine form before you apply affine optimization passes.
This also slightly changes the implementation of affine::isValidDim. The
previous implementation allowed values from the iter_args of affine
loops to be used as valid dims. I think this doesn't make sense and what
was meant is just the induction vars. In the real world, there is little
reason to find an index in the iter_args, but I wrote that in my tests
and found out it was treated as an affine dim, so corrected that.
Co-authored-by: Oleksandr "Alex" Zinenko <git at ozinenko.com>
Rebased from #114032.
Commit: fdbc30a383973d89d738283e733ba0db98df6a77
https://github.com/llvm/llvm-project/commit/fdbc30a383973d89d738283e733ba0db98df6a77
Author: Rohit Aggarwal <44664450+rohitaggarwal007 at users.noreply.github.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/buildvec-widen-dotproduct.ll
Log Message:
-----------
[X86][DAGCombiner][SelectionDAG] - Fold Zext Build Vector to Bitcast of widen Build Vector (#135010)
I am working on a problem in which a kernel is SLP vectorized and lead
to generation of insertelements followed by zext. On lowering, the
assembly looks like below:
vmovd %r9d, %xmm0
vpinsrb $1, (%rdi,%rsi), %xmm0, %xmm0
vpinsrb $2, (%rdi,%rsi,2), %xmm0, %xmm0
vpinsrb $3, (%rdi,%rcx), %xmm0, %xmm0
vpinsrb $4, (%rdi,%rsi,4), %xmm0, %xmm0
vpinsrb $5, (%rdi,%rax), %xmm0, %xmm0
vpinsrb $6, (%rdi,%rcx,2), %xmm0, %xmm0
vpinsrb $7, (%rdi,%r8), %xmm0, %xmm0
vpmovzxbw %xmm0, %xmm0 # xmm0 =
xmm0[0],zero,xmm0[1],zero,xmm0[2],zero,xmm0[3],zero,xmm0[4],zero,xmm0[5],zero,xmm0[6],zero,xmm0[7],zero
vpmaddwd (%rdx), %xmm0, %xmm0
After all the insrb, xmm0 looks like
xmm0=xmm0[0],xmm0[1],xmm0[2],xmm0[3],xmm0[4],xmm0[5],xmm0[6],xmm0[7],zero,zero,zero,zero,zero,zero,zero,zero
Here vpmovzxbw perform the extension of i8 to i16. But it is expensive
operation and I want to remove it.
Optimization
Place the value in correct location while inserting so that zext can be
avoid.
While lowering, we can write a custom lowerOperation for
zero_extend_vector_inreg opcode. We can override the current default
operation with my custom in the legalization step.
The changes proposed are state below:
vpinsrb $2, (%rdi,%rsi), %xmm0, %xmm0
vpinsrb $4, (%rdi,%rsi,2), %xmm0, %xmm0
vpinsrb $6, (%rdi,%rcx), %xmm0, %xmm0
vpinsrb $8, (%rdi,%rsi,4), %xmm0, %xmm0
vpinsrb $a, (%rdi,%rax), %xmm0, %xmm0
vpinsrb $c, (%rdi,%rcx,2), %xmm0, %xmm0
vpinsrb $e, (%rdi,%r8), %xmm0, %xmm0 # xmm0 =
xmm0[0],zero,xmm0[1],zero,xmm0[2],zero,xmm0[3],zero,xmm0[4],zero,xmm0[5],zero,xmm0[6],zero,xmm0[7],zero
vpmaddwd (%rdx), %xmm0, %xmm0
More details in the discourse topic
[https://discourse.llvm.org/t/improve-the-gathering-of-the-elements-so-that-unwanted-ext-operations-can-be-avoided/85443](url)
---------
Co-authored-by: Rohit Aggarwal <Rohit.Aggarwal at amd.com>
Commit: f54f4cf262bd286c6f14f4faae035a4df9db32e8
https://github.com/llvm/llvm-project/commit/f54f4cf262bd286c6f14f4faae035a4df9db32e8
Author: Sudharsan Veeravalli <quic_svs at quicinc.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfoXqci.td
M llvm/test/MC/RISCV/xqcisync-valid.s
Log Message:
-----------
[RISCV] Add compress patterns for Xqcisync instructions (#138629)
Commit: fd161cf56f4356c38f82a6d68a80236e00bce39d
https://github.com/llvm/llvm-project/commit/fd161cf56f4356c38f82a6d68a80236e00bce39d
Author: Matthias Springer <me at m-sp.org>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M mlir/lib/Dialect/MemRef/Transforms/RuntimeOpVerification.cpp
R mlir/test/Integration/Dialect/MemRef/reinterpret-cast-runtime-verification.mlir
Log Message:
-----------
[mlir][memref] Remove runtime verification for `memref.reinterpret_cast` (#132547)
The runtime verification code used to verify that the result of a
`memref.reinterpret_cast` is in-bounds with respect to the source
memref. This is incorrect: `memref.reinterpret_cast` allows users to
construct almost arbitrary memref descriptors and there is no
correctness expectation.
This op is supposed to be used when the user "knows what they are
doing." Similarly, the static verifier of `memref.reinterpret_cast` does
not verify in-bounds semantics either.
Commit: fbd9a3160b392c343f9ce24af0180d8b14c68dfe
https://github.com/llvm/llvm-project/commit/fbd9a3160b392c343f9ce24af0180d8b14c68dfe
Author: Ricardo Jesus <rjj at nvidia.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
A llvm/test/Transforms/InstCombine/AArch64/sve-intrinsic-uxt.ll
Log Message:
-----------
[AArch64][SVE] Combine UXT[BHW] intrinsics to AND. (#137956)
This patch combines uxt[bhw] intrinsics to and_u when the governing
predicate is all-true or the passthrough is undef (e.g. in cases of
``unknown'' merging). This improves code gen as the latter can be
emitted as AND immediate instructions.
For example, given:
```cpp
svuint64_t foo(svuint64_t x) {
return svextb_z(svptrue_b64(), x);
}
```
Currently:
```gas
foo:
ptrue p0.d
movi v1.2d, #0000000000000000
uxtb z0.d, p0/m, z0.d
ret
```
Becomes:
```gas
foo:
and z0.d, z0.d, #0xff
ret
```
Commit: 91ad90bc4cbd5dd8ba3e5d2c138d576e2ae748ab
https://github.com/llvm/llvm-project/commit/91ad90bc4cbd5dd8ba3e5d2c138d576e2ae748ab
Author: Cullen Rhodes <cullen.rhodes at arm.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
A llvm/test/CodeGen/AArch64/misched-cutoff.mir
Log Message:
-----------
[MISched][NFC] Precommit test for #137988 (#138243)
Commit: fe1d1159be269309b5cbb9889c7ebe99cebfd940
https://github.com/llvm/llvm-project/commit/fe1d1159be269309b5cbb9889c7ebe99cebfd940
Author: Orlando Cazalet-Hyams <orlando.hyams at sony.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M llvm/include/llvm/IR/DebugInfoMetadata.h
M llvm/lib/IR/LLVMContextImpl.h
Log Message:
-----------
[KeyInstr] Fix DILocation AtomGroup/Rank bitfield packing for MSVC (#138292)
Follow up to #133477.
As nikic pointed out: We need to use uint64_t for both fields to get
actual bit packing with msvc (https://c.godbolt.org/z/1f556c1zb).
The cast to u8 in hash_combine prevents an increase in compile time
(+0.16% for stage1-O0-g on compile-time-tracker).
Commit: 3dc1f759e6abcd72ea9d3c33baeaf8043ed6f9a0
https://github.com/llvm/llvm-project/commit/3dc1f759e6abcd72ea9d3c33baeaf8043ed6f9a0
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M libcxx/include/__cxx03/__algorithm/equal.h
M libcxx/include/__cxx03/__algorithm/for_each.h
M libcxx/include/__cxx03/__algorithm/is_permutation.h
M libcxx/include/__cxx03/__algorithm/iterator_operations.h
M libcxx/include/__cxx03/__algorithm/make_projected.h
M libcxx/include/__cxx03/__algorithm/max.h
M libcxx/include/__cxx03/__algorithm/min.h
M libcxx/include/__cxx03/__algorithm/minmax.h
M libcxx/include/__cxx03/__algorithm/mismatch.h
M libcxx/include/__cxx03/__algorithm/search.h
M libcxx/include/__cxx03/__algorithm/shuffle.h
M libcxx/include/__cxx03/__algorithm/simd_utils.h
M libcxx/include/__cxx03/__algorithm/sort.h
M libcxx/include/__cxx03/__algorithm/three_way_comp_ref_type.h
M libcxx/include/__cxx03/__algorithm/uniform_random_bit_generator_adaptor.h
M libcxx/include/__cxx03/__algorithm/unwrap_iter.h
M libcxx/include/__cxx03/__algorithm/unwrap_range.h
M libcxx/include/__cxx03/__atomic/aliases.h
M libcxx/include/__cxx03/__atomic/atomic.h
M libcxx/include/__cxx03/__atomic/atomic_base.h
M libcxx/include/__cxx03/__atomic/atomic_flag.h
M libcxx/include/__cxx03/__atomic/atomic_init.h
M libcxx/include/__cxx03/__atomic/cxx_atomic_impl.h
M libcxx/include/__cxx03/__atomic/memory_order.h
M libcxx/include/__cxx03/__bit/countl.h
M libcxx/include/__cxx03/__bit/countr.h
M libcxx/include/__cxx03/__bit/popcount.h
M libcxx/include/__cxx03/__bit/rotate.h
M libcxx/include/__cxx03/__bit_reference
M libcxx/include/__cxx03/__chrono/duration.h
M libcxx/include/__cxx03/__chrono/system_clock.h
M libcxx/include/__cxx03/__chrono/time_point.h
M libcxx/include/__cxx03/__config
M libcxx/include/__cxx03/__configuration/language.h
M libcxx/include/__cxx03/__debug_utils/randomize_range.h
M libcxx/include/__cxx03/__exception/operations.h
M libcxx/include/__cxx03/__functional/binary_function.h
M libcxx/include/__cxx03/__functional/binary_negate.h
M libcxx/include/__cxx03/__functional/bind.h
M libcxx/include/__cxx03/__functional/binder1st.h
M libcxx/include/__cxx03/__functional/binder2nd.h
M libcxx/include/__cxx03/__functional/hash.h
M libcxx/include/__cxx03/__functional/identity.h
M libcxx/include/__cxx03/__functional/mem_fun_ref.h
M libcxx/include/__cxx03/__functional/operations.h
M libcxx/include/__cxx03/__functional/pointer_to_binary_function.h
M libcxx/include/__cxx03/__functional/pointer_to_unary_function.h
M libcxx/include/__cxx03/__functional/reference_wrapper.h
M libcxx/include/__cxx03/__functional/unary_function.h
M libcxx/include/__cxx03/__functional/unary_negate.h
M libcxx/include/__cxx03/__functional/weak_result_type.h
M libcxx/include/__cxx03/__fwd/array.h
M libcxx/include/__cxx03/__fwd/complex.h
M libcxx/include/__cxx03/__fwd/pair.h
M libcxx/include/__cxx03/__fwd/string.h
M libcxx/include/__cxx03/__fwd/tuple.h
M libcxx/include/__cxx03/__hash_table
M libcxx/include/__cxx03/__iterator/access.h
M libcxx/include/__cxx03/__iterator/advance.h
M libcxx/include/__cxx03/__iterator/back_insert_iterator.h
M libcxx/include/__cxx03/__iterator/bounded_iter.h
M libcxx/include/__cxx03/__iterator/cpp17_iterator_concepts.h
M libcxx/include/__cxx03/__iterator/distance.h
M libcxx/include/__cxx03/__iterator/front_insert_iterator.h
M libcxx/include/__cxx03/__iterator/insert_iterator.h
M libcxx/include/__cxx03/__iterator/istream_iterator.h
M libcxx/include/__cxx03/__iterator/istreambuf_iterator.h
M libcxx/include/__cxx03/__iterator/iterator_traits.h
M libcxx/include/__cxx03/__iterator/move_iterator.h
M libcxx/include/__cxx03/__iterator/next.h
M libcxx/include/__cxx03/__iterator/ostream_iterator.h
M libcxx/include/__cxx03/__iterator/ostreambuf_iterator.h
M libcxx/include/__cxx03/__iterator/prev.h
M libcxx/include/__cxx03/__iterator/reverse_iterator.h
M libcxx/include/__cxx03/__iterator/wrap_iter.h
M libcxx/include/__cxx03/__locale
M libcxx/include/__cxx03/__locale_dir/locale_base_api/ibm.h
M libcxx/include/__cxx03/__math/hypot.h
M libcxx/include/__cxx03/__memory/addressof.h
M libcxx/include/__cxx03/__memory/aligned_alloc.h
M libcxx/include/__cxx03/__memory/allocate_at_least.h
M libcxx/include/__cxx03/__memory/allocator.h
M libcxx/include/__cxx03/__memory/allocator_arg_t.h
M libcxx/include/__cxx03/__memory/allocator_traits.h
M libcxx/include/__cxx03/__memory/assume_aligned.h
M libcxx/include/__cxx03/__memory/auto_ptr.h
M libcxx/include/__cxx03/__memory/compressed_pair.h
M libcxx/include/__cxx03/__memory/construct_at.h
M libcxx/include/__cxx03/__memory/pointer_traits.h
M libcxx/include/__cxx03/__memory/raw_storage_iterator.h
M libcxx/include/__cxx03/__memory/shared_ptr.h
M libcxx/include/__cxx03/__memory/swap_allocator.h
M libcxx/include/__cxx03/__memory/temp_value.h
M libcxx/include/__cxx03/__memory/uninitialized_algorithms.h
M libcxx/include/__cxx03/__memory/unique_ptr.h
M libcxx/include/__cxx03/__memory/uses_allocator.h
M libcxx/include/__cxx03/__mutex/once_flag.h
M libcxx/include/__cxx03/__mutex/tag_types.h
M libcxx/include/__cxx03/__numeric/accumulate.h
M libcxx/include/__cxx03/__numeric/adjacent_difference.h
M libcxx/include/__cxx03/__numeric/inner_product.h
M libcxx/include/__cxx03/__numeric/partial_sum.h
M libcxx/include/__cxx03/__ostream/basic_ostream.h
M libcxx/include/__cxx03/__random/bernoulli_distribution.h
M libcxx/include/__cxx03/__random/binomial_distribution.h
M libcxx/include/__cxx03/__random/cauchy_distribution.h
M libcxx/include/__cxx03/__random/chi_squared_distribution.h
M libcxx/include/__cxx03/__random/discard_block_engine.h
M libcxx/include/__cxx03/__random/discrete_distribution.h
M libcxx/include/__cxx03/__random/exponential_distribution.h
M libcxx/include/__cxx03/__random/extreme_value_distribution.h
M libcxx/include/__cxx03/__random/fisher_f_distribution.h
M libcxx/include/__cxx03/__random/gamma_distribution.h
M libcxx/include/__cxx03/__random/generate_canonical.h
M libcxx/include/__cxx03/__random/geometric_distribution.h
M libcxx/include/__cxx03/__random/independent_bits_engine.h
M libcxx/include/__cxx03/__random/linear_congruential_engine.h
M libcxx/include/__cxx03/__random/lognormal_distribution.h
M libcxx/include/__cxx03/__random/mersenne_twister_engine.h
M libcxx/include/__cxx03/__random/negative_binomial_distribution.h
M libcxx/include/__cxx03/__random/normal_distribution.h
M libcxx/include/__cxx03/__random/piecewise_constant_distribution.h
M libcxx/include/__cxx03/__random/piecewise_linear_distribution.h
M libcxx/include/__cxx03/__random/poisson_distribution.h
M libcxx/include/__cxx03/__random/random_device.h
M libcxx/include/__cxx03/__random/seed_seq.h
M libcxx/include/__cxx03/__random/shuffle_order_engine.h
M libcxx/include/__cxx03/__random/student_t_distribution.h
M libcxx/include/__cxx03/__random/subtract_with_carry_engine.h
M libcxx/include/__cxx03/__random/uniform_int_distribution.h
M libcxx/include/__cxx03/__random/uniform_real_distribution.h
M libcxx/include/__cxx03/__random/weibull_distribution.h
M libcxx/include/__cxx03/__string/char_traits.h
M libcxx/include/__cxx03/__string/constexpr_c_functions.h
M libcxx/include/__cxx03/__system_error/error_category.h
M libcxx/include/__cxx03/__system_error/error_code.h
M libcxx/include/__cxx03/__system_error/error_condition.h
M libcxx/include/__cxx03/__thread/id.h
M libcxx/include/__cxx03/__thread/thread.h
M libcxx/include/__cxx03/__tree
M libcxx/include/__cxx03/__tuple/find_index.h
M libcxx/include/__cxx03/__tuple/make_tuple_types.h
M libcxx/include/__cxx03/__tuple/sfinae_helpers.h
M libcxx/include/__cxx03/__tuple/tuple_element.h
M libcxx/include/__cxx03/__tuple/tuple_indices.h
M libcxx/include/__cxx03/__tuple/tuple_like.h
M libcxx/include/__cxx03/__tuple/tuple_like_ext.h
M libcxx/include/__cxx03/__tuple/tuple_like_no_subrange.h
M libcxx/include/__cxx03/__tuple/tuple_size.h
M libcxx/include/__cxx03/__type_traits/add_const.h
M libcxx/include/__cxx03/__type_traits/add_cv.h
M libcxx/include/__cxx03/__type_traits/add_lvalue_reference.h
M libcxx/include/__cxx03/__type_traits/add_pointer.h
M libcxx/include/__cxx03/__type_traits/add_rvalue_reference.h
M libcxx/include/__cxx03/__type_traits/add_volatile.h
M libcxx/include/__cxx03/__type_traits/aligned_storage.h
M libcxx/include/__cxx03/__type_traits/aligned_union.h
M libcxx/include/__cxx03/__type_traits/alignment_of.h
M libcxx/include/__cxx03/__type_traits/common_type.h
M libcxx/include/__cxx03/__type_traits/conditional.h
M libcxx/include/__cxx03/__type_traits/conjunction.h
M libcxx/include/__cxx03/__type_traits/decay.h
M libcxx/include/__cxx03/__type_traits/disjunction.h
M libcxx/include/__cxx03/__type_traits/enable_if.h
M libcxx/include/__cxx03/__type_traits/extent.h
M libcxx/include/__cxx03/__type_traits/has_virtual_destructor.h
M libcxx/include/__cxx03/__type_traits/integral_constant.h
M libcxx/include/__cxx03/__type_traits/invoke.h
M libcxx/include/__cxx03/__type_traits/is_abstract.h
M libcxx/include/__cxx03/__type_traits/is_arithmetic.h
M libcxx/include/__cxx03/__type_traits/is_array.h
M libcxx/include/__cxx03/__type_traits/is_assignable.h
M libcxx/include/__cxx03/__type_traits/is_base_of.h
M libcxx/include/__cxx03/__type_traits/is_bounded_array.h
M libcxx/include/__cxx03/__type_traits/is_class.h
M libcxx/include/__cxx03/__type_traits/is_compound.h
M libcxx/include/__cxx03/__type_traits/is_const.h
M libcxx/include/__cxx03/__type_traits/is_constant_evaluated.h
M libcxx/include/__cxx03/__type_traits/is_constructible.h
M libcxx/include/__cxx03/__type_traits/is_convertible.h
M libcxx/include/__cxx03/__type_traits/is_destructible.h
M libcxx/include/__cxx03/__type_traits/is_empty.h
M libcxx/include/__cxx03/__type_traits/is_enum.h
M libcxx/include/__cxx03/__type_traits/is_execution_policy.h
M libcxx/include/__cxx03/__type_traits/is_final.h
M libcxx/include/__cxx03/__type_traits/is_floating_point.h
M libcxx/include/__cxx03/__type_traits/is_function.h
M libcxx/include/__cxx03/__type_traits/is_fundamental.h
M libcxx/include/__cxx03/__type_traits/is_implicitly_default_constructible.h
M libcxx/include/__cxx03/__type_traits/is_integral.h
M libcxx/include/__cxx03/__type_traits/is_literal_type.h
M libcxx/include/__cxx03/__type_traits/is_member_pointer.h
M libcxx/include/__cxx03/__type_traits/is_nothrow_assignable.h
M libcxx/include/__cxx03/__type_traits/is_nothrow_constructible.h
M libcxx/include/__cxx03/__type_traits/is_nothrow_destructible.h
M libcxx/include/__cxx03/__type_traits/is_null_pointer.h
M libcxx/include/__cxx03/__type_traits/is_object.h
M libcxx/include/__cxx03/__type_traits/is_pod.h
M libcxx/include/__cxx03/__type_traits/is_pointer.h
M libcxx/include/__cxx03/__type_traits/is_polymorphic.h
M libcxx/include/__cxx03/__type_traits/is_reference.h
M libcxx/include/__cxx03/__type_traits/is_same.h
M libcxx/include/__cxx03/__type_traits/is_scalar.h
M libcxx/include/__cxx03/__type_traits/is_signed.h
M libcxx/include/__cxx03/__type_traits/is_specialization.h
M libcxx/include/__cxx03/__type_traits/is_standard_layout.h
M libcxx/include/__cxx03/__type_traits/is_swappable.h
M libcxx/include/__cxx03/__type_traits/is_trivial.h
M libcxx/include/__cxx03/__type_traits/is_trivially_assignable.h
M libcxx/include/__cxx03/__type_traits/is_trivially_constructible.h
M libcxx/include/__cxx03/__type_traits/is_trivially_copyable.h
M libcxx/include/__cxx03/__type_traits/is_trivially_destructible.h
M libcxx/include/__cxx03/__type_traits/is_unbounded_array.h
M libcxx/include/__cxx03/__type_traits/is_union.h
M libcxx/include/__cxx03/__type_traits/is_unsigned.h
M libcxx/include/__cxx03/__type_traits/is_void.h
M libcxx/include/__cxx03/__type_traits/is_volatile.h
M libcxx/include/__cxx03/__type_traits/make_32_64_or_128_bit.h
M libcxx/include/__cxx03/__type_traits/make_signed.h
M libcxx/include/__cxx03/__type_traits/make_unsigned.h
M libcxx/include/__cxx03/__type_traits/nat.h
M libcxx/include/__cxx03/__type_traits/negation.h
M libcxx/include/__cxx03/__type_traits/noexcept_move_assign_container.h
M libcxx/include/__cxx03/__type_traits/rank.h
M libcxx/include/__cxx03/__type_traits/remove_all_extents.h
M libcxx/include/__cxx03/__type_traits/remove_const.h
M libcxx/include/__cxx03/__type_traits/remove_cv.h
M libcxx/include/__cxx03/__type_traits/remove_cvref.h
M libcxx/include/__cxx03/__type_traits/remove_extent.h
M libcxx/include/__cxx03/__type_traits/remove_pointer.h
M libcxx/include/__cxx03/__type_traits/remove_reference.h
M libcxx/include/__cxx03/__type_traits/remove_volatile.h
M libcxx/include/__cxx03/__type_traits/result_of.h
M libcxx/include/__cxx03/__type_traits/strip_signature.h
M libcxx/include/__cxx03/__type_traits/type_identity.h
M libcxx/include/__cxx03/__type_traits/underlying_type.h
M libcxx/include/__cxx03/__type_traits/unwrap_ref.h
M libcxx/include/__cxx03/__type_traits/void_t.h
M libcxx/include/__cxx03/__utility/as_lvalue.h
M libcxx/include/__cxx03/__utility/integer_sequence.h
M libcxx/include/__cxx03/__utility/pair.h
M libcxx/include/__cxx03/__utility/piecewise_construct.h
M libcxx/include/__cxx03/__utility/small_buffer.h
M libcxx/include/__cxx03/__utility/swap.h
M libcxx/include/__cxx03/__utility/unreachable.h
M libcxx/include/__cxx03/__variant/monostate.h
M libcxx/include/__cxx03/algorithm
M libcxx/include/__cxx03/array
M libcxx/include/__cxx03/atomic
M libcxx/include/__cxx03/bitset
M libcxx/include/__cxx03/chrono
M libcxx/include/__cxx03/cmath
M libcxx/include/__cxx03/codecvt
M libcxx/include/__cxx03/complex
M libcxx/include/__cxx03/condition_variable
M libcxx/include/__cxx03/cstddef
M libcxx/include/__cxx03/cstdio
M libcxx/include/__cxx03/cstdlib
M libcxx/include/__cxx03/ctime
M libcxx/include/__cxx03/cuchar
M libcxx/include/__cxx03/cwchar
M libcxx/include/__cxx03/deque
M libcxx/include/__cxx03/exception
M libcxx/include/__cxx03/ext/hash_map
M libcxx/include/__cxx03/ext/hash_set
M libcxx/include/__cxx03/forward_list
M libcxx/include/__cxx03/fstream
M libcxx/include/__cxx03/functional
M libcxx/include/__cxx03/future
M libcxx/include/__cxx03/iomanip
M libcxx/include/__cxx03/ios
M libcxx/include/__cxx03/iosfwd
M libcxx/include/__cxx03/istream
M libcxx/include/__cxx03/iterator
M libcxx/include/__cxx03/limits
M libcxx/include/__cxx03/list
M libcxx/include/__cxx03/locale
M libcxx/include/__cxx03/map
M libcxx/include/__cxx03/memory
M libcxx/include/__cxx03/mutex
M libcxx/include/__cxx03/new
M libcxx/include/__cxx03/numeric
M libcxx/include/__cxx03/ostream
M libcxx/include/__cxx03/queue
M libcxx/include/__cxx03/random
M libcxx/include/__cxx03/ratio
M libcxx/include/__cxx03/regex
M libcxx/include/__cxx03/set
M libcxx/include/__cxx03/sstream
M libcxx/include/__cxx03/stack
M libcxx/include/__cxx03/stdatomic.h
M libcxx/include/__cxx03/stdexcept
M libcxx/include/__cxx03/streambuf
M libcxx/include/__cxx03/string
M libcxx/include/__cxx03/string_view
M libcxx/include/__cxx03/strstream
M libcxx/include/__cxx03/system_error
M libcxx/include/__cxx03/thread
M libcxx/include/__cxx03/type_traits
M libcxx/include/__cxx03/typeindex
M libcxx/include/__cxx03/typeinfo
M libcxx/include/__cxx03/uchar.h
M libcxx/include/__cxx03/unordered_map
M libcxx/include/__cxx03/unordered_set
M libcxx/include/__cxx03/utility
M libcxx/include/__cxx03/valarray
M libcxx/include/__cxx03/vector
M libcxx/include/__cxx03/version
Log Message:
-----------
[libc++][C++03] Remove code that is not used in C++03 (#134045)
This patch removes code which is guarded by `_LIBCPP_STD_VER` and
`_LIBCPP_CXX03_LANG`.
This is part of
https://discourse.llvm.org/t/rfc-freezing-c-03-headers-in-libc.
Commit: 562a4559ee9b637714485169102f7a2600aab008
https://github.com/llvm/llvm-project/commit/562a4559ee9b637714485169102f7a2600aab008
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M llvm/docs/ProgrammersManual.rst
Log Message:
-----------
[ProgrammersManual] Update report_fatal_error docs (#138502)
Update docs for https://github.com/llvm/llvm-project/pull/138251.
Mention reportFatalInternalError and reportFatalUsageError in the
respective sections of the documentation.
Commit: 6d85de88c426a40b8e5d3cfcb0ed6564c7df12be
https://github.com/llvm/llvm-project/commit/6d85de88c426a40b8e5d3cfcb0ed6564c7df12be
Author: Orlando Cazalet-Hyams <orlando.hyams at sony.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M llvm/lib/IR/LLVMContextImpl.h
Log Message:
-----------
[KeyInstr] Hide new MDNodeKeyImpl<DILocation> fields (#138296)
Follow up to https://github.com/llvm/llvm-project/pull/133477.
This prevents a compile time regression pointed out by nikic
The additional checks in the methods seem to cause most of the regression
(rather than being a consequence of increased size due to the fields
themselves).
The additional ifdefs are somewhat ugly, but will eventually be removed.
Commit: 4b30b3f901b00da1bd1f70e9ca9086e349c7cca0
https://github.com/llvm/llvm-project/commit/4b30b3f901b00da1bd1f70e9ca9086e349c7cca0
Author: Balázs Kéri <balazs.keri at ericsson.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M clang/lib/AST/ASTImporter.cpp
M clang/unittests/AST/ASTImporterTest.cpp
Log Message:
-----------
[clang][ASTImporter] Fix AST import if anonymous namespaces are merged (#128735)
Fix of a faulty case that is shown in the second of the added
tests (an anonymous namespace is imported that resides in a `extern "C"`
block).
Commit: d66dbd6931a4358c0e4fd7c749179aa229fb36a4
https://github.com/llvm/llvm-project/commit/d66dbd6931a4358c0e4fd7c749179aa229fb36a4
Author: Raul Tambre <raul at tambre.ee>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M clang/docs/CommandGuide/clang.rst
M clang/include/clang/Basic/LangStandards.def
Log Message:
-----------
[clang][doc] Document C2y flags (#138521)
As discussed at https://github.com/llvm/llvm-project/pull/138459#issuecomment-2850716184
Commit: 015093d628d9461be1f7f5707c47f8ae7e8eb742
https://github.com/llvm/llvm-project/commit/015093d628d9461be1f7f5707c47f8ae7e8eb742
Author: Madhur Amilkanthwar <madhura at nvidia.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M llvm/include/llvm/Transforms/Scalar/GVN.h
M llvm/lib/Transforms/Scalar/GVN.cpp
Log Message:
-----------
[GVN] Improve processBlock for instruction erasure (#131753)
This patch deletes the instructions immediately in core GVN processing by using the appropriate
iterators. Thus, it avoids collecting the instructions in a vector and then
doing the erasure.
Commit: cadf652857cf996cc591e7a4afd0bc2e62781b16
https://github.com/llvm/llvm-project/commit/cadf652857cf996cc591e7a4afd0bc2e62781b16
Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
M llvm/lib/Target/AArch64/Utils/AArch64SMEAttributes.cpp
M llvm/lib/Target/AArch64/Utils/AArch64SMEAttributes.h
M llvm/test/CodeGen/AArch64/sme-peephole-opts.ll
M llvm/test/CodeGen/AArch64/sme-vg-to-stack.ll
M llvm/test/CodeGen/AArch64/sme-zt0-state.ll
M llvm/unittests/Target/AArch64/SMEAttributesTest.cpp
Log Message:
-----------
[AArch64][SME] Split SMECallAttrs out of SMEAttrs (#137239)
SMECallAttrs is a new helper class that holds all the SMEAttrs for a
call. The interfaces to query actions needed for the call (e.g. change
streaming mode) have been moved to the SMECallAttrs class.
The main motivation for this change is to make the split between the
caller, callee, and callsite attributes more apparent.
Before this change, we would always merge callsite and callee
attributes. The main reason to do this was to handle indirect calls,
however, we also occasionally used callsite attributes on direct calls
in tests (mainly to avoid creating multiple function declarations). With
this patch, we now explicitly handle indirect calls and disallow
incompatible attributes on direct calls (so this patch is not entirely
an NFC).
Commit: f2f4eac6c52693da86052cc55afe34f05cc23019
https://github.com/llvm/llvm-project/commit/f2f4eac6c52693da86052cc55afe34f05cc23019
Author: Kristof Beyls <kristof.beyls at arm.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M llvm/docs/DeveloperPolicy.rst
Log Message:
-----------
Clarify ban evasion policy (#137298)
This documents what the Code of Conduct committee has decided to do when
an attempt to evade a ban is detected.
Commit: fd800487382e2ee3944493d58a961b6f48290243
https://github.com/llvm/llvm-project/commit/fd800487382e2ee3944493d58a961b6f48290243
Author: jyli0116 <yu.li at arm.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
M llvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
M llvm/test/CodeGen/AArch64/bitreverse.ll
Log Message:
-----------
[GlobalISel][AArch64] Handles bitreverse to prevent falling back (#138150)
Handles bitreverse for vector types which were previously falling back
onto Selection DAG. Includes 8-bit element vectors greater than 128 bits
and less than 64 bits: <32 x i8>, <4 x i8>, and odd vector types: <9 x
i8>.
Commit: 0dce0ea31cc9fd1d3d082b233b16f9ed123a6ed4
https://github.com/llvm/llvm-project/commit/0dce0ea31cc9fd1d3d082b233b16f9ed123a6ed4
Author: Dmitry Vasilyev <dvassiliev at accesssoftek.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M libcxxabi/src/demangle/Utility.h
Log Message:
-----------
[ItaniumDemangle] Fix libcxxabi OutputBuffer::prepend for empty inputs (#138656)
See #138564 for details.
Commit: 488cb24c2eddb8d0ec3419a4117691022e9e679b
https://github.com/llvm/llvm-project/commit/488cb24c2eddb8d0ec3419a4117691022e9e679b
Author: Piotr Kubaj <pkubaj at FreeBSD.org>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M lldb/source/Plugins/Process/elf-core/ThreadElfCore.cpp
Log Message:
-----------
[lldb] fix crash on FreeBSD/powerpc64le (#138331)
Fix for:
`Assertion failed: (false && "Architecture or OS not supported"),
function CreateRegisterContextForFrame, file
/usr/src/contrib/llvm-project/lldb/source/Plugins/Process/elf-core/ThreadElfCore.cpp,
line 182.
PLEASE submit a bug report to https://bugs.freebsd.org/submit/ and
include the crash backtrace.
#0 0x000000080cd857c8 llvm::sys::PrintStackTrace(llvm::raw_ostream&,
int)
/usr/src/contrib/llvm-project/llvm/lib/Support/Unix/Signals.inc:723:13
#1 0x000000080cd85ed4
/usr/src/contrib/llvm-project/llvm/lib/Support/Unix/Signals.inc:797:3
#2 0x000000080cd82ae8 llvm::sys::RunSignalHandlers()
/usr/src/contrib/llvm-project/llvm/lib/Support/Signals.cpp:104:5
#3 0x000000080cd861f0 SignalHandler
/usr/src/contrib/llvm-project/llvm/lib/Support/Unix/Signals.inc:403:3 #4
0x000000080f159644 handle_signal
/usr/src/lib/libthr/thread/thr_sig.c:298:3
`
Commit: 703b479f16b9657a9c0d3a3d992278ad9c555166
https://github.com/llvm/llvm-project/commit/703b479f16b9657a9c0d3a3d992278ad9c555166
Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
M llvm/lib/Target/AArch64/Utils/AArch64SMEAttributes.cpp
M llvm/lib/Target/AArch64/Utils/AArch64SMEAttributes.h
M llvm/test/CodeGen/AArch64/sme-peephole-opts.ll
M llvm/test/CodeGen/AArch64/sme-vg-to-stack.ll
M llvm/test/CodeGen/AArch64/sme-zt0-state.ll
M llvm/unittests/Target/AArch64/SMEAttributesTest.cpp
Log Message:
-----------
Revert "[AArch64][SME] Split SMECallAttrs out of SMEAttrs" (#138664)
Reverts llvm/llvm-project#137239
This broke implementing SME ABI routines in C/C++ (used for some stubs),
see: https://lab.llvm.org/buildbot/#/builders/94/builds/6859
Commit: 4cc152c823ec0298b3962b5a09de6f74f5c1b16a
https://github.com/llvm/llvm-project/commit/4cc152c823ec0298b3962b5a09de6f74f5c1b16a
Author: Daniel Kiss <daniel.kiss at arm.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64PointerAuth.cpp
M llvm/test/CodeGen/AArch64/machine-outliner-retaddr-sign-cfi.ll
M llvm/test/CodeGen/AArch64/machine-outliner-retaddr-sign-diff-scope-same-key.ll
M llvm/test/CodeGen/AArch64/machine-outliner-retaddr-sign-non-leaf.ll
M llvm/test/CodeGen/AArch64/machine-outliner-retaddr-sign-regsave.mir
M llvm/test/CodeGen/AArch64/machine-outliner-retaddr-sign-same-scope-diff-key.ll
M llvm/test/CodeGen/AArch64/machine-outliner-retaddr-sign-sp-mod.mir
M llvm/test/CodeGen/AArch64/machine-outliner-retaddr-sign-subtarget.ll
M llvm/test/CodeGen/AArch64/machine-outliner-retaddr-sign-thunk.ll
M llvm/test/CodeGen/AArch64/pacbti-llvm-generated-funcs-2.ll
M llvm/test/CodeGen/AArch64/sign-return-address-cfi-negate-ra-state.ll
M llvm/test/CodeGen/AArch64/sign-return-address.ll
M llvm/test/CodeGen/MIR/AArch64/return-address-signing.mir
Log Message:
-----------
[AArch64] Correct position of CFI Instruction for Pointer Authentication (#137795)
This reverts partially this commit
0b73b5af60f2c544892b9dd68b4fa43eeff52fc1.
This is not a clear revert because other changes already landed.
CFI directives like `.cfi_negate_ra_state` must be emitted after the
instruction.
If the execution is stopped before the `paciasp` instruction is executed
the debugger/unwinder would try to authenticated the return address as
the `.cfi_negate_ra_state` already indicates it got signed.
fixes: #137802
Commit: 8ea5eacea263ed5c2c4b0950a4d1d6ef863444bc
https://github.com/llvm/llvm-project/commit/8ea5eacea263ed5c2c4b0950a4d1d6ef863444bc
Author: Cullen Rhodes <cullen.rhodes at arm.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M llvm/lib/CodeGen/MachineScheduler.cpp
M llvm/test/CodeGen/AArch64/misched-cutoff.mir
Log Message:
-----------
[MISched] Fix off-by-one error in debug output with -misched-cutoff=<n> flag (#137988)
This flag instructs the scheduler to stop scheduling after N
instructions, but
in the debug output it appears as if it's scheduling N+1 instructions,
e.g.
$ llc -misched-cutoff=10 -debug-only=machine-scheduler
example.ll 2>&1 | grep "^Scheduling SU" | wc -l
11
as it calls pickNode before calling checkSchedLimit.
Commit: 0159a26744dd3ca332973c0e1cd8f6ccbace2927
https://github.com/llvm/llvm-project/commit/0159a26744dd3ca332973c0e1cd8f6ccbace2927
Author: Hassnaa Hamdi <hassnaa.hamdi at arm.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M llvm/lib/Analysis/InlineCost.cpp
A llvm/test/Transforms/Inline/inline-recursive-fn.ll
Log Message:
-----------
[InlineCost]: Add a new heuristic to branch folding for better inlining decisions.
Recursive functions are generally not inlined to avoid issues
like infinite inlining or excessive code expansion. However,
this conservative approach misses opportunities for optimization in
cases where a recursive call is guaranteed to execute only once.
This patch detects a scenario where a guarding branch condition of a recursive
call will become false after the first iteration of the recursive function.
If such a condition is met, and the recursion depth is confirmed to be one,
the Inliner will now consider this recursive function for inlining.
A new test case (`test/Transforms/Inline/inline-recursive-fn.ll`)
has been added to verify this behaviour.
Commit: 43a9d5dfd52d3845596d20b62159147cd276d343
https://github.com/llvm/llvm-project/commit/43a9d5dfd52d3845596d20b62159147cd276d343
Author: Orlando Cazalet-Hyams <orlando.hyams at sony.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M llvm/include/llvm/IR/LLVMContext.h
M llvm/lib/IR/DebugInfoMetadata.cpp
M llvm/lib/IR/LLVMContext.cpp
M llvm/lib/IR/LLVMContextImpl.h
M llvm/unittests/IR/MetadataTest.cpp
Log Message:
-----------
[KeyInstr] Add Atom Group waterline to LLVMContext (#133478)
Source location atoms are identified by a function-local number and the
DILocation's InlinedAt field. The front end is responsible for assigning source
atom numbers, but certain optimisations need to assign new atom numbers to some
instructions. Most often code duplication optimisations like loop
unroll. Tracking a global maximum value (waterline) means we can easily
(cheaply) get new numbers that don't clash in any function.
The waterline is managed through DILocation creation,
LLVMContext::incNextAtomGroup, and LLVMContext::updateAtomGroupWaterline.
Add unittest.
RFC:
https://discourse.llvm.org/t/rfc-improving-is-stmt-placement-for-better-interactive-debugging/82668
Commit: dad316275689c8ff9b3051c98a842d0bb1226368
https://github.com/llvm/llvm-project/commit/dad316275689c8ff9b3051c98a842d0bb1226368
Author: Kaviya Rajendiran <67495422+kaviya2510 at users.noreply.github.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M mlir/lib/Dialect/OpenMP/IR/OpenMPDialect.cpp
M mlir/test/Dialect/OpenMP/ops.mlir
Log Message:
-----------
[mlir][OpenMP] Allow 'cancel taskgroup' inside taskloop region (#138634)
Added support which allows "cancel taskgroup" inside taskloop region.
Commit: cb9683fad12101417a46b35452cb23dfb7c6c367
https://github.com/llvm/llvm-project/commit/cb9683fad12101417a46b35452cb23dfb7c6c367
Author: Paul Walker <paul.walker at arm.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/lib/Driver/ToolChains/CommonArgs.cpp
M clang/lib/Driver/ToolChains/Flang.cpp
M clang/test/Driver/fveclib.c
M flang/lib/Frontend/CompilerInvocation.cpp
M flang/test/Driver/fveclib-codegen.f90
M flang/test/Driver/fveclib.f90
Log Message:
-----------
[Clang][Flang][Driver] Fix target parsing for -fveclib=libmvec option. (#138288)
There are various places where the -fveclib option is parsed to
determine whether its value is correct for the target. Unfortunately
these places assume case-insensitivity and subsequently use "LIBMVEC"
where the driver mandates "libmvec", thus rendering the diagnosistic
useless.
This PR corrects the naming along with similar incorrect uses within the
test files.
Commit: a8344a95c789f79be373d40a6e86a6c9a80d0b21
https://github.com/llvm/llvm-project/commit/a8344a95c789f79be373d40a6e86a6c9a80d0b21
Author: Paschalis Mpeis <paschalis.mpeis at arm.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M llvm/docs/GitHub.rst
Log Message:
-----------
[llvm][docs] Reorder Stacked PR approaches in GitHub.rst (#138126)
The 'user branches' approach now appears before the 'dependency note'
approach, as it makes reviewing easier.
Add notes on requiring commit access for the former approach.
Commit: bde39d72515dd3a0e6fe2f62c7a08676af920384
https://github.com/llvm/llvm-project/commit/bde39d72515dd3a0e6fe2f62c7a08676af920384
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M llvm/include/llvm/CodeGen/SDPatternMatch.h
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
M llvm/test/CodeGen/ARM/combine-bswap.ll
M llvm/unittests/CodeGen/SelectionDAGPatternMatchTest.cpp
Log Message:
-----------
[DAG] Add SDPatternMatch::m_BitwiseLogic common matcher for AND/OR/XOR nodes (#138301)
Commit: 3b4f9c544274392198de084b84a5f2e5506e4703
https://github.com/llvm/llvm-project/commit/3b4f9c544274392198de084b84a5f2e5506e4703
Author: Orlando Cazalet-Hyams <orlando.hyams at sony.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M llvm/include/llvm/IR/ValueMap.h
M llvm/include/llvm/Transforms/Utils/Cloning.h
M llvm/include/llvm/Transforms/Utils/ValueMapper.h
M llvm/lib/Transforms/Utils/CloneFunction.cpp
M llvm/lib/Transforms/Utils/ValueMapper.cpp
M llvm/unittests/Transforms/Utils/CloningTest.cpp
Log Message:
-----------
[NFC][KeyInstr] Add Atom Group (re)mapping (#133479)
Add:
mapAtomInstance - map the atom group number to a new group.
RemapSourceAtom - apply the mapped atom group number to this instruction.
Modify:
CloneBasicBlock - Call mapAtomInstance on cloned instruction's DebugLocs
if MapAtoms is true (default). Setting to false could
lead to a degraded debugging experience. See code comment.
Optimisations like loop unroll that duplicate instructions need to remap source
atom groups so that each duplicated source construct instance is considered
distinct when determining is_stmt locations.
This commit adds the remapping functionality and a unittest.
RFC:
https://discourse.llvm.org/t/rfc-improving-is-stmt-placement-for-better-interactive-debugging/82668
Commit: 300d4026f77683aae490361d250a51904dd19ed2
https://github.com/llvm/llvm-project/commit/300d4026f77683aae490361d250a51904dd19ed2
Author: cor3ntin <corentinjabot at gmail.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M clang/docs/LanguageExtensions.rst
M clang/docs/ReleaseNotes.rst
M clang/include/clang/AST/ASTContext.h
M clang/include/clang/AST/DeclCXX.h
M clang/include/clang/AST/Type.h
M clang/include/clang/Basic/Attr.td
M clang/include/clang/Basic/Builtins.td
M clang/include/clang/Basic/DiagnosticParseKinds.td
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/include/clang/Basic/TokenKinds.def
M clang/include/clang/Parse/Parser.h
M clang/include/clang/Sema/Sema.h
M clang/lib/AST/ASTContext.cpp
M clang/lib/AST/Decl.cpp
M clang/lib/AST/DeclCXX.cpp
M clang/lib/AST/Type.cpp
M clang/lib/CodeGen/CGBuiltin.cpp
M clang/lib/Frontend/InitPreprocessor.cpp
M clang/lib/Parse/ParseDeclCXX.cpp
M clang/lib/Parse/Parser.cpp
M clang/lib/Sema/SemaChecking.cpp
M clang/lib/Sema/SemaDecl.cpp
M clang/lib/Sema/SemaDeclCXX.cpp
M clang/lib/Sema/SemaExprCXX.cpp
A clang/test/CodeGenCXX/cxx2c-trivially-relocatable.cpp
A clang/test/Parser/cxx2c-trivially-relocatable.cpp
M clang/test/SemaCXX/attr-trivial-abi.cpp
A clang/test/SemaCXX/cxx2c-trivially-relocatable.cpp
M clang/test/SemaCXX/ptrauth-triviality.cpp
M clang/www/cxx_status.html
Log Message:
-----------
[Clang] Implement the core language parts of P2786 - Trivial relocation (#127636)
This adds
- The parsing of `trivially_relocatable_if_eligible`,
`replaceable_if_eligible` keywords
- `__builtin_trivially_relocate`, implemented in terms of memmove. In
the future this should
- Add the appropriate start/end lifetime markers that llvm does not have
(`start_lifetime_as`)
- Add support for ptrauth when that's upstreamed
- the `__builtin_is_cpp_trivially_relocatable` and
`__builtin_is_replaceable` traits
Fixes #127609
Commit: 027b2038140f309467585298f9cb10d6b37411e7
https://github.com/llvm/llvm-project/commit/027b2038140f309467585298f9cb10d6b37411e7
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M llvm/lib/Analysis/BasicAliasAnalysis.cpp
A llvm/test/Analysis/BasicAA/size-overflow.ll
Log Message:
-----------
[BasicAA] Gracefully handle large LocationSize (#138528)
If the LocationSize is larger than the index space of the pointer type,
bail out instead of triggering an APInt assertion.
Fixes the issue reported at
https://github.com/llvm/llvm-project/pull/119365#issuecomment-2849874894.
Commit: e8adb3add5d7043178045b2235e32efbec5d6419
https://github.com/llvm/llvm-project/commit/e8adb3add5d7043178045b2235e32efbec5d6419
Author: Ebuka Ezike <yerimyah1 at gmail.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M lldb/test/API/tools/lldb-dap/variables/TestDAP_variables.py
M lldb/tools/lldb-dap/Handler/RequestHandler.h
M lldb/tools/lldb-dap/Handler/SetVariableRequestHandler.cpp
M lldb/tools/lldb-dap/Protocol/ProtocolRequests.cpp
M lldb/tools/lldb-dap/Protocol/ProtocolRequests.h
M lldb/tools/lldb-dap/Protocol/ProtocolTypes.cpp
M lldb/tools/lldb-dap/Protocol/ProtocolTypes.h
Log Message:
-----------
[lldb][lldb-dap] use the new protocol for setVariable requests. (#137803)
```cpp
// The "id" is the unique integer ID that is unique within the enclosing
// variablesReference. It is optionally added to any "interface
Variable"
// objects to uniquely identify a variable within an enclosing
// variablesReference. It helps to disambiguate between two variables
that
// have the same name within the same scope since the "setVariables"
request
// only specifies the variable reference of the enclosing
scope/variable, and
// the name of the variable. We could have two shadowed variables with
the
// same name in "Locals" or "Globals". In our case the "id" absolute
index
// of the variable within the dap.variables list.
const auto id_value =
GetInteger<uint64_t>(arguments, "id").value_or(UINT64_MAX);
if (id_value != UINT64_MAX) {
```
I dropped this part because. variables that have the same name has a ` @path` suffix on both of them.
and the setVariableArguments does not have a field called `id`.
Commit: ee7f6a5c6f8e9b8ad87da70e869cb7cc8065be2d
https://github.com/llvm/llvm-project/commit/ee7f6a5c6f8e9b8ad87da70e869cb7cc8065be2d
Author: Orlando Cazalet-Hyams <orlando.hyams at sony.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M llvm/lib/IR/DebugInfoMetadata.cpp
M llvm/unittests/IR/MetadataTest.cpp
Log Message:
-----------
[KeyInstr] Merge atoms in DILocation::getMergedLocation (#133480)
NFC for builds with LLVM_EXPERIMENTAL_KEY_INSTRUCTIONS=OFF (default).
In an ideal world we would be able to track that the merged location is used in
multiple source atoms. We can't do this though, so instead we arbitrarily but
deterministically pick one.
In cases where the InlinedAt field is unchanged we keep the atom with the
lowest non-zero rank (highest precedence). If the ranks are equal we choose
the smaller non-zero group number (arbitrary choice).
In cases where the InlinedAt field is adjusted we generate a new atom group.
Keeping the group wouldn't make sense (a source atom is identified by the
group number and InlinedAt pair) but discarding the atom info could result
in missed is_stmts.
Add unittest in MetadataTest.cpp.
RFC:
https://discourse.llvm.org/t/rfc-improving-is-stmt-placement-for-better-interactive-debugging/82668
Commit: d90cac964130004d449b94f6020264c14e1cb999
https://github.com/llvm/llvm-project/commit/d90cac964130004d449b94f6020264c14e1cb999
Author: Sander de Smalen <sander.desmalen at arm.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
M llvm/test/CodeGen/AArch64/sve-partial-reduce-dot-product.ll
Log Message:
-----------
[DAGCombine] Simplify partial_reduce_*mla with constant. (#138289)
partial_reduce_*mla(acc, mul(ext(x), splat(C)), splat(1))
-> partial_reduce_*mla(acc, x, C)
Commit: 1eaa289472aaddbeabcde10f89cffb161c2dca55
https://github.com/llvm/llvm-project/commit/1eaa289472aaddbeabcde10f89cffb161c2dca55
Author: Pavel Labath <pavel at labath.sk>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M lldb/source/Host/macosx/objcxx/Host.mm
M lldb/source/Host/posix/ProcessLauncherPosixFork.cpp
M lldb/unittests/Host/HostTest.cpp
Log Message:
-----------
[lldb/Host] Enable inheriting "non-inheritable" FDs (#126935)
Currently we're creating inheritable (`~FD_CLOEXEC`) file descriptors in
the (few) cases where we need to pass an FD to a subprocess. The problem
with these is that, in a multithreaded application such as lldb, there's
essentially no way to prevent them from being leaked into processes
other than the intended one.
A safer (though still not completely safe) approach is to mark the
descriptors as FD_CLOEXEC and only clear this flag in the subprocess. We
currently have something that almost does that, which is the ability to
add a `DuplicateFileAction` to our `ProcessLaunchInfo` struct (the
duplicated file descriptor will be created with the flag cleared). The
problem with *that* is that this approach is completely incompatible
with Windows.
Windows equivalents of file descriptors are `HANDLE`s, but these do not
have user controlled values -- applications are expected to work with
whatever HANDLE values are assigned by the OS. In unix terms, there is
no equivalent to the `dup2` syscall (only `dup`).
To find a way out of this conundrum, and create a miniscule API surface
that works uniformly across platforms, this PR proposes to extend the
`DuplicateFileAction` API to support duplicating a file descriptor onto
itself. Currently, this operation does nothing (it leaves the FD_CLOEXEC
flag set), because that's how `dup2(fd, fd)` behaves, but I think it's
not completely unreasonable to say that this operation should clear the
FD_CLOEXEC flag, just like it would do if one was using different fd
values. This would enable us to pass a windows HANDLE as itself through
the ProcessLaunchInfo API.
This PR implements the unix portion of this idea. Macos and non-macos
launchers are updated to clear FD_CLOEXEC flag when duplicating a file
descriptor onto itself, and I've created a test which enables passing a
FD_CLOEXEC file descritor to the subprocess. For the windows portion,
please see the follow-up PR.
Commit: 6a99d817204dfa39afc42f1f6a810d82f6a8794f
https://github.com/llvm/llvm-project/commit/6a99d817204dfa39afc42f1f6a810d82f6a8794f
Author: Pavel Labath <pavel at labath.sk>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M lldb/docs/use/map.rst
Log Message:
-----------
[lldb/docs] Fix/improve the gdb command map for dynamic types (#138538)
The setting and option value names were wrong. I'm assuming this changed
over time, but I haven't tried to figure out when.
Commit: efaa5295d4103da50f25bb29e42647d7a48b2e9e
https://github.com/llvm/llvm-project/commit/efaa5295d4103da50f25bb29e42647d7a48b2e9e
Author: Jake Egan <Jake.egan at ibm.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M compiler-rt/lib/sanitizer_common/sanitizer_common_interceptors.inc
Log Message:
-----------
[sanitizer_common] Use internal_memcpy with wcrtomb/wctomb interceptors (#138623)
Commit: 24cd3a0bc007b81045cb12cde88607d1843aec97
https://github.com/llvm/llvm-project/commit/24cd3a0bc007b81045cb12cde88607d1843aec97
Author: Jake Egan <Jake.egan at ibm.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M compiler-rt/lib/sanitizer_common/sanitizer_common_interceptors.inc
M compiler-rt/lib/sanitizer_common/sanitizer_platform_interceptors.h
Log Message:
-----------
[sanitizer_common] Split FREXPF/FREXPL interceptor defines (#138624)
Will allow other platforms, such as AIX, to opt out of these
interceptors individually.
Commit: 0922789e4742e0961f8db171fea1590a8580937e
https://github.com/llvm/llvm-project/commit/0922789e4742e0961f8db171fea1590a8580937e
Author: Leon Clark <PeddleSpam at users.noreply.github.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/build-vector-256.ll
M llvm/test/CodeGen/X86/build-vector-512.ll
M llvm/test/CodeGen/X86/vector-shuffle-256-v4.ll
Log Message:
-----------
[X86][AVX] Match v4f64 blend from shuffle of scalar values. (#135753)
Convert a BUILD_VECTOR of scalar values to a shuffle of shuffles that
will lower to AVX blend.
This addresses a regression in #128938.
---------
Co-authored-by: Leon Clark <leoclark at amd.com>
Commit: 3035bccebea40993537e364b08fec81a741e8b74
https://github.com/llvm/llvm-project/commit/3035bccebea40993537e364b08fec81a741e8b74
Author: erichkeane <ekeane at nvidia.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M clang/docs/InternalsManual.rst
Log Message:
-----------
Add missed quote on title of enum_select section
Commit: e79dc76b5f9131bd4af7ad807492537450a9ff2c
https://github.com/llvm/llvm-project/commit/e79dc76b5f9131bd4af7ad807492537450a9ff2c
Author: enh-google <enh at google.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M libc/include/stdlib.yaml
Log Message:
-----------
stdlib.yaml: qsort_r() is in POSIX 2024 (aka issue 8). (#138572)
Commit: 73a7a3dc00300820c68927928405a442b2f73b4c
https://github.com/llvm/llvm-project/commit/73a7a3dc00300820c68927928405a442b2f73b4c
Author: Orlando Cazalet-Hyams <orlando.hyams at sony.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M llvm/lib/IR/DebugLoc.cpp
M llvm/lib/Transforms/Utils/InlineFunction.cpp
A llvm/test/DebugInfo/KeyInstructions/Generic/inline.ll
Log Message:
-----------
[KeyInstr] Inline atom info (#133481)
Source atom groups are identified by an atom group number and inlined-at pair,
so we simply can copy the atom numbers into the caller when inlining.
RFC:
https://discourse.llvm.org/t/rfc-improving-is-stmt-placement-for-better-interactive-debugging/82668
Commit: aec39293316049e5944ac281f800efe5e0dcac5f
https://github.com/llvm/llvm-project/commit/aec39293316049e5944ac281f800efe5e0dcac5f
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M llvm/lib/Transforms/IPO/FunctionAttrs.cpp
M llvm/test/Transforms/FunctionAttrs/nocapture.ll
Log Message:
-----------
[FunctionAttrs] Only consider provenance capture in access attr inference (#138535)
For the purpose of inferring readonly/writeonly/readnone on arguments,
we only care about provenance captures, not address captures.
Commit: f8de1618cc3349829ed5ab699413dcb84451e0c7
https://github.com/llvm/llvm-project/commit/f8de1618cc3349829ed5ab699413dcb84451e0c7
Author: Orlando Cazalet-Hyams <orlando.hyams at sony.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M llvm/include/llvm/IR/DebugLoc.h
M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
A llvm/test/DebugInfo/KeyInstructions/Generic/simplifycfg-branch-fold.ll
Log Message:
-----------
[KeyInstr][SimplifyCFG] Remap atoms when folding br to common succ into pred (#133482)
SimplifyCFG folds `d` into preds `b` and `c`.
+---------------+
| |
+--> b --+ |
| v v
--> a d --> e --> f -->
| ^ ^
+--> c --+ |
| |
+---------------+
Remap source atoms so that the duplicated instructions are analysed
independently to determine is_stmt positions.
The pull request contains a discussion covering various edge cases here:
https://github.com/llvm/llvm-project/pull/133482/files#r2039519348
The summary of the discussion is that we could avoid remapping when there's a
single pred, but we decided that it's still a trade off, and not worth the
additional complexity right now.
RFC:
https://discourse.llvm.org/t/rfc-improving-is-stmt-placement-for-better-interactive-debugging/82668
Commit: 5781b5e60f7b6a41ab4a0ea9630734dcd55526d3
https://github.com/llvm/llvm-project/commit/5781b5e60f7b6a41ab4a0ea9630734dcd55526d3
Author: Brox Chen <guochen2 at amd.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M llvm/test/MC/AMDGPU/gfx11_asm_vop1_t16_promote.s
M llvm/test/MC/AMDGPU/gfx11_asm_vop3_from_vop1.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop1.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop1_dpp16.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop1_dpp8.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop1_t16_err.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop1_t16_promote.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop3_from_vop1.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop3_from_vop1_dpp16.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop3_from_vop1_dpp8.s
Log Message:
-----------
[AMDGPU][True16][MC] update mc test of a few vop1 t16 inst (#135588)
This is a NFC patch.
Regarding a few vop1 true16 instructions, the tablegen change has been
done but the test changes are not complete. This patch update mc test of
a few vop1 t16 that were missing before.
Commit: e356893551b315c84f30f7828eb493c4ef02e118
https://github.com/llvm/llvm-project/commit/e356893551b315c84f30f7828eb493c4ef02e118
Author: Kaviya Rajendiran <67495422+kaviya2510 at users.noreply.github.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M flang/lib/Lower/OpenMP/OpenMP.cpp
R flang/test/Lower/OpenMP/Todo/taskloop-cancel.f90
R flang/test/Lower/OpenMP/Todo/taskloop.f90
A flang/test/Lower/OpenMP/masked_taskloop.f90
R flang/test/Lower/OpenMP/master_taskloop.f90
A flang/test/Lower/OpenMP/parallel-masked-taskloop.f90
R flang/test/Lower/OpenMP/parallel-master-taskloop.f90
A flang/test/Lower/OpenMP/taskloop-cancel.f90
A flang/test/Lower/OpenMP/taskloop.f90
M mlir/lib/Dialect/OpenMP/IR/OpenMPDialect.cpp
Log Message:
-----------
[Flang][OpenMP] Support for lowering of taskloop construct to MLIR (#138646)
Added support for lowering of taskloop construct and its clauses(Private
and Firstprivate) to MLIR.
Commit: 2dd296aa47fff7f4e4c3cf75a5a1152817367371
https://github.com/llvm/llvm-project/commit/2dd296aa47fff7f4e4c3cf75a5a1152817367371
Author: Mikhail R. Gadelha <mikhail at igalia.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M libc/src/__support/FPUtil/FPBits.h
Log Message:
-----------
[libc] Fix implicit conversion error on rv32 (#138622)
This patch fixes the following error on rv32 (and possibly other 32-bit
archs):
FPBits.h:760:40: error: implicit conversion loses integer precision:
'int' to 'size_t' (aka 'unsigned int')
[-Werror,-Wimplicit-int-conversion]
760 | result.set_significand(number >> -ep);
Fixes #138425.
Commit: d1b3eeb24460fb65773db712e4cc0e204ffcaa0d
https://github.com/llvm/llvm-project/commit/d1b3eeb24460fb65773db712e4cc0e204ffcaa0d
Author: Philip Reames <preames at rivosinc.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
Log Message:
-----------
[SDAG] Merge memcpy and memcpy.inline lowering paths (#138619)
This is a follow up to c0a264e, but note that there is a functional
difference here: the root changes for the memcpy.inline case. This
difference appears to have been accidental, but I kept this back to
facility separate review in case there's something I'm missing here.
Commit: 368fbc21631a16b66a2a5609271c467a025a08b9
https://github.com/llvm/llvm-project/commit/368fbc21631a16b66a2a5609271c467a025a08b9
Author: Asher Mancinelli <ashermancinelli at gmail.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M flang/lib/Lower/ConvertExprToHLFIR.cpp
A flang/test/Lower/volatile-derived-type-pointer.f90
Log Message:
-----------
[flang] Lower volatile class types (#138607)
So far, only boxes and references have had their volatile attribute set
during lowering. This patch enables the volatility of classes to be
properly represented in the ir, same as box and ref.
For simple cases, not much needs to change in the codegen or conversion
patterns because the prior work on volatile refs/boxes propagates
volatility already. I am running further testing with the strict
verification enabled to find remaining cases of incorrect/missing
volatile propagation.
Commit: 3aecbbcbf675bc4472dafff18d29f21457323f28
https://github.com/llvm/llvm-project/commit/3aecbbcbf675bc4472dafff18d29f21457323f28
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
A llvm/test/Transforms/SLPVectorizer/X86/matched-bv-schedulable.ll
Log Message:
-----------
[SLP]Do not match nodes if schedulability of parent nodes is different
If one user node is non-schedulable and another one is schedulable, such
nodes should be considered matched. The selection of the actual insert
point in this case differs and the insert points may match, which may
cause a compiler crash because of the broken def-use chain.
Fixes #137797
Commit: dd3f6a3d3edf4b950e38aee20d2efb0af0f423cf
https://github.com/llvm/llvm-project/commit/dd3f6a3d3edf4b950e38aee20d2efb0af0f423cf
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M lld/COFF/DriverUtils.cpp
Log Message:
-----------
[lld] Remove redundant calls to std::unique_ptr<T>::get (NFC) (#138641)
Commit: 921d16246052dd6a2a8d7d4d7f5833ff8a72d407
https://github.com/llvm/llvm-project/commit/921d16246052dd6a2a8d7d4d7f5833ff8a72d407
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M mlir/lib/Conversion/VectorToGPU/VectorToGPU.cpp
M mlir/lib/Dialect/MemRef/Transforms/EmulateNarrowType.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/Utils/LoopEmitter.cpp
M mlir/lib/Dialect/Transform/Interfaces/TransformInterfaces.cpp
M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
M mlir/lib/Dialect/Vector/Transforms/VectorDistribute.cpp
M mlir/lib/IR/Verifier.cpp
M mlir/lib/Interfaces/DataLayoutInterfaces.cpp
M mlir/lib/Transforms/Utils/InliningUtils.cpp
M mlir/test/lib/Dialect/Affine/TestVectorizationUtils.cpp
M mlir/test/lib/Dialect/SCF/TestSCFUtils.cpp
M mlir/tools/mlir-tblgen/RewriterGen.cpp
M mlir/tools/mlir-tblgen/SPIRVUtilsGen.cpp
Log Message:
-----------
[mlir] Remove unused local variables (NFC) (#138642)
Commit: 0eeabd4b302cf52c4a585664ed9bc4a81ef91105
https://github.com/llvm/llvm-project/commit/0eeabd4b302cf52c4a585664ed9bc4a81ef91105
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
Log Message:
-----------
[Transforms] Use SmallMapVector::contains (NFC) (#138645)
Commit: a363ccaf18da166a51206070f074360ca35462ca
https://github.com/llvm/llvm-project/commit/a363ccaf18da166a51206070f074360ca35462ca
Author: Orlando Cazalet-Hyams <orlando.hyams at sony.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M llvm/lib/Transforms/Utils/Debugify.cpp
A llvm/test/DebugInfo/KeyInstructions/debugify.ll
Log Message:
-----------
[KeyInstr][debugify] Add --debugify-atoms to add key instructions metadata (#133483)
RFC:
https://discourse.llvm.org/t/rfc-improving-is-stmt-placement-for-better-interactive-debugging/82668
Commit: 87f312aad6ede636cd2de5d18f3058bf2caf5651
https://github.com/llvm/llvm-project/commit/87f312aad6ede636cd2de5d18f3058bf2caf5651
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M llvm/docs/ReleaseNotes.md
M llvm/include/llvm/IR/Constants.h
M llvm/include/llvm/IR/Use.h
M llvm/include/llvm/IR/Value.h
M llvm/lib/Analysis/TypeMetadataUtils.cpp
M llvm/lib/AsmParser/LLParser.cpp
M llvm/lib/Bitcode/Reader/BitcodeReader.cpp
M llvm/lib/Bitcode/Writer/ValueEnumerator.cpp
M llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
M llvm/lib/CodeGen/CodeGenPrepare.cpp
M llvm/lib/CodeGen/ComplexDeinterleavingPass.cpp
M llvm/lib/IR/AsmWriter.cpp
M llvm/lib/IR/Instruction.cpp
M llvm/lib/IR/Use.cpp
M llvm/lib/IR/Value.cpp
M llvm/lib/Target/AArch64/GISel/AArch64RegisterBankInfo.cpp
M llvm/lib/Target/SPIRV/SPIRVEmitIntrinsics.cpp
M llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
M llvm/lib/Transforms/Scalar/Reassociate.cpp
M llvm/test/Analysis/MemorySSA/nondeterminism.ll
A llvm/test/tools/llvm-diff/uselistorder-issue58629-gv.ll
M llvm/test/tools/llvm-diff/uselistorder-issue58629.ll
M llvm/test/tools/llvm-reduce/bitcode-uselistorder.ll
M llvm/test/tools/llvm-reduce/uselistorder-invalid-ir-output.ll
M llvm/tools/verify-uselistorder/verify-uselistorder.cpp
M polly/lib/Support/ScopHelper.cpp
Log Message:
-----------
IR: Remove uselist for constantdata (#137313)
This is a resurrected version of the patch attached to this RFC:
https://discourse.llvm.org/t/rfc-constantdata-should-not-have-use-lists/42606
In this adaptation, there are a few differences. In the original patch, the Use's
use list was replaced with an unsigned* to the reference count in the value. This
version leaves them as null and leaves the ref counting only in Value.
Remove use-lists from instances of ConstantData (which are shared
across modules and have no operands).
To continue supporting most of the use-list API, store a ref-count in
place of the use-list; this is for API like Value::use_empty and
Value::hasNUses. Operations that actually need the use-list -- like
Value::use_begin -- will assert.
This change has three benefits:
1. The compiler output cannot in any way depend on the use-list order
of instances of ConstantData.
2. There's no use-list traffic when adding and removing simple
constants from operand lists (although there is ref-count traffic;
YMMV).
3. It's cheaper to serialize use-lists (since we're no longer
serializing the use-list order of things like i32 0).
The downside is that you can't look at all the users of ConstantData,
but traversals of users of i32 0 are already ill-advised.
Possible follow-ups:
- Track if an instance of a ConstantVector/ConstantArray/etc. is known
to have all ConstantData arguments, and drop the use-lists to
ref-counts in those cases. Callers need to check Value::hasUseList
before iterating through the use-list.
- Remove even the ref-counts. I'm not sure they have any benefit
besides minimizing the scope of this commit, and maintaining the
counts is not free.
Fixes #58629
Co-authored-by: Duncan P. N. Exon Smith <dexonsmith at apple.com>
Commit: 51a3bd919d68a8fb1b026377d6e86b1523d37433
https://github.com/llvm/llvm-project/commit/51a3bd919d68a8fb1b026377d6e86b1523d37433
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M llvm/docs/ReleaseNotes.md
M llvm/include/llvm/IR/Constants.h
M llvm/include/llvm/IR/Use.h
M llvm/include/llvm/IR/Value.h
M llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
M llvm/lib/IR/AsmWriter.cpp
M llvm/lib/IR/Instruction.cpp
M llvm/lib/IR/Value.cpp
M llvm/unittests/IR/ConstantsTest.cpp
Log Message:
-----------
IR: Remove reference counts from ConstantData (#137314)
This is a follow up change to eliminating uselists for ConstantData.
In the previous revision, ConstantData had a replacement reference count
instead of a uselist. This reference count was misleading, and not useful
in the same way as it would be for another value. The references may not
have even been in the current module, since these are shared throughout
the LLVMContext.
This doesn't space leak any more than we previously did; nothing was
attempting to garbage collect unused constants.
Previously the use_empty, and hasNUses type of APIs were supported through
the reference count. These now behave as if the uses are always empty.
Ideally it would be illegal to inspect these, but this forces API complexity
into quite a few places. It may be doable to make it illegal to check these
counts, but I would like there to be a targeted fuzzing effort to make sure
every transform properly deals with a constant in every operand position.
All tests pass if I turn the hasNUses* and getNumUses queries into assertions,
only hasOneUse in particular appears to hit in some set of contexts. I've
added unit tests to ensure logical consistency between these cases
Commit: 3851ca7dec6a3e32c6f91fa445a98188de690351
https://github.com/llvm/llvm-project/commit/3851ca7dec6a3e32c6f91fa445a98188de690351
Author: Zachary Yedidia <zyedidia at gmail.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M llvm/lib/Target/AArch64/AsmParser/AArch64AsmParser.cpp
M llvm/lib/Target/AArch64/MCTargetDesc/AArch64ELFStreamer.cpp
M llvm/lib/Target/AArch64/MCTargetDesc/AArch64TargetStreamer.h
A llvm/test/MC/AArch64/arch_directive.s
Log Message:
-----------
[AArch64] Emit .arch and .arch_extension during assembly to textual asm (#138433)
This patch ensures that when assembling to text (`-filetype asm`),
`.arch` and `.arch_extension` directives are preserved in the output.
This prevents errors related to unavailable extensions in the assembly
output (see #117221 for an example).
Fixes #117221.
Commit: a8ed244178b90876570b3e0bcf643f027ed83b8a
https://github.com/llvm/llvm-project/commit/a8ed244178b90876570b3e0bcf643f027ed83b8a
Author: Nicholas Guy <nicholas.guy at arm.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
M llvm/test/CodeGen/AArch64/sve-partial-reduce-dot-product.ll
Log Message:
-----------
[DAGCombiner] Add DAG combine for PARTIAL_REDUCE_MLA when no mul op (#131326)
Generic DAG combine for ISD::PARTIAL_REDUCE_U/SMLA to convert:
PARTIAL_REDUCE_*MLA(Acc, ZEXT(UnextOp1), Splat(1)) into
PARTIAL_REDUCE_UMLA(Acc, UnextOp1, TRUNC(Splat(1))) and
PARTIAL_REDUCE_*MLA(Acc, SEXT(UnextOp1), Splat(1)) into
PARTIAL_REDUCE_SMLA(Acc, UnextOp1, TRUNC(Splat(1))).
---------
Co-authored-by: James Chesterman <james.chesterman at arm.com>
Commit: e86a92f947b0ddf624b19b005a23e55823219524
https://github.com/llvm/llvm-project/commit/e86a92f947b0ddf624b19b005a23e55823219524
Author: Nicholas Guy <nicholas.guy at arm.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.h
M llvm/test/CodeGen/AArch64/sve-partial-reduce-dot-product.ll
Log Message:
-----------
[AArch64][SelectionDAG] Add support for 8to64 partial reduction cases (#138269)
---------
Co-authored-by: James Chesterman <james.chesterman at arm.com>
Commit: a10f6c1e689aaa0fee86db740b99d3895076a61c
https://github.com/llvm/llvm-project/commit/a10f6c1e689aaa0fee86db740b99d3895076a61c
Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
M llvm/test/Transforms/InstCombine/fpclass-check-idioms.ll
Log Message:
-----------
[InstCombine] Handle isnormal idiom (#125454)
This patch improves the codegen of Rust's `is_normal` implementation:
https://godbolt.org/z/1MPzcrrYG
Alive2: https://alive2.llvm.org/ce/z/hF9RWQ
Commit: 6fc092fc417e5c4e9fd78c3cc5892bacae405c72
https://github.com/llvm/llvm-project/commit/6fc092fc417e5c4e9fd78c3cc5892bacae405c72
Author: Krzysztof Drewniak <Krzysztof.Drewniak at amd.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M mlir/lib/Dialect/Bufferization/IR/BufferizationDialect.cpp
M mlir/lib/Dialect/Bufferization/Transforms/FuncBufferizableOpInterfaceImpl.cpp
M mlir/test/Dialect/Tensor/one-shot-bufferize.mlir
Log Message:
-----------
[mlir][bufferization] Let bufferization.tensor_layout be any layout attr (#138567)
The bufferization.tensor_layout is unnecessarily restricted to affine
map attributes when it could reasonably be any implementor of
MemRefLayoutAttrInterface.
Commit: c7c1283ab2fbef0843c1ec2ea80477834cccb0eb
https://github.com/llvm/llvm-project/commit/c7c1283ab2fbef0843c1ec2ea80477834cccb0eb
Author: Krzysztof Drewniak <Krzysztof.Drewniak at amd.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M mlir/include/mlir/IR/BuiltinTypes.td
M mlir/lib/Dialect/Affine/Utils/LoopUtils.cpp
M mlir/lib/IR/BuiltinTypes.cpp
M mlir/lib/IR/TypeDetail.h
M mlir/test/Dialect/Vector/vector-warp-distribute.mlir
M mlir/test/lib/Dialect/Vector/TestVectorTransforms.cpp
Log Message:
-----------
[mlir][MemRef] Remove integer address space builders (#138579)
The forms of the MemRef builder that took an integer argument instead of
an attribute have been deprecated for years now, and have almost no
upstream uses (the remaining ones are handled in this PR). Therefore,
remove them.
Commit: 4eac576654d857e2d8d59783b7eb2d70cb0675f9
https://github.com/llvm/llvm-project/commit/4eac576654d857e2d8d59783b7eb2d70cb0675f9
Author: Mikhail R. Gadelha <mikhail at igalia.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCV.td
M llvm/lib/Target/RISCV/RISCVProcessors.td
A llvm/lib/Target/RISCV/RISCVSchedSpacemitX60.td
M llvm/test/CodeGen/RISCV/rvv/vxrm-insert-out-of-loop.ll
A llvm/test/tools/llvm-mca/RISCV/SpacemitX60/atomic.s
A llvm/test/tools/llvm-mca/RISCV/SpacemitX60/floating-point.s
A llvm/test/tools/llvm-mca/RISCV/SpacemitX60/integer.s
Log Message:
-----------
[RISCV] Add scheduler definitions for SpacemiT-X60 (#137343)
This patch adds an initial scheduler model for the SpacemiT-X60,
including latency for scalar instructions only.
The scheduler is based on the documented characteristics of the C908,
which the SpacemiT-X60 is believed to be based on, and provides the
expected latency for several instructions. I ran a probe to confirm all
of these values and to get the latency of instructions not provided by
the C908 documentation (e.g., double floating-point instructions).
For load and store instructions, the C908 documentation says the latency
is \>= 3 for load and 1 for store. I tried a few combinations of values
until I got the current values of 5 and 3, which yield the best results.
Although the X60 does appear to support multiple issue for at least some
floating point instructions, this model assumes single issue as
increasing it reduces the gains below.
This patch gives a geomean improvement of ~4% on SPEC CPU 2017 for both
rva22u64 and rva22u64_v, with some benchmarks improving up to 18%
(508.namd_r). There were a couple of execution time regressions, but
only in noisy benchmarks (523.xalancbmk_r and 510.parest_r).
* rva22u64: https://lnt.lukelau.me/db_default/v4/nts/507?compare_to=405
(compares a55f7275 to the baseline 8286b804)
* rva22u64_v:
https://lnt.lukelau.me/db_default/v4/nts/474?compare_to=404 (compares
a55f7275 to the baseline 8286b804)
This initial scheduling model is strongly focused on providing
sufficient definitions to provide improved performance for the
SpacemiT-X60. Further incremental gains may be possible through a much
more detailed microarchitectural analysis, but that is left to future
work.
Further scheduling definitions for RVV can be added in a future PR.
Commit: 6479e9bad371f19a36ed15c236defc301efc180f
https://github.com/llvm/llvm-project/commit/6479e9bad371f19a36ed15c236defc301efc180f
Author: Manuel Carrasco <macarras at amd.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-call-return-values.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-sibling-call.ll
M llvm/test/CodeGen/AMDGPU/calling-conventions.ll
M llvm/test/CodeGen/AMDGPU/gfx-callable-preserved-registers.ll
M llvm/test/CodeGen/AMDGPU/required-export-priority.ll
M llvm/test/CodeGen/AMDGPU/sibling-call.ll
M llvm/test/CodeGen/AMDGPU/vgpr_constant_to_sgpr.ll
Log Message:
-----------
[AMDGPU] Fix UB in tests due to mismatched calling conventions (#137957)
Fixes UB in tests due to mismatched CC (definition and callsite).
Commit: a750893fea29f32e9bab2cd5176eec34e63b0898
https://github.com/llvm/llvm-project/commit/a750893fea29f32e9bab2cd5176eec34e63b0898
Author: Maryam Moghadas <maryammo at ca.ibm.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
A llvm/test/Transforms/LoopVectorize/PowerPC/vplan-scalarivsext-crash.ll
Log Message:
-----------
[VPlan][LV] Fix invalid truncation in VPScalarIVStepsRecipe (#137832)
Replace CreateTrunc with CreateSExtOrTrunc in VPScalarIVStepsRecipe to
safely handle type conversion. This prevents assertion failures from
invalid truncation when StartIdx0 has a smaller integer type than
IntStepTy. The assertion was introduced by commit 783a846.
Fixes https://github.com/llvm/llvm-project/issues/137185
Commit: ca0c9bcf101867e921b3d883ad476b0c58d2b7e9
https://github.com/llvm/llvm-project/commit/ca0c9bcf101867e921b3d883ad476b0c58d2b7e9
Author: Mikhail R. Gadelha <mikhail at igalia.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M libc/config/linux/riscv/entrypoints.txt
M libc/config/linux/riscv/headers.txt
Log Message:
-----------
[libc] Update riscv entrypoints to be on par with x86 (#138597)
This patch updates the riscv entrypoints with almost all functions that
are currently supported on x86. I left six functions commented, as I'll
send separate PRs to enable them:
* poll: needs a new syscall implementation
* utimes: needs a new syscall implementation
* setitimer: test never finished in rv32
* getitimer: test fails in rv32
* exp10m1f: test case doesn't build but it's an easy fix
* sqrtulk: needs to be implemented
I also added the 16-bit fp functions, however, they are not enabled due
to a cmake check in float16-macros.h. To enable 16-bit fp in riscv, we
need to update the buildbots with a clang version that includes the fix
from commit PR #119481
Commit: 96e09302f9e6617b68b7dca17a5a0c866e147d4d
https://github.com/llvm/llvm-project/commit/96e09302f9e6617b68b7dca17a5a0c866e147d4d
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M flang/include/flang/Evaluate/tools.h
Log Message:
-----------
[flang][Evaluate] Fix AsGenericExpr for Relational (#138455)
The variant in Expr<Type<TypeCategory::Logical, KIND>> only contains
Relational<SomeType>, not other, more specific Relational<T> types.
When calling AsGenericExpr for a value of type Relational<T>, the AsExpr
function will attempt to create Expr<> directly for Relational<T>, which
won't work for the above reason.
Implement an overload of AsExpr for Relational<T>, which will wrap the
Relational<T> in Relational<SomeType> before creating Expr<>.
Commit: 304c7a87d01bd0d7c75a0b875beed0a6b491383e
https://github.com/llvm/llvm-project/commit/304c7a87d01bd0d7c75a0b875beed0a6b491383e
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M flang/include/flang/Evaluate/constant.h
Log Message:
-----------
[flang][Evaluate] Restrict ConstantBase constructor overload (#138456)
ConstantBase has a constructor that takes a value of any type as an
input: template <typename T> ConstantBase(const T &). A derived type
Constant<T> is a member of many Expr<T> classes (as an alternative in
the member variant).
When trying (erroneously) to create Expr<T> from a wrong input, if the
specific instance of Expr<T> contains Constant<T>, it's that constructor
that will be instantiated, leading to cryptic and confusing errors.
Eliminate the constructor from overload for invalid input values to help
produce more meaningful diagnostics.
Commit: 573721bf0c302c453620a883a4adf37935646d4a
https://github.com/llvm/llvm-project/commit/573721bf0c302c453620a883a4adf37935646d4a
Author: PiJoules <6019989+PiJoules at users.noreply.github.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M compiler-rt/lib/asan/asan_fuchsia.cpp
M compiler-rt/lib/hwasan/hwasan_fuchsia.cpp
M compiler-rt/lib/sanitizer_common/sanitizer_fuchsia.cpp
M compiler-rt/lib/sanitizer_common/sanitizer_fuchsia.h
M compiler-rt/lib/ubsan/ubsan_init_standalone.cpp
Log Message:
-----------
[sanitizer][Fuchsia] Add callback at end of __sanitizer_startup_hook (#131886)
Sanitizers using this hook on Fuchsia can define this function to do any
extra stuff at the end of the startup hook. For now this is only used by
HWASan which needs to explicitly be initialized before libc extensions
are intitialized.
Commit: 009b9f4fb8f029f98767b5cb2c1f939119953503
https://github.com/llvm/llvm-project/commit/009b9f4fb8f029f98767b5cb2c1f939119953503
Author: David Garcia Orozco <david.garcia.orozco at intel.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M llvm/utils/lit/lit/TestRunner.py
A llvm/utils/lit/tests/Inputs/timeout-hang/lit.cfg
A llvm/utils/lit/tests/Inputs/timeout-hang/run-nonexistent.txt
A llvm/utils/lit/tests/timeout-hang.py
Log Message:
-----------
[lit] Fix lit hang on pool join when exception is thrown (#131881)
Fixes #133914
When using the internal shell with a timeout set lit will hang on the
following call if an exception is thrown and not immediately caught
https://github.com/llvm/llvm-project/blob/19970535f92c0f2dcda01b7fc60f95945166e424/llvm/utils/lit/lit/run.py#L93
This can occur when using the internal lit shell and trying to run a
program that does not exist. In this case `_executeShCmd` will throw an
internal shell error, which will not be caught by the function directly
calling it, `executeShCmd`, rather it is caught one function higher in
the call stack in `executeScriptInternal`. Because that exception is
percolated up the call stack instead of being immediately caught lit
will hang until the test timeout expires. This patch changes the
location where we catch this exception to `executeShCmd` instead to
avoid this.
For more background on what causes this hang see:
https://stackoverflow.com/questions/15314189/python-multiprocessing-pool-hangs-at-join
Commit: e0537c076865e2b25d1c9d01a8d4653848fdabf9
https://github.com/llvm/llvm-project/commit/e0537c076865e2b25d1c9d01a8d4653848fdabf9
Author: Min-Yih Hsu <min.hsu at sifive.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/test/Transforms/LoopVectorize/RISCV/truncate-to-minimal-bitwidth-evl-crash.ll
M llvm/test/Transforms/LoopVectorize/RISCV/type-info-cache-evl-crash.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-bin-unary-ops-args.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-call-intrinsics.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-cast-intrinsics.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-cond-reduction.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-div.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-fixed-order-recurrence.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-intermediate-store.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-iv32.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-known-no-overflow.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-masked-loadstore.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-ordered-reduction.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-uniform-store.ll
Log Message:
-----------
[LV][EVL] Attach a new metadata on EVL vectorized loops (#131000)
This patch attaches a new metadata, `llvm.loop.isvectorized.withevl`, on
loops vectorized with explicit vector length. This will help other
optimizations down in the pipeline that focus on EVL-vectorized loop
This approach is much safer than, said IR pattern matching to figure out
if a loop is EVL-vectorized or not.
Commit: 0e3829eb3c8793bbbc1246bbebd79b8250803153
https://github.com/llvm/llvm-project/commit/0e3829eb3c8793bbbc1246bbebd79b8250803153
Author: David Green <david.green at arm.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
Log Message:
-----------
[AArch64] Use Subtarget directly. NFC
Commit: 8b41551651b66939255e0bcd13e829bb6944e0d6
https://github.com/llvm/llvm-project/commit/8b41551651b66939255e0bcd13e829bb6944e0d6
Author: David Green <david.green at arm.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M llvm/test/Transforms/SLPVectorizer/AArch64/extractelements-to-shuffle.ll
Log Message:
-----------
[AArch64] Add a slp vectorization test for extract and shuffle costs. NFC
Commit: c956ed06dc1c1b340d0c589c472c438b9220b36d
https://github.com/llvm/llvm-project/commit/c956ed06dc1c1b340d0c589c472c438b9220b36d
Author: Shafik Yaghmour <shafik.yaghmour at intel.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
Log Message:
-----------
[OpenMP][NFC] Use temporary instead of local to take advantage of move semantics (#138582)
Static analysis flagged `MapnamesName` because we could move it into
`createOffloadMapnames`. I just replaced the local with a direct call to
`createPlatformSpecificName` at the function argument location.
Commit: f9f79d9331975d9779b9eb9f77f133c8cf25080e
https://github.com/llvm/llvm-project/commit/f9f79d9331975d9779b9eb9f77f133c8cf25080e
Author: Jay Foad <jay.foad at amd.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
Log Message:
-----------
[AMDGPU] Fix VTList for BUFFER_LOAD and DENORM_MODE (#138704)
This fixes bugs that would be caught by verifyTargetNode in #119709.
Commit: 282af2ddfcfa14a19e2cf596de370c2ead13d0a9
https://github.com/llvm/llvm-project/commit/282af2ddfcfa14a19e2cf596de370c2ead13d0a9
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlanConstruction.cpp
Log Message:
-----------
[VPlan] Remove unneeded checks from PlanCFGBuilder::isExternalDef (NFC).
Remove checking if the instruction is in the preheader or exit blocks.
Those checks are redundant and handled by checking if the instruction is
outside the loop below.
Split off as suggested from https://github.com/llvm/llvm-project/pull/137709.
Commit: ad5b3e01fbc81337ad8d91663fc6d0624a251e14
https://github.com/llvm/llvm-project/commit/ad5b3e01fbc81337ad8d91663fc6d0624a251e14
Author: Mingming Liu <mingmingl at google.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M llvm/include/llvm/ADT/MapVector.h
M llvm/unittests/ADT/MapVectorTest.cpp
Log Message:
-----------
[ADT]Add helper function to return a ArrayRef of MapVector's underlying vector (#138726)
SetVector currently has a [similar
method](https://github.com/llvm/llvm-project/blob/c956ed06dc1c1b340d0c589c472c438b9220b36d/llvm/include/llvm/ADT/SetVector.h#L90),
and https://github.com/llvm/llvm-project/pull/138170 has a use case to
get an ArrayRef of MapVector's underlying vector.
Commit: dbe070eb3e09b04f312b238c40e016b97dacbbd2
https://github.com/llvm/llvm-project/commit/dbe070eb3e09b04f312b238c40e016b97dacbbd2
Author: Joseph Huber <huberjn at outlook.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M offload/DeviceRTL/CMakeLists.txt
Log Message:
-----------
[Offload] Fix PowerPC builds that pass -mcpu (#138327)
Summary:
Another hacky fix done until
https://github.com/llvm/llvm-project/pull/136729 lands. This time for
`-mcpu`.
Commit: 3ea0754d9a51641b0a6143bff7d1f534e19c1ae2
https://github.com/llvm/llvm-project/commit/3ea0754d9a51641b0a6143bff7d1f534e19c1ae2
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M libcxx/utils/ci/apple-install-libcxx.sh
Log Message:
-----------
[libc++] Enable sized deallocation when building operator new shims on Apple (#134152)
This ensures that we are able to build the shims on compilers that
enable sized deallocation by default and those that don't, regardless.
Commit: 60b43ef70b6d0bef9b738d1358a71b55d402288f
https://github.com/llvm/llvm-project/commit/60b43ef70b6d0bef9b738d1358a71b55d402288f
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M libcxx/test/std/containers/sequences/vector/vector.modifiers/common.h
M libcxx/test/std/containers/sequences/vector/vector.modifiers/emplace.pass.cpp
R libcxx/test/std/containers/sequences/vector/vector.modifiers/emplace_extra.pass.cpp
Log Message:
-----------
[libc++] Improve the test coverage for std::vector::emplace (#132440)
This patch refactors the test for std::vector::emplace back to cover new
corner cases, and increase coverage for normal cases as well.
This is building towards #129328.
Commit: d05ab119e188be99697f142a02c6b71137fde082
https://github.com/llvm/llvm-project/commit/d05ab119e188be99697f142a02c6b71137fde082
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M libcxx/include/__iterator/advance.h
M libcxx/include/__iterator/next.h
M libcxx/include/__iterator/prev.h
M libcxx/test/libcxx/iterators/assert.next.pass.cpp
M libcxx/test/libcxx/iterators/assert.prev.pass.cpp
Log Message:
-----------
[libc++] Remove redundant and somewhat confusing assertions around advance() (#133276)
The std::advance function has a clear precondition that it can only be
called with a negative distance when a bidirectional iterator is used.
However, prev() and next() don't have such preconditions explicitly,
they inherit it from calling advance().
This patch removes assertions in prev() and next() that were duplicates
of similar ones in advance(), and removes a copy-pasted comment that was
trying to justify the use of _LIBCPP_ASSERT_PEDANTIC but IMO is creating
confusion with little benefit.
Commit: 32928a07846bd531ef31f1166faa4e119be4f15f
https://github.com/llvm/llvm-project/commit/32928a07846bd531ef31f1166faa4e119be4f15f
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlanCFG.h
M llvm/lib/Transforms/Vectorize/VPlanConstruction.cpp
Log Message:
-----------
[VPlan] Construct regions from innermost to outermost (NFC).
Flip the region construction order to innermost first from outermost
first. This ensures we only set the final parent region for VPBBs once.
Split off from https://github.com/llvm/llvm-project/pull/137709.
Commit: c7659d88ac97ccfdc4eadb23673e3a4fd9cdeb53
https://github.com/llvm/llvm-project/commit/c7659d88ac97ccfdc4eadb23673e3a4fd9cdeb53
Author: Chinmay Deshpande <chdeshpa at amd.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
A llvm/test/CodeGen/AMDGPU/GlobalISel/and.ll
A llvm/test/CodeGen/AMDGPU/GlobalISel/or.ll
A llvm/test/CodeGen/AMDGPU/GlobalISel/xor.ll
Log Message:
-----------
[NFC][GlobalISel] Pre-commit GISel AMDGPU tests for XOR, OR, AND (#138586)
Commit: 58d4ebb29fe6b0faf543463b54130cba61b5d5d5
https://github.com/llvm/llvm-project/commit/58d4ebb29fe6b0faf543463b54130cba61b5d5d5
Author: Raul Tambre <raul at tambre.ee>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M libcxx/CMakeLists.txt
Log Message:
-----------
[libcxx][CMake] Use the right variable in the C library error message (#138458)
Fixes: 3b78dfa10c4b77581cc29c4510aefe919ae660ba
Commit: bb09f79f0f2b8e0cc3ed01d19ae49afbda8f82d2
https://github.com/llvm/llvm-project/commit/bb09f79f0f2b8e0cc3ed01d19ae49afbda8f82d2
Author: Erich Keane <ekeane at nvidia.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenOpenACCClause.h
M clang/test/CIR/CodeGenOpenACC/loop.cpp
M mlir/include/mlir/Dialect/OpenACC/OpenACCOps.td
M mlir/lib/Dialect/OpenACC/IR/OpenACC.cpp
Log Message:
-----------
[OpenACC] Implement tile/collapse lowering (#138576)
These two ended up being pretty similar in frontend implementation, and
fairly trivial when doing lowering. The collapse clause jsut results in
a normal device_type style attribute with some mild additional
complexity, and 'tile' just uses the current infrastructure for 'with
segments'.
Commit: b67880d8755bef5505a98cadbb48c4aad8b4c115
https://github.com/llvm/llvm-project/commit/b67880d8755bef5505a98cadbb48c4aad8b4c115
Author: Thomas Preud'homme <thomas.preudhomme at arm.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M mlir/lib/Conversion/TosaToLinalg/TosaToLinalg.cpp
M mlir/lib/Dialect/Tosa/IR/TosaOps.cpp
M mlir/test/Conversion/TosaToLinalg/tosa-to-linalg.mlir
M mlir/test/Dialect/Tosa/invalid.mlir
Log Message:
-----------
[MLIR][TOSA-Linalg] Fix rescale lowering for unsigned input zp (#138313)
Lowering of tosa.rescale to Linalg unconditionally sign-extend the input
zero-point value, even when unsigned_input is true. This commit refactor
zeropoint handling to share the same logic between input and output
zeropoint.
Commit: 2f54a843bbbadbfaeb1a128eda075cc2e53b4fe0
https://github.com/llvm/llvm-project/commit/2f54a843bbbadbfaeb1a128eda075cc2e53b4fe0
Author: A. Jiang <de34 at live.cn>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M libcxx/test/std/containers/container.adaptors/flat.map/flat.map.iterators/iterator_comparison.pass.cpp
M libcxx/test/std/containers/container.adaptors/flat.multimap/flat.multimap.iterators/iterator_comparison.pass.cpp
M libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.iterators/iterator_comparison.pass.cpp
M libcxx/test/std/containers/container.adaptors/flat.set/flat.set.iterators/iterator_comparison.pass.cpp
M libcxx/test/support/MinSequenceContainer.h
M libcxx/test/support/test_iterators.h
Log Message:
-----------
[libc++][test] Test `flat_meow` with proper underlying iterators (#131290)
Flat container adaptors require the iterators of underlying containers
to be random access, and it is required that random access container
iterators must support three-way comparison ([container.reqmts]/39 - /41).
As a result, we should at least avoid testing "containers" with random
access but not three-way comparable iterators for flat container
adaptors.
This patch adds a new class template `three_way_random_access_iterator`
to `test_iterators.h` and fixes some usages of `MinSequenceContainer`
with the new iterators.
Commit: f25f9e480bd00f467919ec1d6824e533e500f6c3
https://github.com/llvm/llvm-project/commit/f25f9e480bd00f467919ec1d6824e533e500f6c3
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M libcxx/include/__vector/vector.h
M libcxx/include/string
M libcxx/test/std/strings/basic.string/string.nonmembers/string_op+/string.string_view.pass.cpp
Log Message:
-----------
[libc++][NFC] Remove a bunch of redundant ASan existence checks (#128504)
There are currently lots of `_LIBCPP_HAS_ASAN` and
`__libcpp_is_constant_evaluated()` checks which aren't needed, since it
is centrally checked inside `__debug_utils/sanitizers.h`.
Commit: 7087ee6bc79c95692c609cf174b3cb5e6e0c1820
https://github.com/llvm/llvm-project/commit/7087ee6bc79c95692c609cf174b3cb5e6e0c1820
Author: Peng Liu <winner245 at hotmail.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M libcxx/test/std/algorithms/alg.modifying.operations/alg.fill/fill_n.pass.cpp
Log Message:
-----------
[libc++][NFC] Improve test readability for std::fill_n (#133771)
This patch enhances test readability by inlining standalone tests,
eliminating unnecessary navigation. Additionally, several classes with
ad-hoc names have been renamed for better clarity:
- `A` -> `CharWrapper` as it wraps a char
- `B -> CharTransformer` as it accepts a char `xc` but stores `xc + 1`
- `Storage -> CharUnionStorage` as it stores a union of 2 `char`s.
This patch addresses a follow-up comment from #120909 to inline tests.
Commit: 0b8528e127d898a8bdb0d96c9afc7f3baa4bc3f5
https://github.com/llvm/llvm-project/commit/0b8528e127d898a8bdb0d96c9afc7f3baa4bc3f5
Author: Philip Reames <preames at rivosinc.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
Log Message:
-----------
[instcombine] Adjust style of MemIntrinsic code to be more idiomatic [nfc] (#138715)
Use an existing helper function. Remove the use of a local Changed
variable which doesn't seem to interact with surrounding transforms in
any meaningful way. (Both memcpy and memmove are MemTransfer
instructions, so switching from one to the other doesn't change
results.)
Posted for review mostly for a sanity check that I'm not missing
something with the logic around the Change flag.
Commit: deebf47ab12343e83f2b8ce8e80bacf83c399ac0
https://github.com/llvm/llvm-project/commit/deebf47ab12343e83f2b8ce8e80bacf83c399ac0
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M llvm/test/Transforms/InstCombine/freeze-fp-ops.ll
Log Message:
-----------
InstCombine: Add baseline test for minimumnum/maximumnum freeze fold (#138728)
Commit: 51e157f58109200981e87946b756991aeacacd66
https://github.com/llvm/llvm-project/commit/51e157f58109200981e87946b756991aeacacd66
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M llvm/lib/Analysis/ValueTracking.cpp
M llvm/test/Transforms/InstCombine/freeze-fp-ops.ll
Log Message:
-----------
ValueTracking: Handle minimumnum/maximumnum in canCreateUndefOrPoison (#138729)
Commit: f4c3254956d4e045c35b4bdf1ea450016d03b5b0
https://github.com/llvm/llvm-project/commit/f4c3254956d4e045c35b4bdf1ea450016d03b5b0
Author: Oliver Hunt <oliver at apple.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M clang/include/clang/Basic/FPOptions.def
M clang/include/clang/Basic/LangOptions.h
M clang/lib/AST/JSONNodeDumper.cpp
M clang/lib/AST/TextNodeDumper.cpp
M clang/lib/Basic/LangOptions.cpp
Log Message:
-----------
[clang][NFC] rename FPOptions.def's macro to FP_OPTION (#138374)
While investigating the recent warnings around FEM_Indeterminate I
noticed that the macro name for FPOptions.def was given the very generic
name `OPTION`.
This PR renames it to FP_OPTION instead.
Commit: eb6d51a2fdddcc305b51f7d412d0e5144cbd444d
https://github.com/llvm/llvm-project/commit/eb6d51a2fdddcc305b51f7d412d0e5144cbd444d
Author: Tomohiro Kashiwada <kikairoya at gmail.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M clang/lib/Basic/Targets/X86.h
M clang/test/Driver/emulated-tls.cpp
Log Message:
-----------
[Cygwin] Enable TLS on Cygwin target (#138618)
Cygwin environment and toolchain supports EMUTLS.
From
https://cygwin.com/git/?p=newlib-cygwin.git;a=blob;f=config/tls.m4;hb=HEAD#l118,
```
$ LANG=C gcc -v
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-pc-cygwin/15/lto-wrapper.exe Target: x86_64-pc-cygwin
Configured with: (snip)
Thread model: posix
Supported LTO compression algorithms: zlib zstd
gcc version 15.0.1 20250406 (experimental) (GCC)
$ echo '__thread int a; int b; int main() { return a = b; }' | gcc -S -xc -o- - | grep __emutls_get_address
call __emutls_get_address
.def __emutls_get_address; .scl 2; .type 32; .endef
```
Commit: 25af0ae8efa90610af114dfe0eea8f7f14462cc2
https://github.com/llvm/llvm-project/commit/25af0ae8efa90610af114dfe0eea8f7f14462cc2
Author: Nathan Ridge <zeratul976 at hotmail.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M clang/lib/Index/IndexingContext.h
Log Message:
-----------
[clang][Index] Add comment about out-of-line defaulted destructor (#138640)
Commit: cf9b4d1e7961214deabd99a9fc3b1d4c9e78a71f
https://github.com/llvm/llvm-project/commit/cf9b4d1e7961214deabd99a9fc3b1d4c9e78a71f
Author: cor3ntin <corentinjabot at gmail.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Sema/SemaExpr.cpp
M clang/test/SemaTemplate/fun-template-def.cpp
Log Message:
-----------
[Clang] Diagnose invalid function types in dependent contexts (#138731)
When forming an invalid function type, we were not diagnosing it if the
call was dependent.
However, we later rely on the function type to be sensible during
argument deduction.
We now diagnose anything that is not a potential function type, to avoid
constructing bogus call expressions.
Fixes #138657
Fixes #115725
Fixes #68852
Commit: 5c3ef62f64cc379b8c5a4cf23bcaf019d398fcc4
https://github.com/llvm/llvm-project/commit/5c3ef62f64cc379b8c5a4cf23bcaf019d398fcc4
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M lldb/source/Breakpoint/WatchpointAlgorithms.cpp
Log Message:
-----------
[lldb] Use llvm::bit_ceil (NFC) (#138723)
This patch replaces a local implementation of bit_ceil with
llvm::bit_ceil. Technically, the local implementation evaluates to 0
on input 0, whereas llvm::bit_ceil evaluates to 1, but that doesn't
matter because we have:
// Can't watch zero bytes.
if (user_size == 0)
return {};
Commit: 9d89b05f1147dc442794186f505e30a27ffe75a7
https://github.com/llvm/llvm-project/commit/9d89b05f1147dc442794186f505e30a27ffe75a7
Author: Pavel Verigo <58272683+pavelverigo at users.noreply.github.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M llvm/lib/Target/WebAssembly/WebAssemblyFastISel.cpp
A llvm/test/CodeGen/WebAssembly/fast-isel-pr138479.ll
Log Message:
-----------
[WebAssembly] Fix trunc in FastISel (#138479)
Previous logic did not handle the case where the result bit size was
between 32 and 64 bits inclusive. I updated the if-statements for more
precise handling.
An alternative solution would have been to abort FastISel in case the
result type is not legal for FastISel.
Resolves: #64222.
This PR began as an investigation into the root cause of
https://github.com/ziglang/zig/issues/20966.
Godbolt link showing incorrect codegen on 20.1.0:
https://godbolt.org/z/cEr4vY7d4.
Commit: 650dca5d896023c05bd34dafb756d9bdf7c0033d
https://github.com/llvm/llvm-project/commit/650dca5d896023c05bd34dafb756d9bdf7c0033d
Author: Philip Reames <preames at rivosinc.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M llvm/include/llvm/Analysis/MemoryLocation.h
M llvm/include/llvm/IR/IntrinsicInst.h
M llvm/include/llvm/Transforms/Utils/LowerMemIntrinsics.h
M llvm/lib/Analysis/MemoryLocation.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
M llvm/lib/IR/IRBuilder.cpp
M llvm/lib/IR/Verifier.cpp
M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
M llvm/lib/Transforms/Scalar/DeadStoreElimination.cpp
M llvm/lib/Transforms/Scalar/RewriteStatepointsForGC.cpp
M llvm/lib/Transforms/Utils/LowerMemIntrinsics.cpp
M llvm/unittests/Transforms/Utils/MemTransferLowering.cpp
Log Message:
-----------
[IR] Remove the AtomicMem*Inst helper classes (#138710)
Migrate their usage to the `AnyMem*Inst` family, and add a isAtomic()
query on the base class for that hierarchy. This matches the idioms we
use for e.g. isAtomic on load, store, etc.. instructions, the existing
isVolatile idioms on mem* routines, and allows us to more easily share
code between atomic and non-atomic variants.
As with #138568, the goal here is to simplify the class hierarchy and
make it easier to reason about. I'm moving from easiest to hardest, and
will stop at some point when I hit "good enough". Longer term, I'd sorta
like to merge or reverse the naming on the plain Mem*Inst and the
AnyMem*Inst, but that's a much larger and more risky change. Not sure
I'm going to actually do that.
Commit: 57e88993fee30f4441e87df4df061393600b2ada
https://github.com/llvm/llvm-project/commit/57e88993fee30f4441e87df4df061393600b2ada
Author: Ikhlas Ajbar <iajbar at quicinc.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M llvm/lib/Target/Hexagon/HexagonPatterns.td
A llvm/test/CodeGen/Hexagon/isel/pfalse-v4i1.ll
Log Message:
-----------
[Hexagon] Add missing patterns to select PFALSE and PTRUE (#138712)
Fixes #134659
Commit: 097fef28dae145cc41f80151825e929668414d24
https://github.com/llvm/llvm-project/commit/097fef28dae145cc41f80151825e929668414d24
Author: Steven Perron <stevenperron at google.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.cpp
Log Message:
-----------
[SPIRV] Fix asan failure (#138695)
When the DataLayout is destroyed, the memory backing `Offsets` is
released. This causes a use after free.
To fix it, I added a DataLayout varible that will not be destroyed until
after Offsets is used.
Fixes asan failure caused by
https://github.com/llvm/llvm-project/pull/135789
Commit: aa77f7a923780fc512977bb7df149e9313658106
https://github.com/llvm/llvm-project/commit/aa77f7a923780fc512977bb7df149e9313658106
Author: Prabhu Rajasekaran <prabhukr at google.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M llvm/include/llvm/TargetParser/Triple.h
M llvm/lib/IR/DataLayout.cpp
M llvm/lib/MC/MCContext.cpp
M llvm/lib/MC/TargetRegistry.cpp
M llvm/lib/Target/X86/MCTargetDesc/X86MCAsmInfo.cpp
M llvm/lib/Target/X86/X86MCInstLower.cpp
M llvm/lib/Target/X86/X86Subtarget.h
Log Message:
-----------
[NFC][llvm] Drop isOsWindowsOrUEFI API (#138733)
The Triple and SubTarget API functions isOsWindowsOrUEFI is not
preferred. Dropping them.
Commit: 0a07e6beaf0560da75cdde31a2b1d2fa608bf27d
https://github.com/llvm/llvm-project/commit/0a07e6beaf0560da75cdde31a2b1d2fa608bf27d
Author: Prabhu Rajasekaran <prabhukr at google.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M llvm/lib/Target/X86/X86Subtarget.h
M llvm/test/CodeGen/X86/musttail-tailcc.ll
M llvm/test/CodeGen/X86/tailcall-tailcc.ll
M llvm/test/CodeGen/X86/tailcc-fastcc.ll
M llvm/test/CodeGen/X86/tailcc-fastisel.ll
M llvm/test/CodeGen/X86/tailccstack64.ll
A llvm/test/CodeGen/X86/uefi-fastcc.ll
Log Message:
-----------
[llvm] Allow Fast and Tail CC in UEFI (#138361)
Allow tail call and fastcc optimizations for UEFI X86_64 targets.
Commit: 6c764a6dda9f63dda38540a52b2b3bbbb1f3291b
https://github.com/llvm/llvm-project/commit/6c764a6dda9f63dda38540a52b2b3bbbb1f3291b
Author: Paul Kirth <paulkirth at google.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M llvm/lib/Support/Mustache.cpp
Log Message:
-----------
[llvm][mustache][NFC] Use type alias for escape symbols (#138050)
This data structure's type and/or representation is likely to change.
Using an alias, makes it easy to refactor.
Commit: df90ab96fb5a10df88fcfe6b0e8e63781ca24eca
https://github.com/llvm/llvm-project/commit/df90ab96fb5a10df88fcfe6b0e8e63781ca24eca
Author: Kirill Stoimenov <kstoimenov at google.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.cpp
Log Message:
-----------
Revert "[SPIRV] Fix asan failure (#138695)"
Breaks bot: https://lab.llvm.org/buildbot/#/builders/24/builds/8151
This reverts commit 097fef28dae145cc41f80151825e929668414d24.
Commit: 0fb5720b4bf461d4d51ee85a8a6f4ea4f6fb4966
https://github.com/llvm/llvm-project/commit/0fb5720b4bf461d4d51ee85a8a6f4ea4f6fb4966
Author: Kirill Stoimenov <kstoimenov at google.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.cpp
M llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.h
M llvm/lib/Target/SPIRV/SPIRVIRMapping.h
M llvm/lib/Target/SPIRV/SPIRVISelLowering.cpp
M llvm/lib/Target/SPIRV/SPIRVISelLowering.h
M llvm/test/CodeGen/SPIRV/hlsl-resources/StructuredBuffer.ll
R llvm/test/CodeGen/SPIRV/spirv-explicit-layout.ll
Log Message:
-----------
Revert "[SPIRV] Add explicit layout (#135789)"
Breaks bot: https://lab.llvm.org/buildbot/#/builders/24/builds/8092
This reverts commit 492ad848b1c319ad9641208aaadb41bc575a9c3f.
Commit: ba29e60f9a2222bd5e883579bb78db13fc5a7588
https://github.com/llvm/llvm-project/commit/ba29e60f9a2222bd5e883579bb78db13fc5a7588
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M lldb/packages/Python/lldbsuite/test/tools/lldb-dap/dap_server.py
M lldb/packages/Python/lldbsuite/test/tools/lldb-dap/lldbdap_testcase.py
M lldb/test/API/tools/lldb-dap/attach/TestDAP_attach.py
M lldb/test/API/tools/lldb-dap/attach/TestDAP_attachByPortNum.py
M lldb/test/API/tools/lldb-dap/breakpoint-events/TestDAP_breakpointEvents.py
M lldb/test/API/tools/lldb-dap/completions/TestDAP_completions.py
M lldb/test/API/tools/lldb-dap/console/TestDAP_console.py
M lldb/test/API/tools/lldb-dap/disconnect/TestDAP_disconnect.py
M lldb/test/API/tools/lldb-dap/evaluate/TestDAP_evaluate.py
M lldb/test/API/tools/lldb-dap/launch/TestDAP_launch.py
M lldb/test/API/tools/lldb-dap/progress/TestDAP_Progress.py
M lldb/test/API/tools/lldb-dap/repl-mode/TestDAP_repl_mode_detection.py
M lldb/test/API/tools/lldb-dap/restart/TestDAP_restart.py
M lldb/test/API/tools/lldb-dap/restart/TestDAP_restart_runInTerminal.py
M lldb/test/API/tools/lldb-dap/stop-hooks/TestDAP_stop_hooks.py
M lldb/tools/lldb-dap/DAP.cpp
M lldb/tools/lldb-dap/DAP.h
M lldb/tools/lldb-dap/EventHelper.cpp
M lldb/tools/lldb-dap/Handler/AttachRequestHandler.cpp
M lldb/tools/lldb-dap/Handler/ConfigurationDoneRequestHandler.cpp
M lldb/tools/lldb-dap/Handler/InitializeRequestHandler.cpp
M lldb/tools/lldb-dap/Handler/LaunchRequestHandler.cpp
M lldb/tools/lldb-dap/Handler/RequestHandler.cpp
M lldb/tools/lldb-dap/Handler/RequestHandler.h
Log Message:
-----------
[lldb-dap] Change the launch sequence (#138219)
This PR changes how we treat the launch sequence in lldb-dap.
- Send the initialized event after we finish handling the initialize
request, rather than after we finish attaching or launching.
- Delay handling the launch and attach request until we have handled
the configurationDone request. The latter is now largely a NO-OP and
only exists to signal lldb-dap that it can handle the launch and
attach requests.
- Delay handling the initial threads requests until we have handled
the launch or attach request.
- Make all attaching and launching synchronous, including when we have
attach or launch commands. This removes the need to synchronize
between the request and event thread.
Background:
https://discourse.llvm.org/t/reliability-of-the-lldb-dap-tests/86125
Commit: 46e99ac1e95dcf940f0597cf76afb26f545756ae
https://github.com/llvm/llvm-project/commit/46e99ac1e95dcf940f0597cf76afb26f545756ae
Author: Thomas Preud'homme <thomas.preudhomme at arm.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M mlir/lib/Conversion/TosaToLinalg/TosaToLinalg.cpp
M mlir/lib/Dialect/Tosa/IR/TosaOps.cpp
M mlir/test/Conversion/TosaToLinalg/tosa-to-linalg.mlir
M mlir/test/Dialect/Tosa/invalid.mlir
Log Message:
-----------
Revert "[MLIR][TOSA-Linalg] Fix rescale lowering for unsigned input zp (#138313)"
This reverts commit b67880d8755bef5505a98cadbb48c4aad8b4c115.
Commit: a63fd59d95397d236b03e964287728a35efa296b
https://github.com/llvm/llvm-project/commit/a63fd59d95397d236b03e964287728a35efa296b
Author: ZhongUncle <78771985+ZhongUncle at users.noreply.github.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
A clang-tools-extra/test/clang-doc/comments-in-macros.cpp
Log Message:
-----------
[clang-doc] Add regression test for test comments in macros (#132510)
Fixes https://github.com/llvm/llvm-project/issues/59819. The underlying
problem was fixed in https://reviews.llvm.org/D142560, but this patch
adds a proper regression test.
Commit: 32fb8c5f5fdeb20de28846e2fe9e2c7525f62086
https://github.com/llvm/llvm-project/commit/32fb8c5f5fdeb20de28846e2fe9e2c7525f62086
Author: Michael Spencer <bigcheesegs at gmail.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M clang-tools-extra/modularize/ModularizeUtilities.cpp
M clang/include/clang/Basic/DiagnosticGroups.td
M clang/include/clang/Basic/DiagnosticLexKinds.td
M clang/include/clang/Lex/HeaderSearch.h
M clang/include/clang/Lex/ModuleMap.h
M clang/include/clang/Lex/ModuleMapFile.h
M clang/lib/Frontend/CompilerInstance.cpp
M clang/lib/Frontend/FrontendAction.cpp
M clang/lib/Lex/HeaderSearch.cpp
M clang/lib/Lex/ModuleMap.cpp
M clang/lib/Lex/ModuleMapFile.cpp
M clang/lib/Sema/SemaModule.cpp
M clang/test/ClangScanDeps/modules-canononical-module-map-case.c
A clang/test/Modules/Inputs/shadow/A1/A1.h
M clang/test/Modules/Inputs/shadow/A1/module.modulemap
A clang/test/Modules/Inputs/shadow/A2/A2.h
M clang/test/Modules/Inputs/shadow/A2/module.modulemap
A clang/test/Modules/lazy-by-name-lookup.c
M clang/test/Modules/shadow.m
M lldb/source/Plugins/ExpressionParser/Clang/ClangModulesDeclVendor.cpp
Log Message:
-----------
[clang][modules] Lazily load by name lookups in module maps (#132853)
Instead of eagerly populating the `clang::ModuleMap` when looking up a
module by name, this patch changes `HeaderSearch` to only load the
modules that are actually used.
This introduces `ModuleMap::findOrLoadModule` which will load modules
from parsed but not loaded module maps. This cannot be used anywhere
that the module loading code calls into as it can create infinite
recursion.
This currently just reparses module maps when looking up a module by
header. This is fine as redeclarations are allowed from the same file,
but future patches will also make looking up a module by header lazy.
This patch changes the shadow.m test to use explicitly built modules and
`#import`. This test and the shadow feature are very brittle and do not
work in general. The test relied on pcm files being left behind by prior
failing clang invocations that were then reused by the last invocation.
If you clean the cache then the last invocation will always fail. This
is because the input module map and the `-fmodule-map-file=` module map
are parsed in the same module scope, and `-fmodule-map-file=` is
forwarded to implicit module builds. That means you are guaranteed to
hit a module redeclaration error if the TU actually imports the module
it is trying to shadow.
This patch changes when we load A2's module map to after the `A` module
has been loaded, which sets the `IsFromModuleFile` bit on `A`. This
means that A2's `A` is skipped entirely instead of creating a shadow
module, and we get textual inclusion. It is possible to construct a case
where this would happen before this patch too.
An upcoming patch in this series will rework shadowing to work in the
general case, but that's only possible once header -> module lookup is
lazy too.
Commit: 11f33ab3850886510a831122078a155be7dc1167
https://github.com/llvm/llvm-project/commit/11f33ab3850886510a831122078a155be7dc1167
Author: jimingham <jingham at apple.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M lldb/source/Plugins/DynamicLoader/MacOSX-DYLD/DynamicLoaderDarwin.cpp
A lldb/test/API/macosx/branch-islands/Makefile
A lldb/test/API/macosx/branch-islands/TestBranchIslands.py
A lldb/test/API/macosx/branch-islands/foo.c
A lldb/test/API/macosx/branch-islands/main.c
A lldb/test/API/macosx/branch-islands/padding1.s
A lldb/test/API/macosx/branch-islands/padding2.s
A lldb/test/API/macosx/branch-islands/padding3.s
A lldb/test/API/macosx/branch-islands/padding4.s
Log Message:
-----------
Branch island with numbers (#138781)
Reapply the support for stepping through branch islands, add support for
a branch that takes multiple hops to get to the target.
Commit: 189702326a3a4c9072e346a8197913a4d968cbe3
https://github.com/llvm/llvm-project/commit/189702326a3a4c9072e346a8197913a4d968cbe3
Author: Stanislav Mekhanoshin <rampitec at users.noreply.github.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M clang/test/CodeGenOpenCL/amdgpu-features.cl
Log Message:
-----------
[AMDGPU] Fix gfx1201 check line in the amdgpu-features.cl. NFC. (#138743)
Commit: 0274232b87177779e5c985eca06df22bf140f6cb
https://github.com/llvm/llvm-project/commit/0274232b87177779e5c985eca06df22bf140f6cb
Author: Kirill Stoimenov <kstoimenov at google.com>
Date: 2025-05-07 (Wed, 07 May 2025)
Changed paths:
M llvm/docs/ReleaseNotes.md
M llvm/include/llvm/IR/Constants.h
M llvm/include/llvm/IR/Use.h
M llvm/include/llvm/IR/Value.h
M llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
M llvm/lib/IR/AsmWriter.cpp
M llvm/lib/IR/Instruction.cpp
M llvm/lib/IR/Value.cpp
M llvm/unittests/IR/ConstantsTest.cpp
Log Message:
-----------
Revert "IR: Remove reference counts from ConstantData (#137314)"
This reverts commit 51a3bd919d68a8fb1b026377d6e86b1523d37433.
Possible breaks the build: https://lab.llvm.org/buildbot/#/builders/24/builds/8119/steps/9/logs/stdio
Commit: 5936c02c8b9c6d1476f7830517781ce8b6e26e75
https://github.com/llvm/llvm-project/commit/5936c02c8b9c6d1476f7830517781ce8b6e26e75
Author: Kirill Stoimenov <kstoimenov at google.com>
Date: 2025-05-07 (Wed, 07 May 2025)
Changed paths:
M llvm/docs/ReleaseNotes.md
M llvm/include/llvm/IR/Constants.h
M llvm/include/llvm/IR/Use.h
M llvm/include/llvm/IR/Value.h
M llvm/lib/Analysis/TypeMetadataUtils.cpp
M llvm/lib/AsmParser/LLParser.cpp
M llvm/lib/Bitcode/Reader/BitcodeReader.cpp
M llvm/lib/Bitcode/Writer/ValueEnumerator.cpp
M llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
M llvm/lib/CodeGen/CodeGenPrepare.cpp
M llvm/lib/CodeGen/ComplexDeinterleavingPass.cpp
M llvm/lib/IR/AsmWriter.cpp
M llvm/lib/IR/Instruction.cpp
M llvm/lib/IR/Use.cpp
M llvm/lib/IR/Value.cpp
M llvm/lib/Target/AArch64/GISel/AArch64RegisterBankInfo.cpp
M llvm/lib/Target/SPIRV/SPIRVEmitIntrinsics.cpp
M llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
M llvm/lib/Transforms/Scalar/Reassociate.cpp
M llvm/test/Analysis/MemorySSA/nondeterminism.ll
R llvm/test/tools/llvm-diff/uselistorder-issue58629-gv.ll
M llvm/test/tools/llvm-diff/uselistorder-issue58629.ll
M llvm/test/tools/llvm-reduce/bitcode-uselistorder.ll
M llvm/test/tools/llvm-reduce/uselistorder-invalid-ir-output.ll
M llvm/tools/verify-uselistorder/verify-uselistorder.cpp
M polly/lib/Support/ScopHelper.cpp
Log Message:
-----------
Revert "IR: Remove uselist for constantdata (#137313)"
Possibly breaks the build: https://lab.llvm.org/buildbot/#/builders/24/builds/8119
This reverts commit 87f312aad6ede636cd2de5d18f3058bf2caf5651.
Commit: 91f1830cb69cab96201adba6378d64095e251f95
https://github.com/llvm/llvm-project/commit/91f1830cb69cab96201adba6378d64095e251f95
Author: Yanzuo Liu <zwuis at outlook.com>
Date: 2025-05-07 (Wed, 07 May 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/AST/ASTContext.h
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/lib/AST/ASTContext.cpp
M clang/lib/Sema/SemaExpr.cpp
M clang/lib/Sema/SemaTemplate.cpp
M clang/lib/Sema/SemaTemplateDeduction.cpp
M clang/test/SemaCXX/cxx1y-variable-templates_in_class.cpp
M clang/test/SemaCXX/cxx1y-variable-templates_top_level.cpp
M clang/test/SemaTemplate/instantiate-var-template.cpp
Log Message:
-----------
[Clang][Sema] Handle invalid variable template specialization whose type depends on itself (#134522)
Commit: 675cb706411ced3172bd21def5b38f5ee7cca308
https://github.com/llvm/llvm-project/commit/675cb706411ced3172bd21def5b38f5ee7cca308
Author: Matthias Braun <matze at braunis.de>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M llvm/include/llvm/CodeGen/AsmPrinter.h
M llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
M llvm/lib/Target/AArch64/AArch64.h
M llvm/lib/Target/AArch64/AArch64AsmPrinter.cpp
M llvm/lib/Target/AArch64/AArch64TargetMachine.cpp
M llvm/lib/Target/AMDGPU/AMDGPU.h
M llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.cpp
M llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.h
M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
M llvm/lib/Target/ARC/ARC.h
M llvm/lib/Target/ARC/ARCAsmPrinter.cpp
M llvm/lib/Target/ARC/ARCTargetMachine.cpp
M llvm/lib/Target/ARM/ARM.h
M llvm/lib/Target/ARM/ARMAsmPrinter.cpp
M llvm/lib/Target/ARM/ARMAsmPrinter.h
M llvm/lib/Target/ARM/ARMTargetMachine.cpp
M llvm/lib/Target/AVR/AVR.h
M llvm/lib/Target/AVR/AVRAsmPrinter.cpp
M llvm/lib/Target/AVR/AVRTargetMachine.cpp
M llvm/lib/Target/BPF/BPF.h
M llvm/lib/Target/BPF/BPFAsmPrinter.cpp
M llvm/lib/Target/BPF/BPFTargetMachine.cpp
M llvm/lib/Target/Hexagon/Hexagon.h
M llvm/lib/Target/Hexagon/HexagonAsmPrinter.cpp
M llvm/lib/Target/Hexagon/HexagonAsmPrinter.h
M llvm/lib/Target/Hexagon/HexagonTargetMachine.cpp
M llvm/lib/Target/Lanai/Lanai.h
M llvm/lib/Target/Lanai/LanaiAsmPrinter.cpp
M llvm/lib/Target/Lanai/LanaiTargetMachine.cpp
M llvm/lib/Target/LoongArch/LoongArch.h
M llvm/lib/Target/LoongArch/LoongArchAsmPrinter.cpp
M llvm/lib/Target/LoongArch/LoongArchAsmPrinter.h
M llvm/lib/Target/M68k/M68k.h
M llvm/lib/Target/M68k/M68kAsmPrinter.cpp
M llvm/lib/Target/M68k/M68kAsmPrinter.h
M llvm/lib/Target/M68k/M68kTargetMachine.cpp
M llvm/lib/Target/MSP430/MSP430.h
M llvm/lib/Target/MSP430/MSP430AsmPrinter.cpp
M llvm/lib/Target/MSP430/MSP430TargetMachine.cpp
M llvm/lib/Target/Mips/Mips.h
M llvm/lib/Target/Mips/MipsAsmPrinter.cpp
M llvm/lib/Target/Mips/MipsAsmPrinter.h
M llvm/lib/Target/Mips/MipsTargetMachine.cpp
M llvm/lib/Target/NVPTX/NVPTX.h
M llvm/lib/Target/NVPTX/NVPTXAsmPrinter.cpp
M llvm/lib/Target/NVPTX/NVPTXAsmPrinter.h
M llvm/lib/Target/NVPTX/NVPTXTargetMachine.cpp
M llvm/lib/Target/PowerPC/PPC.h
M llvm/lib/Target/PowerPC/PPCAsmPrinter.cpp
M llvm/lib/Target/PowerPC/PPCTargetMachine.cpp
M llvm/lib/Target/RISCV/RISCV.h
M llvm/lib/Target/RISCV/RISCVAsmPrinter.cpp
M llvm/lib/Target/RISCV/RISCVTargetMachine.cpp
M llvm/lib/Target/SPIRV/SPIRV.h
M llvm/lib/Target/SPIRV/SPIRVAsmPrinter.cpp
M llvm/lib/Target/SPIRV/SPIRVTargetMachine.cpp
M llvm/lib/Target/Sparc/Sparc.h
M llvm/lib/Target/Sparc/SparcAsmPrinter.cpp
M llvm/lib/Target/Sparc/SparcTargetMachine.cpp
M llvm/lib/Target/SystemZ/SystemZ.h
M llvm/lib/Target/SystemZ/SystemZAsmPrinter.cpp
M llvm/lib/Target/SystemZ/SystemZAsmPrinter.h
M llvm/lib/Target/SystemZ/SystemZTargetMachine.cpp
M llvm/lib/Target/VE/VE.h
M llvm/lib/Target/VE/VEAsmPrinter.cpp
M llvm/lib/Target/VE/VETargetMachine.cpp
M llvm/lib/Target/WebAssembly/WebAssembly.h
M llvm/lib/Target/WebAssembly/WebAssemblyAsmPrinter.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyAsmPrinter.h
M llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp
M llvm/lib/Target/X86/X86.h
M llvm/lib/Target/X86/X86AsmPrinter.cpp
M llvm/lib/Target/X86/X86AsmPrinter.h
M llvm/lib/Target/X86/X86TargetMachine.cpp
M llvm/lib/Target/XCore/XCore.h
M llvm/lib/Target/XCore/XCoreAsmPrinter.cpp
M llvm/lib/Target/XCore/XCoreTargetMachine.cpp
M llvm/lib/Target/Xtensa/Xtensa.h
M llvm/lib/Target/Xtensa/XtensaAsmPrinter.cpp
M llvm/lib/Target/Xtensa/XtensaAsmPrinter.h
M llvm/lib/Target/Xtensa/XtensaTargetMachine.cpp
M llvm/test/CodeGen/AMDGPU/asm-printer-check-vcc.mir
M llvm/test/CodeGen/RISCV/instruction-count-remark.mir
M llvm/test/CodeGen/X86/align-basic-block-sections.mir
M llvm/test/CodeGen/X86/basic-block-address-map-mir-parse.mir
M llvm/test/CodeGen/X86/basic-block-sections-mir-parse.mir
M llvm/test/DebugInfo/MIR/AArch64/clobber-sp.mir
M llvm/test/DebugInfo/MIR/AArch64/dbgcall-site-expr-chain.mir
M llvm/test/DebugInfo/MIR/AArch64/dbgcall-site-expr-entry-value.mir
M llvm/test/DebugInfo/MIR/AArch64/dbgcall-site-orr-moves.mir
M llvm/test/DebugInfo/MIR/AArch64/implicit-def-dead-scope.mir
M llvm/test/DebugInfo/MIR/AArch64/no-dbg-value-after-terminator.mir
M llvm/test/DebugInfo/MIR/AArch64/subreg-fragment-overflow.mir
M llvm/test/DebugInfo/X86/single-location.mir
Log Message:
-----------
Register assembly printer passes (#138348)
Register assembly printer passes in the pass registry.
This makes it possible to use `llc -start-before=<target>-asm-printer ...` in tests.
Adds a `char &ID` parameter to the AssemblyPrinter constructor to allow
targets to use the `INITIALIZE_PASS` macros and register the pass in the
pass registry. This currently has a default parameter so it won't break
any targets that have not been updated.
Commit: 7fa721ac6c44241da6151b8dec6d9c0456550d66
https://github.com/llvm/llvm-project/commit/7fa721ac6c44241da6151b8dec6d9c0456550d66
Author: Jeffrey Byrnes <jeffrey.byrnes at amd.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M llvm/test/CodeGen/AMDGPU/coalesce-copy-to-agpr-to-av-registers.mir
Log Message:
-----------
[AMDGPU] Extend test coverage for cross RC register coalescing (#138617)
[[Change-Id:
I36894fc36e6e6214930fae67f2ca35999abf3b88](https://github.com/llvm/llvm-project/pull/132137)
](https://github.com/llvm/llvm-project/pull/132137) landed, but was
breaking bots. In the rebase, I accidentally brought in unintended
changes. I have reverted the commit
https://github.com/llvm/llvm-project/commit/8b9ae65d51a14cac5a312bb19cb4757a88fc240b
and fixed the rebase.
This PR is to land the original patch / extension to the test.
---------
Co-authored-by: Matt Arsenault <arsenm2 at gmail.com>
Commit: 69a0af35a5860156836e9e295ecef9de3474db11
https://github.com/llvm/llvm-project/commit/69a0af35a5860156836e9e295ecef9de3474db11
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M lldb/packages/Python/lldbsuite/test/tools/lldb-dap/dap_server.py
M lldb/packages/Python/lldbsuite/test/tools/lldb-dap/lldbdap_testcase.py
M lldb/test/API/tools/lldb-dap/attach/TestDAP_attach.py
M lldb/test/API/tools/lldb-dap/attach/TestDAP_attachByPortNum.py
Log Message:
-----------
[lldb-dap] Don't make stopOnAttach the default in attach tests
Make stopOnAttach=False the default again and explicitly pass
stopOnAttach=True where the tests relies on that. I changed the default
in the launch sequence PR (#138219) because that was implicitly the
assumption (the tests never send the configurationDone request).
Commit: a1238911f43c1d46cc7d4e72e2a16c3c9a157d9a
https://github.com/llvm/llvm-project/commit/a1238911f43c1d46cc7d4e72e2a16c3c9a157d9a
Author: Felipe de Azevedo Piovezan <fpiovezan at apple.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M lldb/source/Plugins/DynamicLoader/MacOSX-DYLD/DynamicLoaderDarwin.cpp
R lldb/test/API/macosx/branch-islands/Makefile
R lldb/test/API/macosx/branch-islands/TestBranchIslands.py
R lldb/test/API/macosx/branch-islands/foo.c
R lldb/test/API/macosx/branch-islands/main.c
R lldb/test/API/macosx/branch-islands/padding1.s
R lldb/test/API/macosx/branch-islands/padding2.s
R lldb/test/API/macosx/branch-islands/padding3.s
R lldb/test/API/macosx/branch-islands/padding4.s
Log Message:
-----------
Revert "Branch island with numbers (#138781)"
This reverts commit 11f33ab3850886510a831122078a155be7dc1167.
This is failing on CI.
Commit: b5c7724f82b6afe98761d0a1c5b6ee7cd2330ada
https://github.com/llvm/llvm-project/commit/b5c7724f82b6afe98761d0a1c5b6ee7cd2330ada
Author: tangaac <tangyan01 at loongson.cn>
Date: 2025-05-07 (Wed, 07 May 2025)
Changed paths:
M llvm/lib/Target/LoongArch/LoongArchLASXInstrInfo.td
M llvm/test/CodeGen/LoongArch/lasx/ir-instruction/fptosi.ll
M llvm/test/CodeGen/LoongArch/lasx/ir-instruction/fptoui.ll
Log Message:
-----------
[LoongArch] Fix fp_to_uint/fp_to_sint conversion errors for lasx (#137129)
Prvious `fp_to_uint/fp_to_sint` patterns for `v4f64 -> v4i32` are wrong.
Conversion error was triggered after pr
https://github.com/llvm/llvm-project/pull/126456.
Commit: 9ea92f0c5dedeb2a3196540e0073807f8ba4e9d4
https://github.com/llvm/llvm-project/commit/9ea92f0c5dedeb2a3196540e0073807f8ba4e9d4
Author: Stanislav Mekhanoshin <rampitec at users.noreply.github.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUSubtarget.h
Log Message:
-----------
[AMDGPU] clang-format part of AMDGPUSubtarget.h. NFC. (#138756)
Commit: f69e2671f8c54651e591ed0ac207a871014c9a9b
https://github.com/llvm/llvm-project/commit/f69e2671f8c54651e591ed0ac207a871014c9a9b
Author: Stanislav Mekhanoshin <rampitec at users.noreply.github.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M clang/test/CodeGenOpenCL/builtins-amdgcn-gfx950.cl
Log Message:
-----------
[AMDGPU] Remove unused argument in builtins-amdgcn-gfx950.cl. NFC. (#138753)
Commit: 17ea830baf836e9cd0cfbbc6539a3a1ffcd8ec52
https://github.com/llvm/llvm-project/commit/17ea830baf836e9cd0cfbbc6539a3a1ffcd8ec52
Author: Owen Pan <owenpiano at gmail.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M clang/lib/Format/TokenAnnotator.cpp
M clang/unittests/Format/TokenAnnotatorTest.cpp
Log Message:
-----------
[clang-format] Don't annotate enum colon as InheritanceColon (#138440)
Fix #61156
Commit: b1e6c4b43507006c212f1f6126426a1e46774132
https://github.com/llvm/llvm-project/commit/b1e6c4b43507006c212f1f6126426a1e46774132
Author: Owen Pan <owenpiano at gmail.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M clang/lib/Format/TokenAnnotator.cpp
M clang/unittests/Format/TokenAnnotatorTest.cpp
Log Message:
-----------
[clang-format] Correctly annotate C# nullable value type `?` (#138631)
Fix #78666
Commit: 0e75810456008533ed62fe7a343f22b50d65cc90
https://github.com/llvm/llvm-project/commit/0e75810456008533ed62fe7a343f22b50d65cc90
Author: Owen Pan <owenpiano at gmail.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M clang/lib/Format/TokenAnnotator.cpp
M clang/unittests/Format/TokenAnnotatorTest.cpp
Log Message:
-----------
[clang-format] Fix a bug in annotating binary operator && (#138633)
Fix #138485
Commit: 3c709802d31b5bc5ed3af8284b40593ff39b9eec
https://github.com/llvm/llvm-project/commit/3c709802d31b5bc5ed3af8284b40593ff39b9eec
Author: Lei Zhang <antiagainst at gmail.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M mlir/lib/TableGen/Pattern.cpp
M mlir/test/lib/Dialect/Test/TestOps.td
M mlir/test/mlir-tblgen/pattern.mlir
Log Message:
-----------
[mlir][drr] Fix getValueAndRangeUse for Optional operands (#138742)
Optional operands should just return one single value.
Commit: 5e70460d0155aacbd926f97a7c059de009b6e22d
https://github.com/llvm/llvm-project/commit/5e70460d0155aacbd926f97a7c059de009b6e22d
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M lldb/packages/Python/lldbsuite/test/tools/lldb-dap/dap_server.py
M lldb/packages/Python/lldbsuite/test/tools/lldb-dap/lldbdap_testcase.py
M lldb/test/API/tools/lldb-dap/attach/TestDAP_attach.py
M lldb/test/API/tools/lldb-dap/attach/TestDAP_attachByPortNum.py
Log Message:
-----------
Revert "[lldb-dap] Don't make stopOnAttach the default in attach tests"
This reverts commit 69a0af35a5860156836e9e295ecef9de3474db11 as it's
timing out on the bots.
Commit: 796652dfc198c228b0d917be05ae69073e6c540c
https://github.com/llvm/llvm-project/commit/796652dfc198c228b0d917be05ae69073e6c540c
Author: Paul Kirth <paulkirth at google.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M clang-tools-extra/clang-doc/Representation.h
Log Message:
-----------
[clang-doc] Track Descriptions and TypeDeclaration for types (#138058)
Split from #133161. This patch allows Typedefs to now track both their
declarations and full descriptions. Subsequent patches will leverage the
additional fields in the representation.
Co-authored-by: Peter Chou <peter.chou at mail.utoronto.ca>
Commit: 5d305b618f3f58a7bbe8340ba882233338591d07
https://github.com/llvm/llvm-project/commit/5d305b618f3f58a7bbe8340ba882233338591d07
Author: Kazu Hirata <kazu at google.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M clang-tools-extra/clang-change-namespace/ChangeNamespace.cpp
M clang-tools-extra/clangd/unittests/PrerequisiteModulesTest.cpp
Log Message:
-----------
[clang-tools-extra] Remove redundant calls to std::unique_ptr<T>::get (NFC) (#138774)
Commit: 22d10f0a506d98abcba6091a8efc7c1b61bbef46
https://github.com/llvm/llvm-project/commit/22d10f0a506d98abcba6091a8efc7c1b61bbef46
Author: Paul Kirth <paulkirth at google.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
A clang-tools-extra/clang-doc/assets/clang-doc-mustache.css
A clang-tools-extra/clang-doc/assets/class-template.mustache
A clang-tools-extra/clang-doc/assets/comments-template.mustache
A clang-tools-extra/clang-doc/assets/enum-template.mustache
A clang-tools-extra/clang-doc/assets/function-template.mustache
A clang-tools-extra/clang-doc/assets/mustache-index.js
A clang-tools-extra/clang-doc/assets/namespace-template.mustache
A clang-tools-extra/clang-doc/assets/template.mustache
M clang-tools-extra/clang-doc/tool/CMakeLists.txt
Log Message:
-----------
[clang-doc] Add Mustache template assets (#138059)
This patch adds the various assets used with the HTML Mustache backend.
This includes templates for a variety of different language constructs,
as well as the CSS. Split from #133161.
Co-authored-by: Peter Chou <peter.chou at mail.utoronto.ca>
Commit: 9e7d529607ebde67af5b214a654de82cfa2ec8c4
https://github.com/llvm/llvm-project/commit/9e7d529607ebde67af5b214a654de82cfa2ec8c4
Author: Kaviya Rajendiran <67495422+kaviya2510 at users.noreply.github.com>
Date: 2025-05-07 (Wed, 07 May 2025)
Changed paths:
M flang/include/flang/Semantics/symbol.h
M flang/lib/Lower/OpenMP/ClauseProcessor.cpp
M flang/lib/Lower/OpenMP/ClauseProcessor.h
M flang/lib/Lower/OpenMP/OpenMP.cpp
M flang/lib/Lower/OpenMP/ReductionProcessor.cpp
M flang/lib/Lower/OpenMP/ReductionProcessor.h
M flang/lib/Semantics/resolve-directives.cpp
R flang/test/Lower/OpenMP/Todo/task-inreduction.f90
R flang/test/Lower/OpenMP/Todo/taskgroup-task-reduction.f90
A flang/test/Lower/OpenMP/task-inreduction.f90
A flang/test/Lower/OpenMP/taskgroup-task-array-reduction.f90
A flang/test/Lower/OpenMP/taskgroup-task_reduction01.f90
A flang/test/Lower/OpenMP/taskgroup-task_reduction02.f90
Log Message:
-----------
[Flang][OpenMP]Support for lowering task_reduction and in_reduction to MLIR (#111155)
This patch,
- Added support for lowering of task_reduction to MLIR
- Added support for lowering of in_reduction to MLIR
- Fixed incorrect DSA handling for variables in the presence of 'in_reduction' clause.
Commit: 54aa16d2934f0d57184ab203bc3a0f534501f508
https://github.com/llvm/llvm-project/commit/54aa16d2934f0d57184ab203bc3a0f534501f508
Author: Amir Ayupov <aaupov at fb.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M bolt/include/bolt/Profile/DataAggregator.h
M bolt/lib/Profile/DataAggregator.cpp
M bolt/test/X86/callcont-fallthru.s
Log Message:
-----------
[BOLT] Drop converting return profile to call cont (#129477)
The workaround was not implemented for BAT case, and it is no longer
needed with pre-aggregated traces, alternatively, the effect can be
achieved with `infer-fall-throughs` with old pre-aggregated format
(branches + ranges).
Test Plan: updated callcont-fallthru.s
Commit: e1fed24034fee3f45bc17252ced5ee29ab6b5408
https://github.com/llvm/llvm-project/commit/e1fed24034fee3f45bc17252ced5ee29ab6b5408
Author: NimishMishra <42909663+NimishMishra at users.noreply.github.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M flang/lib/Lower/OpenMP/OpenMP.cpp
M flang/test/Lower/OpenMP/atomic-update.f90
Log Message:
-----------
[flang][OpenMP] Fix fir.convert in omp.atomic.update region (#138397)
Region generation in omp.atomic.update currently emits a direct
`fir.convert`. This crashes when the RHS expression involves complex
type but the LHS variable is primitive type (say `f32`), since a
`fir.convert` from `complex<f32>` to `f32` is emitted, which is illegal.
This PR adds a conditional check to emit an additional `ExtractValueOp`
in case RHS expression has a complex type.
Fixes https://github.com/llvm/llvm-project/issues/138396
Commit: 03f3f156905b3137c1c6c542b7b506d5ec618c24
https://github.com/llvm/llvm-project/commit/03f3f156905b3137c1c6c542b7b506d5ec618c24
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-05-07 (Wed, 07 May 2025)
Changed paths:
A llvm/test/Transforms/Attributor/nofpclass-minimumnum-maximumnum.ll
Log Message:
-----------
ValueTracking: Add baseline tests for minimumnum/maximumnum (#138736)
Mostly copied from existing min/max tests, with a few additions.
Commit: 609a8331a0c9773ab1540a7463a4f6431470e777
https://github.com/llvm/llvm-project/commit/609a8331a0c9773ab1540a7463a4f6431470e777
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-05-07 (Wed, 07 May 2025)
Changed paths:
M llvm/lib/Analysis/ValueTracking.cpp
M llvm/test/Transforms/Attributor/nofpclass-minimumnum-maximumnum.ll
M llvm/unittests/Analysis/ValueTrackingTest.cpp
Log Message:
-----------
ValueTracking: Handle minimumnum and maximumnum in computeKnownFPClass (#138737)
For now use the same treatment as minnum/maxnum, but these should
diverge. alive2 seems happy with this, except for some preexisting bugs
with weird denormal modes.
Commit: 194a4a333a95f9e001d2c8abe82c3d4cf8894acf
https://github.com/llvm/llvm-project/commit/194a4a333a95f9e001d2c8abe82c3d4cf8894acf
Author: Douglas Yung <douglas.yung at sony.com>
Date: 2025-05-07 (Wed, 07 May 2025)
Changed paths:
M llvm/test/CodeGen/Hexagon/isel/pfalse-v4i1.ll
Log Message:
-----------
Fix test pfalse-v4i1.ll added in #138712 to require asserts.
Should fix build bot failure: https://lab.llvm.org/buildbot/#/builders/202/builds/1102
Commit: 0505e3761b3f686765a9deef0e41fbf31bed986a
https://github.com/llvm/llvm-project/commit/0505e3761b3f686765a9deef0e41fbf31bed986a
Author: no92 <no92 at users.noreply.github.com>
Date: 2025-05-06 (Tue, 06 May 2025)
Changed paths:
M llvm/include/llvm/TargetParser/Triple.h
M llvm/lib/TargetParser/Triple.cpp
M llvm/unittests/TargetParser/TripleTest.cpp
Log Message:
-----------
[llvm] Add triples for managarm (#87845)
This PR aims to add a target for
[managarm](https://github.com/managarm/managarm). The targets
`{x86_64,aarch64,riscv64}-pc-managarm-{kernel,mlibc}` will be supported.
Discourse RFC:
[discourse.llvm.org/t/rfc-new-proposed-managarm-support-for-llvm-and-clang-87845/85884](https://discourse.llvm.org/t/rfc-new-proposed-managarm-support-for-llvm-and-clang-87845/85884)
Commit: 82863783a2518b814e7ffc03b0e40a185a39d1b8
https://github.com/llvm/llvm-project/commit/82863783a2518b814e7ffc03b0e40a185a39d1b8
Author: Fangrui Song <i at maskray.me>
Date: 2025-05-07 (Wed, 07 May 2025)
Changed paths:
M llvm/lib/Target/LoongArch/AsmParser/LoongArchAsmParser.cpp
M llvm/lib/Target/LoongArch/LoongArchMCInstLower.cpp
M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchMCCodeEmitter.cpp
M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchMCExpr.cpp
M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchMCExpr.h
M llvm/test/CodeGen/LoongArch/addrspacecast.ll
M llvm/test/CodeGen/LoongArch/alloca.ll
M llvm/test/CodeGen/LoongArch/bnez-beqz.ll
M llvm/test/CodeGen/LoongArch/code-models.ll
M llvm/test/CodeGen/LoongArch/double-br-fcmp.ll
M llvm/test/CodeGen/LoongArch/eh-dwarf-cfa.ll
M llvm/test/CodeGen/LoongArch/exception-pointer-register.ll
M llvm/test/CodeGen/LoongArch/fdiv-reciprocal-estimate.ll
M llvm/test/CodeGen/LoongArch/float-br-fcmp.ll
M llvm/test/CodeGen/LoongArch/fp-expand.ll
M llvm/test/CodeGen/LoongArch/fp-max-min.ll
M llvm/test/CodeGen/LoongArch/fp-maximumnum-minimumnum.ll
M llvm/test/CodeGen/LoongArch/fp-reciprocal.ll
M llvm/test/CodeGen/LoongArch/fp-trunc-store.ll
M llvm/test/CodeGen/LoongArch/fp16-promote.ll
M llvm/test/CodeGen/LoongArch/frint.ll
M llvm/test/CodeGen/LoongArch/fsqrt-reciprocal-estimate.ll
M llvm/test/CodeGen/LoongArch/fsqrt.ll
M llvm/test/CodeGen/LoongArch/intrinsic-csr-side-effects.ll
M llvm/test/CodeGen/LoongArch/ir-instruction/atomicrmw.ll
M llvm/test/CodeGen/LoongArch/ir-instruction/call.ll
M llvm/test/CodeGen/LoongArch/ir-instruction/double-convert.ll
M llvm/test/CodeGen/LoongArch/ir-instruction/float-convert.ll
M llvm/test/CodeGen/LoongArch/ir-instruction/load-store-atomic.ll
M llvm/test/CodeGen/LoongArch/ir-instruction/sdiv-udiv-srem-urem.ll
M llvm/test/CodeGen/LoongArch/machinelicm-address-pseudos.ll
M llvm/test/CodeGen/LoongArch/numeric-reg-names.ll
M llvm/test/CodeGen/LoongArch/soft-fp-to-int.ll
M llvm/test/CodeGen/LoongArch/spill-reload-cfr.ll
M llvm/test/CodeGen/LoongArch/stack-realignment-with-variable-sized-objects.ll
M llvm/test/CodeGen/LoongArch/stack-realignment.ll
M llvm/test/CodeGen/LoongArch/statepoint-call-lowering.ll
M llvm/test/CodeGen/LoongArch/tls-models.ll
M llvm/test/CodeGen/LoongArch/unaligned-memcpy-inline.ll
M llvm/test/CodeGen/LoongArch/vector-fp-imm.ll
M llvm/test/MC/LoongArch/Relocations/relocations.s
Log Message:
-----------
LoongArch: Remove VK_CALL/VK_CALL_PLT and don't print %plt
`%plt` is a redundant relocation specifier: `bl %plt(foo)` is identical
to `bl foo`. Let's replace VK_CALL/VK_CALL_PLT with R_LARCH_B26 and
remove the only specifier constants.
Pull Request: https://github.com/llvm/llvm-project/pull/138632
Commit: ddfdecbd00d2e9ac9b710c33ec9a7a1a6e4498ce
https://github.com/llvm/llvm-project/commit/ddfdecbd00d2e9ac9b710c33ec9a7a1a6e4498ce
Author: Cullen Rhodes <cullen.rhodes at arm.com>
Date: 2025-05-07 (Wed, 07 May 2025)
Changed paths:
M llvm/include/llvm/CodeGen/MachineScheduler.h
M llvm/lib/CodeGen/MachineScheduler.cpp
Log Message:
-----------
[MISched] Add statistics to quantify scheduling (#138090)
When diagnosing scheduler issues it can be useful to know how scheduling
changes the order of instructions, particularly for large functions when
it's not trivial to figure out from the debug output by looking at the
scheduling unit (SU) IDs.
This adds pre-RA and post-RA statistics to track 1) the number of
instructions that remain in source order after scheduling and 2) the
total number of instructions scheduled, to compare 1) against.
Commit: 2d81994c4a41b950eed9bdee189cba9d00381b58
https://github.com/llvm/llvm-project/commit/2d81994c4a41b950eed9bdee189cba9d00381b58
Author: Chuanqi Xu <yedeng.yd at linux.alibaba.com>
Date: 2025-05-07 (Wed, 07 May 2025)
Changed paths:
A clang/test/Modules/befriend.cppm
Log Message:
-----------
[NFC] Add test from issue 61125
Commit: 52f568dbbb61ffe26b7973b482e0e504b405a0ab
https://github.com/llvm/llvm-project/commit/52f568dbbb61ffe26b7973b482e0e504b405a0ab
Author: Martin Storsjö <martin at martin.st>
Date: 2025-05-07 (Wed, 07 May 2025)
Changed paths:
M llvm/lib/DWARFLinker/Parallel/ArrayList.h
Log Message:
-----------
[DWARFLinkerParallel] Change more cases of compare_exchange_weak to compare_exchange_strong (#138692)
This is a follow-up to 07bc54bf4554398b199f4dc849e5193b98422f23; this
fixes more occasional crashes in dsymutil on Windows on aarch64.
Commit: 2b05c7cc4dab43a38212a0464dca0d478d3e1c9a
https://github.com/llvm/llvm-project/commit/2b05c7cc4dab43a38212a0464dca0d478d3e1c9a
Author: Stanislav Mekhanoshin <rampitec at users.noreply.github.com>
Date: 2025-05-07 (Wed, 07 May 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
M llvm/lib/Target/AMDGPU/SIInstrInfo.td
M llvm/lib/Target/AMDGPU/VOP3Instructions.td
M llvm/test/MC/AMDGPU/gfx950_err.s
Log Message:
-----------
[AMDGPU] Fix regclass check for PackedF32InputMods in AsmParser. (#138767)
Downstream patch by Pravin Jagtap.
Commit: e55172f139a21f3d6da932787a0b221b53eab2cb
https://github.com/llvm/llvm-project/commit/e55172f139a21f3d6da932787a0b221b53eab2cb
Author: Robert Imschweiler <robert.imschweiler at amd.com>
Date: 2025-05-07 (Wed, 07 May 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUIGroupLP.cpp
M llvm/lib/Target/AMDGPU/AMDGPUWaitSGPRHazards.cpp
M llvm/lib/Target/AMDGPU/GCNHazardRecognizer.cpp
M llvm/lib/Target/AMDGPU/MCA/AMDGPUCustomBehaviour.cpp
M llvm/lib/Target/AMDGPU/SIFormMemoryClauses.cpp
M llvm/lib/Target/AMDGPU/SIInsertHardClauses.cpp
M llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp
M llvm/lib/Target/AMDGPU/SIInstrInfo.h
Log Message:
-----------
[AMDGPU] Classify FLAT instructions as VMEM (#137148)
Also adapt hazard and wait handling.
Commit: 62f81a9e06c2f27f7181e53441df8c7dc8f1b99b
https://github.com/llvm/llvm-project/commit/62f81a9e06c2f27f7181e53441df8c7dc8f1b99b
Author: Jonathan Thackray <jonathan.thackray at arm.com>
Date: 2025-05-07 (Wed, 07 May 2025)
Changed paths:
M llvm/bindings/ocaml/llvm/llvm.ml
M llvm/bindings/ocaml/llvm/llvm.mli
M llvm/test/Bindings/llvm-c/atomics.ll
Log Message:
-----------
[llvm] Add extra tests for atomicrmw fmaximum/fminimum (#138252)
Add extra tests for `atomicrmw fmaximum/fminimum`, that I missed in my
original PR #137701, and also `fmaximum`/`fminimum` should be defined in
the ocaml bindings.
Commit: 69f3552d5ee27b4a2fb160600564d3d4d3c3868b
https://github.com/llvm/llvm-project/commit/69f3552d5ee27b4a2fb160600564d3d4d3c3868b
Author: anbbna <117081688+anbbna at users.noreply.github.com>
Date: 2025-05-07 (Wed, 07 May 2025)
Changed paths:
M llvm/lib/Target/Mips/MipsISelLowering.cpp
M llvm/test/CodeGen/Mips/llvm-ir/not.ll
M llvm/test/CodeGen/Mips/llvm-ir/xor.ll
M llvm/test/CodeGen/Mips/xor-and.ll
Log Message:
-----------
[MIPS]Remove unnecessary SLL instructions on MIPS64el (#109386)
Optimize ((signext (xor (trunc X), imm)) to (xor (X, imm)).
Fix https://github.com/llvm/llvm-project/issues/99783
Commit: c523b9c2eff0b177a4bb3282ced90bb7ef7ce028
https://github.com/llvm/llvm-project/commit/c523b9c2eff0b177a4bb3282ced90bb7ef7ce028
Author: Iris Shi <0.0 at owo.li>
Date: 2025-05-07 (Wed, 07 May 2025)
Changed paths:
M .ci/metrics/metrics.py
M .github/workflows/libc-fullbuild-tests.yml
M .github/workflows/libcxx-build-and-test.yaml
M .github/workflows/premerge.yaml
M bolt/docs/BinaryAnalysis.md
M bolt/include/bolt/Profile/DataAggregator.h
M bolt/lib/Core/BinaryFunction.cpp
M bolt/lib/Passes/PatchEntries.cpp
M bolt/lib/Profile/DataAggregator.cpp
M bolt/lib/Rewrite/BinaryPassManager.cpp
M bolt/test/X86/callcont-fallthru.s
M clang-tools-extra/clang-change-namespace/ChangeNamespace.cpp
M clang-tools-extra/clang-doc/Representation.h
A clang-tools-extra/clang-doc/assets/clang-doc-mustache.css
A clang-tools-extra/clang-doc/assets/class-template.mustache
A clang-tools-extra/clang-doc/assets/comments-template.mustache
A clang-tools-extra/clang-doc/assets/enum-template.mustache
A clang-tools-extra/clang-doc/assets/function-template.mustache
A clang-tools-extra/clang-doc/assets/mustache-index.js
A clang-tools-extra/clang-doc/assets/namespace-template.mustache
A clang-tools-extra/clang-doc/assets/template.mustache
M clang-tools-extra/clang-doc/tool/CMakeLists.txt
M clang-tools-extra/clang-include-fixer/IncludeFixer.cpp
M clang-tools-extra/clangd/Compiler.cpp
M clang-tools-extra/clangd/index/FileIndex.cpp
M clang-tools-extra/clangd/index/FileIndex.h
M clang-tools-extra/clangd/index/StdLib.cpp
M clang-tools-extra/clangd/index/YAMLSerialization.cpp
M clang-tools-extra/clangd/index/remote/Index.proto
M clang-tools-extra/clangd/index/remote/marshalling/Marshalling.cpp
M clang-tools-extra/clangd/unittests/PrerequisiteModulesTest.cpp
M clang-tools-extra/clangd/unittests/StdLibTests.cpp
M clang-tools-extra/clangd/unittests/TestTU.cpp
M clang-tools-extra/clangd/unittests/remote/MarshallingTests.cpp
M clang-tools-extra/docs/ReleaseNotes.rst
M clang-tools-extra/docs/clang-tidy/checks/boost/use-ranges.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/casting-through-void.rst
M clang-tools-extra/include-cleaner/test/tool.cpp
M clang-tools-extra/include-cleaner/tool/IncludeCleaner.cpp
M clang-tools-extra/include-cleaner/unittests/RecordTest.cpp
M clang-tools-extra/modularize/ModularizeUtilities.cpp
A clang-tools-extra/test/clang-doc/comments-in-macros.cpp
M clang/bindings/python/clang/cindex.py
M clang/bindings/python/tests/cindex/test_cursor.py
M clang/bindings/python/tests/cindex/test_location.py
M clang/bindings/python/tests/cindex/test_source_range.py
M clang/docs/ClangFormatStyleOptions.rst
M clang/docs/CommandGuide/clang.rst
M clang/docs/InternalsManual.rst
M clang/docs/LanguageExtensions.rst
M clang/docs/OpenMPSupport.rst
M clang/docs/ReleaseNotes.rst
M clang/include/clang-c/Index.h
M clang/include/clang/AST/ASTContext.h
M clang/include/clang/AST/ASTStructuralEquivalence.h
M clang/include/clang/AST/DeclCXX.h
M clang/include/clang/AST/ExprCXX.h
M clang/include/clang/AST/Mangle.h
M clang/include/clang/AST/Type.h
M clang/include/clang/Basic/Attr.td
M clang/include/clang/Basic/AttrDocs.td
M clang/include/clang/Basic/Builtins.td
M clang/include/clang/Basic/BuiltinsRISCVXCV.td
M clang/include/clang/Basic/CodeGenOptions.def
M clang/include/clang/Basic/Diagnostic.h
M clang/include/clang/Basic/DiagnosticASTKinds.td
M clang/include/clang/Basic/DiagnosticGroups.td
M clang/include/clang/Basic/DiagnosticLexKinds.td
M clang/include/clang/Basic/DiagnosticParseKinds.td
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/include/clang/Basic/FPOptions.def
M clang/include/clang/Basic/IdentifierTable.h
M clang/include/clang/Basic/LangOptions.def
M clang/include/clang/Basic/LangOptions.h
M clang/include/clang/Basic/LangStandards.def
M clang/include/clang/Basic/OffloadArch.h
M clang/include/clang/Basic/Stack.h
M clang/include/clang/Basic/TargetOSMacros.def
M clang/include/clang/Basic/TokenKinds.def
M clang/include/clang/Basic/arm_sve.td
M clang/include/clang/CIR/Dialect/Builder/CIRBaseBuilder.h
M clang/include/clang/CIR/Dialect/IR/CIRAttrs.td
M clang/include/clang/CIR/Dialect/IR/CIRDialect.h
M clang/include/clang/CIR/Dialect/IR/CIROps.td
A clang/include/clang/CIR/Dialect/IR/CIRTypeConstraints.td
M clang/include/clang/CIR/Dialect/IR/CIRTypes.h
M clang/include/clang/CIR/Dialect/IR/CIRTypes.td
M clang/include/clang/CIR/Dialect/IR/CMakeLists.txt
M clang/include/clang/CIR/Interfaces/CIROpInterfaces.td
M clang/include/clang/CIR/MissingFeatures.h
M clang/include/clang/Driver/Distro.h
M clang/include/clang/Driver/Options.td
M clang/include/clang/Format/Format.h
M clang/include/clang/Frontend/CompilerInstance.h
M clang/include/clang/Interpreter/Interpreter.h
M clang/include/clang/Lex/HLSLRootSignatureTokenKinds.def
M clang/include/clang/Lex/HeaderSearch.h
M clang/include/clang/Lex/ModuleMap.h
M clang/include/clang/Lex/ModuleMapFile.h
M clang/include/clang/Parse/Parser.h
M clang/include/clang/Parse/RAIIObjectsForParser.h
M clang/include/clang/Sema/Overload.h
M clang/include/clang/Sema/Sema.h
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/SMTConstraintManager.h
M clang/include/clang/Support/Compiler.h
M clang/include/clang/Tooling/DependencyScanning/ModuleDepCollector.h
M clang/lib/AST/ASTContext.cpp
M clang/lib/AST/ASTImporter.cpp
M clang/lib/AST/ASTStructuralEquivalence.cpp
M clang/lib/AST/ByteCode/ByteCodeEmitter.h
M clang/lib/AST/ByteCode/Compiler.cpp
M clang/lib/AST/ByteCode/Context.cpp
M clang/lib/AST/ByteCode/Context.h
M clang/lib/AST/ByteCode/EvalEmitter.cpp
M clang/lib/AST/ByteCode/EvalEmitter.h
M clang/lib/AST/ByteCode/EvaluationResult.h
M clang/lib/AST/ByteCode/Interp.cpp
M clang/lib/AST/ByteCode/InterpFrame.cpp
M clang/lib/AST/ByteCode/Pointer.h
M clang/lib/AST/Decl.cpp
M clang/lib/AST/DeclBase.cpp
M clang/lib/AST/DeclCXX.cpp
M clang/lib/AST/ExprConstant.cpp
M clang/lib/AST/ExternalASTSource.cpp
M clang/lib/AST/JSONNodeDumper.cpp
M clang/lib/AST/Mangle.cpp
M clang/lib/AST/ODRDiagsEmitter.cpp
M clang/lib/AST/TextNodeDumper.cpp
M clang/lib/AST/Type.cpp
M clang/lib/Basic/IdentifierTable.cpp
M clang/lib/Basic/LangOptions.cpp
M clang/lib/Basic/OffloadArch.cpp
M clang/lib/Basic/Stack.cpp
M clang/lib/Basic/Targets/NVPTX.cpp
M clang/lib/Basic/Targets/X86.h
M clang/lib/CIR/CodeGen/CIRGenBuilder.h
M clang/lib/CIR/CodeGen/CIRGenCall.cpp
M clang/lib/CIR/CodeGen/CIRGenCall.h
M clang/lib/CIR/CodeGen/CIRGenConstantEmitter.h
M clang/lib/CIR/CodeGen/CIRGenDecl.cpp
M clang/lib/CIR/CodeGen/CIRGenExpr.cpp
M clang/lib/CIR/CodeGen/CIRGenExprAggregate.cpp
M clang/lib/CIR/CodeGen/CIRGenExprConstant.cpp
M clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
M clang/lib/CIR/CodeGen/CIRGenFunction.cpp
M clang/lib/CIR/CodeGen/CIRGenFunction.h
M clang/lib/CIR/CodeGen/CIRGenFunctionInfo.h
M clang/lib/CIR/CodeGen/CIRGenModule.cpp
M clang/lib/CIR/CodeGen/CIRGenModule.h
M clang/lib/CIR/CodeGen/CIRGenOpenACCClause.h
M clang/lib/CIR/CodeGen/CIRGenRecordLayout.h
M clang/lib/CIR/CodeGen/CIRGenRecordLayoutBuilder.cpp
M clang/lib/CIR/CodeGen/CIRGenStmt.cpp
M clang/lib/CIR/CodeGen/CIRGenStmtOpenACCLoop.cpp
M clang/lib/CIR/CodeGen/CIRGenTypes.cpp
M clang/lib/CIR/CodeGen/CIRGenTypes.h
M clang/lib/CIR/CodeGen/TargetInfo.cpp
M clang/lib/CIR/Dialect/IR/CIRAttrs.cpp
M clang/lib/CIR/Dialect/IR/CIRDialect.cpp
M clang/lib/CIR/Dialect/IR/CIRTypes.cpp
M clang/lib/CIR/Dialect/IR/CMakeLists.txt
M clang/lib/CIR/Dialect/Transforms/FlattenCFG.cpp
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.h
M clang/lib/CodeGen/BackendUtil.cpp
M clang/lib/CodeGen/CGBuiltin.cpp
M clang/lib/CodeGen/CGCUDANV.cpp
M clang/lib/CodeGen/CGCall.cpp
M clang/lib/CodeGen/CGDeclCXX.cpp
M clang/lib/CodeGen/CGExpr.cpp
M clang/lib/CodeGen/CGExprAgg.cpp
M clang/lib/CodeGen/CGExprScalar.cpp
M clang/lib/CodeGen/CGHLSLRuntime.cpp
M clang/lib/CodeGen/CGObjCGNU.cpp
M clang/lib/CodeGen/CGOpenMPRuntimeGPU.cpp
M clang/lib/CodeGen/CGStmtOpenMP.cpp
M clang/lib/CodeGen/CodeGenFunction.cpp
M clang/lib/CodeGen/CodeGenFunction.h
M clang/lib/CodeGen/CodeGenModule.cpp
M clang/lib/CodeGen/CodeGenModule.h
M clang/lib/CodeGen/TargetBuiltins/ARM.cpp
M clang/lib/CodeGen/TargetBuiltins/RISCV.cpp
M clang/lib/Driver/Distro.cpp
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/lib/Driver/ToolChains/CommonArgs.cpp
M clang/lib/Driver/ToolChains/Flang.cpp
M clang/lib/Driver/ToolChains/HLSL.cpp
M clang/lib/Driver/ToolChains/OHOS.cpp
M clang/lib/Driver/ToolChains/Solaris.cpp
M clang/lib/Driver/ToolChains/UEFI.cpp
M clang/lib/Format/Format.cpp
M clang/lib/Format/FormatTokenLexer.cpp
M clang/lib/Format/FormatTokenLexer.h
M clang/lib/Format/TokenAnnotator.cpp
M clang/lib/Format/UnwrappedLineParser.cpp
M clang/lib/Frontend/ASTUnit.cpp
M clang/lib/Frontend/ChainedIncludesSource.cpp
M clang/lib/Frontend/CompilerInstance.cpp
M clang/lib/Frontend/CompilerInvocation.cpp
M clang/lib/Frontend/FrontendAction.cpp
M clang/lib/Frontend/InitPreprocessor.cpp
M clang/lib/Frontend/PrecompiledPreamble.cpp
M clang/lib/Frontend/Rewrite/FrontendActions.cpp
M clang/lib/Headers/gpuintrin.h
M clang/lib/Headers/hlsl/hlsl_compat_overloads.h
M clang/lib/Headers/hlsl/hlsl_intrinsic_helpers.h
M clang/lib/Headers/hlsl/hlsl_intrinsics.h
M clang/lib/Headers/riscv_corev_alu.h
M clang/lib/Index/IndexingContext.h
M clang/lib/Interpreter/DeviceOffload.cpp
M clang/lib/Interpreter/DeviceOffload.h
M clang/lib/Interpreter/Interpreter.cpp
M clang/lib/Lex/HeaderSearch.cpp
M clang/lib/Lex/LexHLSLRootSignature.cpp
M clang/lib/Lex/LiteralSupport.cpp
M clang/lib/Lex/ModuleMap.cpp
M clang/lib/Lex/ModuleMapFile.cpp
M clang/lib/Lex/PPDirectives.cpp
M clang/lib/Lex/PPExpressions.cpp
M clang/lib/Lex/Pragma.cpp
M clang/lib/Lex/Preprocessor.cpp
M clang/lib/Parse/ParseDecl.cpp
M clang/lib/Parse/ParseDeclCXX.cpp
M clang/lib/Parse/ParseExpr.cpp
M clang/lib/Parse/ParseHLSL.cpp
M clang/lib/Parse/ParseOpenMP.cpp
M clang/lib/Parse/ParsePragma.cpp
M clang/lib/Parse/ParseStmt.cpp
M clang/lib/Parse/ParseTentative.cpp
M clang/lib/Parse/Parser.cpp
M clang/lib/Sema/JumpDiagnostics.cpp
M clang/lib/Sema/Sema.cpp
M clang/lib/Sema/SemaARM.cpp
M clang/lib/Sema/SemaAccess.cpp
M clang/lib/Sema/SemaAvailability.cpp
M clang/lib/Sema/SemaCUDA.cpp
M clang/lib/Sema/SemaCXXScopeSpec.cpp
M clang/lib/Sema/SemaChecking.cpp
M clang/lib/Sema/SemaCodeComplete.cpp
M clang/lib/Sema/SemaCoroutine.cpp
M clang/lib/Sema/SemaDecl.cpp
M clang/lib/Sema/SemaDeclAttr.cpp
M clang/lib/Sema/SemaDeclCXX.cpp
M clang/lib/Sema/SemaDeclObjC.cpp
M clang/lib/Sema/SemaExceptionSpec.cpp
M clang/lib/Sema/SemaExpr.cpp
M clang/lib/Sema/SemaExprCXX.cpp
M clang/lib/Sema/SemaExprMember.cpp
M clang/lib/Sema/SemaExprObjC.cpp
M clang/lib/Sema/SemaHLSL.cpp
M clang/lib/Sema/SemaInit.cpp
M clang/lib/Sema/SemaLambda.cpp
M clang/lib/Sema/SemaLookup.cpp
M clang/lib/Sema/SemaModule.cpp
M clang/lib/Sema/SemaObjC.cpp
M clang/lib/Sema/SemaOpenACC.cpp
M clang/lib/Sema/SemaOpenACCClause.cpp
M clang/lib/Sema/SemaOpenACCClauseAppertainment.cpp
M clang/lib/Sema/SemaOpenMP.cpp
M clang/lib/Sema/SemaOverload.cpp
M clang/lib/Sema/SemaPPC.cpp
M clang/lib/Sema/SemaPseudoObject.cpp
M clang/lib/Sema/SemaStmt.cpp
M clang/lib/Sema/SemaTemplate.cpp
M clang/lib/Sema/SemaTemplateDeduction.cpp
M clang/lib/Sema/SemaTemplateInstantiate.cpp
M clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
M clang/lib/Sema/SemaTemplateVariadic.cpp
M clang/lib/Sema/SemaType.cpp
M clang/lib/Sema/TreeTransform.h
M clang/lib/Serialization/ASTReader.cpp
M clang/lib/Serialization/ASTReaderDecl.cpp
M clang/lib/Serialization/ASTWriter.cpp
M clang/lib/StaticAnalyzer/Checkers/GenericTaintChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/LocalizationChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/WebKit/PtrTypesSemantics.cpp
M clang/lib/StaticAnalyzer/Checkers/WebKit/RawPtrRefMemberChecker.cpp
M clang/lib/StaticAnalyzer/Core/BugReporter.cpp
M clang/lib/StaticAnalyzer/Core/CheckerContext.cpp
M clang/lib/StaticAnalyzer/Core/CoreEngine.cpp
M clang/lib/StaticAnalyzer/Core/SimpleSValBuilder.cpp
M clang/lib/StaticAnalyzer/Frontend/ModelInjector.cpp
M clang/lib/Testing/TestAST.cpp
M clang/lib/Tooling/DependencyScanning/DependencyScanningWorker.cpp
M clang/lib/Tooling/DependencyScanning/ModuleDepCollector.cpp
M clang/lib/Tooling/Tooling.cpp
M clang/test/AST/ByteCode/constexpr-frame-describe.cpp
R clang/test/AST/ByteCode/constexpr-subobj-initialization.cpp
M clang/test/AST/HLSL/resource_binding_attr.hlsl
M clang/test/ASTMerge/struct/test.c
M clang/test/Analysis/Checkers/WebKit/call-args-checked-ptr.cpp
M clang/test/Analysis/Checkers/WebKit/call-args.cpp
M clang/test/Analysis/Checkers/WebKit/uncounted-local-vars.cpp
M clang/test/Analysis/Checkers/WebKit/uncounted-obj-arg.cpp
M clang/test/C/C23/n3030.c
A clang/test/C/C23/n3037.c
A clang/test/C/C23/n3037_1.c
M clang/test/C/C2y/n3353.c
M clang/test/C/drs/dr0xx.c
M clang/test/C/drs/dr1xx.c
M clang/test/CIR/CodeGen/basic.cpp
M clang/test/CIR/CodeGen/call.cpp
M clang/test/CIR/CodeGen/loop.cpp
A clang/test/CIR/CodeGen/pointers.cpp
M clang/test/CIR/CodeGen/union.c
M clang/test/CIR/CodeGen/vector-ext.cpp
M clang/test/CIR/CodeGen/vector.cpp
A clang/test/CIR/CodeGenOpenACC/loop.cpp
M clang/test/CIR/CodeGenOpenACC/openacc-not-implemented.cpp
M clang/test/CIR/IR/call.cir
M clang/test/CIR/IR/invalid-call.cir
A clang/test/CIR/IR/invalid-long-double.cir
A clang/test/CIR/IR/invalid-vector-create-wrong-size.cir
A clang/test/CIR/IR/invalid-vector-create-wrong-type.cir
A clang/test/CIR/IR/ternary.cir
M clang/test/CIR/IR/vector.cir
A clang/test/CIR/Lowering/ternary.cir
A clang/test/CIR/Transforms/ternary.cir
M clang/test/CXX/dcl.dcl/dcl.attr/dcl.attr.deprecated/p1.cpp
A clang/test/CXX/drs/cwg30xx.cpp
A clang/test/ClangScanDeps/export.c
M clang/test/ClangScanDeps/modules-canononical-module-map-case.c
M clang/test/ClangScanDeps/optimize-vfs-pch.m
M clang/test/CodeGen/AArch64/sve2-intrinsics/acle_sve2_bdep.c
M clang/test/CodeGen/AArch64/sve2-intrinsics/acle_sve2_bext.c
M clang/test/CodeGen/AArch64/sve2-intrinsics/acle_sve2_bgrp.c
M clang/test/CodeGen/RISCV/riscv-xcvalu-c-api.c
M clang/test/CodeGen/RISCV/riscv-xcvalu.c
A clang/test/CodeGenCXX/cxx2c-trivially-relocatable.cpp
M clang/test/CodeGenHLSL/BasicFeatures/InitLists.hlsl
A clang/test/CodeGenHLSL/builtins/ldexp.hlsl
M clang/test/CodeGenHLSL/builtins/lerp-overloads.hlsl
M clang/test/CodeGenOpenCL/amdgpu-features.cl
M clang/test/CodeGenOpenCL/builtins-amdgcn-gfx950.cl
M clang/test/CodeGenOpenCL/kernel-attributes.cl
A clang/test/Driver/dxc_fspv_extension.hlsl
M clang/test/Driver/emulated-tls.cpp
M clang/test/Driver/fveclib.c
M clang/test/Driver/openmp-offload-gpu.c
A clang/test/Driver/print-enabled-extensions/riscv-sifive-p870.c
M clang/test/Driver/riscv-cpus.c
M clang/test/Driver/solaris-ld.c
M clang/test/Driver/uefi-constructed-args.c
M clang/test/Driver/unknown-std.c
M clang/test/Misc/pragma-attribute-supported-attributes-list.test
M clang/test/Misc/target-invalid-cpu-note/riscv.c
M clang/test/Misc/time-passes.c
A clang/test/Modules/Inputs/shadow/A1/A1.h
M clang/test/Modules/Inputs/shadow/A1/module.modulemap
A clang/test/Modules/Inputs/shadow/A2/A2.h
M clang/test/Modules/Inputs/shadow/A2/module.modulemap
A clang/test/Modules/befriend.cppm
A clang/test/Modules/lazy-by-name-lookup.c
M clang/test/Modules/shadow.m
M clang/test/OpenMP/assumes_messages.c
M clang/test/OpenMP/metadirective_ast_print.c
A clang/test/OpenMP/metadirective_default.cpp
M clang/test/OpenMP/metadirective_messages.cpp
M clang/test/OpenMP/metadirective_otherwise.cpp
M clang/test/Parser/cxx1z-fold-expressions.cpp
A clang/test/Parser/cxx2c-trivially-relocatable.cpp
A clang/test/Parser/gh137861.cpp
M clang/test/ParserOpenACC/parse-clauses.c
A clang/test/Preprocessor/_Pragma-in-include.c
M clang/test/Preprocessor/init.c
A clang/test/Preprocessor/macro_reserved.i
M clang/test/Sema/aarch64-sve2-intrinsics/acle_sve2_aes_bitperm_sha3_sm4.cpp
A clang/test/Sema/attr-nonstring.c
M clang/test/Sema/attr-ownership.c
A clang/test/Sema/c++-keyword-in-c.c
A clang/test/Sema/c++-keyword-in-objc.m
A clang/test/Sema/c23-decl-in-prototype.c
M clang/test/Sema/decl-in-prototype.c
M clang/test/Sema/enum.c
M clang/test/Sema/implicit-void-ptr-cast.c
M clang/test/Sema/init-randomized-struct.c
M clang/test/Sema/integer-overflow.c
A clang/test/Sema/ptrauth-struct-function-ptr-field.c
M clang/test/Sema/sizeless-1.c
M clang/test/Sema/typedef-retain.c
M clang/test/Sema/warn-default-const-init.c
A clang/test/Sema/warn-duplicate-decl-specifier.c
A clang/test/Sema/warn-jump-bypasses-init.c
A clang/test/Sema/warn-tentative-defn-compat.c
M clang/test/SemaCXX/attr-trivial-abi.cpp
M clang/test/SemaCXX/builtin-object-size-cxx14.cpp
M clang/test/SemaCXX/cxx1y-variable-templates_in_class.cpp
M clang/test/SemaCXX/cxx1y-variable-templates_top_level.cpp
M clang/test/SemaCXX/cxx2a-consteval.cpp
A clang/test/SemaCXX/cxx2c-trivially-relocatable.cpp
M clang/test/SemaCXX/gnu-asm-constexpr.cpp
M clang/test/SemaCXX/lambda-unevaluated.cpp
M clang/test/SemaCXX/overload-resolution-deferred-templates.cpp
M clang/test/SemaCXX/paren-list-agg-init.cpp
M clang/test/SemaCXX/ptrauth-triviality.cpp
M clang/test/SemaCXX/static-assert-cxx26.cpp
A clang/test/SemaCXX/type-aware-new-delete-transparent-contexts.cpp
M clang/test/SemaCXX/type-traits.cpp
M clang/test/SemaCXX/vla.cpp
M clang/test/SemaCXX/warn-thread-safety-analysis.cpp
M clang/test/SemaCXX/warn-thread-safety-parsing.cpp
A clang/test/SemaHLSL/BuiltIns/ldexp-errors.hlsl
M clang/test/SemaHLSL/BuiltIns/lerp-errors.hlsl
M clang/test/SemaHLSL/resource_binding_attr_error.hlsl
M clang/test/SemaHLSL/resource_binding_implicit.hlsl
M clang/test/SemaOpenACC/atomic-construct.cpp
M clang/test/SemaOpenACC/combined-construct-auto_seq_independent-clauses.c
M clang/test/SemaOpenACC/combined-construct-default-clause.c
M clang/test/SemaOpenACC/combined-construct-default-clause.cpp
M clang/test/SemaOpenACC/combined-construct-device_type-clause.c
M clang/test/SemaOpenACC/combined-construct-gang-clause.cpp
M clang/test/SemaOpenACC/combined-construct-num_gangs-clause.c
M clang/test/SemaOpenACC/combined-construct-num_workers-clause.c
M clang/test/SemaOpenACC/combined-construct-reduction-clause.cpp
M clang/test/SemaOpenACC/combined-construct-self-clause.c
M clang/test/SemaOpenACC/combined-construct-self-clause.cpp
M clang/test/SemaOpenACC/combined-construct-vector-clause.cpp
M clang/test/SemaOpenACC/combined-construct-vector_length-clause.c
M clang/test/SemaOpenACC/combined-construct-worker-clause.cpp
M clang/test/SemaOpenACC/compute-construct-async-clause.c
M clang/test/SemaOpenACC/compute-construct-default-clause.c
M clang/test/SemaOpenACC/compute-construct-default-clause.cpp
M clang/test/SemaOpenACC/compute-construct-device_type-clause.c
M clang/test/SemaOpenACC/compute-construct-num_gangs-clause.c
M clang/test/SemaOpenACC/compute-construct-num_workers-clause.c
M clang/test/SemaOpenACC/compute-construct-reduction-clause.c
M clang/test/SemaOpenACC/compute-construct-reduction-clause.cpp
M clang/test/SemaOpenACC/compute-construct-self-clause.c
M clang/test/SemaOpenACC/compute-construct-self-clause.cpp
M clang/test/SemaOpenACC/compute-construct-vector_length-clause.c
M clang/test/SemaOpenACC/data-construct-async-clause.c
M clang/test/SemaOpenACC/data-construct-default-clause.c
M clang/test/SemaOpenACC/data-construct-device_type-clause.c
M clang/test/SemaOpenACC/data-construct-if-clause.c
M clang/test/SemaOpenACC/data-construct.cpp
M clang/test/SemaOpenACC/init-construct.cpp
M clang/test/SemaOpenACC/loop-construct-auto_seq_independent-clauses.c
M clang/test/SemaOpenACC/loop-construct-collapse-clause.cpp
M clang/test/SemaOpenACC/loop-construct-device_type-clause.c
M clang/test/SemaOpenACC/loop-construct-gang-clause.cpp
M clang/test/SemaOpenACC/loop-construct-reduction-clause.cpp
M clang/test/SemaOpenACC/loop-construct-tile-clause.cpp
M clang/test/SemaOpenACC/loop-construct-vector-clause.cpp
M clang/test/SemaOpenACC/loop-construct-worker-clause.cpp
M clang/test/SemaOpenACC/loop-construct.cpp
M clang/test/SemaOpenACC/routine-construct-clauses.cpp
M clang/test/SemaOpenACC/set-construct.cpp
M clang/test/SemaOpenACC/shutdown-construct.cpp
M clang/test/SemaOpenACC/update-construct.cpp
M clang/test/SemaOpenCL/invalid-block.cl
M clang/test/SemaTemplate/cxx1z-fold-expressions.cpp
M clang/test/SemaTemplate/fun-template-def.cpp
M clang/test/SemaTemplate/instantiate-var-template.cpp
M clang/tools/CMakeLists.txt
M clang/tools/c-index-test/c-index-test.c
M clang/tools/clang-import-test/clang-import-test.cpp
M clang/tools/clang-linker-wrapper/ClangLinkerWrapper.cpp
M clang/tools/clang-offload-bundler/ClangOffloadBundler.cpp
M clang/tools/clang-scan-deps/ClangScanDeps.cpp
M clang/tools/clang-shlib/CMakeLists.txt
M clang/tools/driver/cc1_main.cpp
M clang/tools/libclang/CIndex.cpp
M clang/tools/libclang/CIndexer.cpp
M clang/tools/libclang/CMakeLists.txt
M clang/tools/libclang/CXCursor.cpp
M clang/unittests/AST/ASTImporterTest.cpp
M clang/unittests/AST/ExternalASTSourceTest.cpp
M clang/unittests/AST/StructuralEquivalenceTest.cpp
M clang/unittests/Basic/CMakeLists.txt
A clang/unittests/Basic/OffloadArchTest.cpp
M clang/unittests/Format/CMakeLists.txt
M clang/unittests/Format/ConfigParseTest.cpp
M clang/unittests/Format/FormatTest.cpp
M clang/unittests/Format/TokenAnnotatorTest.cpp
M clang/unittests/Frontend/CodeGenActionTest.cpp
M clang/unittests/Frontend/CompilerInstanceTest.cpp
M clang/unittests/Frontend/FrontendActionTest.cpp
M clang/unittests/Frontend/OutputStreamTest.cpp
M clang/unittests/Lex/LexHLSLRootSignatureTest.cpp
M clang/unittests/Lex/PPCallbacksTest.cpp
M clang/unittests/Sema/SemaNoloadLookupTest.cpp
M clang/unittests/Serialization/ForceCheckFileInputTest.cpp
M clang/unittests/Serialization/LoadSpecLazilyTest.cpp
M clang/unittests/Serialization/ModuleCacheTest.cpp
M clang/unittests/Serialization/NoCommentsTest.cpp
M clang/unittests/Serialization/PreambleInNamedModulesTest.cpp
M clang/unittests/Serialization/VarDeclConstantInitTest.cpp
M clang/unittests/StaticAnalyzer/CallDescriptionTest.cpp
M clang/unittests/Support/TimeProfilerTest.cpp
M clang/unittests/Tooling/CompilationDatabaseTest.cpp
M clang/unittests/Tooling/DependencyScanning/DependencyScannerTest.cpp
M clang/unittests/Tooling/QualTypeNamesTest.cpp
M clang/unittests/Tooling/Syntax/TokensTest.cpp
M clang/unittests/Tooling/Syntax/TreeTestBase.cpp
M clang/unittests/libclang/CrashTests/CMakeLists.txt
M clang/unittests/libclang/CrashTests/LibclangCrashTest.cpp
M clang/utils/TableGen/ClangAttrEmitter.cpp
M clang/utils/TableGen/ClangBuiltinTemplatesEmitter.cpp
M clang/www/c_status.html
M clang/www/cxx_dr_status.html
M clang/www/cxx_status.html
M compiler-rt/lib/asan/asan_fuchsia.cpp
M compiler-rt/lib/hwasan/hwasan_fuchsia.cpp
M compiler-rt/lib/sanitizer_common/sanitizer_common_interceptors.inc
M compiler-rt/lib/sanitizer_common/sanitizer_fuchsia.cpp
M compiler-rt/lib/sanitizer_common/sanitizer_fuchsia.h
M compiler-rt/lib/sanitizer_common/sanitizer_platform_interceptors.h
M compiler-rt/lib/ubsan/ubsan_init_standalone.cpp
M flang-rt/README.md
M flang-rt/lib/runtime/character.cpp
M flang-rt/unittests/Runtime/CharacterTest.cpp
M flang/CMakeLists.txt
R flang/cmake/modules/AddFlangOffloadRuntime.cmake
M flang/docs/Aliasing.md
M flang/docs/FortranStandardsSupport.md
M flang/docs/ReleaseNotes.md
M flang/examples/CMakeLists.txt
R flang/examples/ExternalHelloWorld/CMakeLists.txt
M flang/include/flang/Evaluate/constant.h
M flang/include/flang/Evaluate/tools.h
M flang/include/flang/Frontend/CodeGenOptions.def
M flang/include/flang/Optimizer/Builder/BoxValue.h
M flang/include/flang/Optimizer/Builder/Runtime/RTBuilder.h
M flang/include/flang/Optimizer/Dialect/FIROps.h
M flang/include/flang/Optimizer/Dialect/FIROps.td
M flang/include/flang/Optimizer/Dialect/FIRType.h
M flang/include/flang/Optimizer/Dialect/FIRTypes.td
M flang/include/flang/Optimizer/Transforms/Passes.td
M flang/include/flang/Parser/parse-tree.h
M flang/include/flang/Semantics/symbol.h
M flang/include/flang/Support/Fortran-features.h
M flang/include/flang/Tools/CrossToolHelpers.h
M flang/lib/Evaluate/CMakeLists.txt
M flang/lib/Frontend/CMakeLists.txt
M flang/lib/Frontend/CompilerInvocation.cpp
M flang/lib/Lower/Bridge.cpp
M flang/lib/Lower/CMakeLists.txt
M flang/lib/Lower/CallInterface.cpp
M flang/lib/Lower/ConvertCall.cpp
M flang/lib/Lower/ConvertExpr.cpp
M flang/lib/Lower/ConvertExprToHLFIR.cpp
M flang/lib/Lower/HostAssociations.cpp
M flang/lib/Lower/IO.cpp
M flang/lib/Lower/OpenMP/ClauseProcessor.cpp
M flang/lib/Lower/OpenMP/ClauseProcessor.h
M flang/lib/Lower/OpenMP/Clauses.cpp
M flang/lib/Lower/OpenMP/OpenMP.cpp
M flang/lib/Lower/OpenMP/ReductionProcessor.cpp
M flang/lib/Lower/OpenMP/ReductionProcessor.h
M flang/lib/Optimizer/Builder/Character.cpp
M flang/lib/Optimizer/Builder/FIRBuilder.cpp
M flang/lib/Optimizer/Builder/HLFIRTools.cpp
M flang/lib/Optimizer/CodeGen/CodeGen.cpp
M flang/lib/Optimizer/Dialect/FIROps.cpp
M flang/lib/Optimizer/Dialect/FIRType.cpp
M flang/lib/Optimizer/HLFIR/IR/HLFIROps.cpp
M flang/lib/Optimizer/HLFIR/Transforms/ConvertToFIR.cpp
M flang/lib/Optimizer/HLFIR/Transforms/SimplifyHLFIRIntrinsics.cpp
M flang/lib/Optimizer/Passes/Pipelines.cpp
M flang/lib/Optimizer/Transforms/FunctionAttr.cpp
M flang/lib/Parser/CMakeLists.txt
M flang/lib/Parser/openmp-parsers.cpp
M flang/lib/Parser/preprocessor.cpp
M flang/lib/Semantics/CMakeLists.txt
M flang/lib/Semantics/check-declarations.cpp
M flang/lib/Semantics/check-omp-structure.cpp
M flang/lib/Semantics/pointer-assignment.cpp
M flang/lib/Semantics/resolve-directives.cpp
M flang/lib/Semantics/resolve-names.cpp
M flang/lib/Semantics/semantics.cpp
M flang/lib/Support/Fortran-features.cpp
R flang/runtime/CMakeLists.txt
R flang/runtime/CUDA/CMakeLists.txt
R flang/runtime/Float128Math/CMakeLists.txt
M flang/test/CMakeLists.txt
A flang/test/Driver/func-attr-instrument-functions.f90
M flang/test/Driver/fveclib-codegen.f90
M flang/test/Driver/fveclib.f90
M flang/test/Fir/cse.fir
M flang/test/Fir/invalid.fir
A flang/test/Fir/volatile.fir
A flang/test/Fir/volatile2.fir
M flang/test/HLFIR/simplify-hlfir-intrinsics-maxloc.fir
M flang/test/HLFIR/simplify-hlfir-intrinsics-maxval.fir
M flang/test/HLFIR/simplify-hlfir-intrinsics-minloc.fir
M flang/test/HLFIR/simplify-hlfir-intrinsics-minval.fir
A flang/test/HLFIR/volatile.fir
M flang/test/HLFIR/volatile1.fir
M flang/test/HLFIR/volatile2.fir
M flang/test/HLFIR/volatile3.fir
M flang/test/HLFIR/volatile4.fir
A flang/test/Lower/OpenMP/Todo/atomic-capture-implicit-cast.f90
R flang/test/Lower/OpenMP/Todo/task-inreduction.f90
R flang/test/Lower/OpenMP/Todo/taskgroup-task-reduction.f90
R flang/test/Lower/OpenMP/Todo/taskloop-cancel.f90
R flang/test/Lower/OpenMP/Todo/taskloop.f90
A flang/test/Lower/OpenMP/atomic-implicit-cast.f90
M flang/test/Lower/OpenMP/atomic-update.f90
M flang/test/Lower/OpenMP/cray-pointers01.f90
A flang/test/Lower/OpenMP/masked_taskloop.f90
R flang/test/Lower/OpenMP/master_taskloop.f90
A flang/test/Lower/OpenMP/parallel-masked-taskloop.f90
R flang/test/Lower/OpenMP/parallel-master-taskloop.f90
A flang/test/Lower/OpenMP/task-inreduction.f90
A flang/test/Lower/OpenMP/taskgroup-task-array-reduction.f90
A flang/test/Lower/OpenMP/taskgroup-task_reduction01.f90
A flang/test/Lower/OpenMP/taskgroup-task_reduction02.f90
A flang/test/Lower/OpenMP/taskloop-cancel.f90
A flang/test/Lower/OpenMP/taskloop.f90
A flang/test/Lower/volatile-allocatable1.f90
A flang/test/Lower/volatile-derived-type-pointer.f90
A flang/test/Lower/volatile-derived-type.f90
A flang/test/Lower/volatile-openmp.f90
A flang/test/Lower/volatile-string.f90
A flang/test/Lower/volatile1.f90
A flang/test/Lower/volatile2.f90
A flang/test/Lower/volatile3.f90
A flang/test/Lower/volatile4.f90
A flang/test/Preprocessing/pp048.F
M flang/test/Semantics/assign02.f90
M flang/test/Semantics/call03.f90
M flang/test/Semantics/declarations08.f90
A flang/test/Semantics/resolve125.f90
M flang/test/lit.cfg.py
M flang/test/lit.site.cfg.py.in
M flang/tools/f18/CMakeLists.txt
M flang/unittests/CMakeLists.txt
M flang/unittests/Evaluate/CMakeLists.txt
R flang/unittests/Runtime/CMakeLists.txt
R flang/unittests/Runtime/CUDA/CMakeLists.txt
M libc/cmake/modules/LLVMLibCLibraryRules.cmake
M libc/cmake/modules/LLVMLibCTestRules.cmake
M libc/config/linux/riscv/entrypoints.txt
M libc/config/linux/riscv/headers.txt
M libc/docs/gpu/rpc.rst
M libc/include/llvm-libc-types/jmp_buf.h
M libc/include/stdlib.yaml
M libc/src/__support/FPUtil/FEnvImpl.h
M libc/src/__support/FPUtil/FPBits.h
M libc/src/__support/FPUtil/nearest_integer.h
M libc/src/__support/FPUtil/sqrt.h
M libc/src/setjmp/riscv/CMakeLists.txt
A libc/src/setjmp/riscv/sigsetjmp.cpp
M libc/src/setjmp/x86_64/setjmp.cpp
M libc/src/stdio/printf_core/core_structs.h
M libc/src/stdlib/qsort_r.h
M libc/src/string/memory_utils/aarch64/inline_bcmp.h
M libc/src/string/memory_utils/aarch64/inline_memcmp.h
M libc/src/string/memory_utils/aarch64/inline_memmove.h
M libc/src/string/memory_utils/aarch64/inline_memset.h
M libc/src/string/memory_utils/inline_bcmp.h
M libc/src/string/memory_utils/inline_memcmp.h
M libc/src/string/memory_utils/inline_memset.h
M libc/src/string/memory_utils/op_aarch64.h
M libc/src/sys/stat/linux/chmod.cpp
M libc/test/integration/src/__support/GPU/match.cpp
M libc/test/src/search/lsearch_test.cpp
M libclc/clc/include/clc/common/clc_degrees.h
M libclc/clc/include/clc/common/clc_radians.h
M libclc/clc/include/clc/common/clc_sign.h
M libclc/clc/include/clc/common/clc_smoothstep.h
M libclc/clc/include/clc/integer/clc_add_sat.h
M libclc/clc/include/clc/integer/clc_clz.h
M libclc/clc/include/clc/integer/clc_ctz.h
M libclc/clc/include/clc/integer/clc_hadd.h
M libclc/clc/include/clc/integer/clc_mad24.h
M libclc/clc/include/clc/integer/clc_mad_sat.h
M libclc/clc/include/clc/integer/clc_mul24.h
M libclc/clc/include/clc/integer/clc_mul_hi.h
M libclc/clc/include/clc/integer/clc_rhadd.h
M libclc/clc/include/clc/integer/clc_rotate.h
M libclc/clc/include/clc/integer/clc_sub_sat.h
M libclc/clc/include/clc/internal/math/clc_sw_fma.h
M libclc/clc/include/clc/math/clc_acos.h
M libclc/clc/include/clc/math/clc_acosh.h
M libclc/clc/include/clc/math/clc_acospi.h
M libclc/clc/include/clc/math/clc_asin.h
M libclc/clc/include/clc/math/clc_asinh.h
M libclc/clc/include/clc/math/clc_asinpi.h
M libclc/clc/include/clc/math/clc_atan.h
M libclc/clc/include/clc/math/clc_atan2.h
M libclc/clc/include/clc/math/clc_atan2pi.h
M libclc/clc/include/clc/math/clc_atanh.h
M libclc/clc/include/clc/math/clc_atanpi.h
M libclc/clc/include/clc/math/clc_cbrt.inc
M libclc/clc/include/clc/math/clc_ceil.h
M libclc/clc/include/clc/math/clc_copysign.h
M libclc/clc/include/clc/math/clc_cosh.h
M libclc/clc/include/clc/math/clc_cospi.h
M libclc/clc/include/clc/math/clc_exp.h
M libclc/clc/include/clc/math/clc_exp10.h
M libclc/clc/include/clc/math/clc_exp2.h
M libclc/clc/include/clc/math/clc_exp_helper.h
M libclc/clc/include/clc/math/clc_expm1.h
M libclc/clc/include/clc/math/clc_fabs.h
M libclc/clc/include/clc/math/clc_fdim.h
M libclc/clc/include/clc/math/clc_floor.h
M libclc/clc/include/clc/math/clc_fma.h
M libclc/clc/include/clc/math/clc_fmax.h
M libclc/clc/include/clc/math/clc_fmin.h
M libclc/clc/include/clc/math/clc_fmod.h
M libclc/clc/include/clc/math/clc_fract.h
M libclc/clc/include/clc/math/clc_frexp.h
M libclc/clc/include/clc/math/clc_hypot.h
M libclc/clc/include/clc/math/clc_lgamma.h
M libclc/clc/include/clc/math/clc_lgamma_r.h
M libclc/clc/include/clc/math/clc_log.h
M libclc/clc/include/clc/math/clc_log10.h
M libclc/clc/include/clc/math/clc_log1p.h
M libclc/clc/include/clc/math/clc_log2.h
M libclc/clc/include/clc/math/clc_mad.h
A libclc/clc/include/clc/math/clc_maxmag.h
A libclc/clc/include/clc/math/clc_minmag.h
M libclc/clc/include/clc/math/clc_modf.h
M libclc/clc/include/clc/math/clc_nan.h
M libclc/clc/include/clc/math/clc_native_cos.h
M libclc/clc/include/clc/math/clc_native_divide.h
M libclc/clc/include/clc/math/clc_native_exp.h
M libclc/clc/include/clc/math/clc_native_exp10.h
M libclc/clc/include/clc/math/clc_native_exp2.h
M libclc/clc/include/clc/math/clc_native_log.h
M libclc/clc/include/clc/math/clc_native_log10.h
M libclc/clc/include/clc/math/clc_native_log2.h
M libclc/clc/include/clc/math/clc_native_powr.h
M libclc/clc/include/clc/math/clc_native_recip.h
M libclc/clc/include/clc/math/clc_native_rsqrt.h
M libclc/clc/include/clc/math/clc_native_sin.h
M libclc/clc/include/clc/math/clc_native_sqrt.h
M libclc/clc/include/clc/math/clc_native_tan.h
M libclc/clc/include/clc/math/clc_nextafter.h
M libclc/clc/include/clc/math/clc_pow.h
M libclc/clc/include/clc/math/clc_pown.h
M libclc/clc/include/clc/math/clc_powr.h
M libclc/clc/include/clc/math/clc_remainder.h
M libclc/clc/include/clc/math/clc_remquo.h
M libclc/clc/include/clc/math/clc_rint.h
M libclc/clc/include/clc/math/clc_rootn.h
M libclc/clc/include/clc/math/clc_round.h
M libclc/clc/include/clc/math/clc_rsqrt.h
M libclc/clc/include/clc/math/clc_sincos_helpers.h
M libclc/clc/include/clc/math/clc_sinh.h
M libclc/clc/include/clc/math/clc_sinpi.h
M libclc/clc/include/clc/math/clc_sqrt.h
M libclc/clc/include/clc/math/clc_tanh.h
M libclc/clc/include/clc/math/clc_tanpi.h
M libclc/clc/include/clc/math/clc_tgamma.h
M libclc/clc/include/clc/math/clc_trunc.h
M libclc/clc/include/clc/relational/clc_bitselect.h
M libclc/clc/include/clc/relational/clc_isfinite.h
M libclc/clc/include/clc/relational/clc_isgreater.h
M libclc/clc/include/clc/relational/clc_isgreaterequal.h
M libclc/clc/include/clc/relational/clc_isless.h
M libclc/clc/include/clc/relational/clc_islessequal.h
M libclc/clc/include/clc/relational/clc_islessgreater.h
M libclc/clc/include/clc/relational/clc_isnormal.h
M libclc/clc/include/clc/relational/clc_isnotequal.h
M libclc/clc/include/clc/relational/clc_isordered.h
M libclc/clc/include/clc/relational/clc_isunordered.h
M libclc/clc/include/clc/relational/clc_signbit.h
M libclc/clc/lib/generic/SOURCES
M libclc/clc/lib/generic/math/clc_hypot.cl
A libclc/clc/lib/generic/math/clc_maxmag.cl
A libclc/clc/lib/generic/math/clc_maxmag.inc
A libclc/clc/lib/generic/math/clc_minmag.cl
A libclc/clc/lib/generic/math/clc_minmag.inc
M libclc/clc/lib/generic/math/clc_tables.cl
M libclc/clc/lib/generic/relational/clc_bitselect.cl
M libclc/clspv/lib/shared/vstore_half.cl
M libclc/generic/include/clc/async/async_work_group_copy.h
M libclc/generic/include/clc/async/async_work_group_strided_copy.h
R libclc/generic/include/clc/async/gentype.inc
M libclc/generic/include/clc/async/prefetch.h
M libclc/generic/include/clc/common/degrees.h
M libclc/generic/include/clc/common/radians.h
M libclc/generic/include/clc/common/sign.h
M libclc/generic/include/clc/common/smoothstep.h
M libclc/generic/include/clc/common/step.h
M libclc/generic/include/clc/integer/clz.h
M libclc/generic/include/clc/integer/ctz.h
M libclc/generic/include/clc/integer/hadd.h
R libclc/generic/include/clc/integer/integer-gentype.inc
M libclc/generic/include/clc/integer/mad_hi.h
M libclc/generic/include/clc/integer/mad_sat.h
M libclc/generic/include/clc/integer/mul24.h
M libclc/generic/include/clc/integer/mul_hi.h
M libclc/generic/include/clc/integer/popcount.h
M libclc/generic/include/clc/integer/rhadd.h
M libclc/generic/include/clc/math/acos.h
M libclc/generic/include/clc/math/acosh.h
M libclc/generic/include/clc/math/acospi.h
M libclc/generic/include/clc/math/asin.h
M libclc/generic/include/clc/math/asinh.h
M libclc/generic/include/clc/math/asinpi.h
M libclc/generic/include/clc/math/atan.h
M libclc/generic/include/clc/math/atan2.h
M libclc/generic/include/clc/math/atan2pi.h
M libclc/generic/include/clc/math/atanh.h
M libclc/generic/include/clc/math/atanpi.h
M libclc/generic/include/clc/math/cbrt.h
M libclc/generic/include/clc/math/ceil.h
M libclc/generic/include/clc/math/copysign.h
M libclc/generic/include/clc/math/cos.h
M libclc/generic/include/clc/math/cosh.h
M libclc/generic/include/clc/math/cospi.h
M libclc/generic/include/clc/math/erf.h
M libclc/generic/include/clc/math/erfc.h
M libclc/generic/include/clc/math/exp.h
M libclc/generic/include/clc/math/exp10.h
M libclc/generic/include/clc/math/exp2.h
M libclc/generic/include/clc/math/expm1.h
M libclc/generic/include/clc/math/fabs.h
M libclc/generic/include/clc/math/fdim.h
M libclc/generic/include/clc/math/floor.h
M libclc/generic/include/clc/math/fma.h
M libclc/generic/include/clc/math/fmax.h
M libclc/generic/include/clc/math/fmin.h
M libclc/generic/include/clc/math/half_cos.h
M libclc/generic/include/clc/math/half_divide.h
M libclc/generic/include/clc/math/half_exp.h
M libclc/generic/include/clc/math/half_exp10.h
M libclc/generic/include/clc/math/half_exp2.h
M libclc/generic/include/clc/math/half_log.h
M libclc/generic/include/clc/math/half_log10.h
M libclc/generic/include/clc/math/half_log2.h
M libclc/generic/include/clc/math/half_powr.h
M libclc/generic/include/clc/math/half_recip.h
M libclc/generic/include/clc/math/half_rsqrt.h
M libclc/generic/include/clc/math/half_sin.h
M libclc/generic/include/clc/math/half_sqrt.h
M libclc/generic/include/clc/math/half_tan.h
M libclc/generic/include/clc/math/hypot.h
M libclc/generic/include/clc/math/ilogb.h
M libclc/generic/include/clc/math/lgamma.h
M libclc/generic/include/clc/math/lgamma_r.h
M libclc/generic/include/clc/math/log.h
M libclc/generic/include/clc/math/log10.h
M libclc/generic/include/clc/math/log1p.h
M libclc/generic/include/clc/math/log2.h
M libclc/generic/include/clc/math/logb.h
M libclc/generic/include/clc/math/mad.h
M libclc/generic/include/clc/math/maxmag.h
M libclc/generic/include/clc/math/minmag.h
M libclc/generic/include/clc/math/native_cos.h
M libclc/generic/include/clc/math/native_divide.h
M libclc/generic/include/clc/math/native_exp.h
M libclc/generic/include/clc/math/native_exp10.h
M libclc/generic/include/clc/math/native_exp2.h
M libclc/generic/include/clc/math/native_log.h
M libclc/generic/include/clc/math/native_log10.h
M libclc/generic/include/clc/math/native_log2.h
M libclc/generic/include/clc/math/native_powr.h
M libclc/generic/include/clc/math/native_recip.h
M libclc/generic/include/clc/math/native_rsqrt.h
M libclc/generic/include/clc/math/native_sin.h
M libclc/generic/include/clc/math/native_sqrt.h
M libclc/generic/include/clc/math/native_tan.h
M libclc/generic/include/clc/math/nextafter.h
M libclc/generic/include/clc/math/pow.h
M libclc/generic/include/clc/math/pown.h
M libclc/generic/include/clc/math/powr.h
M libclc/generic/include/clc/math/rint.h
M libclc/generic/include/clc/math/rootn.h
M libclc/generic/include/clc/math/round.h
M libclc/generic/include/clc/math/rsqrt.h
M libclc/generic/include/clc/math/sin.h
M libclc/generic/include/clc/math/sinh.h
M libclc/generic/include/clc/math/sinpi.h
M libclc/generic/include/clc/math/sqrt.h
M libclc/generic/include/clc/math/tan.h
M libclc/generic/include/clc/math/tanh.h
M libclc/generic/include/clc/math/tanpi.h
M libclc/generic/include/clc/math/tgamma.h
M libclc/generic/include/clc/math/trunc.h
M libclc/generic/include/clc/relational/bitselect.h
M libclc/generic/include/clc/relational/isfinite.h
M libclc/generic/include/clc/relational/isgreater.h
M libclc/generic/include/clc/relational/isgreaterequal.h
M libclc/generic/include/clc/relational/isless.h
M libclc/generic/include/clc/relational/islessequal.h
M libclc/generic/include/clc/relational/islessgreater.h
M libclc/generic/include/clc/relational/isnormal.h
M libclc/generic/include/clc/relational/isnotequal.h
M libclc/generic/include/clc/relational/isordered.h
M libclc/generic/include/clc/relational/isunordered.h
M libclc/generic/include/clc/relational/signbit.h
M libclc/generic/include/math/clc_tan.h
M libclc/generic/lib/async/async_work_group_copy.cl
M libclc/generic/lib/async/async_work_group_strided_copy.cl
M libclc/generic/lib/async/prefetch.cl
M libclc/generic/lib/math/maxmag.cl
R libclc/generic/lib/math/maxmag.inc
M libclc/generic/lib/math/minmag.cl
R libclc/generic/lib/math/minmag.inc
M libclc/generic/lib/math/tables.cl
M libclc/generic/lib/shared/vload.cl
M libclc/generic/lib/shared/vstore.cl
M libcxx/CMakeLists.txt
M libcxx/docs/ReleaseNotes/20.rst
M libcxx/include/__bit/bit_floor.h
M libcxx/include/__bit/countl.h
M libcxx/include/__bit/countr.h
M libcxx/include/__bit/popcount.h
M libcxx/include/__configuration/availability.h
M libcxx/include/__cxx03/__algorithm/equal.h
M libcxx/include/__cxx03/__algorithm/for_each.h
M libcxx/include/__cxx03/__algorithm/is_permutation.h
M libcxx/include/__cxx03/__algorithm/iterator_operations.h
M libcxx/include/__cxx03/__algorithm/make_projected.h
M libcxx/include/__cxx03/__algorithm/max.h
M libcxx/include/__cxx03/__algorithm/min.h
M libcxx/include/__cxx03/__algorithm/minmax.h
M libcxx/include/__cxx03/__algorithm/mismatch.h
M libcxx/include/__cxx03/__algorithm/search.h
M libcxx/include/__cxx03/__algorithm/shuffle.h
M libcxx/include/__cxx03/__algorithm/simd_utils.h
M libcxx/include/__cxx03/__algorithm/sort.h
M libcxx/include/__cxx03/__algorithm/three_way_comp_ref_type.h
M libcxx/include/__cxx03/__algorithm/uniform_random_bit_generator_adaptor.h
M libcxx/include/__cxx03/__algorithm/unwrap_iter.h
M libcxx/include/__cxx03/__algorithm/unwrap_range.h
M libcxx/include/__cxx03/__atomic/aliases.h
M libcxx/include/__cxx03/__atomic/atomic.h
M libcxx/include/__cxx03/__atomic/atomic_base.h
M libcxx/include/__cxx03/__atomic/atomic_flag.h
M libcxx/include/__cxx03/__atomic/atomic_init.h
M libcxx/include/__cxx03/__atomic/cxx_atomic_impl.h
M libcxx/include/__cxx03/__atomic/memory_order.h
M libcxx/include/__cxx03/__bit/countl.h
M libcxx/include/__cxx03/__bit/countr.h
M libcxx/include/__cxx03/__bit/popcount.h
M libcxx/include/__cxx03/__bit/rotate.h
M libcxx/include/__cxx03/__bit_reference
M libcxx/include/__cxx03/__chrono/duration.h
M libcxx/include/__cxx03/__chrono/system_clock.h
M libcxx/include/__cxx03/__chrono/time_point.h
M libcxx/include/__cxx03/__config
M libcxx/include/__cxx03/__configuration/language.h
M libcxx/include/__cxx03/__debug_utils/randomize_range.h
M libcxx/include/__cxx03/__exception/operations.h
M libcxx/include/__cxx03/__functional/binary_function.h
M libcxx/include/__cxx03/__functional/binary_negate.h
M libcxx/include/__cxx03/__functional/bind.h
M libcxx/include/__cxx03/__functional/binder1st.h
M libcxx/include/__cxx03/__functional/binder2nd.h
M libcxx/include/__cxx03/__functional/hash.h
M libcxx/include/__cxx03/__functional/identity.h
M libcxx/include/__cxx03/__functional/mem_fun_ref.h
M libcxx/include/__cxx03/__functional/operations.h
M libcxx/include/__cxx03/__functional/pointer_to_binary_function.h
M libcxx/include/__cxx03/__functional/pointer_to_unary_function.h
M libcxx/include/__cxx03/__functional/reference_wrapper.h
M libcxx/include/__cxx03/__functional/unary_function.h
M libcxx/include/__cxx03/__functional/unary_negate.h
M libcxx/include/__cxx03/__functional/weak_result_type.h
M libcxx/include/__cxx03/__fwd/array.h
M libcxx/include/__cxx03/__fwd/complex.h
M libcxx/include/__cxx03/__fwd/pair.h
M libcxx/include/__cxx03/__fwd/string.h
M libcxx/include/__cxx03/__fwd/tuple.h
M libcxx/include/__cxx03/__hash_table
M libcxx/include/__cxx03/__iterator/access.h
M libcxx/include/__cxx03/__iterator/advance.h
M libcxx/include/__cxx03/__iterator/back_insert_iterator.h
M libcxx/include/__cxx03/__iterator/bounded_iter.h
M libcxx/include/__cxx03/__iterator/cpp17_iterator_concepts.h
M libcxx/include/__cxx03/__iterator/distance.h
M libcxx/include/__cxx03/__iterator/front_insert_iterator.h
M libcxx/include/__cxx03/__iterator/insert_iterator.h
M libcxx/include/__cxx03/__iterator/istream_iterator.h
M libcxx/include/__cxx03/__iterator/istreambuf_iterator.h
M libcxx/include/__cxx03/__iterator/iterator_traits.h
M libcxx/include/__cxx03/__iterator/move_iterator.h
M libcxx/include/__cxx03/__iterator/next.h
M libcxx/include/__cxx03/__iterator/ostream_iterator.h
M libcxx/include/__cxx03/__iterator/ostreambuf_iterator.h
M libcxx/include/__cxx03/__iterator/prev.h
M libcxx/include/__cxx03/__iterator/reverse_iterator.h
M libcxx/include/__cxx03/__iterator/wrap_iter.h
M libcxx/include/__cxx03/__locale
M libcxx/include/__cxx03/__locale_dir/locale_base_api/ibm.h
M libcxx/include/__cxx03/__math/hypot.h
M libcxx/include/__cxx03/__memory/addressof.h
M libcxx/include/__cxx03/__memory/aligned_alloc.h
M libcxx/include/__cxx03/__memory/allocate_at_least.h
M libcxx/include/__cxx03/__memory/allocator.h
M libcxx/include/__cxx03/__memory/allocator_arg_t.h
M libcxx/include/__cxx03/__memory/allocator_traits.h
M libcxx/include/__cxx03/__memory/assume_aligned.h
M libcxx/include/__cxx03/__memory/auto_ptr.h
M libcxx/include/__cxx03/__memory/compressed_pair.h
M libcxx/include/__cxx03/__memory/construct_at.h
M libcxx/include/__cxx03/__memory/pointer_traits.h
M libcxx/include/__cxx03/__memory/raw_storage_iterator.h
M libcxx/include/__cxx03/__memory/shared_ptr.h
M libcxx/include/__cxx03/__memory/swap_allocator.h
M libcxx/include/__cxx03/__memory/temp_value.h
M libcxx/include/__cxx03/__memory/uninitialized_algorithms.h
M libcxx/include/__cxx03/__memory/unique_ptr.h
M libcxx/include/__cxx03/__memory/uses_allocator.h
M libcxx/include/__cxx03/__mutex/once_flag.h
M libcxx/include/__cxx03/__mutex/tag_types.h
M libcxx/include/__cxx03/__numeric/accumulate.h
M libcxx/include/__cxx03/__numeric/adjacent_difference.h
M libcxx/include/__cxx03/__numeric/inner_product.h
M libcxx/include/__cxx03/__numeric/partial_sum.h
M libcxx/include/__cxx03/__ostream/basic_ostream.h
M libcxx/include/__cxx03/__random/bernoulli_distribution.h
M libcxx/include/__cxx03/__random/binomial_distribution.h
M libcxx/include/__cxx03/__random/cauchy_distribution.h
M libcxx/include/__cxx03/__random/chi_squared_distribution.h
M libcxx/include/__cxx03/__random/discard_block_engine.h
M libcxx/include/__cxx03/__random/discrete_distribution.h
M libcxx/include/__cxx03/__random/exponential_distribution.h
M libcxx/include/__cxx03/__random/extreme_value_distribution.h
M libcxx/include/__cxx03/__random/fisher_f_distribution.h
M libcxx/include/__cxx03/__random/gamma_distribution.h
M libcxx/include/__cxx03/__random/generate_canonical.h
M libcxx/include/__cxx03/__random/geometric_distribution.h
M libcxx/include/__cxx03/__random/independent_bits_engine.h
M libcxx/include/__cxx03/__random/linear_congruential_engine.h
M libcxx/include/__cxx03/__random/lognormal_distribution.h
M libcxx/include/__cxx03/__random/mersenne_twister_engine.h
M libcxx/include/__cxx03/__random/negative_binomial_distribution.h
M libcxx/include/__cxx03/__random/normal_distribution.h
M libcxx/include/__cxx03/__random/piecewise_constant_distribution.h
M libcxx/include/__cxx03/__random/piecewise_linear_distribution.h
M libcxx/include/__cxx03/__random/poisson_distribution.h
M libcxx/include/__cxx03/__random/random_device.h
M libcxx/include/__cxx03/__random/seed_seq.h
M libcxx/include/__cxx03/__random/shuffle_order_engine.h
M libcxx/include/__cxx03/__random/student_t_distribution.h
M libcxx/include/__cxx03/__random/subtract_with_carry_engine.h
M libcxx/include/__cxx03/__random/uniform_int_distribution.h
M libcxx/include/__cxx03/__random/uniform_real_distribution.h
M libcxx/include/__cxx03/__random/weibull_distribution.h
M libcxx/include/__cxx03/__string/char_traits.h
M libcxx/include/__cxx03/__string/constexpr_c_functions.h
M libcxx/include/__cxx03/__system_error/error_category.h
M libcxx/include/__cxx03/__system_error/error_code.h
M libcxx/include/__cxx03/__system_error/error_condition.h
M libcxx/include/__cxx03/__thread/id.h
M libcxx/include/__cxx03/__thread/thread.h
M libcxx/include/__cxx03/__tree
M libcxx/include/__cxx03/__tuple/find_index.h
M libcxx/include/__cxx03/__tuple/make_tuple_types.h
M libcxx/include/__cxx03/__tuple/sfinae_helpers.h
M libcxx/include/__cxx03/__tuple/tuple_element.h
M libcxx/include/__cxx03/__tuple/tuple_indices.h
M libcxx/include/__cxx03/__tuple/tuple_like.h
M libcxx/include/__cxx03/__tuple/tuple_like_ext.h
M libcxx/include/__cxx03/__tuple/tuple_like_no_subrange.h
M libcxx/include/__cxx03/__tuple/tuple_size.h
M libcxx/include/__cxx03/__type_traits/add_const.h
M libcxx/include/__cxx03/__type_traits/add_cv.h
M libcxx/include/__cxx03/__type_traits/add_lvalue_reference.h
M libcxx/include/__cxx03/__type_traits/add_pointer.h
M libcxx/include/__cxx03/__type_traits/add_rvalue_reference.h
M libcxx/include/__cxx03/__type_traits/add_volatile.h
M libcxx/include/__cxx03/__type_traits/aligned_storage.h
M libcxx/include/__cxx03/__type_traits/aligned_union.h
M libcxx/include/__cxx03/__type_traits/alignment_of.h
M libcxx/include/__cxx03/__type_traits/common_type.h
M libcxx/include/__cxx03/__type_traits/conditional.h
M libcxx/include/__cxx03/__type_traits/conjunction.h
M libcxx/include/__cxx03/__type_traits/decay.h
M libcxx/include/__cxx03/__type_traits/disjunction.h
M libcxx/include/__cxx03/__type_traits/enable_if.h
M libcxx/include/__cxx03/__type_traits/extent.h
M libcxx/include/__cxx03/__type_traits/has_virtual_destructor.h
M libcxx/include/__cxx03/__type_traits/integral_constant.h
M libcxx/include/__cxx03/__type_traits/invoke.h
M libcxx/include/__cxx03/__type_traits/is_abstract.h
M libcxx/include/__cxx03/__type_traits/is_arithmetic.h
M libcxx/include/__cxx03/__type_traits/is_array.h
M libcxx/include/__cxx03/__type_traits/is_assignable.h
M libcxx/include/__cxx03/__type_traits/is_base_of.h
M libcxx/include/__cxx03/__type_traits/is_bounded_array.h
M libcxx/include/__cxx03/__type_traits/is_class.h
M libcxx/include/__cxx03/__type_traits/is_compound.h
M libcxx/include/__cxx03/__type_traits/is_const.h
M libcxx/include/__cxx03/__type_traits/is_constant_evaluated.h
M libcxx/include/__cxx03/__type_traits/is_constructible.h
M libcxx/include/__cxx03/__type_traits/is_convertible.h
M libcxx/include/__cxx03/__type_traits/is_destructible.h
M libcxx/include/__cxx03/__type_traits/is_empty.h
M libcxx/include/__cxx03/__type_traits/is_enum.h
M libcxx/include/__cxx03/__type_traits/is_execution_policy.h
M libcxx/include/__cxx03/__type_traits/is_final.h
M libcxx/include/__cxx03/__type_traits/is_floating_point.h
M libcxx/include/__cxx03/__type_traits/is_function.h
M libcxx/include/__cxx03/__type_traits/is_fundamental.h
M libcxx/include/__cxx03/__type_traits/is_implicitly_default_constructible.h
M libcxx/include/__cxx03/__type_traits/is_integral.h
M libcxx/include/__cxx03/__type_traits/is_literal_type.h
M libcxx/include/__cxx03/__type_traits/is_member_pointer.h
M libcxx/include/__cxx03/__type_traits/is_nothrow_assignable.h
M libcxx/include/__cxx03/__type_traits/is_nothrow_constructible.h
M libcxx/include/__cxx03/__type_traits/is_nothrow_destructible.h
M libcxx/include/__cxx03/__type_traits/is_null_pointer.h
M libcxx/include/__cxx03/__type_traits/is_object.h
M libcxx/include/__cxx03/__type_traits/is_pod.h
M libcxx/include/__cxx03/__type_traits/is_pointer.h
M libcxx/include/__cxx03/__type_traits/is_polymorphic.h
M libcxx/include/__cxx03/__type_traits/is_reference.h
M libcxx/include/__cxx03/__type_traits/is_same.h
M libcxx/include/__cxx03/__type_traits/is_scalar.h
M libcxx/include/__cxx03/__type_traits/is_signed.h
M libcxx/include/__cxx03/__type_traits/is_specialization.h
M libcxx/include/__cxx03/__type_traits/is_standard_layout.h
M libcxx/include/__cxx03/__type_traits/is_swappable.h
M libcxx/include/__cxx03/__type_traits/is_trivial.h
M libcxx/include/__cxx03/__type_traits/is_trivially_assignable.h
M libcxx/include/__cxx03/__type_traits/is_trivially_constructible.h
M libcxx/include/__cxx03/__type_traits/is_trivially_copyable.h
M libcxx/include/__cxx03/__type_traits/is_trivially_destructible.h
M libcxx/include/__cxx03/__type_traits/is_unbounded_array.h
M libcxx/include/__cxx03/__type_traits/is_union.h
M libcxx/include/__cxx03/__type_traits/is_unsigned.h
M libcxx/include/__cxx03/__type_traits/is_void.h
M libcxx/include/__cxx03/__type_traits/is_volatile.h
M libcxx/include/__cxx03/__type_traits/make_32_64_or_128_bit.h
M libcxx/include/__cxx03/__type_traits/make_signed.h
M libcxx/include/__cxx03/__type_traits/make_unsigned.h
M libcxx/include/__cxx03/__type_traits/nat.h
M libcxx/include/__cxx03/__type_traits/negation.h
M libcxx/include/__cxx03/__type_traits/noexcept_move_assign_container.h
M libcxx/include/__cxx03/__type_traits/rank.h
M libcxx/include/__cxx03/__type_traits/remove_all_extents.h
M libcxx/include/__cxx03/__type_traits/remove_const.h
M libcxx/include/__cxx03/__type_traits/remove_cv.h
M libcxx/include/__cxx03/__type_traits/remove_cvref.h
M libcxx/include/__cxx03/__type_traits/remove_extent.h
M libcxx/include/__cxx03/__type_traits/remove_pointer.h
M libcxx/include/__cxx03/__type_traits/remove_reference.h
M libcxx/include/__cxx03/__type_traits/remove_volatile.h
M libcxx/include/__cxx03/__type_traits/result_of.h
M libcxx/include/__cxx03/__type_traits/strip_signature.h
M libcxx/include/__cxx03/__type_traits/type_identity.h
M libcxx/include/__cxx03/__type_traits/underlying_type.h
M libcxx/include/__cxx03/__type_traits/unwrap_ref.h
M libcxx/include/__cxx03/__type_traits/void_t.h
M libcxx/include/__cxx03/__utility/as_lvalue.h
M libcxx/include/__cxx03/__utility/integer_sequence.h
M libcxx/include/__cxx03/__utility/pair.h
M libcxx/include/__cxx03/__utility/piecewise_construct.h
M libcxx/include/__cxx03/__utility/small_buffer.h
M libcxx/include/__cxx03/__utility/swap.h
M libcxx/include/__cxx03/__utility/unreachable.h
M libcxx/include/__cxx03/__variant/monostate.h
M libcxx/include/__cxx03/algorithm
M libcxx/include/__cxx03/array
M libcxx/include/__cxx03/atomic
M libcxx/include/__cxx03/bitset
M libcxx/include/__cxx03/chrono
M libcxx/include/__cxx03/cmath
M libcxx/include/__cxx03/codecvt
M libcxx/include/__cxx03/complex
M libcxx/include/__cxx03/condition_variable
M libcxx/include/__cxx03/cstddef
M libcxx/include/__cxx03/cstdio
M libcxx/include/__cxx03/cstdlib
M libcxx/include/__cxx03/ctime
M libcxx/include/__cxx03/cuchar
M libcxx/include/__cxx03/cwchar
M libcxx/include/__cxx03/deque
M libcxx/include/__cxx03/exception
M libcxx/include/__cxx03/ext/hash_map
M libcxx/include/__cxx03/ext/hash_set
M libcxx/include/__cxx03/forward_list
M libcxx/include/__cxx03/fstream
M libcxx/include/__cxx03/functional
M libcxx/include/__cxx03/future
M libcxx/include/__cxx03/iomanip
M libcxx/include/__cxx03/ios
M libcxx/include/__cxx03/iosfwd
M libcxx/include/__cxx03/istream
M libcxx/include/__cxx03/iterator
M libcxx/include/__cxx03/limits
M libcxx/include/__cxx03/list
M libcxx/include/__cxx03/locale
M libcxx/include/__cxx03/map
M libcxx/include/__cxx03/memory
M libcxx/include/__cxx03/mutex
M libcxx/include/__cxx03/new
M libcxx/include/__cxx03/numeric
M libcxx/include/__cxx03/ostream
M libcxx/include/__cxx03/queue
M libcxx/include/__cxx03/random
M libcxx/include/__cxx03/ratio
M libcxx/include/__cxx03/regex
M libcxx/include/__cxx03/set
M libcxx/include/__cxx03/sstream
M libcxx/include/__cxx03/stack
M libcxx/include/__cxx03/stdatomic.h
M libcxx/include/__cxx03/stdexcept
M libcxx/include/__cxx03/streambuf
M libcxx/include/__cxx03/string
M libcxx/include/__cxx03/string_view
M libcxx/include/__cxx03/strstream
M libcxx/include/__cxx03/system_error
M libcxx/include/__cxx03/thread
M libcxx/include/__cxx03/type_traits
M libcxx/include/__cxx03/typeindex
M libcxx/include/__cxx03/typeinfo
M libcxx/include/__cxx03/uchar.h
M libcxx/include/__cxx03/unordered_map
M libcxx/include/__cxx03/unordered_set
M libcxx/include/__cxx03/utility
M libcxx/include/__cxx03/valarray
M libcxx/include/__cxx03/vector
M libcxx/include/__cxx03/version
M libcxx/include/__iterator/advance.h
M libcxx/include/__iterator/next.h
M libcxx/include/__iterator/prev.h
M libcxx/include/__type_traits/is_unbounded_array.h
M libcxx/include/__vector/vector.h
M libcxx/include/__vector/vector_bool.h
M libcxx/include/string
M libcxx/test/libcxx/iterators/assert.next.pass.cpp
M libcxx/test/libcxx/iterators/assert.prev.pass.cpp
A libcxx/test/libcxx/vendor/apple/disable-availability.sh.cpp
M libcxx/test/std/algorithms/alg.modifying.operations/alg.fill/fill_n.pass.cpp
M libcxx/test/std/containers/container.adaptors/flat.map/flat.map.iterators/iterator_comparison.pass.cpp
M libcxx/test/std/containers/container.adaptors/flat.multimap/flat.multimap.iterators/iterator_comparison.pass.cpp
M libcxx/test/std/containers/container.adaptors/flat.multiset/flat.multiset.iterators/iterator_comparison.pass.cpp
M libcxx/test/std/containers/container.adaptors/flat.set/flat.set.iterators/iterator_comparison.pass.cpp
M libcxx/test/std/containers/sequences/vector/vector.modifiers/common.h
M libcxx/test/std/containers/sequences/vector/vector.modifiers/emplace.pass.cpp
R libcxx/test/std/containers/sequences/vector/vector.modifiers/emplace_extra.pass.cpp
M libcxx/test/std/strings/basic.string/string.nonmembers/string_op+/string.string_view.pass.cpp
M libcxx/test/support/MinSequenceContainer.h
M libcxx/test/support/test_iterators.h
M libcxx/utils/ci/apple-install-libcxx.sh
M libcxx/utils/ci/run-buildbot-container
M libcxxabi/src/demangle/Utility.h
M lld/COFF/DebugTypes.cpp
M lld/COFF/Driver.cpp
M lld/COFF/DriverUtils.cpp
M lld/COFF/Writer.cpp
M lld/ELF/Driver.cpp
M lld/ELF/ICF.cpp
M lld/MachO/ConcatOutputSection.cpp
M lld/MachO/ConcatOutputSection.h
M lld/MachO/InputFiles.cpp
M lld/docs/ld.lld.1
A lld/test/COFF/cygwin-symbols.s
M lld/test/ELF/sparcv9-reloc.s
M lld/test/ELF/sparcv9-tls-le.s
M lld/test/MachO/arm64-thunks.s
A lld/test/MachO/reexport-without-rpath.s
A lld/utils/run_benchmark.py
M lld/wasm/WriterUtils.cpp
M lldb/cmake/modules/LLDBConfig.cmake
M lldb/docs/use/map.rst
M lldb/include/lldb/Core/FormatEntity.h
M lldb/include/lldb/DataFormatters/TypeSynthetic.h
M lldb/include/lldb/DataFormatters/VectorIterator.h
M lldb/include/lldb/Interpreter/ScriptInterpreter.h
M lldb/include/lldb/Symbol/CompilerType.h
M lldb/include/lldb/Symbol/TypeSystem.h
M lldb/include/lldb/Target/Memory.h
M lldb/include/lldb/Target/Process.h
M lldb/include/lldb/Target/Target.h
M lldb/include/lldb/Utility/RangeMap.h
M lldb/include/lldb/ValueObject/ValueObject.h
M lldb/include/lldb/ValueObject/ValueObjectRegister.h
M lldb/include/lldb/ValueObject/ValueObjectSyntheticFilter.h
M lldb/packages/Python/lldbsuite/test/tools/lldb-dap/dap_server.py
M lldb/packages/Python/lldbsuite/test/tools/lldb-dap/lldbdap_testcase.py
M lldb/source/API/SBValue.cpp
M lldb/source/Breakpoint/WatchpointAlgorithms.cpp
M lldb/source/Commands/CommandObjectCommands.cpp
M lldb/source/Commands/CommandObjectPlatform.cpp
M lldb/source/Commands/CommandObjectProcess.cpp
M lldb/source/Commands/CommandObjectTarget.cpp
M lldb/source/Commands/Options.td
M lldb/source/Core/CoreProperties.td
M lldb/source/Core/Debugger.cpp
M lldb/source/Core/FormatEntity.cpp
M lldb/source/Core/ModuleList.cpp
M lldb/source/DataFormatters/CXXFunctionPointer.cpp
M lldb/source/DataFormatters/FormatterBytecode.cpp
M lldb/source/DataFormatters/TypeSynthetic.cpp
M lldb/source/DataFormatters/VectorType.cpp
M lldb/source/Expression/DiagnosticManager.cpp
M lldb/source/Host/macosx/objcxx/Host.mm
M lldb/source/Host/posix/ProcessLauncherPosixFork.cpp
M lldb/source/Interpreter/CommandObject.cpp
M lldb/source/Plugins/ExpressionParser/Clang/ClangASTMetadata.cpp
M lldb/source/Plugins/ExpressionParser/Clang/ClangASTMetadata.h
M lldb/source/Plugins/ExpressionParser/Clang/ClangModulesDeclVendor.cpp
M lldb/source/Plugins/Language/CPlusPlus/BlockPointer.cpp
M lldb/source/Plugins/Language/CPlusPlus/Coroutines.cpp
M lldb/source/Plugins/Language/CPlusPlus/Coroutines.h
M lldb/source/Plugins/Language/CPlusPlus/GenericBitset.cpp
M lldb/source/Plugins/Language/CPlusPlus/GenericOptional.cpp
M lldb/source/Plugins/Language/CPlusPlus/LibCxx.cpp
M lldb/source/Plugins/Language/CPlusPlus/LibCxx.h
M lldb/source/Plugins/Language/CPlusPlus/LibCxxAtomic.cpp
M lldb/source/Plugins/Language/CPlusPlus/LibCxxInitializerList.cpp
M lldb/source/Plugins/Language/CPlusPlus/LibCxxList.cpp
M lldb/source/Plugins/Language/CPlusPlus/LibCxxMap.cpp
M lldb/source/Plugins/Language/CPlusPlus/LibCxxProxyArray.cpp
M lldb/source/Plugins/Language/CPlusPlus/LibCxxQueue.cpp
M lldb/source/Plugins/Language/CPlusPlus/LibCxxRangesRefView.cpp
M lldb/source/Plugins/Language/CPlusPlus/LibCxxSliceArray.cpp
M lldb/source/Plugins/Language/CPlusPlus/LibCxxSpan.cpp
M lldb/source/Plugins/Language/CPlusPlus/LibCxxTuple.cpp
M lldb/source/Plugins/Language/CPlusPlus/LibCxxUnorderedMap.cpp
M lldb/source/Plugins/Language/CPlusPlus/LibCxxValarray.cpp
M lldb/source/Plugins/Language/CPlusPlus/LibCxxVariant.cpp
M lldb/source/Plugins/Language/CPlusPlus/LibCxxVector.cpp
M lldb/source/Plugins/Language/CPlusPlus/LibStdcpp.cpp
M lldb/source/Plugins/Language/CPlusPlus/LibStdcppTuple.cpp
M lldb/source/Plugins/Language/CPlusPlus/LibStdcppUniquePointer.cpp
M lldb/source/Plugins/Language/ObjC/Cocoa.cpp
M lldb/source/Plugins/Language/ObjC/NSArray.cpp
M lldb/source/Plugins/Language/ObjC/NSDictionary.cpp
M lldb/source/Plugins/Language/ObjC/NSError.cpp
M lldb/source/Plugins/Language/ObjC/NSException.cpp
M lldb/source/Plugins/Language/ObjC/NSIndexPath.cpp
M lldb/source/Plugins/Language/ObjC/NSSet.cpp
M lldb/source/Plugins/Process/elf-core/ThreadElfCore.cpp
M lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunication.cpp
M lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.cpp
M lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
M lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp
M lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPythonImpl.h
M lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp
M lldb/source/Plugins/SymbolFile/NativePDB/CompileUnitIndex.cpp
M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp
M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.h
M lldb/source/Symbol/CompilerType.cpp
M lldb/source/Target/Memory.cpp
M lldb/source/Target/Platform.cpp
M lldb/source/Target/Process.cpp
M lldb/source/Target/Target.cpp
M lldb/source/Target/TargetProperties.td
M lldb/source/Utility/ArchSpec.cpp
M lldb/source/ValueObject/ValueObject.cpp
M lldb/source/ValueObject/ValueObjectRegister.cpp
M lldb/source/ValueObject/ValueObjectSyntheticFilter.cpp
M lldb/test/API/commands/settings/TestSettings.py
M lldb/test/API/commands/target/stop-hooks/TestStopHookScripted.py
M lldb/test/API/commands/target/stop-hooks/TestStopHooks.py
A lldb/test/API/commands/target/stop-hooks/on-core-load/TestStopHookOnCoreLoad.py
A lldb/test/API/commands/target/stop-hooks/on-core-load/linux-x86_64.core
A lldb/test/API/commands/target/stop-hooks/on-core-load/stop_hook.py
A lldb/test/API/commands/target/stop-hooks/on-core-load/test.core.yaml
A lldb/test/API/functionalities/process_save_core_minidump/TestProcessSaveCoreMinidumpYaml.py
A lldb/test/API/functionalities/process_save_core_minidump/minidump_mem64.yaml
M lldb/test/API/lang/cpp/dynamic-value/Makefile
M lldb/test/API/lang/cpp/dynamic-value/TestDynamicValue.py
M lldb/test/API/lang/cpp/dynamic-value/a.h
A lldb/test/API/lang/cpp/dynamic-value/forward-a.cpp
M lldb/test/API/lang/cpp/dynamic-value/pass-to-base.cpp
M lldb/test/API/python_api/event/TestEvents.py
M lldb/test/API/python_api/sbvalue_const_addrof/main.cpp
M lldb/test/API/tools/lldb-dap/attach/TestDAP_attach.py
M lldb/test/API/tools/lldb-dap/attach/TestDAP_attachByPortNum.py
M lldb/test/API/tools/lldb-dap/breakpoint-events/TestDAP_breakpointEvents.py
M lldb/test/API/tools/lldb-dap/breakpoint/TestDAP_breakpointLocations.py
M lldb/test/API/tools/lldb-dap/breakpoint/TestDAP_setBreakpoints.py
M lldb/test/API/tools/lldb-dap/commands/TestDAP_commands.py
M lldb/test/API/tools/lldb-dap/completions/TestDAP_completions.py
M lldb/test/API/tools/lldb-dap/console/TestDAP_console.py
M lldb/test/API/tools/lldb-dap/disassemble/TestDAP_disassemble.py
M lldb/test/API/tools/lldb-dap/disconnect/TestDAP_disconnect.py
M lldb/test/API/tools/lldb-dap/evaluate/TestDAP_evaluate.py
M lldb/test/API/tools/lldb-dap/launch/TestDAP_launch.py
M lldb/test/API/tools/lldb-dap/memory/TestDAP_memory.py
M lldb/test/API/tools/lldb-dap/progress/TestDAP_Progress.py
M lldb/test/API/tools/lldb-dap/repl-mode/TestDAP_repl_mode_detection.py
M lldb/test/API/tools/lldb-dap/restart/TestDAP_restart.py
M lldb/test/API/tools/lldb-dap/restart/TestDAP_restart_runInTerminal.py
M lldb/test/API/tools/lldb-dap/stop-hooks/TestDAP_stop_hooks.py
M lldb/test/API/tools/lldb-dap/variables/TestDAP_variables.py
M lldb/test/API/tools/lldb-server/TestLldbGdbServer.py
A lldb/test/Shell/Expr/TestExprWithSideEffect.cpp
A lldb/test/Shell/Expr/TestExprWithSideEffectOnConvenienceVar.cpp
A lldb/test/Shell/Expr/TestExprWithSideEffectOnConvenienceVarWindows.cpp
A lldb/test/Shell/Expr/TestProcessModificationIdOnExpr.cpp
M lldb/test/Shell/lit.site.cfg.py.in
M lldb/tools/lldb-dap/DAP.cpp
M lldb/tools/lldb-dap/DAP.h
M lldb/tools/lldb-dap/EventHelper.cpp
M lldb/tools/lldb-dap/Handler/AttachRequestHandler.cpp
M lldb/tools/lldb-dap/Handler/ConfigurationDoneRequestHandler.cpp
M lldb/tools/lldb-dap/Handler/InitializeRequestHandler.cpp
M lldb/tools/lldb-dap/Handler/LaunchRequestHandler.cpp
M lldb/tools/lldb-dap/Handler/RequestHandler.cpp
M lldb/tools/lldb-dap/Handler/RequestHandler.h
M lldb/tools/lldb-dap/Handler/RestartRequestHandler.cpp
M lldb/tools/lldb-dap/Handler/SetVariableRequestHandler.cpp
M lldb/tools/lldb-dap/LLDBUtils.cpp
M lldb/tools/lldb-dap/LLDBUtils.h
M lldb/tools/lldb-dap/Protocol/ProtocolRequests.cpp
M lldb/tools/lldb-dap/Protocol/ProtocolRequests.h
M lldb/tools/lldb-dap/Protocol/ProtocolTypes.cpp
M lldb/tools/lldb-dap/Protocol/ProtocolTypes.h
M lldb/tools/lldb-dap/README.md
M lldb/tools/lldb-dap/package.json
M lldb/tools/lldb-dap/src-ts/debug-configuration-provider.ts
M lldb/unittests/Core/FormatEntityTest.cpp
M lldb/unittests/Core/MangledTest.cpp
M lldb/unittests/Host/HostTest.cpp
M lldb/unittests/Platform/PlatformSiginfoTest.cpp
M lldb/unittests/Utility/LogTest.cpp
M llvm/CMakeLists.txt
M llvm/bindings/ocaml/llvm/llvm.ml
M llvm/bindings/ocaml/llvm/llvm.mli
M llvm/cmake/config-ix.cmake
M llvm/cmake/modules/CrossCompile.cmake
M llvm/docs/CommandGuide/llvm-reduce.rst
M llvm/docs/DeveloperPolicy.rst
M llvm/docs/GitHub.rst
M llvm/docs/GlobalISel/GenericOpcode.rst
M llvm/docs/HowToUpdateDebugInfo.rst
M llvm/docs/LangRef.rst
M llvm/docs/ProgrammersManual.rst
M llvm/docs/ReleaseNotes.md
M llvm/include/llvm-c/Core.h
M llvm/include/llvm/ADT/ArrayRef.h
M llvm/include/llvm/ADT/MapVector.h
M llvm/include/llvm/ADT/STLForwardCompat.h
M llvm/include/llvm/Analysis/ConstantFolding.h
M llvm/include/llvm/Analysis/MemoryLocation.h
M llvm/include/llvm/Analysis/TargetTransformInfo.h
M llvm/include/llvm/Analysis/TargetTransformInfoImpl.h
M llvm/include/llvm/AsmParser/LLToken.h
M llvm/include/llvm/BinaryFormat/DynamicTags.def
M llvm/include/llvm/BinaryFormat/ELFRelocs/Sparc.def
M llvm/include/llvm/Bitcode/LLVMBitCodes.h
M llvm/include/llvm/CodeGen/AsmPrinter.h
M llvm/include/llvm/CodeGen/BasicTTIImpl.h
M llvm/include/llvm/CodeGen/CodeGenTargetMachineImpl.h
M llvm/include/llvm/CodeGen/GlobalISel/MachineIRBuilder.h
M llvm/include/llvm/CodeGen/GlobalISel/Utils.h
M llvm/include/llvm/CodeGen/ISDOpcodes.h
M llvm/include/llvm/CodeGen/MachineBasicBlock.h
M llvm/include/llvm/CodeGen/MachineInstr.h
M llvm/include/llvm/CodeGen/MachineInstrBuilder.h
M llvm/include/llvm/CodeGen/MachineScheduler.h
M llvm/include/llvm/CodeGen/RegAllocEvictionAdvisor.h
M llvm/include/llvm/CodeGen/SDPatternMatch.h
M llvm/include/llvm/CodeGen/SelectionDAGISel.h
M llvm/include/llvm/CodeGen/SelectionDAGNodes.h
M llvm/include/llvm/CodeGen/Spiller.h
M llvm/include/llvm/CodeGen/TargetRegisterInfo.h
M llvm/include/llvm/CodeGen/TargetSchedule.h
M llvm/include/llvm/DebugInfo/GSYM/InlineInfo.h
M llvm/include/llvm/Demangle/Utility.h
M llvm/include/llvm/ExecutionEngine/JITLink/JITLinkMemoryManager.h
M llvm/include/llvm/Frontend/Directive/DirectiveBase.td
M llvm/include/llvm/Frontend/OpenMP/OMP.td
M llvm/include/llvm/IR/BasicBlock.h
M llvm/include/llvm/IR/Constants.h
M llvm/include/llvm/IR/DebugInfoMetadata.h
M llvm/include/llvm/IR/DebugLoc.h
M llvm/include/llvm/IR/Function.h
M llvm/include/llvm/IR/GenericConvergenceVerifierImpl.h
M llvm/include/llvm/IR/IRBuilder.h
M llvm/include/llvm/IR/InstVisitor.h
M llvm/include/llvm/IR/Instructions.h
M llvm/include/llvm/IR/IntrinsicInst.h
M llvm/include/llvm/IR/IntrinsicsNVVM.td
M llvm/include/llvm/IR/LLVMContext.h
M llvm/include/llvm/IR/Type.h
M llvm/include/llvm/IR/ValueMap.h
M llvm/include/llvm/Linker/Linker.h
M llvm/include/llvm/MC/MCInstrDesc.h
M llvm/include/llvm/Pass.h
M llvm/include/llvm/Passes/CodeGenPassBuilder.h
M llvm/include/llvm/ProfileData/InstrProfReader.h
M llvm/include/llvm/ProfileData/MemProf.h
M llvm/include/llvm/ProfileData/MemProfYAML.h
M llvm/include/llvm/Support/AutoConvert.h
M llvm/include/llvm/Support/BranchProbability.h
M llvm/include/llvm/Support/CrashRecoveryContext.h
M llvm/include/llvm/Support/Error.h
M llvm/include/llvm/Support/ErrorHandling.h
M llvm/include/llvm/Support/GenericLoopInfoImpl.h
A llvm/include/llvm/Support/ProgramStack.h
M llvm/include/llvm/Support/TargetOpcodes.def
M llvm/include/llvm/Support/Win64EH.h
M llvm/include/llvm/Support/thread.h
M llvm/include/llvm/TableGen/DirectiveEmitter.h
M llvm/include/llvm/TableGen/Record.h
M llvm/include/llvm/Target/GenericOpcodes.td
M llvm/include/llvm/Target/GlobalISel/SelectionDAGCompat.td
M llvm/include/llvm/Target/TargetCallingConv.td
M llvm/include/llvm/Target/TargetSelectionDAG.td
M llvm/include/llvm/TargetParser/Triple.h
M llvm/include/llvm/Transforms/Scalar/GVN.h
M llvm/include/llvm/Transforms/Scalar/Reassociate.h
M llvm/include/llvm/Transforms/Utils/Cloning.h
M llvm/include/llvm/Transforms/Utils/LowerMemIntrinsics.h
M llvm/include/llvm/Transforms/Utils/ValueMapper.h
M llvm/lib/Analysis/AliasAnalysis.cpp
M llvm/lib/Analysis/BasicAliasAnalysis.cpp
M llvm/lib/Analysis/BranchProbabilityInfo.cpp
M llvm/lib/Analysis/ConstantFolding.cpp
M llvm/lib/Analysis/InlineCost.cpp
M llvm/lib/Analysis/InstructionSimplify.cpp
M llvm/lib/Analysis/KernelInfo.cpp
M llvm/lib/Analysis/Lint.cpp
M llvm/lib/Analysis/LoopAccessAnalysis.cpp
M llvm/lib/Analysis/MemoryLocation.cpp
M llvm/lib/Analysis/ModuleSummaryAnalysis.cpp
M llvm/lib/Analysis/ScalarEvolution.cpp
M llvm/lib/Analysis/TargetTransformInfo.cpp
M llvm/lib/Analysis/ValueTracking.cpp
M llvm/lib/Analysis/VectorUtils.cpp
M llvm/lib/AsmParser/LLLexer.cpp
M llvm/lib/AsmParser/LLParser.cpp
M llvm/lib/Bitcode/Reader/BitcodeReader.cpp
M llvm/lib/Bitcode/Writer/BitcodeWriter.cpp
M llvm/lib/CodeGen/AllocationOrder.h
M llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
M llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
M llvm/lib/CodeGen/AsmPrinter/WinCFGuard.cpp
M llvm/lib/CodeGen/AssignmentTrackingAnalysis.cpp
M llvm/lib/CodeGen/AtomicExpandPass.cpp
M llvm/lib/CodeGen/BranchRelaxation.cpp
M llvm/lib/CodeGen/ComplexDeinterleavingPass.cpp
M llvm/lib/CodeGen/FinalizeISel.cpp
M llvm/lib/CodeGen/GlobalISel/CSEMIRBuilder.cpp
M llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
M llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
M llvm/lib/CodeGen/GlobalISel/MachineIRBuilder.cpp
M llvm/lib/CodeGen/GlobalISel/Utils.cpp
M llvm/lib/CodeGen/GlobalMergeFunctions.cpp
M llvm/lib/CodeGen/LiveDebugValues/InstrRefBasedImpl.cpp
M llvm/lib/CodeGen/LiveDebugVariables.cpp
M llvm/lib/CodeGen/MIRPrinter.cpp
M llvm/lib/CodeGen/MIRPrintingPass.cpp
M llvm/lib/CodeGen/MachineBasicBlock.cpp
M llvm/lib/CodeGen/MachineCSE.cpp
M llvm/lib/CodeGen/MachineInstr.cpp
M llvm/lib/CodeGen/MachineScheduler.cpp
M llvm/lib/CodeGen/ModuloSchedule.cpp
M llvm/lib/CodeGen/PeepholeOptimizer.cpp
M llvm/lib/CodeGen/PreISelIntrinsicLowering.cpp
M llvm/lib/CodeGen/RegAllocGreedy.cpp
M llvm/lib/CodeGen/RemoveLoadsIntoFakeUses.cpp
M llvm/lib/CodeGen/ScheduleDAGInstrs.cpp
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
M llvm/lib/CodeGen/SelectionDAG/ScheduleDAGFast.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGDumper.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp
M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
M llvm/lib/CodeGen/StackSlotColoring.cpp
M llvm/lib/CodeGen/TargetSchedule.cpp
M llvm/lib/CodeGen/VirtRegMap.cpp
M llvm/lib/DWARFLinker/Parallel/ArrayList.h
M llvm/lib/DWARFLinker/Parallel/DWARFLinkerCompileUnit.cpp
M llvm/lib/DWARFLinker/Parallel/DWARFLinkerCompileUnit.h
M llvm/lib/DWARFLinker/Parallel/TypePool.h
M llvm/lib/DebugInfo/DWARF/DWARFVerifier.cpp
M llvm/lib/ExecutionEngine/Orc/GetDylibInterface.cpp
M llvm/lib/ExecutionEngine/Orc/TargetProcess/SimpleRemoteEPCServer.cpp
M llvm/lib/FileCheck/FileCheckImpl.h
M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
M llvm/lib/IR/AsmWriter.cpp
M llvm/lib/IR/AutoUpgrade.cpp
M llvm/lib/IR/BasicBlock.cpp
M llvm/lib/IR/Constants.cpp
M llvm/lib/IR/ConvergenceVerifier.cpp
M llvm/lib/IR/Core.cpp
M llvm/lib/IR/DataLayout.cpp
M llvm/lib/IR/DebugInfo.cpp
M llvm/lib/IR/DebugInfoMetadata.cpp
M llvm/lib/IR/DebugLoc.cpp
M llvm/lib/IR/DroppedVariableStats.cpp
M llvm/lib/IR/Function.cpp
M llvm/lib/IR/IRBuilder.cpp
M llvm/lib/IR/Instructions.cpp
M llvm/lib/IR/LLVMContext.cpp
M llvm/lib/IR/LLVMContextImpl.h
M llvm/lib/IR/Mangler.cpp
M llvm/lib/IR/Pass.cpp
M llvm/lib/IR/SafepointIRVerifier.cpp
M llvm/lib/IR/Type.cpp
M llvm/lib/IR/Verifier.cpp
M llvm/lib/LTO/LTO.cpp
M llvm/lib/LTO/LTOBackend.cpp
M llvm/lib/Linker/IRMover.cpp
M llvm/lib/MC/MCAssembler.cpp
M llvm/lib/MC/MCContext.cpp
M llvm/lib/MC/MCWin64EH.cpp
M llvm/lib/MC/TargetRegistry.cpp
M llvm/lib/ObjCopy/CommonConfig.cpp
M llvm/lib/ObjCopy/wasm/WasmReader.cpp
M llvm/lib/ObjectYAML/ELFYAML.cpp
M llvm/lib/Passes/PassBuilder.cpp
M llvm/lib/ProfileData/IndexedMemProfData.cpp
M llvm/lib/ProfileData/InstrProf.cpp
M llvm/lib/ProfileData/InstrProfReader.cpp
M llvm/lib/ProfileData/MemProf.cpp
M llvm/lib/Support/CMakeLists.txt
M llvm/lib/Support/CrashRecoveryContext.cpp
M llvm/lib/Support/Error.cpp
M llvm/lib/Support/ErrorHandling.cpp
M llvm/lib/Support/Mustache.cpp
A llvm/lib/Support/ProgramStack.cpp
M llvm/lib/Support/Timer.cpp
M llvm/lib/Support/Unix/Signals.inc
M llvm/lib/Support/raw_ostream.cpp
M llvm/lib/TableGen/Record.cpp
M llvm/lib/Target/AArch64/AArch64.h
M llvm/lib/Target/AArch64/AArch64AsmPrinter.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.h
M llvm/lib/Target/AArch64/AArch64InstrAtomics.td
M llvm/lib/Target/AArch64/AArch64InstrInfo.td
M llvm/lib/Target/AArch64/AArch64LoadStoreOptimizer.cpp
M llvm/lib/Target/AArch64/AArch64PointerAuth.cpp
M llvm/lib/Target/AArch64/AArch64RegisterInfo.cpp
M llvm/lib/Target/AArch64/AArch64TargetMachine.cpp
M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.h
M llvm/lib/Target/AArch64/AsmParser/AArch64AsmParser.cpp
M llvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
M llvm/lib/Target/AArch64/MCTargetDesc/AArch64ELFObjectWriter.cpp
M llvm/lib/Target/AArch64/MCTargetDesc/AArch64ELFStreamer.cpp
M llvm/lib/Target/AArch64/MCTargetDesc/AArch64TargetStreamer.h
M llvm/lib/Target/AArch64/MCTargetDesc/AArch64WinCOFFStreamer.cpp
M llvm/lib/Target/AMDGPU/AMDGPU.h
M llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.cpp
M llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.h
M llvm/lib/Target/AMDGPU/AMDGPUAttributor.cpp
M llvm/lib/Target/AMDGPU/AMDGPUCallLowering.cpp
M llvm/lib/Target/AMDGPU/AMDGPUCodeGenPrepare.cpp
M llvm/lib/Target/AMDGPU/AMDGPUIGroupLP.cpp
M llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp
M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp
M llvm/lib/Target/AMDGPU/AMDGPUInstCombineIntrinsic.cpp
M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
M llvm/lib/Target/AMDGPU/AMDGPULowerBufferFatPointers.cpp
M llvm/lib/Target/AMDGPU/AMDGPULowerModuleLDSPass.cpp
M llvm/lib/Target/AMDGPU/AMDGPUPromoteAlloca.cpp
M llvm/lib/Target/AMDGPU/AMDGPURegisterBankInfo.cpp
M llvm/lib/Target/AMDGPU/AMDGPUSubtarget.cpp
M llvm/lib/Target/AMDGPU/AMDGPUSubtarget.h
M llvm/lib/Target/AMDGPU/AMDGPUSwLowerLDS.cpp
M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
M llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.cpp
M llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.h
M llvm/lib/Target/AMDGPU/AMDGPUWaitSGPRHazards.cpp
M llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
M llvm/lib/Target/AMDGPU/GCNHazardRecognizer.cpp
M llvm/lib/Target/AMDGPU/GCNSchedStrategy.h
M llvm/lib/Target/AMDGPU/MCA/AMDGPUCustomBehaviour.cpp
M llvm/lib/Target/AMDGPU/R600ISelLowering.cpp
M llvm/lib/Target/AMDGPU/R600TargetTransformInfo.cpp
M llvm/lib/Target/AMDGPU/R600TargetTransformInfo.h
M llvm/lib/Target/AMDGPU/SIFixSGPRCopies.cpp
M llvm/lib/Target/AMDGPU/SIFoldOperands.cpp
M llvm/lib/Target/AMDGPU/SIFormMemoryClauses.cpp
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
M llvm/lib/Target/AMDGPU/SIInsertHardClauses.cpp
M llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp
M llvm/lib/Target/AMDGPU/SIInstrInfo.h
M llvm/lib/Target/AMDGPU/SIInstrInfo.td
M llvm/lib/Target/AMDGPU/SIInstructions.td
M llvm/lib/Target/AMDGPU/SIPeepholeSDWA.cpp
M llvm/lib/Target/AMDGPU/SIRegisterInfo.cpp
M llvm/lib/Target/AMDGPU/SIShrinkInstructions.cpp
M llvm/lib/Target/AMDGPU/VOP1Instructions.td
M llvm/lib/Target/AMDGPU/VOP3Instructions.td
M llvm/lib/Target/ARC/ARC.h
M llvm/lib/Target/ARC/ARCAsmPrinter.cpp
M llvm/lib/Target/ARC/ARCTargetMachine.cpp
M llvm/lib/Target/ARM/ARM.h
M llvm/lib/Target/ARM/ARMAsmPrinter.cpp
M llvm/lib/Target/ARM/ARMAsmPrinter.h
M llvm/lib/Target/ARM/ARMFrameLowering.cpp
M llvm/lib/Target/ARM/ARMISelLowering.cpp
M llvm/lib/Target/ARM/ARMInstrInfo.td
M llvm/lib/Target/ARM/ARMSubtarget.cpp
M llvm/lib/Target/ARM/ARMTargetMachine.cpp
M llvm/lib/Target/ARM/ARMTargetTransformInfo.cpp
M llvm/lib/Target/ARM/ARMTargetTransformInfo.h
M llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
M llvm/lib/Target/AVR/AVR.h
M llvm/lib/Target/AVR/AVRAsmPrinter.cpp
M llvm/lib/Target/AVR/AVRISelDAGToDAG.cpp
M llvm/lib/Target/AVR/AVRTargetMachine.cpp
M llvm/lib/Target/BPF/BPF.h
M llvm/lib/Target/BPF/BPFAsmPrinter.cpp
M llvm/lib/Target/BPF/BPFMIChecking.cpp
M llvm/lib/Target/BPF/BPFTargetMachine.cpp
M llvm/lib/Target/CSKY/CSKY.td
M llvm/lib/Target/DirectX/DXILFinalizeLinkage.cpp
M llvm/lib/Target/DirectX/DXILIntrinsicExpansion.cpp
M llvm/lib/Target/DirectX/DXILLegalizePass.cpp
M llvm/lib/Target/DirectX/DXILOpBuilder.cpp
M llvm/lib/Target/DirectX/DXILOpLowering.cpp
M llvm/lib/Target/DirectX/DXILResourceAccess.cpp
M llvm/lib/Target/Hexagon/AsmParser/HexagonAsmParser.cpp
M llvm/lib/Target/Hexagon/Hexagon.h
M llvm/lib/Target/Hexagon/HexagonAsmPrinter.cpp
M llvm/lib/Target/Hexagon/HexagonAsmPrinter.h
M llvm/lib/Target/Hexagon/HexagonConstExtenders.cpp
M llvm/lib/Target/Hexagon/HexagonOptAddrMode.cpp
M llvm/lib/Target/Hexagon/HexagonPatterns.td
M llvm/lib/Target/Hexagon/HexagonTargetMachine.cpp
M llvm/lib/Target/Hexagon/HexagonTargetTransformInfo.cpp
M llvm/lib/Target/Hexagon/HexagonTargetTransformInfo.h
M llvm/lib/Target/Hexagon/HexagonVExtract.cpp
M llvm/lib/Target/Hexagon/HexagonVectorLoopCarriedReuse.cpp
M llvm/lib/Target/Lanai/Lanai.h
M llvm/lib/Target/Lanai/LanaiAsmPrinter.cpp
M llvm/lib/Target/Lanai/LanaiTargetMachine.cpp
M llvm/lib/Target/LoongArch/AsmParser/LoongArchAsmParser.cpp
M llvm/lib/Target/LoongArch/LoongArch.h
M llvm/lib/Target/LoongArch/LoongArchAsmPrinter.cpp
M llvm/lib/Target/LoongArch/LoongArchAsmPrinter.h
M llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
M llvm/lib/Target/LoongArch/LoongArchLASXInstrInfo.td
M llvm/lib/Target/LoongArch/LoongArchMCInstLower.cpp
M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchAsmBackend.cpp
M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchAsmBackend.h
M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchELFObjectWriter.cpp
M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchFixupKinds.h
M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchMCCodeEmitter.cpp
M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchMCExpr.cpp
M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchMCExpr.h
M llvm/lib/Target/M68k/M68k.h
M llvm/lib/Target/M68k/M68kAsmPrinter.cpp
M llvm/lib/Target/M68k/M68kAsmPrinter.h
M llvm/lib/Target/M68k/M68kTargetMachine.cpp
M llvm/lib/Target/MSP430/MSP430.h
M llvm/lib/Target/MSP430/MSP430AsmPrinter.cpp
M llvm/lib/Target/MSP430/MSP430TargetMachine.cpp
M llvm/lib/Target/Mips/Mips.h
M llvm/lib/Target/Mips/Mips.td
M llvm/lib/Target/Mips/MipsAsmPrinter.cpp
M llvm/lib/Target/Mips/MipsAsmPrinter.h
M llvm/lib/Target/Mips/MipsCallLowering.cpp
M llvm/lib/Target/Mips/MipsDelaySlotFiller.cpp
M llvm/lib/Target/Mips/MipsISelLowering.cpp
A llvm/lib/Target/Mips/MipsScheduleI6400.td
M llvm/lib/Target/Mips/MipsTargetMachine.cpp
M llvm/lib/Target/NVPTX/CMakeLists.txt
M llvm/lib/Target/NVPTX/NVPTX.h
M llvm/lib/Target/NVPTX/NVPTX.td
M llvm/lib/Target/NVPTX/NVPTXAsmPrinter.cpp
M llvm/lib/Target/NVPTX/NVPTXAsmPrinter.h
M llvm/lib/Target/NVPTX/NVPTXISelDAGToDAG.cpp
M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
M llvm/lib/Target/NVPTX/NVPTXInstrInfo.cpp
M llvm/lib/Target/NVPTX/NVPTXInstrInfo.td
M llvm/lib/Target/NVPTX/NVPTXPassRegistry.def
A llvm/lib/Target/NVPTX/NVPTXTagInvariantLoads.cpp
M llvm/lib/Target/NVPTX/NVPTXTargetMachine.cpp
M llvm/lib/Target/NVPTX/NVPTXTargetTransformInfo.h
M llvm/lib/Target/NVPTX/NVPTXUtilities.cpp
M llvm/lib/Target/NVPTX/NVPTXUtilities.h
M llvm/lib/Target/NVPTX/NVVMIntrRange.cpp
M llvm/lib/Target/PowerPC/PPC.h
M llvm/lib/Target/PowerPC/PPC.td
M llvm/lib/Target/PowerPC/PPCAsmPrinter.cpp
M llvm/lib/Target/PowerPC/PPCISelDAGToDAG.cpp
M llvm/lib/Target/PowerPC/PPCISelLowering.cpp
M llvm/lib/Target/PowerPC/PPCTargetMachine.cpp
M llvm/lib/Target/PowerPC/PPCTargetTransformInfo.cpp
M llvm/lib/Target/PowerPC/PPCTargetTransformInfo.h
M llvm/lib/Target/RISCV/GISel/RISCVCallLowering.cpp
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVBaseInfo.cpp
M llvm/lib/Target/RISCV/RISCV.h
M llvm/lib/Target/RISCV/RISCV.td
M llvm/lib/Target/RISCV/RISCVAsmPrinter.cpp
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/lib/Target/RISCV/RISCVInstrInfo.cpp
M llvm/lib/Target/RISCV/RISCVInstrInfo.td
M llvm/lib/Target/RISCV/RISCVInstrInfoVVLPatterns.td
M llvm/lib/Target/RISCV/RISCVInstrInfoXqci.td
M llvm/lib/Target/RISCV/RISCVLoadStoreOptimizer.cpp
M llvm/lib/Target/RISCV/RISCVProcessors.td
A llvm/lib/Target/RISCV/RISCVSchedSpacemitX60.td
M llvm/lib/Target/RISCV/RISCVTargetMachine.cpp
M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.h
M llvm/lib/Target/SPIRV/SPIRV.h
M llvm/lib/Target/SPIRV/SPIRVAPI.cpp
M llvm/lib/Target/SPIRV/SPIRVAsmPrinter.cpp
M llvm/lib/Target/SPIRV/SPIRVBuiltins.cpp
M llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.cpp
M llvm/lib/Target/SPIRV/SPIRVIRMapping.h
M llvm/lib/Target/SPIRV/SPIRVModuleAnalysis.cpp
M llvm/lib/Target/SPIRV/SPIRVPrepareFunctions.cpp
M llvm/lib/Target/SPIRV/SPIRVSubtarget.cpp
M llvm/lib/Target/SPIRV/SPIRVTargetMachine.cpp
M llvm/lib/Target/Sparc/AsmParser/SparcAsmParser.cpp
M llvm/lib/Target/Sparc/CMakeLists.txt
M llvm/lib/Target/Sparc/Disassembler/SparcDisassembler.cpp
M llvm/lib/Target/Sparc/MCTargetDesc/SparcAsmBackend.cpp
M llvm/lib/Target/Sparc/MCTargetDesc/SparcELFObjectWriter.cpp
M llvm/lib/Target/Sparc/MCTargetDesc/SparcFixupKinds.h
M llvm/lib/Target/Sparc/MCTargetDesc/SparcInstPrinter.cpp
M llvm/lib/Target/Sparc/MCTargetDesc/SparcMCAsmInfo.cpp
M llvm/lib/Target/Sparc/MCTargetDesc/SparcMCCodeEmitter.cpp
M llvm/lib/Target/Sparc/MCTargetDesc/SparcMCExpr.cpp
M llvm/lib/Target/Sparc/MCTargetDesc/SparcMCExpr.h
M llvm/lib/Target/Sparc/Sparc.h
M llvm/lib/Target/Sparc/Sparc.td
M llvm/lib/Target/Sparc/SparcAsmPrinter.cpp
M llvm/lib/Target/Sparc/SparcISelDAGToDAG.cpp
M llvm/lib/Target/Sparc/SparcISelLowering.cpp
M llvm/lib/Target/Sparc/SparcISelLowering.h
M llvm/lib/Target/Sparc/SparcInstr64Bit.td
M llvm/lib/Target/Sparc/SparcInstrInfo.td
M llvm/lib/Target/Sparc/SparcInstrVIS.td
R llvm/lib/Target/Sparc/SparcMCInstLower.cpp
A llvm/lib/Target/Sparc/SparcSelectionDAGInfo.cpp
A llvm/lib/Target/Sparc/SparcSelectionDAGInfo.h
M llvm/lib/Target/Sparc/SparcSubtarget.cpp
M llvm/lib/Target/Sparc/SparcSubtarget.h
M llvm/lib/Target/Sparc/SparcTargetMachine.cpp
M llvm/lib/Target/Sparc/SparcTargetObjectFile.cpp
M llvm/lib/Target/SystemZ/AsmParser/SystemZAsmParser.cpp
M llvm/lib/Target/SystemZ/MCTargetDesc/SystemZTargetStreamer.h
M llvm/lib/Target/SystemZ/SystemZ.h
M llvm/lib/Target/SystemZ/SystemZAsmPrinter.cpp
M llvm/lib/Target/SystemZ/SystemZAsmPrinter.h
M llvm/lib/Target/SystemZ/SystemZFrameLowering.cpp
M llvm/lib/Target/SystemZ/SystemZTargetMachine.cpp
M llvm/lib/Target/SystemZ/SystemZTargetTransformInfo.cpp
M llvm/lib/Target/SystemZ/SystemZTargetTransformInfo.h
M llvm/lib/Target/VE/VE.h
M llvm/lib/Target/VE/VEAsmPrinter.cpp
M llvm/lib/Target/VE/VEISelDAGToDAG.cpp
M llvm/lib/Target/VE/VETargetMachine.cpp
M llvm/lib/Target/WebAssembly/WebAssembly.h
M llvm/lib/Target/WebAssembly/WebAssemblyAsmPrinter.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyAsmPrinter.h
M llvm/lib/Target/WebAssembly/WebAssemblyFastISel.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyInstrInfo.td
M llvm/lib/Target/WebAssembly/WebAssemblyLowerEmscriptenEHSjLj.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyTargetTransformInfo.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyTargetTransformInfo.h
M llvm/lib/Target/X86/MCTargetDesc/X86MCAsmInfo.cpp
M llvm/lib/Target/X86/X86.h
M llvm/lib/Target/X86/X86AsmPrinter.cpp
M llvm/lib/Target/X86/X86AsmPrinter.h
M llvm/lib/Target/X86/X86CallingConv.td
M llvm/lib/Target/X86/X86FrameLowering.cpp
M llvm/lib/Target/X86/X86ISelDAGToDAG.cpp
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/lib/Target/X86/X86InstrSSE.td
M llvm/lib/Target/X86/X86LoadValueInjectionLoadHardening.cpp
M llvm/lib/Target/X86/X86LowerAMXType.cpp
M llvm/lib/Target/X86/X86LowerTileCopy.cpp
M llvm/lib/Target/X86/X86MCInstLower.cpp
M llvm/lib/Target/X86/X86RegisterInfo.cpp
M llvm/lib/Target/X86/X86RegisterInfo.h
M llvm/lib/Target/X86/X86Subtarget.h
M llvm/lib/Target/X86/X86SuppressAPXForReloc.cpp
M llvm/lib/Target/X86/X86TargetMachine.cpp
M llvm/lib/Target/X86/X86TargetTransformInfo.cpp
M llvm/lib/Target/X86/X86TargetTransformInfo.h
M llvm/lib/Target/XCore/XCore.h
M llvm/lib/Target/XCore/XCoreAsmPrinter.cpp
M llvm/lib/Target/XCore/XCoreTargetMachine.cpp
M llvm/lib/Target/Xtensa/Xtensa.h
M llvm/lib/Target/Xtensa/XtensaAsmPrinter.cpp
M llvm/lib/Target/Xtensa/XtensaAsmPrinter.h
M llvm/lib/Target/Xtensa/XtensaTargetMachine.cpp
M llvm/lib/TargetParser/Triple.cpp
M llvm/lib/Transforms/IPO/Attributor.cpp
M llvm/lib/Transforms/IPO/BlockExtractor.cpp
M llvm/lib/Transforms/IPO/ConstantMerge.cpp
M llvm/lib/Transforms/IPO/EmbedBitcodePass.cpp
M llvm/lib/Transforms/IPO/FunctionAttrs.cpp
M llvm/lib/Transforms/IPO/FunctionImport.cpp
M llvm/lib/Transforms/IPO/GlobalOpt.cpp
M llvm/lib/Transforms/IPO/IROutliner.cpp
M llvm/lib/Transforms/IPO/Internalize.cpp
M llvm/lib/Transforms/IPO/LowerTypeTests.cpp
M llvm/lib/Transforms/IPO/OpenMPOpt.cpp
M llvm/lib/Transforms/IPO/PartialInlining.cpp
M llvm/lib/Transforms/IPO/SCCP.cpp
M llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
M llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
M llvm/lib/Transforms/Instrumentation/GCOVProfiling.cpp
M llvm/lib/Transforms/Instrumentation/InstrProfiling.cpp
M llvm/lib/Transforms/Instrumentation/MemorySanitizer.cpp
M llvm/lib/Transforms/Instrumentation/NumericalStabilitySanitizer.cpp
M llvm/lib/Transforms/ObjCARC/ObjCARCOpts.cpp
M llvm/lib/Transforms/ObjCARC/ProvenanceAnalysisEvaluator.cpp
M llvm/lib/Transforms/Scalar/ConstraintElimination.cpp
M llvm/lib/Transforms/Scalar/DeadStoreElimination.cpp
M llvm/lib/Transforms/Scalar/GVN.cpp
M llvm/lib/Transforms/Scalar/InferAddressSpaces.cpp
M llvm/lib/Transforms/Scalar/LICM.cpp
M llvm/lib/Transforms/Scalar/LoopIdiomRecognize.cpp
M llvm/lib/Transforms/Scalar/LoopInterchange.cpp
M llvm/lib/Transforms/Scalar/LoopPassManager.cpp
M llvm/lib/Transforms/Scalar/LoopUnrollPass.cpp
M llvm/lib/Transforms/Scalar/LowerMatrixIntrinsics.cpp
M llvm/lib/Transforms/Scalar/MemCpyOptimizer.cpp
M llvm/lib/Transforms/Scalar/NewGVN.cpp
M llvm/lib/Transforms/Scalar/Reassociate.cpp
M llvm/lib/Transforms/Scalar/RewriteStatepointsForGC.cpp
M llvm/lib/Transforms/Scalar/SimpleLoopUnswitch.cpp
M llvm/lib/Transforms/Utils/CloneFunction.cpp
M llvm/lib/Transforms/Utils/Debugify.cpp
M llvm/lib/Transforms/Utils/EntryExitInstrumenter.cpp
M llvm/lib/Transforms/Utils/EscapeEnumerator.cpp
M llvm/lib/Transforms/Utils/IRNormalizer.cpp
M llvm/lib/Transforms/Utils/InlineFunction.cpp
M llvm/lib/Transforms/Utils/Local.cpp
M llvm/lib/Transforms/Utils/LowerAtomic.cpp
M llvm/lib/Transforms/Utils/LowerMemIntrinsics.cpp
M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
M llvm/lib/Transforms/Utils/SimplifyIndVar.cpp
M llvm/lib/Transforms/Utils/ValueMapper.cpp
M llvm/lib/Transforms/Vectorize/LoopIdiomVectorize.cpp
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/lib/Transforms/Vectorize/VPlan.cpp
M llvm/lib/Transforms/Vectorize/VPlan.h
M llvm/lib/Transforms/Vectorize/VPlanCFG.h
M llvm/lib/Transforms/Vectorize/VPlanConstruction.cpp
M llvm/lib/Transforms/Vectorize/VPlanHelpers.h
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
M llvm/lib/Transforms/Vectorize/VPlanSLP.cpp
M llvm/lib/Transforms/Vectorize/VPlanTransforms.h
M llvm/lib/Transforms/Vectorize/VPlanUtils.h
M llvm/lib/Transforms/Vectorize/VPlanVerifier.cpp
M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
A llvm/test/Analysis/BasicAA/size-overflow.ll
M llvm/test/Analysis/CostModel/AArch64/cmp.ll
M llvm/test/Analysis/CostModel/AArch64/vector-select.ll
M llvm/test/Analysis/KernelInfo/launch-bounds/amdgpu.ll
M llvm/test/Analysis/KernelInfo/openmp/amdgpu.ll
M llvm/test/Analysis/LoopAccessAnalysis/nusw-predicates.ll
M llvm/test/Analysis/ScalarEvolution/guards.ll
M llvm/test/Assembler/2002-04-07-InfConstant.ll
M llvm/test/Assembler/2002-04-29-NameBinding.ll
M llvm/test/Assembler/2003-04-15-ConstantInitAssertion.ll
M llvm/test/Assembler/2003-05-12-MinIntProblem.ll
M llvm/test/Assembler/2003-05-21-MalformedStructCrash.ll
M llvm/test/Assembler/2003-08-20-ConstantExprGEP-Fold.ll
M llvm/test/Assembler/2003-11-24-SymbolTableCrash.ll
M llvm/test/Assembler/2004-01-20-MaxLongLong.ll
M llvm/test/Assembler/2004-03-30-UnclosedFunctionCrash.ll
M llvm/test/Assembler/2004-11-28-InvalidTypeCrash.ll
M llvm/test/Assembler/2005-05-05-OpaqueUndefValues.ll
M llvm/test/Assembler/2006-09-28-CrashOnInvalid.ll
M llvm/test/Assembler/2006-12-09-Cast-To-Bool.ll
M llvm/test/Assembler/2007-01-02-Undefined-Arg-Type.ll
M llvm/test/Assembler/2007-01-16-CrashOnBadCast.ll
M llvm/test/Assembler/2007-01-16-CrashOnBadCast2.ll
M llvm/test/Assembler/2007-03-18-InvalidNumberedVar.ll
M llvm/test/Assembler/2007-04-20-AlignedLoad.ll
M llvm/test/Assembler/2007-04-20-AlignedStore.ll
M llvm/test/Assembler/2007-08-06-AliasInvalid.ll
M llvm/test/Assembler/2008-01-11-VarargAttrs.ll
M llvm/test/Assembler/2008-02-18-IntPointerCrash.ll
R llvm/test/Assembler/2008-09-02-FunctionNotes2.ll
M llvm/test/Assembler/2008-09-29-RetAttr.ll
M llvm/test/Assembler/2008-10-14-QuoteInName.ll
M llvm/test/Assembler/atomic.ll
M llvm/test/Assembler/convergence-control.ll
M llvm/test/Bindings/llvm-c/atomics.ll
M llvm/test/Bitcode/compatibility.ll
M llvm/test/CMakeLists.txt
M llvm/test/CodeGen/AArch64/Atomics/aarch64-atomicrmw-lsfe.ll
M llvm/test/CodeGen/AArch64/Atomics/aarch64-atomicrmw-v8a_fp.ll
M llvm/test/CodeGen/AArch64/Atomics/aarch64_be-atomicrmw-lsfe.ll
M llvm/test/CodeGen/AArch64/Atomics/aarch64_be-atomicrmw-v8a_fp.ll
M llvm/test/CodeGen/AArch64/Atomics/generate-tests.py
M llvm/test/CodeGen/AArch64/GlobalISel/legalizer-info-validation.mir
A llvm/test/CodeGen/AArch64/aarch64-ldst-opt-instr-ref.mir
M llvm/test/CodeGen/AArch64/aarch64-mull-masks.ll
M llvm/test/CodeGen/AArch64/arm64-fast-isel-conversion-fallback.ll
M llvm/test/CodeGen/AArch64/atomicrmw-fmax.ll
M llvm/test/CodeGen/AArch64/atomicrmw-fmin.ll
M llvm/test/CodeGen/AArch64/bf16-instructions.ll
M llvm/test/CodeGen/AArch64/bf16-v8-instructions.ll
M llvm/test/CodeGen/AArch64/bf16_fast_math.ll
M llvm/test/CodeGen/AArch64/bitreverse.ll
M llvm/test/CodeGen/AArch64/fcmp.ll
M llvm/test/CodeGen/AArch64/fp16-v8-instructions.ll
M llvm/test/CodeGen/AArch64/machine-outliner-retaddr-sign-cfi.ll
M llvm/test/CodeGen/AArch64/machine-outliner-retaddr-sign-diff-scope-same-key.ll
M llvm/test/CodeGen/AArch64/machine-outliner-retaddr-sign-non-leaf.ll
M llvm/test/CodeGen/AArch64/machine-outliner-retaddr-sign-regsave.mir
M llvm/test/CodeGen/AArch64/machine-outliner-retaddr-sign-same-scope-diff-key.ll
M llvm/test/CodeGen/AArch64/machine-outliner-retaddr-sign-sp-mod.mir
M llvm/test/CodeGen/AArch64/machine-outliner-retaddr-sign-subtarget.ll
M llvm/test/CodeGen/AArch64/machine-outliner-retaddr-sign-thunk.ll
A llvm/test/CodeGen/AArch64/misched-cutoff.mir
M llvm/test/CodeGen/AArch64/neon-partial-reduce-dot-product.ll
M llvm/test/CodeGen/AArch64/pacbti-llvm-generated-funcs-2.ll
M llvm/test/CodeGen/AArch64/partial-reduction-add.ll
M llvm/test/CodeGen/AArch64/sign-return-address-cfi-negate-ra-state.ll
M llvm/test/CodeGen/AArch64/sign-return-address.ll
M llvm/test/CodeGen/AArch64/sve-partial-reduce-dot-product.ll
M llvm/test/CodeGen/AArch64/sve-partial-reduce-wide-add.ll
M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-fcopysign.ll
A llvm/test/CodeGen/AMDGPU/GlobalISel/and.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-call-return-values.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-sibling-call.ll
A llvm/test/CodeGen/AMDGPU/GlobalISel/or.ll
A llvm/test/CodeGen/AMDGPU/GlobalISel/xor.ll
M llvm/test/CodeGen/AMDGPU/accvgpr-spill-scc-clobber.mir
M llvm/test/CodeGen/AMDGPU/addrspacecast-captured.ll
A llvm/test/CodeGen/AMDGPU/agpr-spill-copy.mir
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.1024bit.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.512bit.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-ceil.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-copysign.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-exp.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-exp2.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-fabs.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-floor.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-fma.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-fmax-splat.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-fmax.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-fmin-splat.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-fmin.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-ldexp-splat.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-ldexp.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-log.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-log10.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-log2.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-mad.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-pow.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-pown.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-powr.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-rint.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-rootn.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-round.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-sincos.defined.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-sincos.defined.sin.cos.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-sincos.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-sincos.nobuiltins.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-sincos.weak.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-sqrt.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-trunc.ll
M llvm/test/CodeGen/AMDGPU/annotate-kernel-features-hsa.ll
M llvm/test/CodeGen/AMDGPU/annotate-noclobber.ll
M llvm/test/CodeGen/AMDGPU/asm-printer-check-vcc.mir
M llvm/test/CodeGen/AMDGPU/attr-amdgpu-flat-work-group-size.ll
M llvm/test/CodeGen/AMDGPU/attributor-flatscratchinit-undefined-behavior.ll
M llvm/test/CodeGen/AMDGPU/av_spill_cross_bb_usage.mir
M llvm/test/CodeGen/AMDGPU/bf16.ll
M llvm/test/CodeGen/AMDGPU/buffer-fat-pointers-memcpy.ll
M llvm/test/CodeGen/AMDGPU/calling-conventions.ll
M llvm/test/CodeGen/AMDGPU/cgp-addressing-modes.ll
M llvm/test/CodeGen/AMDGPU/coalesce-copy-to-agpr-to-av-registers.mir
M llvm/test/CodeGen/AMDGPU/coalescer-subranges-another-copymi-not-live.mir
M llvm/test/CodeGen/AMDGPU/coalescer-subranges-another-prune-error.mir
M llvm/test/CodeGen/AMDGPU/coalescer-subregjoin-fullcopy.mir
M llvm/test/CodeGen/AMDGPU/coalescer-with-subregs-bad-identical.mir
M llvm/test/CodeGen/AMDGPU/codegen-prepare-addrspacecast-non-null.ll
M llvm/test/CodeGen/AMDGPU/combine_andor_with_cmps.ll
M llvm/test/CodeGen/AMDGPU/copy-hoist-no-spills.ll
M llvm/test/CodeGen/AMDGPU/ctlz_zero_undef.ll
M llvm/test/CodeGen/AMDGPU/cttz_zero_undef.ll
M llvm/test/CodeGen/AMDGPU/dagcombine-fmul-sel.ll
M llvm/test/CodeGen/AMDGPU/diverge-switch-default.ll
M llvm/test/CodeGen/AMDGPU/dynamic_stackalloc.ll
M llvm/test/CodeGen/AMDGPU/expand-variadic-call.ll
M llvm/test/CodeGen/AMDGPU/extload-align.ll
M llvm/test/CodeGen/AMDGPU/extra-sroa-after-unroll.ll
M llvm/test/CodeGen/AMDGPU/extract_vector_elt-f16.ll
M llvm/test/CodeGen/AMDGPU/extract_vector_elt-i16.ll
A llvm/test/CodeGen/AMDGPU/finalize-isel-kill-scc-vcc.mir
M llvm/test/CodeGen/AMDGPU/fix-sgpr-copies-f16-true16.mir
A llvm/test/CodeGen/AMDGPU/fix-sgpr-copies-vgpr16-to-spgr32.ll
M llvm/test/CodeGen/AMDGPU/fmax_legacy.f16.ll
M llvm/test/CodeGen/AMDGPU/fmaximum3.ll
M llvm/test/CodeGen/AMDGPU/fmin_legacy.f16.ll
M llvm/test/CodeGen/AMDGPU/fminimum3.ll
M llvm/test/CodeGen/AMDGPU/fneg-modifier-casting.ll
M llvm/test/CodeGen/AMDGPU/fold-imm-copy.mir
M llvm/test/CodeGen/AMDGPU/force-alwaysinline-lds-global-address.ll
M llvm/test/CodeGen/AMDGPU/frem.ll
M llvm/test/CodeGen/AMDGPU/gfx-callable-preserved-registers.ll
M llvm/test/CodeGen/AMDGPU/inline-attr.ll
M llvm/test/CodeGen/AMDGPU/insert_vector_dynelt.ll
M llvm/test/CodeGen/AMDGPU/insert_vector_elt.v2bf16.ll
M llvm/test/CodeGen/AMDGPU/insert_vector_elt.v2i16.ll
A llvm/test/CodeGen/AMDGPU/legalize-amdgcn.dead.mir
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.dead.ll
M llvm/test/CodeGen/AMDGPU/llvm.maximum.f16.ll
M llvm/test/CodeGen/AMDGPU/llvm.minimum.f16.ll
M llvm/test/CodeGen/AMDGPU/load-global-i16.ll
M llvm/test/CodeGen/AMDGPU/loop-idiom.ll
M llvm/test/CodeGen/AMDGPU/lower-buffer-fat-pointers-calls.ll
M llvm/test/CodeGen/AMDGPU/lower-buffer-fat-pointers-constants.ll
M llvm/test/CodeGen/AMDGPU/lower-buffer-fat-pointers-control-flow.ll
M llvm/test/CodeGen/AMDGPU/lower-buffer-fat-pointers-mem-transfer.ll
M llvm/test/CodeGen/AMDGPU/lower-buffer-fat-pointers-memops.ll
M llvm/test/CodeGen/AMDGPU/lower-buffer-fat-pointers-p7-in-memory.ll
M llvm/test/CodeGen/AMDGPU/lower-buffer-fat-pointers-pointer-ops.ll
M llvm/test/CodeGen/AMDGPU/lower-buffer-fat-pointers-unoptimized-debug-data.ll
M llvm/test/CodeGen/AMDGPU/lower-kernargs.ll
M llvm/test/CodeGen/AMDGPU/machine-sink-temporal-divergence-swdev407790.ll
M llvm/test/CodeGen/AMDGPU/mad-mix-lo.ll
M llvm/test/CodeGen/AMDGPU/mad-mix.ll
M llvm/test/CodeGen/AMDGPU/mai-hazards-gfx942.mir
M llvm/test/CodeGen/AMDGPU/memcpy-crash-issue63986.ll
M llvm/test/CodeGen/AMDGPU/noop-shader-O0.ll
M llvm/test/CodeGen/AMDGPU/omod.ll
M llvm/test/CodeGen/AMDGPU/pal-simple-indirect-call.ll
M llvm/test/CodeGen/AMDGPU/pei-build-av-spill.mir
M llvm/test/CodeGen/AMDGPU/pei-build-spill.mir
M llvm/test/CodeGen/AMDGPU/private-memory-r600.ll
M llvm/test/CodeGen/AMDGPU/promote-alloca-lifetime.ll
M llvm/test/CodeGen/AMDGPU/promote-alloca-loadstores.ll
M llvm/test/CodeGen/AMDGPU/promote-alloca-subvecs.ll
M llvm/test/CodeGen/AMDGPU/promote-alloca-to-lds-constantexpr-use.ll
M llvm/test/CodeGen/AMDGPU/promote-alloca-to-lds-select.ll
M llvm/test/CodeGen/AMDGPU/reqd-work-group-size.ll
M llvm/test/CodeGen/AMDGPU/required-export-priority.ll
A llvm/test/CodeGen/AMDGPU/sched-no-schedmodel.mir
M llvm/test/CodeGen/AMDGPU/schedule-regpressure-limit-clustering.ll
A llvm/test/CodeGen/AMDGPU/sdwa-peephole-cndmask-wave32.mir
A llvm/test/CodeGen/AMDGPU/sdwa-peephole-cndmask-wave64.mir
M llvm/test/CodeGen/AMDGPU/sdwa-scalar-ops.mir
M llvm/test/CodeGen/AMDGPU/select-fabs-fneg-extract.v2f16.ll
M llvm/test/CodeGen/AMDGPU/select.f16.ll
M llvm/test/CodeGen/AMDGPU/sgpr-copy-local-cse.ll
M llvm/test/CodeGen/AMDGPU/sibling-call.ll
M llvm/test/CodeGen/AMDGPU/simple-indirect-call-2.ll
M llvm/test/CodeGen/AMDGPU/simple-indirect-call.ll
M llvm/test/CodeGen/AMDGPU/skip-if-dead.ll
M llvm/test/CodeGen/AMDGPU/spill-agpr-partially-undef.mir
M llvm/test/CodeGen/AMDGPU/sroa-before-unroll.ll
M llvm/test/CodeGen/AMDGPU/store-clobbers-load.ll
A llvm/test/CodeGen/AMDGPU/swdev504645-global-fold.ll
M llvm/test/CodeGen/AMDGPU/tail-call-uniform-target-in-vgprs-issue110930.convergencetokens.ll
M llvm/test/CodeGen/AMDGPU/tail-call-uniform-target-in-vgprs-issue110930.ll
M llvm/test/CodeGen/AMDGPU/unknown-processor.ll
M llvm/test/CodeGen/AMDGPU/unroll.ll
M llvm/test/CodeGen/AMDGPU/v_swap_b16.ll
M llvm/test/CodeGen/AMDGPU/v_swap_b32.mir
M llvm/test/CodeGen/AMDGPU/vector-alloca-bitcast.ll
M llvm/test/CodeGen/AMDGPU/vector-alloca-limits.ll
M llvm/test/CodeGen/AMDGPU/vector-alloca.ll
M llvm/test/CodeGen/AMDGPU/vgpr-spill-scc-clobber.mir
M llvm/test/CodeGen/AMDGPU/vgpr_constant_to_sgpr.ll
M llvm/test/CodeGen/AMDGPU/vopc_dpp.mir
M llvm/test/CodeGen/ARM/combine-bswap.ll
A llvm/test/CodeGen/ARM/shouldRewriteCopySrc.ll
A llvm/test/CodeGen/DirectX/legalize-memset.ll
A llvm/test/CodeGen/Hexagon/isel/pfalse-v4i1.ll
M llvm/test/CodeGen/LoongArch/addrspacecast.ll
M llvm/test/CodeGen/LoongArch/alloca.ll
M llvm/test/CodeGen/LoongArch/bnez-beqz.ll
M llvm/test/CodeGen/LoongArch/code-models.ll
M llvm/test/CodeGen/LoongArch/double-br-fcmp.ll
M llvm/test/CodeGen/LoongArch/eh-dwarf-cfa.ll
M llvm/test/CodeGen/LoongArch/exception-pointer-register.ll
M llvm/test/CodeGen/LoongArch/fdiv-reciprocal-estimate.ll
M llvm/test/CodeGen/LoongArch/float-br-fcmp.ll
M llvm/test/CodeGen/LoongArch/fp-expand.ll
M llvm/test/CodeGen/LoongArch/fp-max-min.ll
M llvm/test/CodeGen/LoongArch/fp-maximumnum-minimumnum.ll
M llvm/test/CodeGen/LoongArch/fp-reciprocal.ll
M llvm/test/CodeGen/LoongArch/fp-trunc-store.ll
M llvm/test/CodeGen/LoongArch/fp16-promote.ll
M llvm/test/CodeGen/LoongArch/frint.ll
M llvm/test/CodeGen/LoongArch/fsqrt-reciprocal-estimate.ll
M llvm/test/CodeGen/LoongArch/fsqrt.ll
M llvm/test/CodeGen/LoongArch/intrinsic-csr-side-effects.ll
M llvm/test/CodeGen/LoongArch/ir-instruction/atomicrmw.ll
M llvm/test/CodeGen/LoongArch/ir-instruction/call.ll
M llvm/test/CodeGen/LoongArch/ir-instruction/double-convert.ll
M llvm/test/CodeGen/LoongArch/ir-instruction/float-convert.ll
M llvm/test/CodeGen/LoongArch/ir-instruction/load-store-atomic.ll
M llvm/test/CodeGen/LoongArch/ir-instruction/sdiv-udiv-srem-urem.ll
M llvm/test/CodeGen/LoongArch/lasx/ir-instruction/fptosi.ll
M llvm/test/CodeGen/LoongArch/lasx/ir-instruction/fptoui.ll
M llvm/test/CodeGen/LoongArch/machinelicm-address-pseudos.ll
M llvm/test/CodeGen/LoongArch/numeric-reg-names.ll
M llvm/test/CodeGen/LoongArch/soft-fp-to-int.ll
M llvm/test/CodeGen/LoongArch/spill-reload-cfr.ll
M llvm/test/CodeGen/LoongArch/stack-realignment-with-variable-sized-objects.ll
M llvm/test/CodeGen/LoongArch/stack-realignment.ll
M llvm/test/CodeGen/LoongArch/statepoint-call-lowering.ll
M llvm/test/CodeGen/LoongArch/tls-models.ll
M llvm/test/CodeGen/LoongArch/unaligned-memcpy-inline.ll
M llvm/test/CodeGen/LoongArch/vector-fp-imm.ll
M llvm/test/CodeGen/MIR/AArch64/return-address-signing.mir
M llvm/test/CodeGen/Mips/llvm-ir/not.ll
M llvm/test/CodeGen/Mips/llvm-ir/xor.ll
M llvm/test/CodeGen/Mips/xor-and.ll
A llvm/test/CodeGen/NVPTX/byval-const-global.ll
A llvm/test/CodeGen/NVPTX/i128-ld-st.ll
M llvm/test/CodeGen/NVPTX/intr-range.ll
M llvm/test/CodeGen/NVPTX/intrinsic-old.ll
M llvm/test/CodeGen/NVPTX/sm-version.ll
A llvm/test/CodeGen/NVPTX/tag-invariant-loads.ll
A llvm/test/CodeGen/PowerPC/usubo_carry.ll
M llvm/test/CodeGen/RISCV/GlobalISel/legalizer-info-validation.mir
M llvm/test/CodeGen/RISCV/instruction-count-remark.mir
M llvm/test/CodeGen/RISCV/rvv/vxrm-insert-out-of-loop.ll
M llvm/test/CodeGen/RISCV/xcvalu.ll
M llvm/test/CodeGen/SPARC/exception.ll
A llvm/test/CodeGen/SPARC/float-vis3.ll
M llvm/test/CodeGen/SPIRV/hlsl-intrinsics/SV_GroupIndex.ll
M llvm/test/CodeGen/SPIRV/hlsl-intrinsics/smoothstep.ll
A llvm/test/CodeGen/SystemZ/mcount.ll
M llvm/test/CodeGen/WebAssembly/externref-unsized-load.ll
M llvm/test/CodeGen/WebAssembly/externref-unsized-store.ll
A llvm/test/CodeGen/WebAssembly/fast-isel-pr138479.ll
M llvm/test/CodeGen/X86/align-basic-block-sections.mir
A llvm/test/CodeGen/X86/apx/check-nf-in-suppress-reloc-pass.ll
M llvm/test/CodeGen/X86/basic-block-address-map-mir-parse.mir
M llvm/test/CodeGen/X86/basic-block-sections-mir-parse.mir
M llvm/test/CodeGen/X86/build-vector-256.ll
M llvm/test/CodeGen/X86/build-vector-512.ll
M llvm/test/CodeGen/X86/buildvec-widen-dotproduct.ll
M llvm/test/CodeGen/X86/cfguard-x86-64-vectorcall.ll
M llvm/test/CodeGen/X86/cfguard-x86-vectorcall.ll
M llvm/test/CodeGen/X86/dllexport-x86_64.ll
M llvm/test/CodeGen/X86/mangle-question-mark.ll
M llvm/test/CodeGen/X86/musttail-tailcc.ll
M llvm/test/CodeGen/X86/tailcall-tailcc.ll
M llvm/test/CodeGen/X86/tailcc-fastcc.ll
M llvm/test/CodeGen/X86/tailcc-fastisel.ll
M llvm/test/CodeGen/X86/tailccstack64.ll
A llvm/test/CodeGen/X86/uefi-fastcc.ll
M llvm/test/CodeGen/X86/vector-shuffle-256-v4.ll
M llvm/test/CodeGen/X86/win32-preemption.ll
A llvm/test/DebugInfo/KeyInstructions/Generic/inline.ll
A llvm/test/DebugInfo/KeyInstructions/Generic/parse.ll
A llvm/test/DebugInfo/KeyInstructions/Generic/simplifycfg-branch-fold.ll
A llvm/test/DebugInfo/KeyInstructions/debugify.ll
A llvm/test/DebugInfo/KeyInstructions/lit.local.cfg
M llvm/test/DebugInfo/MIR/AArch64/clobber-sp.mir
M llvm/test/DebugInfo/MIR/AArch64/dbgcall-site-expr-chain.mir
M llvm/test/DebugInfo/MIR/AArch64/dbgcall-site-expr-entry-value.mir
M llvm/test/DebugInfo/MIR/AArch64/dbgcall-site-orr-moves.mir
M llvm/test/DebugInfo/MIR/AArch64/implicit-def-dead-scope.mir
M llvm/test/DebugInfo/MIR/AArch64/no-dbg-value-after-terminator.mir
M llvm/test/DebugInfo/MIR/AArch64/subreg-fragment-overflow.mir
A llvm/test/DebugInfo/NVPTX/debug-bool-var.ll
M llvm/test/DebugInfo/X86/single-location.mir
M llvm/test/ExecutionEngine/RuntimeDyld/X86/coff-alignment.ll
M llvm/test/Instrumentation/AddressSanitizer/AMDGPU/adaptive_constant_global_redzones.ll
M llvm/test/Instrumentation/AddressSanitizer/AMDGPU/adaptive_global_redzones.ll
M llvm/test/Instrumentation/AddressSanitizer/AMDGPU/asan_do_not_instrument_lds.ll
M llvm/test/Instrumentation/AddressSanitizer/AMDGPU/asan_do_not_instrument_scratch.ll
M llvm/test/Instrumentation/AddressSanitizer/AMDGPU/asan_instrument_constant_address_space.ll
M llvm/test/Instrumentation/AddressSanitizer/AMDGPU/asan_instrument_generic_address_space.ll
M llvm/test/Instrumentation/AddressSanitizer/AMDGPU/asan_instrument_global_address_space.ll
M llvm/test/Instrumentation/AddressSanitizer/AMDGPU/asan_instrument_mem_intrinsics.ll
M llvm/test/Instrumentation/AddressSanitizer/AMDGPU/global_metadata_addrspacecasts.ll
M llvm/test/Instrumentation/AddressSanitizer/AMDGPU/no_redzones_in_lds_globals.ll
M llvm/test/Instrumentation/AddressSanitizer/AMDGPU/no_redzones_in_scratch_globals.ll
M llvm/test/LTO/AMDGPU/closed-world-assumption.ll
R llvm/test/Linker/Inputs/pr22807-1.ll
R llvm/test/Linker/Inputs/pr22807-2.ll
A llvm/test/Linker/Inputs/pr22807.ll
M llvm/test/Linker/Inputs/type-unique-opaque.ll
M llvm/test/Linker/intrinsics-with-unnamed-types.ll
M llvm/test/Linker/pr22807.ll
M llvm/test/Linker/type-unique-opaque.ll
M llvm/test/MC/AArch64/adrp-auth-relocation.s
A llvm/test/MC/AArch64/arch_directive.s
M llvm/test/MC/AArch64/error-location.s
M llvm/test/MC/AArch64/ilp32-diagnostics.s
M llvm/test/MC/AArch64/seh.s
M llvm/test/MC/AMDGPU/gfx11_asm_vop1_t16_promote.s
M llvm/test/MC/AMDGPU/gfx11_asm_vop3_from_vop1.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop1.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop1_dpp16.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop1_dpp8.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop1_t16_err.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop1_t16_promote.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop3_from_vop1.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop3_from_vop1_dpp16.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop3_from_vop1_dpp8.s
M llvm/test/MC/AMDGPU/gfx950_err.s
A llvm/test/MC/Disassembler/Sparc/invalid.s
M llvm/test/MC/LoongArch/Relocations/relocations.s
M llvm/test/MC/RISCV/xqcibm-valid.s
M llvm/test/MC/RISCV/xqcicm-valid.s
M llvm/test/MC/RISCV/xqcilo-valid.s
M llvm/test/MC/RISCV/xqcisync-valid.s
A llvm/test/MC/Sparc/Directives/data.s
A llvm/test/MC/Sparc/Misc/elf-feature.s
A llvm/test/MC/Sparc/Misc/elf-machine-type.s
A llvm/test/MC/Sparc/Misc/little-endian.s
A llvm/test/MC/Sparc/Relocations/expr.s
A llvm/test/MC/Sparc/Relocations/reloc-directive.s
A llvm/test/MC/Sparc/Relocations/relocation-specifier-pic.s
A llvm/test/MC/Sparc/Relocations/relocation-specifier.s
A llvm/test/MC/Sparc/Relocations/relocation.s
R llvm/test/MC/Sparc/elf-sparc-feature.s
R llvm/test/MC/Sparc/elf-sparc-machine-type.s
R llvm/test/MC/Sparc/reloc-directive.s
R llvm/test/MC/Sparc/sparc-assembly-exprs.s
R llvm/test/MC/Sparc/sparc-directives.s
R llvm/test/MC/Sparc/sparc-fixups.s
R llvm/test/MC/Sparc/sparc-little-endian.s
R llvm/test/MC/Sparc/sparc-pic.s
R llvm/test/MC/Sparc/sparc-relocations.s
R llvm/test/MC/Sparc/sparc-tls-relocations.s
M llvm/test/MC/Sparc/sparc64-bpr-offset.s
M llvm/test/MC/SystemZ/machine-directive-invalid.s
M llvm/test/MC/SystemZ/machine-directive.s
M llvm/test/TableGen/GlobalISelCombinerEmitter/match-table-cxx.td
M llvm/test/TableGen/GlobalISelEmitter/GlobalISelEmitter.td
M llvm/test/TableGen/HasNoUse.td
M llvm/test/TableGen/address-space-patfrags.td
A llvm/test/TableGen/cc-assign-to-reg-tuple.td
M llvm/test/ThinLTO/X86/Inputs/import_opaque_type.ll
M llvm/test/ThinLTO/X86/import_opaque_type.ll
A llvm/test/Transforms/ADCE/convergence.ll
M llvm/test/Transforms/AtomicExpand/AArch64/atomicrmw-fp.ll
M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-i16-system.ll
A llvm/test/Transforms/Attributor/nofpclass-minimumnum-maximumnum.ll
A llvm/test/Transforms/BDCE/convergence.ll
M llvm/test/Transforms/ConstraintElimination/abs.ll
A llvm/test/Transforms/ConstraintElimination/salvage-dbg-values-replaced-by-constant-2.ll
A llvm/test/Transforms/ConstraintElimination/salvage-dbg-values-replaced-by-constant.ll
A llvm/test/Transforms/ConstraintElimination/uadd-usub-sat.ll
M llvm/test/Transforms/DeadStoreElimination/assume.ll
M llvm/test/Transforms/DeadStoreElimination/memset-and-memcpy.ll
M llvm/test/Transforms/DeadStoreElimination/simple.ll
M llvm/test/Transforms/FunctionAttrs/convergent.ll
M llvm/test/Transforms/FunctionAttrs/nocapture.ll
A llvm/test/Transforms/GVN/memset-pattern.ll
A llvm/test/Transforms/GVNSink/pr138345.ll
M llvm/test/Transforms/GlobalOpt/global_alloca_diff_addrspaces.ll
M llvm/test/Transforms/IndVarSimplify/AMDGPU/addrspace-7-doesnt-crash.ll
M llvm/test/Transforms/IndVarSimplify/AMDGPU/no-widen-to-i64.ll
M llvm/test/Transforms/IndVarSimplify/canonicalize-cmp.ll
M llvm/test/Transforms/IndVarSimplify/cycled_phis.ll
M llvm/test/Transforms/IndVarSimplify/floating-point-iv.ll
M llvm/test/Transforms/IndVarSimplify/floating-point-small-iv.ll
M llvm/test/Transforms/IndVarSimplify/implied-via-addition.ll
M llvm/test/Transforms/IndVarSimplify/iv-sext.ll
M llvm/test/Transforms/IndVarSimplify/lftr.ll
M llvm/test/Transforms/IndVarSimplify/pr102597.ll
M llvm/test/Transforms/IndVarSimplify/pr126012.ll
M llvm/test/Transforms/IndVarSimplify/pr66986.ll
M llvm/test/Transforms/IndVarSimplify/preserving-debugloc.ll
M llvm/test/Transforms/IndVarSimplify/scev-invalidation.ll
M llvm/test/Transforms/IndVarSimplify/shift-range-checks.ll
M llvm/test/Transforms/InferAddressSpaces/AMDGPU/ptrmask.ll
M llvm/test/Transforms/Inline/AMDGPU/amdgpu-inline-alloca-argument-cost.ll
M llvm/test/Transforms/Inline/AMDGPU/amdgpu-inline-alloca-argument.ll
A llvm/test/Transforms/Inline/inline-recursive-fn.ll
A llvm/test/Transforms/Inline/noalias-escape-source.ll
M llvm/test/Transforms/InstCombine/AArch64/sve-intrinsic-comb-no-active-lanes.ll
M llvm/test/Transforms/InstCombine/AArch64/sve-intrinsic-simplify-binop.ll
M llvm/test/Transforms/InstCombine/AArch64/sve-intrinsic-simplify-shift.ll
M llvm/test/Transforms/InstCombine/AArch64/sve-intrinsic-simplify-to-u-form.ll
A llvm/test/Transforms/InstCombine/AArch64/sve-intrinsic-uxt.ll
M llvm/test/Transforms/InstCombine/AMDGPU/memcpy-from-constant.ll
M llvm/test/Transforms/InstCombine/atomicrmw.ll
M llvm/test/Transforms/InstCombine/fpclass-check-idioms.ll
M llvm/test/Transforms/InstCombine/freeze-fp-ops.ll
M llvm/test/Transforms/InstCombine/malloc-free-mismatched.ll
M llvm/test/Transforms/InstCombine/store.ll
M llvm/test/Transforms/InstSimplify/gep.ll
M llvm/test/Transforms/InstSimplify/gv-alloca-cmp.ll
M llvm/test/Transforms/InstSimplify/maxmin_intrinsics.ll
M llvm/test/Transforms/LoadStoreVectorizer/AMDGPU/aa-metadata.ll
M llvm/test/Transforms/LoadStoreVectorizer/AMDGPU/addrspace-7.ll
M llvm/test/Transforms/LoadStoreVectorizer/AMDGPU/adjust-alloca-alignment.ll
M llvm/test/Transforms/LoadStoreVectorizer/AMDGPU/complex-index.ll
M llvm/test/Transforms/LoadStoreVectorizer/AMDGPU/dont-adjust-globalobj-alignment.ll
M llvm/test/Transforms/LoadStoreVectorizer/AMDGPU/extended-index.ll
M llvm/test/Transforms/LoadStoreVectorizer/AMDGPU/gep-bitcast.ll
M llvm/test/Transforms/LoadStoreVectorizer/AMDGPU/insertion-point.ll
M llvm/test/Transforms/LoadStoreVectorizer/AMDGPU/interleaved-mayalias-store.ll
M llvm/test/Transforms/LoadStoreVectorizer/AMDGPU/invariant-load.ll
M llvm/test/Transforms/LoadStoreVectorizer/AMDGPU/merge-stores-private.ll
M llvm/test/Transforms/LoadStoreVectorizer/AMDGPU/merge-stores.ll
A llvm/test/Transforms/LoadStoreVectorizer/AMDGPU/merge-vectors-complex.ll
M llvm/test/Transforms/LoadStoreVectorizer/AMDGPU/merge-vectors.ll
M llvm/test/Transforms/LoadStoreVectorizer/AMDGPU/missing-alignment.ll
M llvm/test/Transforms/LoadStoreVectorizer/AMDGPU/multiple_tails.ll
M llvm/test/Transforms/LoadStoreVectorizer/AMDGPU/no-implicit-float.ll
M llvm/test/Transforms/LoadStoreVectorizer/AMDGPU/optnone.ll
M llvm/test/Transforms/LoadStoreVectorizer/AMDGPU/pointer-elements.ll
M llvm/test/Transforms/LoadStoreVectorizer/AMDGPU/selects-inseltpoison.ll
M llvm/test/Transforms/LoadStoreVectorizer/AMDGPU/selects.ll
M llvm/test/Transforms/LoadStoreVectorizer/AMDGPU/store_with_aliasing_load.ll
M llvm/test/Transforms/LoadStoreVectorizer/AMDGPU/weird-type-accesses.ll
M llvm/test/Transforms/LoopDeletion/invalidate-scev-after-hoisting.ll
M llvm/test/Transforms/LoopStrengthReduce/AMDGPU/atomics.ll
M llvm/test/Transforms/LoopStrengthReduce/AMDGPU/different-addrspace-addressing-mode-loops.ll
M llvm/test/Transforms/LoopStrengthReduce/AMDGPU/lsr-invalid-ptr-extend.ll
M llvm/test/Transforms/LoopStrengthReduce/AMDGPU/lsr-postinc-pos-addrspace.ll
M llvm/test/Transforms/LoopStrengthReduce/AMDGPU/preserve-addrspace-assert.ll
M llvm/test/Transforms/LoopVectorize/AArch64/conditional-branches-cost.ll
M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-dot-product-mixed.ll
M llvm/test/Transforms/LoopVectorize/AArch64/vplan-printing.ll
A llvm/test/Transforms/LoopVectorize/PowerPC/vplan-scalarivsext-crash.ll
M llvm/test/Transforms/LoopVectorize/RISCV/truncate-to-minimal-bitwidth-evl-crash.ll
M llvm/test/Transforms/LoopVectorize/RISCV/type-info-cache-evl-crash.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-bin-unary-ops-args.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-call-intrinsics.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-cast-intrinsics.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-cond-reduction.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-div.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-fixed-order-recurrence.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-intermediate-store.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-iv32.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-known-no-overflow.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-masked-loadstore.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-ordered-reduction.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-uniform-store.ll
M llvm/test/Transforms/LoopVectorize/uniform_across_vf_induction1.ll
M llvm/test/Transforms/LoopVectorize/uniform_across_vf_induction1_and.ll
M llvm/test/Transforms/LoopVectorize/uniform_across_vf_induction1_div_urem.ll
M llvm/test/Transforms/LoopVectorize/uniform_across_vf_induction1_lshr.ll
M llvm/test/Transforms/LoopVectorize/uniform_across_vf_induction2.ll
A llvm/test/Transforms/LoopVectorize/widen-intrinsic.ll
M llvm/test/Transforms/LowerAtomic/atomic-load.ll
M llvm/test/Transforms/ObjCARC/provenance.ll
M llvm/test/Transforms/Reassociate/fast-ReassociateVector.ll
M llvm/test/Transforms/Reg2Mem/non-token-test.ll
M llvm/test/Transforms/SLPVectorizer/AArch64/extractelements-to-shuffle.ll
M llvm/test/Transforms/SLPVectorizer/AMDGPU/address-space-ptr-sze-gep-index-assert.ll
M llvm/test/Transforms/SLPVectorizer/SystemZ/vec-elt-insertion.ll
A llvm/test/Transforms/SLPVectorizer/X86/matched-bv-schedulable.ll
A llvm/test/Transforms/SLPVectorizer/X86/phi-comparator-fix-vec-ops-compare.ll
M llvm/test/Transforms/SLPVectorizer/full-overlap-non-schedulable.ll
M llvm/test/Transforms/SeparateConstOffsetFromGEP/AMDGPU/lower-gep.ll
M llvm/test/Transforms/SimplifyCFG/speculate-store.ll
M llvm/test/Transforms/VectorCombine/AArch64/scalarize-scalable.ll
A llvm/test/Transforms/VectorCombine/AArch64/shuffle-of-intrinscis.ll
M llvm/test/Transforms/VectorCombine/AMDGPU/as-transition-inseltpoison.ll
M llvm/test/Transforms/VectorCombine/AMDGPU/as-transition.ll
M llvm/test/Transforms/VectorCombine/X86/insert-binop-with-constant-inseltpoison.ll
M llvm/test/Transforms/VectorCombine/X86/insert-binop-with-constant.ll
A llvm/test/Transforms/VectorCombine/binop-scalarize.ll
A llvm/test/Verifier/2008-09-02-FunctionNotes2.ll
M llvm/test/Verifier/convergencectrl-invalid.ll
A llvm/test/Verifier/global-initializer-sized.ll
M llvm/test/Verifier/memset-pattern-unsized.ll
M llvm/test/Verifier/nofpclass.ll
M llvm/test/Verifier/scalable-global-vars.ll
M llvm/test/Verifier/unsized-types-load.ll
M llvm/test/Verifier/unsized-types-store.ll
M llvm/test/lit.site.cfg.py.in
A llvm/test/tools/llvm-mca/Mips/i6400.s
A llvm/test/tools/llvm-mca/Mips/lit.local.cfg
A llvm/test/tools/llvm-mca/RISCV/SpacemitX60/atomic.s
A llvm/test/tools/llvm-mca/RISCV/SpacemitX60/floating-point.s
A llvm/test/tools/llvm-mca/RISCV/SpacemitX60/integer.s
M llvm/test/tools/llvm-profdata/memprof-yaml.test
M llvm/test/tools/llvm-readobj/COFF/arm64-win-error1.s
M llvm/test/tools/llvm-readobj/ELF/dynamic-tags-machine-specific.test
A llvm/test/tools/llvm-readobj/ELF/reloc-types-sparcv9.test
M llvm/test/tools/llvm-reduce/reduce-functions-blockaddress-wrong-function.ll
M llvm/test/tools/llvm-reduce/reduce-functions-blockaddress.ll
A llvm/test/tools/llvm-reduce/reduce-instructions-to-return-nonvoid-noncallee-use.ll
A llvm/test/tools/llvm-reduce/reduce-instructions-to-return.ll
M llvm/test/tools/llvm-reduce/reduce-operands-fp.ll
M llvm/test/tools/llvm-reduce/reduce-operands-int.ll
M llvm/test/tools/llvm-reduce/reduce-operands-ptr.ll
A llvm/test/tools/llvm-reduce/reduce-values-to-return-args.ll
A llvm/test/tools/llvm-reduce/reduce-values-to-return-callbr.ll
A llvm/test/tools/llvm-reduce/reduce-values-to-return-invoke.ll
A llvm/test/tools/llvm-reduce/reduce-values-to-return-new-return-type.ll
M llvm/test/tools/llvm-reduce/remove-bb-switch-default.ll
M llvm/tools/dsymutil/DwarfLinkerForBinary.cpp
M llvm/tools/llvm-exegesis/lib/AArch64/Target.cpp
M llvm/tools/llvm-exegesis/lib/ParallelSnippetGenerator.cpp
M llvm/tools/llvm-lto/llvm-lto.cpp
M llvm/tools/llvm-objdump/SourcePrinter.cpp
M llvm/tools/llvm-profdata/llvm-profdata.cpp
M llvm/tools/llvm-readobj/ARMWinEHPrinter.cpp
M llvm/tools/llvm-readobj/ARMWinEHPrinter.h
M llvm/tools/llvm-readobj/llvm-readobj.cpp
M llvm/tools/llvm-reduce/CMakeLists.txt
M llvm/tools/llvm-reduce/DeltaManager.cpp
M llvm/tools/llvm-reduce/DeltaPasses.def
M llvm/tools/llvm-reduce/deltas/ReduceFunctions.cpp
M llvm/tools/llvm-reduce/deltas/ReduceOperandsToArgs.cpp
A llvm/tools/llvm-reduce/deltas/ReduceValuesToReturn.cpp
A llvm/tools/llvm-reduce/deltas/ReduceValuesToReturn.h
M llvm/tools/llvm-reduce/deltas/Utils.cpp
M llvm/tools/llvm-reduce/deltas/Utils.h
M llvm/tools/opt/optdriver.cpp
M llvm/tools/sancov/sancov.cpp
M llvm/unittests/ADT/ArrayRefTest.cpp
M llvm/unittests/ADT/MapVectorTest.cpp
M llvm/unittests/Analysis/MemorySSATest.cpp
M llvm/unittests/Analysis/ValueTrackingTest.cpp
M llvm/unittests/CodeGen/GlobalISel/CSETest.cpp
M llvm/unittests/CodeGen/SelectionDAGPatternMatchTest.cpp
M llvm/unittests/DebugInfo/CodeView/TypeHashingTest.cpp
M llvm/unittests/ExecutionEngine/Orc/CoreAPIsTest.cpp
M llvm/unittests/Frontend/OpenMPIRBuilderTest.cpp
M llvm/unittests/FuzzMutate/OperationsTest.cpp
M llvm/unittests/IR/DominatorTreeTest.cpp
M llvm/unittests/IR/ManglerTest.cpp
M llvm/unittests/IR/MetadataTest.cpp
M llvm/unittests/ProfileData/MemProfTest.cpp
M llvm/unittests/Support/CMakeLists.txt
M llvm/unittests/Support/FormatVariadicTest.cpp
M llvm/unittests/Support/Path.cpp
A llvm/unittests/Support/ProgramStackTest.cpp
M llvm/unittests/Support/YAMLIOTest.cpp
M llvm/unittests/Target/SPIRV/SPIRVAPITest.cpp
M llvm/unittests/Target/SPIRV/SPIRVConvergenceRegionAnalysisTests.cpp
M llvm/unittests/TargetParser/TripleTest.cpp
M llvm/unittests/Transforms/Utils/CloningTest.cpp
M llvm/unittests/Transforms/Utils/MemTransferLowering.cpp
M llvm/unittests/Transforms/Vectorize/VPlanHCFGTest.cpp
M llvm/unittests/Transforms/Vectorize/VPlanSlpTest.cpp
M llvm/unittests/Transforms/Vectorize/VPlanTestBase.h
M llvm/unittests/Transforms/Vectorize/VPlanVerifierTest.cpp
M llvm/unittests/XRay/GraphTest.cpp
M llvm/unittests/tools/llvm-exegesis/RISCV/TargetTest.cpp
M llvm/utils/TableGen/AsmWriterEmitter.cpp
M llvm/utils/TableGen/Basic/DirectiveEmitter.cpp
M llvm/utils/TableGen/CallingConvEmitter.cpp
M llvm/utils/TableGen/Common/CodeGenDAGPatterns.cpp
M llvm/utils/TableGen/Common/CodeGenRegisters.cpp
M llvm/utils/TableGen/Common/CodeGenRegisters.h
M llvm/utils/TableGen/DAGISelMatcherEmitter.cpp
M llvm/utils/TableGen/DAGISelMatcherOpt.cpp
M llvm/utils/TableGen/DFAEmitter.cpp
M llvm/utils/TableGen/GlobalISelCombinerEmitter.cpp
M llvm/utils/TableGen/InstrInfoEmitter.cpp
M llvm/utils/gn/secondary/clang/unittests/Basic/BUILD.gn
M llvm/utils/gn/secondary/clang/unittests/Frontend/BUILD.gn
M llvm/utils/gn/secondary/lldb/test/BUILD.gn
M llvm/utils/gn/secondary/llvm/include/llvm/Config/BUILD.gn
M llvm/utils/gn/secondary/llvm/lib/Support/BUILD.gn
M llvm/utils/gn/secondary/llvm/lib/Target/NVPTX/BUILD.gn
M llvm/utils/gn/secondary/llvm/lib/Target/RISCV/MCTargetDesc/BUILD.gn
M llvm/utils/gn/secondary/llvm/lib/Target/Sparc/BUILD.gn
M llvm/utils/gn/secondary/llvm/lib/Target/Sparc/MCTargetDesc/BUILD.gn
M llvm/utils/gn/secondary/llvm/test/BUILD.gn
M llvm/utils/gn/secondary/llvm/tools/llvm-reduce/BUILD.gn
M llvm/utils/gn/secondary/llvm/unittests/Support/BUILD.gn
M llvm/utils/lit/lit/TestRunner.py
A llvm/utils/lit/tests/Inputs/timeout-hang/lit.cfg
A llvm/utils/lit/tests/Inputs/timeout-hang/run-nonexistent.txt
A llvm/utils/lit/tests/timeout-hang.py
M llvm/utils/update_analyze_test_checks.py
M llvm/utils/update_cc_test_checks.py
M llvm/utils/update_llc_test_checks.py
M llvm/utils/update_mc_test_checks.py
M llvm/utils/update_mca_test_checks.py
M llvm/utils/update_mir_test_checks.py
M llvm/utils/update_test_checks.py
M mlir/docs/DefiningDialects/AttributesAndTypes.md
M mlir/docs/Dialects/SPIR-V.md
M mlir/include/mlir/Conversion/ArithToEmitC/ArithToEmitC.h
A mlir/include/mlir/Conversion/ConvertToEmitC/ConvertToEmitCPass.h
A mlir/include/mlir/Conversion/ConvertToEmitC/ToEmitCInterface.h
M mlir/include/mlir/Conversion/FuncToEmitC/FuncToEmitC.h
M mlir/include/mlir/Conversion/MemRefToEmitC/MemRefToEmitC.h
M mlir/include/mlir/Conversion/Passes.h
M mlir/include/mlir/Conversion/Passes.td
M mlir/include/mlir/Conversion/SCFToEmitC/SCFToEmitC.h
M mlir/include/mlir/Conversion/VectorToLLVM/ConvertVectorToLLVM.h
M mlir/include/mlir/Dialect/AMDGPU/IR/AMDGPU.td
M mlir/include/mlir/Dialect/Affine/Passes.h
M mlir/include/mlir/Dialect/Affine/Passes.td
M mlir/include/mlir/Dialect/LLVMIR/LLVMAttrDefs.td
M mlir/include/mlir/Dialect/LLVMIR/LLVMDialect.td
M mlir/include/mlir/Dialect/LLVMIR/LLVMEnums.td
M mlir/include/mlir/Dialect/LLVMIR/LLVMOps.td
M mlir/include/mlir/Dialect/LLVMIR/NVVMOps.td
M mlir/include/mlir/Dialect/OpenACC/OpenACCOps.td
M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVControlFlowOps.td
M mlir/include/mlir/Dialect/Vector/IR/VectorOps.td
M mlir/include/mlir/Dialect/Vector/TransformOps/VectorTransformOps.td
M mlir/include/mlir/Dialect/Vector/Transforms/VectorRewritePatterns.h
M mlir/include/mlir/Dialect/X86Vector/X86Vector.td
M mlir/include/mlir/Dialect/XeGPU/IR/XeGPUTypes.td
M mlir/include/mlir/Dialect/XeGPU/Transforms/Transforms.h
A mlir/include/mlir/Dialect/XeGPU/Utils/XeGPUUtils.h
M mlir/include/mlir/IR/BuiltinAttributeInterfaces.h
M mlir/include/mlir/IR/BuiltinAttributeInterfaces.td
M mlir/include/mlir/IR/BuiltinAttributes.td
M mlir/include/mlir/IR/BuiltinTypes.td
M mlir/include/mlir/IR/SymbolTable.h
M mlir/include/mlir/InitAllExtensions.h
M mlir/include/mlir/Pass/Pass.h
M mlir/include/mlir/Target/LLVMIR/ModuleImport.h
M mlir/lib/Conversion/AMDGPUToROCDL/AMDGPUToROCDL.cpp
M mlir/lib/Conversion/ArithToEmitC/ArithToEmitC.cpp
M mlir/lib/Conversion/CMakeLists.txt
A mlir/lib/Conversion/ConvertToEmitC/CMakeLists.txt
A 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/MemRefToEmitC/MemRefToEmitCPass.cpp
M mlir/lib/Conversion/SCFToEmitC/SCFToEmitC.cpp
M mlir/lib/Conversion/VectorToGPU/VectorToGPU.cpp
M mlir/lib/Conversion/VectorToLLVM/ConvertVectorToLLVM.cpp
M mlir/lib/Conversion/VectorToLLVM/ConvertVectorToLLVMPass.cpp
M mlir/lib/Dialect/AMDGPU/Transforms/TransferReadToLoad.cpp
M mlir/lib/Dialect/Affine/Analysis/Utils.cpp
M mlir/lib/Dialect/Affine/IR/AffineOps.cpp
M mlir/lib/Dialect/Affine/TransformOps/AffineTransformOps.cpp
M mlir/lib/Dialect/Affine/Transforms/CMakeLists.txt
A mlir/lib/Dialect/Affine/Transforms/RaiseMemrefDialect.cpp
M mlir/lib/Dialect/Affine/Transforms/SuperVectorize.cpp
M mlir/lib/Dialect/Affine/Utils/LoopUtils.cpp
M mlir/lib/Dialect/Affine/Utils/Utils.cpp
M mlir/lib/Dialect/Affine/Utils/ViewLikeInterfaceUtils.cpp
M mlir/lib/Dialect/Arith/IR/ArithDialect.cpp
M mlir/lib/Dialect/Arith/IR/ValueBoundsOpInterfaceImpl.cpp
M mlir/lib/Dialect/Bufferization/IR/BufferizationDialect.cpp
M mlir/lib/Dialect/Bufferization/Transforms/FuncBufferizableOpInterfaceImpl.cpp
M mlir/lib/Dialect/EmitC/IR/EmitC.cpp
M mlir/lib/Dialect/Func/IR/FuncOps.cpp
M mlir/lib/Dialect/GPU/IR/GPUDialect.cpp
M mlir/lib/Dialect/GPU/Transforms/SubgroupIdRewriter.cpp
M mlir/lib/Dialect/LLVMIR/IR/LLVMAttrs.cpp
M mlir/lib/Dialect/LLVMIR/IR/LLVMDialect.cpp
M mlir/lib/Dialect/LLVMIR/IR/NVVMDialect.cpp
M mlir/lib/Dialect/Linalg/IR/LinalgOps.cpp
M mlir/lib/Dialect/Linalg/TransformOps/LinalgTransformOps.cpp
M mlir/lib/Dialect/Linalg/Transforms/ElementwiseOpFusion.cpp
M mlir/lib/Dialect/Linalg/Transforms/Fusion.cpp
M mlir/lib/Dialect/Linalg/Transforms/Promotion.cpp
M mlir/lib/Dialect/Linalg/Transforms/TilingInterfaceImpl.cpp
M mlir/lib/Dialect/MemRef/IR/MemRefDialect.cpp
M mlir/lib/Dialect/MemRef/IR/MemRefOps.cpp
M mlir/lib/Dialect/MemRef/Transforms/EmulateNarrowType.cpp
M mlir/lib/Dialect/MemRef/Transforms/ExpandStridedMetadata.cpp
M mlir/lib/Dialect/MemRef/Transforms/FoldMemRefAliasOps.cpp
M mlir/lib/Dialect/MemRef/Transforms/RuntimeOpVerification.cpp
M mlir/lib/Dialect/Mesh/Interfaces/ShardingInterface.cpp
M mlir/lib/Dialect/OpenACC/IR/OpenACC.cpp
M mlir/lib/Dialect/OpenACC/Transforms/LegalizeDataValues.cpp
M mlir/lib/Dialect/OpenMP/IR/OpenMPDialect.cpp
M mlir/lib/Dialect/SCF/IR/SCF.cpp
M mlir/lib/Dialect/SCF/Transforms/BufferizableOpInterfaceImpl.cpp
M mlir/lib/Dialect/SCF/Transforms/TileUsingInterface.cpp
M mlir/lib/Dialect/SPIRV/IR/ControlFlowOps.cpp
M mlir/lib/Dialect/SPIRV/IR/SPIRVOps.cpp
M mlir/lib/Dialect/SPIRV/IR/SPIRVParsingUtils.h
M mlir/lib/Dialect/SparseTensor/Transforms/SparseGPUCodegen.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/Utils/LoopEmitter.cpp
M mlir/lib/Dialect/Tensor/IR/TensorOps.cpp
M mlir/lib/Dialect/Tosa/IR/TosaOps.cpp
M mlir/lib/Dialect/Transform/Interfaces/TransformInterfaces.cpp
M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
M mlir/lib/Dialect/Vector/TransformOps/VectorTransformOps.cpp
M mlir/lib/Dialect/Vector/Transforms/VectorDistribute.cpp
M mlir/lib/Dialect/Vector/Transforms/VectorLinearize.cpp
M mlir/lib/Dialect/X86Vector/IR/X86VectorDialect.cpp
M mlir/lib/Dialect/X86Vector/Transforms/LegalizeForLLVMExport.cpp
M mlir/lib/Dialect/XeGPU/CMakeLists.txt
M mlir/lib/Dialect/XeGPU/IR/XeGPUDialect.cpp
M mlir/lib/Dialect/XeGPU/Transforms/CMakeLists.txt
M mlir/lib/Dialect/XeGPU/Transforms/XeGPUSubgroupDistribute.cpp
A mlir/lib/Dialect/XeGPU/Utils/CMakeLists.txt
A mlir/lib/Dialect/XeGPU/Utils/XeGPUUtils.cpp
M mlir/lib/IR/AsmPrinter.cpp
M mlir/lib/IR/BuiltinAttributeInterfaces.cpp
M mlir/lib/IR/BuiltinAttributes.cpp
M mlir/lib/IR/BuiltinTypes.cpp
M mlir/lib/IR/SymbolTable.cpp
M mlir/lib/IR/TypeDetail.h
M mlir/lib/IR/Verifier.cpp
M mlir/lib/Interfaces/DataLayoutInterfaces.cpp
M mlir/lib/Pass/IRPrinting.cpp
M mlir/lib/Pass/Pass.cpp
M mlir/lib/TableGen/AttrOrTypeDef.cpp
M mlir/lib/TableGen/Pattern.cpp
M mlir/lib/Target/LLVMIR/Dialect/LLVMIR/LLVMToLLVMIRTranslation.cpp
M mlir/lib/Target/LLVMIR/LLVMImportInterface.cpp
M mlir/lib/Target/LLVMIR/ModuleImport.cpp
M mlir/lib/Target/LLVMIR/ModuleTranslation.cpp
M mlir/lib/Target/SPIRV/Deserialization/Deserializer.cpp
M mlir/lib/Target/SPIRV/Deserialization/Deserializer.h
M mlir/lib/Target/SPIRV/Serialization/SerializeOps.cpp
M mlir/lib/Transforms/Utils/InliningUtils.cpp
M mlir/test/Conversion/AMDGPUToROCDL/mfma-gfx950.mlir
M mlir/test/Conversion/ArithToEmitC/arith-to-emitc.mlir
A mlir/test/Conversion/ConvertToEmitC/func-failed.mlir
A mlir/test/Conversion/ConvertToEmitC/func.mlir
A mlir/test/Conversion/ConvertToEmitC/tosa.mlir
M mlir/test/Conversion/FuncToEmitC/func-to-emitc.mlir
M mlir/test/Conversion/MemRefToEmitC/memref-to-emitc.mlir
M mlir/test/Conversion/SCFToEmitC/for.mlir
M mlir/test/Conversion/SCFToEmitC/if.mlir
M mlir/test/Conversion/SCFToEmitC/switch.mlir
A mlir/test/Conversion/VectorToLLVM/use-vector-alignment.mlir
M mlir/test/Dialect/AMDGPU/ops.mlir
M mlir/test/Dialect/Affine/SuperVectorize/vectorize_unsupported.mlir
A mlir/test/Dialect/Affine/raise-memref.mlir
M mlir/test/Dialect/Arith/value-bounds-op-interface-impl.mlir
M mlir/test/Dialect/GPU/subgroupId-rewrite.mlir
M mlir/test/Dialect/LLVMIR/debuginfo.mlir
M mlir/test/Dialect/LLVMIR/func.mlir
M mlir/test/Dialect/LLVMIR/invalid.mlir
M mlir/test/Dialect/LLVMIR/module-roundtrip.mlir
M mlir/test/Dialect/LLVMIR/roundtrip.mlir
M mlir/test/Dialect/OpenACC/invalid.mlir
M mlir/test/Dialect/OpenACC/legalize-data.mlir
M mlir/test/Dialect/OpenACC/ops.mlir
M mlir/test/Dialect/OpenMP/ops.mlir
M mlir/test/Dialect/SPIRV/IR/control-flow-ops.mlir
M mlir/test/Dialect/Tensor/one-shot-bufferize.mlir
M mlir/test/Dialect/Vector/CPU/X86/vector-transpose-lowering.mlir
M mlir/test/Dialect/Vector/canonicalize.mlir
M mlir/test/Dialect/Vector/canonicalize/vector-transpose.mlir
M mlir/test/Dialect/Vector/invalid.mlir
A mlir/test/Dialect/Vector/linearize-subject-to-bitwidth.mlir
M mlir/test/Dialect/Vector/linearize.mlir
M mlir/test/Dialect/Vector/ops.mlir
M mlir/test/Dialect/Vector/vector-warp-distribute.mlir
M mlir/test/Dialect/X86Vector/legalize-for-llvm.mlir
M mlir/test/Dialect/X86Vector/roundtrip.mlir
A mlir/test/Dialect/XeGPU/subgroup-distribution.mlir
M mlir/test/Dialect/XeGPU/subgroup-map-propagation.mlir
A mlir/test/IR/custom-struct-attr-roundtrip.mlir
M mlir/test/IR/pretty-resources-print.mlir
A mlir/test/Integration/Dialect/MemRef/atomic-rmw-runtime-verification.mlir
R mlir/test/Integration/Dialect/MemRef/reinterpret-cast-runtime-verification.mlir
A mlir/test/Integration/Dialect/MemRef/store-runtime-verification.mlir
M mlir/test/Pass/ir-printing-file-tree.mlir
M mlir/test/Target/LLVMIR/Import/blockaddress.ll
M mlir/test/Target/LLVMIR/Import/function-attributes.ll
M mlir/test/Target/LLVMIR/Import/import-failure.ll
M mlir/test/Target/LLVMIR/Import/instructions.ll
M mlir/test/Target/LLVMIR/Import/intrinsic-prefer-unregistered.ll
M mlir/test/Target/LLVMIR/Import/intrinsic-unregistered.ll
M mlir/test/Target/LLVMIR/Import/module-flags.ll
M mlir/test/Target/LLVMIR/llvmir.mlir
M mlir/test/Target/LLVMIR/nvvm/cvt_fp6x2.mlir
A mlir/test/Target/LLVMIR/nvvm/cvt_fp8x2.mlir
M mlir/test/Target/LLVMIR/nvvmir-invalid.mlir
M mlir/test/Target/LLVMIR/openmp-llvm.mlir
M mlir/test/Target/LLVMIR/x86vector.mlir
A mlir/test/Target/SPIRV/consecutive-selection.spv
M mlir/test/Target/SPIRV/loop.mlir
M mlir/test/lib/Dialect/Affine/TestVectorizationUtils.cpp
M mlir/test/lib/Dialect/SCF/TestSCFUtils.cpp
M mlir/test/lib/Dialect/Test/TestAttrDefs.td
M mlir/test/lib/Dialect/Test/TestAttributes.cpp
M mlir/test/lib/Dialect/Test/TestOps.td
M mlir/test/lib/Dialect/Vector/TestVectorTransforms.cpp
M mlir/test/mlir-tblgen/attr-or-type-format-invalid.td
M mlir/test/mlir-tblgen/attr-or-type-format.td
M mlir/test/mlir-tblgen/pattern.mlir
M mlir/tools/mlir-tblgen/AttrOrTypeFormatGen.cpp
M mlir/tools/mlir-tblgen/FormatGen.cpp
M mlir/tools/mlir-tblgen/FormatGen.h
M mlir/tools/mlir-tblgen/OpFormatGen.cpp
M mlir/tools/mlir-tblgen/RewriterGen.cpp
M mlir/tools/mlir-tblgen/SPIRVUtilsGen.cpp
M offload/CMakeLists.txt
M offload/DeviceRTL/CMakeLists.txt
M offload/DeviceRTL/include/Synchronization.h
A offload/Maintainers.md
M offload/liboffload/include/OffloadImpl.hpp
M offload/liboffload/src/OffloadImpl.cpp
M offload/unittests/OffloadAPI/CMakeLists.txt
A offload/unittests/OffloadAPI/event/olDestroyEvent.cpp
A offload/unittests/OffloadAPI/event/olWaitEvent.cpp
M offload/unittests/OffloadAPI/kernel/olGetKernel.cpp
M openmp/runtime/src/kmp.h
M openmp/runtime/src/kmp_affinity.cpp
M openmp/runtime/src/kmp_affinity.h
M openmp/runtime/src/kmp_global.cpp
M openmp/runtime/src/kmp_platform.h
M openmp/runtime/src/kmp_wrapper_getpid.h
M openmp/runtime/src/z_Linux_asm.S
A utils/bazel/llvm-project-overlay/clang-tools-extra/clang-apply-replacements/BUILD.bazel
M utils/bazel/llvm-project-overlay/clang-tools-extra/unittests/BUILD.bazel
M utils/bazel/llvm-project-overlay/clang/BUILD.bazel
M utils/bazel/llvm-project-overlay/lld/BUILD.bazel
M utils/bazel/llvm-project-overlay/llvm/BUILD.bazel
M utils/bazel/llvm-project-overlay/llvm/include/llvm/Config/llvm-config.h
R utils/bazel/llvm-project-overlay/llvm/tblgen.bzl
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
M utils/bazel/llvm-project-overlay/mlir/python/BUILD.bazel
M utils/bazel/llvm-project-overlay/mlir/tblgen.bzl
Log Message:
-----------
Merge branch 'main' into users/el-ev/riscv-mul-expand
Compare: https://github.com/llvm/llvm-project/compare/ced8340065d1...c523b9c2eff0
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