[all-commits] [llvm/llvm-project] afbcf9: [OpenMP 6.0 ]Codegen for Reduction over private va...
Iris Shi via All-commits
all-commits at lists.llvm.org
Fri Jun 13 19:21:29 PDT 2025
Branch: refs/heads/users/el-ev/populate-simplify-demanded-bits
Home: https://github.com/llvm/llvm-project
Commit: afbcf9529a1edb88d067e6fca8d9534901310d5e
https://github.com/llvm/llvm-project/commit/afbcf9529a1edb88d067e6fca8d9534901310d5e
Author: CHANDRA GHALE <chandra.nitdgp at gmail.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M clang/docs/OpenMPSupport.rst
M clang/docs/ReleaseNotes.rst
M clang/lib/CodeGen/CGOpenMPRuntime.cpp
M clang/lib/CodeGen/CGOpenMPRuntime.h
M clang/lib/CodeGen/CGStmtOpenMP.cpp
M clang/lib/Sema/SemaOpenMP.cpp
M clang/test/OpenMP/distribute_simd_misc_messages.c
A clang/test/OpenMP/for_private_reduction_codegen.cpp
M clang/test/OpenMP/for_reduction_messages.cpp
M clang/test/OpenMP/for_simd_reduction_messages.cpp
M clang/test/OpenMP/sections_reduction_messages.cpp
A openmp/runtime/test/worksharing/for/omp_for_private_reduction.cpp
Log Message:
-----------
[OpenMP 6.0 ]Codegen for Reduction over private variables with reduction clause (#134709)
Codegen support for reduction over private variable with reduction
clause. Section 7.6.10 in in OpenMP 6.0 spec.
- An internal shared copy is initialized with an initializer value.
- The shared copy is updated by combining its value with the values from
the private copies created by the clause.
- Once an encountering thread verifies that all updates are complete,
its original list item is updated by merging its value with that of the
shared copy and then broadcast to all threads.
Sample Test Case from OpenMP 6.0 Example
```
#include <assert.h>
#include <omp.h>
#define N 10
void do_red(int n, int *v, int &sum_v)
{
sum_v = 0; // sum_v is private
#pragma omp for reduction(original(private),+: sum_v)
for (int i = 0; i < n; i++)
{
sum_v += v[i];
}
}
int main(void)
{
int v[N];
for (int i = 0; i < N; i++)
v[i] = i;
#pragma omp parallel num_threads(4)
{
int s_v; // s_v is private
do_red(N, v, s_v);
assert(s_v == 45);
}
return 0;
}
```
Expected Codegen:
```
// A shared global/static variable is introduced for the reduction result.
// This variable is initialized (e.g., using memset or a UDR initializer)
// e.g., .omp.reduction.internal_private_var
// Barrier before any thread performs combination
call void @__kmpc_barrier(...)
// Initialization block (executed by thread 0)
// e.g., call void @llvm.memset.p0.i64(...) or call @udr_initializer(...)
call void @__kmpc_critical(...)
// Inside critical section:
// Load the current value from the shared variable
// Load the thread-local private variable's value
// Perform the reduction operation
// Store the result back to the shared variable
call void @__kmpc_end_critical(...)
// Barrier after all threads complete their combinations
call void @__kmpc_barrier(...)
// Broadcast phase:
// Load the final result from the shared variable)
// Store the final result to the original private variable in each thread
// Final barrier after broadcast
call void @__kmpc_barrier(...)
```
---------
Co-authored-by: Chandra Ghale <ghale at pe31.hpc.amslabs.hpecorp.net>
Commit: e44a65ed98ad896d0c0c3b1e10937a19f786b9ef
https://github.com/llvm/llvm-project/commit/e44a65ed98ad896d0c0c3b1e10937a19f786b9ef
Author: Kareem Ergawy <kareem.ergawy at amd.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M flang/lib/Optimizer/OpenMP/DoConcurrentConversion.cpp
A flang/test/Transforms/DoConcurrent/locality_specifiers_simple.mlir
Log Message:
-----------
[flang][OpenMP] Map basic `local` specifiers to `private` clauses (#142735)
Starts the effort to map `do concurrent` locality specifiers to OpenMP
clauses. This PR adds support for basic specifiers (no `init` or `copy`
regions yet).
Commit: 7460c700ae3026d927952f911d0e667de6e0c18b
https://github.com/llvm/llvm-project/commit/7460c700ae3026d927952f911d0e667de6e0c18b
Author: Jameson Nash <vtjnash at gmail.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M llvm/lib/Transforms/Scalar/MemCpyOptimizer.cpp
M llvm/test/Transforms/MemCpyOpt/memset-memcpy-oversized.ll
M llvm/test/Transforms/MemCpyOpt/memset-memcpy-to-2x-memset.ll
M llvm/test/Transforms/MemCpyOpt/mixed-sizes.ll
M llvm/test/Transforms/MemCpyOpt/variable-sized-memset-memcpy.ll
Log Message:
-----------
[MemCpyOpt] handle memcpy from memset in more cases (#140954)
This aims to reduce the divergence between the initial checks in this
function and processMemCpyMemCpyDependence (in particular, adding
handling of offsets), with the goal to eventually reduce duplication
there and improve this pass in other ways.
Commit: ddb771ecfd12cab8d323a4e64e64b965883585de
https://github.com/llvm/llvm-project/commit/ddb771ecfd12cab8d323a4e64e64b965883585de
Author: David Green <david.green at arm.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M clang/include/clang/Basic/AArch64ACLETypes.def
M clang/test/AST/ast-dump-aarch64-neon-types.c
M clang/test/CodeGen/AArch64/mixed-neon-types.c
Log Message:
-----------
[AArch64][Clang] Update new Neon vector element types. (#142760)
This updates the element types used in the new __Int8x8_t types added in
#126945, mostly to allow C++ name mangling in ItaniumMangling
mangleAArch64VectorBase to work correctly. Char is replaced by
SignedCharTy or UnsignedCharTy as required and Float16Ty is better using
HalfTy to match the vector types. Same for Long types.
Commit: 6e0c2bc668107547365d79a6e5f57317a6302c29
https://github.com/llvm/llvm-project/commit/6e0c2bc668107547365d79a6e5f57317a6302c29
Author: Javed Absar <javed.absar at gmail.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M mlir/include/mlir/Dialect/Async/IR/AsyncOps.td
Log Message:
-----------
[mlir][async][nfc] Fix typo in async op description (#143621)
Commit: 7ffdf4240d62724dca7f42b37bd8671fefe17e17
https://github.com/llvm/llvm-project/commit/7ffdf4240d62724dca7f42b37bd8671fefe17e17
Author: Tom Eccles <tom.eccles at arm.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M clang/include/clang/Driver/Options.td
A flang/test/Driver/darwin-version.f90
Log Message:
-----------
[flang][Driver] Enable support for -mmacos-version-min= (#143508)
So far as I can tell this option is driver-only so we can just re-use
what already exists for clang. I've added a unit test based on clang's
unit test to demonstrate that the option is handled.
Still TODO is to ensure that flang-rt is built with the same macos
minimum version as compiler-rt. At the moment, setting the flang minimum
version to older than the macos version on which flang was built will
lead to link warnings because flangrt is built for version of macos on
which flang was built rather than the oldest supported version (as
compiler-rt is).
Commit: 9797b5fcfbb9b9c96a219985f3623849bbd3956e
https://github.com/llvm/llvm-project/commit/9797b5fcfbb9b9c96a219985f3623849bbd3956e
Author: Dmitry Polukhin <34227995+dmpolukhin at users.noreply.github.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/AST/ExprConstant.cpp
A clang/test/Modules/constexpr-initialization-failure.cpp
Log Message:
-----------
[C++20][Modules] Fix false compilation error with constexpr (#143168)
Use declaresSameEntity when evaluating constexpr to avoid resetting
computed union value due to using different instances of the merged
field decl.
Commit: c59cc2b690b9e528a82ba214f74a8f7c8abb3cde
https://github.com/llvm/llvm-project/commit/c59cc2b690b9e528a82ba214f74a8f7c8abb3cde
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M libunwind/cmake/config-ix.cmake
M libunwind/src/CMakeLists.txt
Log Message:
-----------
[libunwind] Remove checks for -nostdlib++ (#143162)
libunwind uses a C linker, so it's never even trying to link against any
C++ libraries. This removes the code which tries to drop C++ libraries,
which makes the CMake configuration simpler and allows for upgrading
GCC.
Commit: ea9046699eae04ac5159a1666f19b5b32e5d41c1
https://github.com/llvm/llvm-project/commit/ea9046699eae04ac5159a1666f19b5b32e5d41c1
Author: Paul Walker <paul.walker at arm.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M clang/test/CodeGen/attr-arm-sve-vector-bits-cast.c
M llvm/include/llvm/IR/Function.h
M llvm/lib/IR/Function.cpp
M llvm/lib/Transforms/Scalar/SROA.cpp
A llvm/test/Transforms/SROA/scalable-vectors-with-known-vscale.ll
M llvm/test/Transforms/SROA/scalable-vectors.ll
Log Message:
-----------
[LLVM][SROA] Teach SROA how to "bitcast" between fixed and scalable vectors. (#130973)
For function whose vscale_range is limited to a single value we can size
scalable vectors. This aids SROA by allowing scalable vector load and
store operations to be considered for replacement whereby bitcasts
through memory can be replaced by vector insert or extract operations.
Commit: ddef9ce8dad611c2fef172f3b08c5c98235a3b41
https://github.com/llvm/llvm-project/commit/ddef9ce8dad611c2fef172f3b08c5c98235a3b41
Author: CHANDRA GHALE <chandra.nitdgp at gmail.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M openmp/runtime/test/worksharing/for/omp_for_private_reduction.cpp
Log Message:
-----------
LLVM Buildbot failure on openmp runtime test (#143674)
Error looks to be missing includes for complex number support in some
system. Removing test for now.
Relevant PR :
[PR-134709](https://github.com/llvm/llvm-project/pull/134709)
```
.---command stderr------------
# | /home/uweigand/sandbox/buildbot/openmp-s390x-linux/llvm.src/openmp/runtime/test/worksharing/for/omp_for_private_reduction.cpp:78:42: error: use of undeclared identifier 'I'
# | 78 | double _Complex expected = 0.0 + 0.0 * I;
# | | ^
# | /home/uweigand/sandbox/buildbot/openmp-s390x-linux/llvm.src/openmp/runtime/test/worksharing/for/omp_for_private_reduction.cpp:79:40: error: use of undeclared identifier 'I'
# | 79 | double _Complex result = 0.0 + 0.0 * I;
# | | ^
# | /home/uweigand/sandbox/buildbot/openmp-s390x-linux/llvm.src/openmp/runtime/test/worksharing/for/omp_for_private_reduction.cpp:84:22: error: use of undeclared identifier 'I'
# | 84 | arr[i] = i - i * I;
# | | ^
# | /home/uweigand/sandbox/buildbot/openmp-s390x-linux/llvm.src/openmp/runtime/test/worksharing/for/omp_for_private_reduction.cpp:92:19: error: use of undeclared identifier 'creal'
# | 92 | real_sum += creal(arr[i]);
# | | ^~~~~
# | /home/uweigand/sandbox/buildbot/openmp-s390x-linux/llvm.src/openmp/runtime/test/worksharing/for/omp_for_private_reduction.cpp:93:19: error: use of undeclared identifier 'cimag'
# | 93 | imag_sum += cimag(arr[i]);
# | | ^~~~~
# | /home/uweigand/sandbox/buildbot/openmp-s390x-linux/llvm.src/openmp/runtime/test/worksharing/for/omp_for_private_reduction.cpp:96:36: error: use of undeclared identifier 'I'
# | 96 | result = real_sum + imag_sum * I;
# | | ^
# | /home/uweigand/sandbox/buildbot/openmp-s390x-linux/llvm.src/openmp/runtime/test/worksharing/for/omp_for_private_reduction.cpp:97:9: error: use of undeclared identifier 'cabs'
# | 97 | if (cabs(result - expected) > 1e-6) {
# | | ^~~~
# | 7 errors generated.
```
Co-authored-by: Chandra Ghale <ghale at pe31.hpc.amslabs.hpecorp.net>
Commit: 354cfba5209eed5ea6bafb6a3e69e65148c4e25d
https://github.com/llvm/llvm-project/commit/354cfba5209eed5ea6bafb6a3e69e65148c4e25d
Author: Jeremy Morse <jeremy.morse at sony.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M llvm/include/llvm/IR/DebugProgramInstruction.h
M llvm/include/llvm/IR/PassManagerImpl.h
M llvm/lib/Bitcode/Writer/BitcodeWriterPass.cpp
M llvm/lib/CodeGen/MIRPrinter.cpp
M llvm/lib/IR/IRPrintingPasses.cpp
M llvm/lib/IR/LegacyPassManager.cpp
M llvm/lib/IRPrinter/IRPrintingPasses.cpp
M llvm/lib/Linker/IRMover.cpp
M llvm/lib/Transforms/IPO/ThinLTOBitcodeWriter.cpp
M mlir/lib/Target/LLVMIR/ConvertToLLVMIR.cpp
Log Message:
-----------
[DebugInfo][RemoveDIs] Remove scoped-dbg-format-setter (#143450)
This was a utility for flipping between intrinsic and debug record mode
-- we don't need it any more. The "IsNewDbgInfoFormat" should be true
everywhere.
Commit: 79a72c47d09c2e2cee645430f9d290c20d2618f1
https://github.com/llvm/llvm-project/commit/79a72c47d09c2e2cee645430f9d290c20d2618f1
Author: AZero13 <gfunni234 at gmail.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
M llvm/test/Analysis/CostModel/AArch64/div.ll
M llvm/test/Analysis/CostModel/AArch64/rem.ll
M llvm/test/Analysis/CostModel/AArch64/sve-div.ll
M llvm/test/Analysis/CostModel/AArch64/sve-rem.ll
Log Message:
-----------
[AArch64] Consider negated powers of 2 when calculating throughput cost (#143013)
Negated powers of 2 have similar or (exact in the case of remainder)
codegen with lowering sdiv. In the case of sdiv, it just negates the
result in the end anyway, so nothing dissimilar at all.
Commit: 40cc7b4578fd2d65aaef8356fbe7caf2d84a8f3e
https://github.com/llvm/llvm-project/commit/40cc7b4578fd2d65aaef8356fbe7caf2d84a8f3e
Author: Tomas Matheson <Tomas.Matheson at arm.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
A clang/test/Frontend/aarch64-print-enabled-extensions-cc1.c
Log Message:
-----------
[clang][AArch64] test -cc1 -print-enabled-extensions (#143570)
This adds tests that document how -cc1 and -print-enabled-extensions
interact. The current behaviour looks wrong, and is caused by the fact
that --print-enabled-extensions uses the MC subtarget feature API to
determine the list of extensions to print, whereas the frontend uses the
TargetParser API. The latter does no dependency expansion for the
-target-feature flags but the MC API does.
This doesn't fix anything but at least it documents the current
behaviour, and will serve as a pre-commit test for any future fixes.
Commit: 19b0e1227ca6653405e4a34627d04a14f2287f26
https://github.com/llvm/llvm-project/commit/19b0e1227ca6653405e4a34627d04a14f2287f26
Author: Luke Lau <luke at igalia.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M llvm/lib/Analysis/ConstantFolding.cpp
M llvm/test/Transforms/InstSimplify/fp-undef-poison.ll
Log Message:
-----------
[ConstantFolding] Fold sqrt poison -> poison (#141821)
I noticed this when a sqrt produced by VectorCombine with a poison
operand wasn't getting folded away to poison.
Most intrinsics in general could probably be folded to poison if one of
their arguments are poison too. Are there any exceptions to this we need
to be aware of?
Commit: 44a7ecd1d7485be94d3a92021c650175f100d2f7
https://github.com/llvm/llvm-project/commit/44a7ecd1d7485be94d3a92021c650175f100d2f7
Author: Alexander Ziaee <concussious at runbox.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M lld/ELF/Relocations.cpp
M lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerCommon.cpp
M lldb/tools/debugserver/source/RNBRemote.cpp
M llvm/lib/Target/X86/X86TargetTransformInfo.cpp
M openmp/tools/archer/ompt-tsan.cpp
Log Message:
-----------
[doc] Use ISO nomenclature for 1024 byte units (#133148)
Increase specificity by using the correct unit sizes. KBytes is an
abbreviation for kB, 1000 bytes, and the hardware industry as well as
several operating systems have now switched to using 1000 byte kBs.
If this change is acceptable, sometimes GitHub mangles merges to use the
original email of the account. $dayjob asks contributions have my work
email. Thanks!
Commit: abbbe4a6cd1b83b89a834163335053863f5ffbfa
https://github.com/llvm/llvm-project/commit/abbbe4a6cd1b83b89a834163335053863f5ffbfa
Author: Simone Pellegrini <simone.pellegrini at arm.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M flang/test/HLFIR/assign-side-effects.fir
M flang/test/HLFIR/memory-effects.fir
M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
M mlir/test/Dialect/Bufferization/side-effects.mlir
A mlir/test/Dialect/Vector/side-effects.mlir
M mlir/test/IR/test-side-effects.mlir
M mlir/test/lib/IR/TestSideEffects.cpp
Log Message:
-----------
[mlir][vector] Fix attaching write effects on transfer_write's base (#142940)
This fixes an issue with `TransferWriteOp`'s implementation of the
`MemoryEffectOpInterface` where the write effect was attached to the
stored value rather than the base.
This had the effect that when asking for the memory effects for the
input memref buffer using `getEffectsOnValue(...)`, the function would
return no-effects (as the effect would have been attached to the stored
value rather than the input buffer).
Commit: 2dd88c405d77b34dc028af09f3d55fa10dbed50e
https://github.com/llvm/llvm-project/commit/2dd88c405d77b34dc028af09f3d55fa10dbed50e
Author: Kareem Ergawy <kareem.ergawy at amd.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M flang/lib/Optimizer/OpenMP/DoConcurrentConversion.cpp
A flang/test/Transforms/DoConcurrent/locality_specifiers_init_dealloc.mlir
Log Message:
-----------
[flang][OpenMP] Extend locality spec to OMP claues (`init` and `dealloc` regions) (#142795)
Extends support for locality specifier to OpenMP translation by adding
supprot for transling localizers that have `init` and `dealloc` regions.
Commit: 756e7cfd86c7f2bf20aaa1a3f87b5aa72ec128b4
https://github.com/llvm/llvm-project/commit/756e7cfd86c7f2bf20aaa1a3f87b5aa72ec128b4
Author: Adrian Vogelsgesang <vogelsgesang at gmail.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M clang/lib/CodeGen/CGVTables.cpp
M lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic/coroutine_handle/TestCoroutineHandle.py
M llvm/lib/Transforms/Coroutines/CoroSplit.cpp
M llvm/test/Transforms/Coroutines/coro-debug-dbg.values-not_used_in_frame.ll
M llvm/test/Transforms/Coroutines/coro-debug-dbg.values.ll
M llvm/test/Transforms/Coroutines/coro-debug-frame-variable.ll
M llvm/test/Transforms/Coroutines/coro-debug.ll
Log Message:
-----------
[debuginfo][coro] Fix linkage name for clones of coro functions (#141889)
So far, the `DW_AT_linkage_name` of the coroutine `resume`, `destroy`,
`cleanup` and `noalloc` function clones were incorrectly set to the
original function name instead of the updated function names.
With this commit, we now update the `DW_AT_linkage_name` to the correct
name. This has multiple benefits:
1. it's easier for me (and other toolchain developers) to understand the
output of `llvm-dwarf-dump` when coroutines are involved.
2. When hitting a breakpoint, both LLDB and GDB now tell you which clone
of the function you are in. E.g., GDB now prints "Breakpoint 1.2,
coro_func(int) [clone .resume] (v=43) at ..." instead of "Breakpoint
1.2, coro_func(int) (v=43) at ...".
3. GDB's `info line coro_func` command now allows you to distinguish the
multiple different clones of the function.
In Swift, the linkage names of the clones were already updated. The
comment right above the relevant code in `CoroSplit.cpp` already hinted
that the linkage name should probably also be updated in C++. This
comment was added in commit 6ce76ff7eb7640, and back then the
corresponding `DW_AT_specification` (i.e., `SP->getDeclaration()`) was
not updated, yet, which led to problems for C++. In the meantime, commit
ca1a5b37c7236d added code to also update `SP->getDeclaration`, as such
there is no reason anymore to not update the linkage name for C++.
Note that most test cases used inconsistent function names for the LLVM
function vs. the DISubprogram linkage name. clang would never emit such
LLVM IR. This confused me initially, and hence I fixed it while updating
the test case.
Drive-by fix: The change in `CGVTables.cpp` is purely stylistic, NFC.
When looking for other usages of `replaceWithDistinct`, I got initially
confused because `CGVTables.cpp` was calling a static function via an
object instance.
Commit: f44f411afa914107d0a2395d2d8db826f88205e5
https://github.com/llvm/llvm-project/commit/f44f411afa914107d0a2395d2d8db826f88205e5
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
A llvm/test/CodeGen/MSP430/fcmp.ll
Log Message:
-----------
MSP430: Add tests for fcmp (#142706)
The existing coverage is thin. libcalls.ll seems to be the main fcmp
test, and it doesn't cover all the condition types, and runs with -O0.
Test all conditions for f32 and f64
Commit: 953a778fabc48025569fe0d5b3b363b981263f21
https://github.com/llvm/llvm-project/commit/953a778fabc48025569fe0d5b3b363b981263f21
Author: Serge Pavlov <sepavloff at gmail.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/lib/Target/RISCV/RISCVISelLowering.h
M llvm/lib/Target/RISCV/RISCVInstrInfo.td
M llvm/lib/Target/RISCV/RISCVRegisterInfo.td
A llvm/test/CodeGen/RISCV/fpenv-xlen.ll
M llvm/test/CodeGen/RISCV/frm-write-in-loop.ll
Log Message:
-----------
[RISCV][FPEnv] Lowering of fpenv intrinsics (#141498)
The change implements custom lowering of `get_fpenv`, `set_fpenv` and
`reset_fpenv` for RISCV target.
Commit: 4a46ead8fb5b57e69bcd1c72ebd7dd8eaf09fa9c
https://github.com/llvm/llvm-project/commit/4a46ead8fb5b57e69bcd1c72ebd7dd8eaf09fa9c
Author: Adrian Vogelsgesang <avogelsgesang at salesforce.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M lldb/include/lldb/DataFormatters/TypeSynthetic.h
M lldb/source/DataFormatters/TypeSynthetic.cpp
M lldb/source/Plugins/Language/CPlusPlus/Coroutines.cpp
M lldb/source/Plugins/Language/CPlusPlus/Coroutines.h
M lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic/coroutine_handle/TestCoroutineHandle.py
Log Message:
-----------
[lldb] Show coro_frame in `std::coroutine_handle` pretty printer (#141516)
This commit adjusts the pretty printer for `std::coroutine_handle` based
on recent personal experiences with debugging C++20 coroutines:
1. It adds the `coro_frame` member. This member exposes the complete
coroutine frame contents, including the suspension point id and all
internal variables which the compiler decided to persist into the
coroutine frame. While this data is highly compiler-specific, inspecting
it can help identify the internal state of suspended coroutines.
2. It includes the `promise` and `coro_frame` members, even if
devirtualization failed and we could not infer the promise type / the
coro_frame type. Having them available as `void*` pointers can still be
useful to identify, e.g., which two coroutine handles have the same
frame / promise pointers.
Commit: 3ef7d035e21d8f75eb85b521d7ff0203e60cb6f2
https://github.com/llvm/llvm-project/commit/3ef7d035e21d8f75eb85b521d7ff0203e60cb6f2
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M llvm/lib/Target/MSP430/MSP430ISelLowering.cpp
Log Message:
-----------
MSP430: Stop using setCmpLibcallCC (#142708)
This appears to only be useful for the eq/ne cases, and only for
ARM libcalls. This is setting it to the default values, and there's
no change in the new fcmp test output.
Commit: ac7fa4099e83d6490d2f9ea185b236db2f26e652
https://github.com/llvm/llvm-project/commit/ac7fa4099e83d6490d2f9ea185b236db2f26e652
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M llvm/lib/IR/RuntimeLibcalls.cpp
M llvm/lib/Target/MSP430/MSP430ISelLowering.cpp
Log Message:
-----------
MSP430: Partially move runtime libcall config out of TargetLowering (#142709)
RuntimeLibcalls needs to be correct outside of codegen contexts.
Commit: 33fee564998598a52e802292db25c0ee52f7e1a6
https://github.com/llvm/llvm-project/commit/33fee564998598a52e802292db25c0ee52f7e1a6
Author: Nathan Gauër <brioche at google.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M clang/lib/Basic/Targets/SPIR.h
M clang/test/CodeGenHLSL/group_shared.hlsl
Log Message:
-----------
[HLSL][SPIR-V] Change SPV AS map for groupshared (#143519)
The previous mapping we setting the hlsl_groupshared AS to 0, which
translated to either Generic or Function.
Changing this to 3, which translated to Workgroup.
Related to #142804
Commit: 50f534e21cfb47aaf44e1613f71b56cca55ba395
https://github.com/llvm/llvm-project/commit/50f534e21cfb47aaf44e1613f71b56cca55ba395
Author: Nathan Gauër <brioche at google.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M clang/include/clang/Basic/Attr.td
M clang/include/clang/Basic/AttrDocs.td
M clang/include/clang/Sema/SemaHLSL.h
M clang/lib/CodeGen/CGHLSLRuntime.cpp
M clang/lib/Parse/ParseHLSL.cpp
M clang/lib/Sema/SemaDeclAttr.cpp
M clang/lib/Sema/SemaHLSL.cpp
A clang/test/CodeGenHLSL/semantics/SV_Position.ps.hlsl
A clang/test/SemaHLSL/Semantics/position.ps.hlsl
A clang/test/SemaHLSL/Semantics/position.ps.size.hlsl
A clang/test/SemaHLSL/Semantics/position.vs.hlsl
Log Message:
-----------
[HLSL][SPIR-V] Handle SV_Position builtin in PS (#141759)
This commit is using the same mechanism as vk::ext_builtin_input to
implement the SV_Position semantic input.
The HLSL signature is not yet ready for DXIL, hence this commit only
implements the SPIR-V side.
This is incomplete as it doesn't allow the semantic on hull/domain and
other shaders, but it's a first step to validate the overall
input/output
semantic logic.
Fixes https://github.com/llvm/llvm-project/issues/136969
Commit: b49c7896c0a31ca618098b52a28eb87dff625b8f
https://github.com/llvm/llvm-project/commit/b49c7896c0a31ca618098b52a28eb87dff625b8f
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M libcxx/include/__bit/countr.h
M libcxx/include/__bit/popcount.h
Log Message:
-----------
[libc++] Fix constraints in `__countr_zero` and `__popcount`
Currently these two functions are constrained on `is_unsigned`, which is
more permissive than what is required by the standard for their public
counterparts. This fixes the constraints to match the public functions
by using `__libcpp_is_unsigned_integer` instead.
Commit: 3c56437eafee95f368feb20d28b74c29504b833d
https://github.com/llvm/llvm-project/commit/3c56437eafee95f368feb20d28b74c29504b833d
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M libcxx/include/CMakeLists.txt
M libcxx/include/__bit/bit_ceil.h
M libcxx/include/__bit/bit_floor.h
M libcxx/include/__bit/bit_log2.h
M libcxx/include/__bit/bit_width.h
M libcxx/include/__bit/countl.h
M libcxx/include/__bit/countr.h
M libcxx/include/__bit/has_single_bit.h
M libcxx/include/__bit/popcount.h
M libcxx/include/__bit/rotate.h
M libcxx/include/__concepts/arithmetic.h
M libcxx/include/__format/format_arg_store.h
M libcxx/include/__mdspan/extents.h
M libcxx/include/__numeric/saturation_arithmetic.h
A libcxx/include/__type_traits/integer_traits.h
R libcxx/include/__type_traits/is_signed_integer.h
R libcxx/include/__type_traits/is_unsigned_integer.h
M libcxx/include/__utility/cmp.h
M libcxx/include/module.modulemap.in
M libcxx/test/libcxx/concepts/concepts.arithmetic/__libcpp_integer.compile.pass.cpp
M libcxx/test/libcxx/concepts/concepts.arithmetic/__libcpp_signed_integer.compile.pass.cpp
M libcxx/test/libcxx/concepts/concepts.arithmetic/__libcpp_unsigned_integer.compile.pass.cpp
Log Message:
-----------
[libc++] Refactor signed/unsigned integer traits (#142750)
This patch does a few things:
- `__libcpp_is_signed_integer` and `__libcpp_is_unsigned_integer` are
refactored to be variable templates instead of class templates.
- the two traits are merged into a single header
`<__type_traits/integer_traits.h>`.
- `__libcpp_signed_integer`, `__libcpp_unsigned_integer` and
`__libcpp_integer` are moved into the same header.
- The above mentioned concepts are renamed to `__signed_integer`,
`__unsigned_integer` and `__signed_or_unsigned_integer` respectively.
Commit: b10d711362b8634cefcb288d9f1b577f63adb9f7
https://github.com/llvm/llvm-project/commit/b10d711362b8634cefcb288d9f1b577f63adb9f7
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M libcxx/include/__type_traits/is_integral.h
Log Message:
-----------
[libc++][NFC] Move __libcpp_is_integral into the else branch (#142556)
This makes it clear that `__libcpp_is_integral` is an implementation
detail of `is_integral` if we don't have `__is_integral` and not its own
utility.
Commit: 2692c3aa6760f1e4ea015f906926f63ec7dce044
https://github.com/llvm/llvm-project/commit/2692c3aa6760f1e4ea015f906926f63ec7dce044
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M llvm/utils/gn/secondary/libcxx/include/BUILD.gn
Log Message:
-----------
[gn build] Port 3c56437eafee
Commit: 3d7aa961ac96f83d2e28f107c6dfa5a6a279b364
https://github.com/llvm/llvm-project/commit/3d7aa961ac96f83d2e28f107c6dfa5a6a279b364
Author: Jeremy Morse <jeremy.morse at sony.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M llvm/lib/AsmParser/LLParser.cpp
M llvm/lib/IR/AsmWriter.cpp
M llvm/lib/IR/AutoUpgrade.cpp
M llvm/lib/IR/BasicBlock.cpp
M llvm/lib/IR/Verifier.cpp
M llvm/test/Assembler/drop-debug-info-nonzero-alloca.ll
M llvm/test/DebugInfo/Generic/assignment-tracking/parse-and-verify/verify.ll
M llvm/test/DebugInfo/Generic/sroa-extract-bits.ll
M llvm/test/Transforms/IROutliner/outlining-debug-statements.ll
M llvm/test/Transforms/ObjCARC/code-motion.ll
A llvm/test/Verifier/RemoveDI/invalid-dbg-declare-operands.ll
A llvm/test/Verifier/dbg-declare-invalid-debug-loc.ll
M llvm/test/Verifier/diexpression-entry-value-llvm-ir.ll
M llvm/test/Verifier/llvm.dbg.declare-address.ll
M llvm/test/Verifier/llvm.dbg.declare-expression.ll
M llvm/test/Verifier/llvm.dbg.declare-variable.ll
M llvm/test/Verifier/llvm.dbg.intrinsic-dbg-attachment.ll
M llvm/test/Verifier/llvm.dbg.value-expression.ll
M llvm/test/Verifier/llvm.dbg.value-value.ll
M llvm/test/Verifier/llvm.dbg.value-variable.ll
M llvm/unittests/IR/DebugInfoTest.cpp
Log Message:
-----------
[DebugInfo][RemoveDIs] Use autoupgrader to convert old debug-info (#143452)
By chance, two things have prevented the autoupgrade path being
exercised much so far:
* LLParser setting the debug-info mode to "old" on seeing intrinsics,
* The test in AutoUpgrade.cpp wanting to upgrade into a "new" debug-info
block.
In practice, this appears to mean this code path hasn't seen the various
invalid inputs that can come its way. This commit does a number of
things:
* Tolerates the various illegal inputs that can be written with
debug-intrinsics, and that must be tolerated until the Verifier runs,
* Printing illegal/null DbgRecord fields must succeed,
* Verifier errors need to localise the function/block where the error
is,
* Tests that now see debug records will print debug-record errors,
Plus a few new tests for other intrinsic-to-debug-record failures modes
I found. There are also two edge cases:
* Some of the unit tests switch back and forth between intrinsic and
record modes at will; I've deleted coverage and some assertions to
tolerate this as intrinsic support is now Gone (TM),
* In sroa-extract-bits.ll, the order of debug records flips. This is
because the autoupgrader upgrades in the opposite order to the basic
block conversion routines... which doesn't change the record order, but
_does_ change the use list order in Metadata! This should (TM) have no
consequence to the correctness of LLVM, but will change the order of
various records and the order of DWARF record output too.
I tried to reduce this patch to a smaller collection of changes, but
they're all intertwined, sorry.
Commit: e15d50d5ff295368edaf7bff67f405617310722c
https://github.com/llvm/llvm-project/commit/e15d50d5ff295368edaf7bff67f405617310722c
Author: Darren Wihandi <65404740+fairywreath at users.noreply.github.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M mlir/lib/Conversion/MathToSPIRV/MathToSPIRV.cpp
M mlir/test/Conversion/MathToSPIRV/math-to-gl-spirv.mlir
M mlir/test/Conversion/MathToSPIRV/math-to-opencl-spirv.mlir
Log Message:
-----------
[mlir][spirv] Add lowering of multiple math trig/hypb functions (#143604)
Add Math to SPIRV lowering for tan, asin, acos, sinh, cosh, asinh, acosh
and atanh. This completes the lowering of all trigonometric and
hyperbolic functions from math to SPIRV.
Commit: cc9f67416d048bf464425b5a9243219efcb08c34
https://github.com/llvm/llvm-project/commit/cc9f67416d048bf464425b5a9243219efcb08c34
Author: Kajetan Puchalski <kajetan.puchalski at arm.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M flang/lib/Semantics/resolve-directives.cpp
M flang/test/Semantics/OpenMP/implicit-dsa.f90
Log Message:
-----------
[flang][OpenMP] Consider previous DSA for static duration variables (#143601)
Symbols that have a pre-existing DSA set in the enclosing context should
not be made shared based on them being static duration variables.
Suggested-by: Leandro Lupori <leandro.lupori at linaro.org>
---------
Signed-off-by: Kajetan Puchalski <kajetan.puchalski at arm.com>
Commit: b512077c373a4416c506002383c69867cfee0741
https://github.com/llvm/llvm-project/commit/b512077c373a4416c506002383c69867cfee0741
Author: Peter Klausler <pklausler at nvidia.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M flang-rt/include/flang-rt/runtime/work-queue.h
Log Message:
-----------
[flang][runtime] Another try to fix build failure (#143702)
Tweak accessibility to try to get code past whatever gcc is being used
by the flang-runtime-cuda-gcc build bot.
Commit: b09206db154bab8fa09b6708e642a6bba3d125be
https://github.com/llvm/llvm-project/commit/b09206db154bab8fa09b6708e642a6bba3d125be
Author: Igor Wodiany <igor.wodiany at imgtec.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVBase.td
M mlir/test/Dialect/SPIRV/IR/memory-ops.mlir
Log Message:
-----------
[mlir][spirv] Include `SPIRV_AnyImage` in `SPIRV_Type` (#143676)
This change is trigger by encountering the following error:
```
<unknown>:0: error: 'spirv.Load' op result #0 must be void
or bool or 8/16/32/64-bit integer or 16/32/64-bit float or
vector of bool or 8/16/32/64-bit integer or 16/32/64-bit
float values of length 2/3/4/8/16 or any SPIR-V pointer type
or any SPIR-V array type or any SPIR-V run time array type
or any SPIR-V struct type or any SPIR-V cooperative matrix
type or any SPIR-V matrix type or any SPIR-V sampled image
type, but got '!spirv.image<f32, Dim2D, NoDepth, NonArrayed,
SingleSampled, NoSampler, Rgba8>'<unknown>:0: note: see current
operation:
%126 = "spirv.Load"(%125) {relaxed_precision} : (!spirv.ptr<!spirv.image<f32, Dim2D, NoDepth, NonArrayed, SingleSampled, NoSampler, Rgba8>, UniformConstant>) -> !spirv.image<f32, Dim2D, NoDepth, NonArrayed, SingleSampled, NoSampler, Rgba8>
```
Commit: 6b0cb762af97579ca8ff5eea9be896169a1752b7
https://github.com/llvm/llvm-project/commit/6b0cb762af97579ca8ff5eea9be896169a1752b7
Author: Corentin Jabot <corentinjabot at gmail.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M clang/lib/Sema/SemaTypeTraits.cpp
M clang/test/SemaCXX/cxx2c-trivially-relocatable.cpp
M clang/test/SemaCXX/type-traits-unsatisfied-diags.cpp
Log Message:
-----------
[Clang] _default-movable_ should be based on the first declaration (#143661)
When the definition of a special member function was defaulted we would
not consider it user-provided, even when the first declaration was not
defaulted.
Fixes #143599
Commit: c71a2e688828ab3ede4fb54168a674ff68396f61
https://github.com/llvm/llvm-project/commit/c71a2e688828ab3ede4fb54168a674ff68396f61
Author: Jeremy Morse <jeremy.morse at sony.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/FastISel.cpp
M llvm/lib/IR/AutoUpgrade.cpp
M llvm/lib/IR/DIBuilder.cpp
M llvm/lib/IR/DebugInfo.cpp
M llvm/lib/Transforms/Utils/LoopUtils.cpp
M llvm/unittests/IR/IRBuilderTest.cpp
Log Message:
-----------
[DebugInfo][RemoveDIs] Remove some debug intrinsic-only codepaths (#143451)
These are opportunistic deletions as more places that make use of the
IsNewDbgInfoFormat flag are removed. It should (TM)(R) all be dead code
now that `IsNewDbgInfoFormat` should be true everywhere.
FastISel: we don't need to do debug-aware instruction counting any more,
because there are no debug instructions,
Autoupgrade: you can no-longer avoid autoupgrading of intrinsics to
records
DIBuilder: Delete the code for creating debug intrinsics (!)
LoopUtils: No need to handle debug instructions, they don't exist
Commit: 46d9abbba2ad63c0280d4248cc2349de78439294
https://github.com/llvm/llvm-project/commit/46d9abbba2ad63c0280d4248cc2349de78439294
Author: David Truby <david.truby at arm.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M flang/Maintainers.md
Log Message:
-----------
[flang] Add David Truby as maintainer for Flang on Windows (#142619)
Commit: 76197ea6f91f802467f2614e1217e99eb4037200
https://github.com/llvm/llvm-project/commit/76197ea6f91f802467f2614e1217e99eb4037200
Author: Jeremy Morse <jeremy.morse at sony.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/FastISel.cpp
M llvm/lib/IR/AutoUpgrade.cpp
M llvm/lib/IR/DIBuilder.cpp
M llvm/lib/IR/DebugInfo.cpp
M llvm/lib/Transforms/Utils/LoopUtils.cpp
M llvm/unittests/IR/IRBuilderTest.cpp
Log Message:
-----------
Revert "[DebugInfo][RemoveDIs] Remove some debug intrinsic-only codepaths (#143451)"
This reverts commit c71a2e688828ab3ede4fb54168a674ff68396f61.
/me squints -- this is hitting an assertion I thought had been deleted,
will revert and investigate for a bit.
Commit: 6fb2a80189016bd4222b174ae4d72e47d0aa58ff
https://github.com/llvm/llvm-project/commit/6fb2a80189016bd4222b174ae4d72e47d0aa58ff
Author: Davide Grohmann <6573166+davidegrohmann at users.noreply.github.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M mlir/include/mlir/Target/SPIRV/SPIRVBinaryUtils.h
M mlir/lib/Target/SPIRV/SPIRVBinaryUtils.cpp
Log Message:
-----------
[mlir][spirv] Truncate Literal String size at max number words (#142916)
If not truncated the SPIRV serialization would not fail but instead
produce an invalid SPIR-V module.
---------
Signed-off-by: Davide Grohmann <davide.grohmann at arm.com>
Commit: 76e14deb4a6967388a9bf84db2feeac17a30c786
https://github.com/llvm/llvm-project/commit/76e14deb4a6967388a9bf84db2feeac17a30c786
Author: Phoebe Wang <phoebe.wang at intel.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M llvm/include/llvm/CodeGen/RegisterClassInfo.h
M llvm/include/llvm/CodeGen/TargetRegisterInfo.h
M llvm/include/llvm/Target/Target.td
M llvm/lib/CodeGen/BreakFalseDeps.cpp
M llvm/lib/CodeGen/RegisterClassInfo.cpp
M llvm/lib/Target/X86/X86RegisterInfo.td
M llvm/test/CodeGen/X86/avx-cvt.ll
M llvm/test/CodeGen/X86/avx512-cvt.ll
M llvm/test/CodeGen/X86/avx512-regcall-NoMask.ll
M llvm/test/CodeGen/X86/avx512fp16-cvt.ll
M llvm/test/CodeGen/X86/avx512fp16-novl.ll
M llvm/test/CodeGen/X86/break-false-dep.ll
M llvm/test/CodeGen/X86/coalescer-commute1.ll
M llvm/test/CodeGen/X86/fast-isel-fptrunc-fpext.ll
M llvm/test/CodeGen/X86/fast-isel-int-float-conversion-x86-64.ll
M llvm/test/CodeGen/X86/fast-isel-int-float-conversion.ll
M llvm/test/CodeGen/X86/fast-isel-uint-float-conversion-x86-64.ll
M llvm/test/CodeGen/X86/fast-isel-uint-float-conversion.ll
M llvm/test/CodeGen/X86/fcmp-logic.ll
M llvm/test/CodeGen/X86/fold-int-pow2-with-fmul-or-fdiv.ll
M llvm/test/CodeGen/X86/fold-load-unops.ll
M llvm/test/CodeGen/X86/fp-intrinsics.ll
M llvm/test/CodeGen/X86/fp-strict-scalar-inttofp-fp16.ll
M llvm/test/CodeGen/X86/fp-strict-scalar-inttofp.ll
M llvm/test/CodeGen/X86/fp-strict-scalar-round-fp16.ll
M llvm/test/CodeGen/X86/ftrunc.ll
M llvm/test/CodeGen/X86/half.ll
M llvm/test/CodeGen/X86/isel-int-to-fp.ll
M llvm/test/CodeGen/X86/pr34080.ll
M llvm/test/CodeGen/X86/pr37879.ll
M llvm/test/CodeGen/X86/pr38803.ll
M llvm/test/CodeGen/X86/rounding-ops.ll
M llvm/test/CodeGen/X86/scalar-int-to-fp.ll
M llvm/test/CodeGen/X86/select-narrow-int-to-fp.ll
M llvm/test/CodeGen/X86/split-extend-vector-inreg.ll
M llvm/test/CodeGen/X86/sse-cvttp2si.ll
M llvm/test/CodeGen/X86/sse2-intrinsics-x86-upgrade.ll
M llvm/test/CodeGen/X86/stack-folding-fp-avx1.ll
M llvm/test/CodeGen/X86/vec-strict-inttofp-128.ll
M llvm/test/CodeGen/X86/vec-strict-inttofp-256.ll
M llvm/test/CodeGen/X86/vec-strict-inttofp-512.ll
M llvm/test/CodeGen/X86/vec_int_to_fp.ll
M llvm/test/CodeGen/X86/vector-constrained-fp-intrinsics.ll
M llvm/utils/TableGen/RegisterInfoEmitter.cpp
Log Message:
-----------
[X86][BreakFalseDeps] Using reverse order for undef register selection (#137569)
BreakFalseDeps picks the best register for undef operands if
instructions have false dependency. The problem is if the instruction is
close to the beginning of the function, ReachingDefAnalysis is over
optimism to the unused registers, which results in collision with
registers just defined in the caller.
This patch changes the selection of undef register in an reverse order,
which reduces the probability of register collisions between caller and
callee. It brings improvement in some of our internal benchmarks with
negligible effect on other benchmarks.
Commit: fa9e1a1515549124dd76ddc55a8a532795d51fae
https://github.com/llvm/llvm-project/commit/fa9e1a1515549124dd76ddc55a8a532795d51fae
Author: RonDahan101 <166982786+RonDahan101 at users.noreply.github.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M llvm/docs/LangRef.rst
M llvm/include/llvm/IR/Intrinsics.td
M llvm/lib/Transforms/Scalar/ScalarizeMaskedMemIntrin.cpp
M llvm/test/CodeGen/AArch64/neon-scalarize-histogram.ll
Log Message:
-----------
[AArch64] Expand llvm.histogram intrinsic to support umax, umin, and uadd.sat operations (#138447)
This patch extends the llvm.histogram intrinsic to support additional
update operations beyond the existing add. Specifically, the new
supported operations are:
* umax: unsigned maximum
* umin: unsigned minimum
* uadd.sat: unsigned saturated addition
Based on the discussion from:
https://discourse.llvm.org/t/rfc-expanding-the-experimental-histogram-intrinsic/84673
Commit: 775ad3e49c83407b79dd5ad533204884cb8b23ce
https://github.com/llvm/llvm-project/commit/775ad3e49c83407b79dd5ad533204884cb8b23ce
Author: Razvan Lupusoru <razvan.lupusoru at gmail.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M flang/lib/Lower/OpenACC.cpp
M flang/test/Lower/OpenACC/acc-kernels-loop.f90
M flang/test/Lower/OpenACC/acc-loop.f90
M flang/test/Lower/OpenACC/acc-parallel-loop.f90
M flang/test/Lower/OpenACC/acc-serial-loop.f90
M mlir/include/mlir/Dialect/OpenACC/OpenACC.h
M mlir/lib/Dialect/OpenACC/IR/OpenACC.cpp
Log Message:
-----------
[flang][acc] Ensure all acc.loop get a default parallelism determination mode (#143623)
This PR updates the flang lowering to explicitly implement the OpenACC
rules:
- As per OpenACC 3.3 standard section 2.9.6 independent clause: A loop
construct with no auto or seq clause is treated as if it has the
independent clause when it is an orphaned loop construct or its parent
compute construct is a parallel construct.
- As per OpenACC 3.3 standard section 2.9.7 auto clause: When the parent
compute construct is a kernels construct, a loop construct with no
independent or seq clause is treated as if it has the auto clause.
- Loops in serial regions are `seq` if they have no other parallelism
marking such as gang, worker, vector.
For now the `acc.loop` verifier has not yet been updated to enforce
this.
Commit: b3db0c6a1d063ec9ee15253bde3d428c0ad5968b
https://github.com/llvm/llvm-project/commit/b3db0c6a1d063ec9ee15253bde3d428c0ad5968b
Author: Steven Perron <stevenperron at google.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M clang/lib/Driver/Driver.cpp
M clang/test/Driver/dxc_spirv.hlsl
Log Message:
-----------
[HLSL][Driver] Make vk1.3 the default. (#143384)
The HLSL driver currently defaults the triple to an unversioned os and
subarch when targeting SPIR-V. This means the SPIR-V backend decides the
default value. That is not a great option because a change the backend
could cause a change in Clang.
Now that we want to choose the default we need to consider the best
option. DXC currently defaults to Vulkan1.0. We are planning on not
supporting Vulkan1.0 in the Clang HLSL compiler because it is newer
versions of Vulkan are commonly supported on nearly all hardware, so
users do not use it.
Since we have to change from DXC anyway, we are using VK1.3. It has been
out long enough to be commonly available, and the initial implementation
of SPIR-V features for HLSL are assuming Vulkan 1.3.
---------
Co-authored-by: Nathan Gauër <github at keenuts.net>
Commit: 4e441665cc0d1585c8c6e44cf3c71a055f597d2e
https://github.com/llvm/llvm-project/commit/4e441665cc0d1585c8c6e44cf3c71a055f597d2e
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M llvm/include/llvm/Analysis/ValueTracking.h
M llvm/lib/Analysis/BasicAliasAnalysis.cpp
Log Message:
-----------
[BasicAA][ValueTracking] Use MaxLookupSearchDepth constant (NFC)
Use MaxLookupSearchDepth in all places limiting an underlying
object walk, instead of hardcoding 6 in various places.
Commit: 10f512f7bbda076ca2a0f9e3fcb2e7be0cb07199
https://github.com/llvm/llvm-project/commit/10f512f7bbda076ca2a0f9e3fcb2e7be0cb07199
Author: Peter Klausler <pklausler at nvidia.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M flang-rt/include/flang-rt/runtime/environment.h
M flang-rt/include/flang-rt/runtime/stat.h
M flang-rt/include/flang-rt/runtime/type-info.h
R flang-rt/include/flang-rt/runtime/work-queue.h
M flang-rt/lib/runtime/CMakeLists.txt
M flang-rt/lib/runtime/assign.cpp
M flang-rt/lib/runtime/derived.cpp
M flang-rt/lib/runtime/descriptor-io.cpp
M flang-rt/lib/runtime/descriptor-io.h
M flang-rt/lib/runtime/environment.cpp
M flang-rt/lib/runtime/namelist.cpp
M flang-rt/lib/runtime/tools.cpp
M flang-rt/lib/runtime/type-info.cpp
R flang-rt/lib/runtime/work-queue.cpp
M flang-rt/unittests/Runtime/ExternalIOTest.cpp
M flang/docs/Extensions.md
M flang/include/flang/Runtime/assign.h
M flang/include/flang/Semantics/tools.h
M flang/lib/Semantics/runtime-type-info.cpp
M flang/lib/Semantics/tools.cpp
M flang/module/__fortran_type_info.f90
M flang/test/Lower/volatile-openmp.f90
M flang/test/Semantics/typeinfo01.f90
M flang/test/Semantics/typeinfo03.f90
M flang/test/Semantics/typeinfo04.f90
M flang/test/Semantics/typeinfo05.f90
M flang/test/Semantics/typeinfo06.f90
M flang/test/Semantics/typeinfo07.f90
M flang/test/Semantics/typeinfo08.f90
M flang/test/Semantics/typeinfo11.f90
R flang/test/Semantics/typeinfo12.f90
Log Message:
-----------
Revert runtime work queue patch, it breaks some tests that need investigation (#143713)
Revert "[flang][runtime] Another try to fix build failure"
This reverts commit 13869cac2b5051e453aa96ad71220d9d33404620.
Revert "[flang][runtime] Fix build bot flang-runtime-cuda-gcc errors
(#143650)"
This reverts commit d75e28477af0baa063a4d4cc7b3cf657cfadd758.
Revert "[flang][runtime] Replace recursion with iterative work queue
(#137727)"
This reverts commit 163c67ad3d1bf7af6590930d8f18700d65ad4564.
Commit: 9150a8249f69930a9ed1e7e523555af9815876ec
https://github.com/llvm/llvm-project/commit/9150a8249f69930a9ed1e7e523555af9815876ec
Author: Igor Wodiany <igor.wodiany at imgtec.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVGLOps.td
M mlir/test/Dialect/SPIRV/IR/gl-ops.mlir
M mlir/test/Target/SPIRV/gl-ops.mlir
Log Message:
-----------
[mlir][spirv] Add definition for GL Exp2 (#143678)
Commit: 3ca6ea0f3aabcfba318ce9b14e4567f05de3b556
https://github.com/llvm/llvm-project/commit/3ca6ea0f3aabcfba318ce9b14e4567f05de3b556
Author: Shafik Yaghmour <shafik.yaghmour at intel.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M clang/lib/AST/ByteCode/InterpBuiltin.cpp
Log Message:
-----------
[Clang][ByteCode][NFC] Move APInt into pushInteger since it is being passed by value (#143578)
Static analysis flagged that we could move APInt instead of copy, indeed
it has a move constructor and so we should move into values for APInt.
Commit: 141d390dcb6cd174b07ca663e58f37ab24eee08a
https://github.com/llvm/llvm-project/commit/141d390dcb6cd174b07ca663e58f37ab24eee08a
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M flang/docs/OpenMPSupport.md
M flang/examples/FeatureList/FeatureList.cpp
M flang/examples/FlangOmpReport/FlangOmpReportVisitor.cpp
M flang/include/flang/Parser/dump-parse-tree.h
M flang/include/flang/Parser/parse-tree.h
M flang/include/flang/Semantics/tools.h
M flang/lib/Lower/OpenMP/DataSharingProcessor.cpp
M flang/lib/Lower/OpenMP/OpenMP.cpp
M flang/lib/Parser/openmp-parsers.cpp
M flang/lib/Parser/parse-tree.cpp
M flang/lib/Parser/unparse.cpp
M flang/lib/Semantics/check-omp-structure.cpp
M flang/lib/Semantics/check-omp-structure.h
M flang/lib/Semantics/resolve-names.cpp
M flang/lib/Semantics/rewrite-directives.cpp
M flang/lib/Semantics/tools.cpp
M flang/test/Examples/omp-atomic.f90
M flang/test/Lower/OpenMP/Todo/atomic-compare-fail.f90
M flang/test/Lower/OpenMP/Todo/atomic-compare.f90
M flang/test/Lower/OpenMP/atomic-capture.f90
M flang/test/Lower/OpenMP/atomic-implicit-cast.f90
M flang/test/Lower/OpenMP/atomic-privatize.f90
M flang/test/Lower/OpenMP/atomic-write.f90
A flang/test/Lower/OpenMP/dump-atomic-analysis.f90
M flang/test/Parser/OpenMP/atomic-compare.f90
A flang/test/Parser/OpenMP/atomic-end.f90
M flang/test/Semantics/OpenMP/atomic-compare.f90
M flang/test/Semantics/OpenMP/atomic-hint-clause.f90
A flang/test/Semantics/OpenMP/atomic-read.f90
A flang/test/Semantics/OpenMP/atomic-update-capture.f90
A flang/test/Semantics/OpenMP/atomic-update-only.f90
M flang/test/Semantics/OpenMP/atomic-update-overloaded-ops.f90
A flang/test/Semantics/OpenMP/atomic-write.f90
M flang/test/Semantics/OpenMP/atomic.f90
M flang/test/Semantics/OpenMP/atomic01.f90
M flang/test/Semantics/OpenMP/atomic02.f90
M flang/test/Semantics/OpenMP/atomic03.f90
M flang/test/Semantics/OpenMP/atomic04.f90
M flang/test/Semantics/OpenMP/atomic05.f90
M flang/test/Semantics/OpenMP/critical-hint-clause.f90
M flang/test/Semantics/OpenMP/omp-atomic-assignment-stmt.f90
M flang/test/Semantics/OpenMP/requires-atomic01.f90
M flang/test/Semantics/OpenMP/requires-atomic02.f90
Log Message:
-----------
[flang][OpenMP] Overhaul implementation of ATOMIC construct (#137852)
The parser will accept a wide variety of illegal attempts at forming an
ATOMIC construct, leaving it to the semantic analysis to diagnose any
issues. This consolidates the analysis into one place and allows us to
produce more informative diagnostics.
The parser's outcome will be parser::OpenMPAtomicConstruct object
holding the directive, parser::Body, and an optional end-directive. The
prior variety of OmpAtomicXyz classes, as well as OmpAtomicClause have
been removed. READ, WRITE, etc. are now proper clauses.
The semantic analysis consistently operates on "evaluation"
representations, mainly evaluate::Expr (as SomeExpr) and
evaluate::Assignment. The results of the semantic analysis are stored in
a mutable member of the OpenMPAtomicConstruct node. This follows a
precedent of having `typedExpr` member in parser::Expr, for example.
This allows the lowering code to avoid duplicated handling of AST nodes.
Using a BLOCK construct containing multiple statements for an ATOMIC
construct that requires multiple statements is now allowed. In fact, any
nesting of such BLOCK constructs is allowed.
This implementation will parse, and perform semantic checks for both
conditional-update and conditional-update-capture, although no MLIR will
be generated for those. Instead, a TODO error will be issues prior to
lowering.
The allowed forms of the ATOMIC construct were based on the OpenMP 6.0
spec.
Commit: e64f8e043cdfc394fd31e157c8c5fb25ca85bd2f
https://github.com/llvm/llvm-project/commit/e64f8e043cdfc394fd31e157c8c5fb25ca85bd2f
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M flang/test/Driver/pic-flags.f90
Log Message:
-----------
[flang][Driver] Guard check for pic/pie settings without driver flags (#143530)
The default relocation model for clang depends on the cmake flag
CLANG_DEFAULT_PIE_ON_LINUX. By default it is set to ON, but when it's
OFF, the default relocation model will be "static".
The outcome of the test running clang without any PIC/PIE flags will
depend on the cmake flag, so make sure it only runs when the flag is ON.
Commit: adfea33f0c412b8475b755a8d82c9961b785eb02
https://github.com/llvm/llvm-project/commit/adfea33f0c412b8475b755a8d82c9961b785eb02
Author: Lei Huang <lei at ca.ibm.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M llvm/test/Transforms/InstSimplify/ConstProp/atan-intrinsic.ll
Log Message:
-----------
[PowerPC][AIX] xfail atan-intrinsic to unblock bot (#143723)
Testcase from https://github.com/llvm/llvm-project/pull/143416 is
causing the AIX bot to be red. XFAIL for now till issue can be resolved.
Commit: bc9f4edf47d2cbed3b1ba7a61d1497dded91ed22
https://github.com/llvm/llvm-project/commit/bc9f4edf47d2cbed3b1ba7a61d1497dded91ed22
Author: David Spickett <david.spickett at linaro.org>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M llvm/include/llvm/Transforms/IPO/FunctionImport.h
Log Message:
-----------
[LTO] Fix used before intialised warning (#143705)
For whatever reason I can't reproduce this locally but I can on Compiler
Explorer (https://godbolt.org/z/nfv4b83q6) and on our flang gcc bot
(https://lab.llvm.org/buildbot/#/builders/130/builds/13683/steps/5/logs/stdio).
In file included from ../llvm-project/llvm/include/llvm/LTO/LTO.h:33,
from
../llvm-project/clang/tools/clang-linker-wrapper/ClangLinkerWrapper.cpp:29:
../llvm-project/llvm/include/llvm/Transforms/IPO/FunctionImport.h: In
constructor ‘llvm::FunctionImporter::ImportListsTy::ImportListsTy()’:
../llvm-project/llvm/include/llvm/Transforms/IPO/FunctionImport.h:275:33:
warning: member ‘llvm::FunctionImporter::ImportListsTy::ImportIDs’ is
used uninitialized [-Wuninitialized]
275 | ImportListsTy() : EmptyList(ImportIDs) {}
| ^~~~~~~~~
../llvm-project/llvm/include/llvm/Transforms/IPO/FunctionImport.h: In
constructor
‘llvm::FunctionImporter::ImportListsTy::ImportListsTy(size_t)’:
../llvm-project/llvm/include/llvm/Transforms/IPO/FunctionImport.h:276:44:
warning: member ‘llvm::FunctionImporter::ImportListsTy::ImportIDs’ is
used uninitialized [-Wuninitialized]
276 | ImportListsTy(size_t Size) : EmptyList(ImportIDs), ListsImpl(Size)
{}
| ^~~~~~~~~
ImportIDs was being used during construction of EmptyList, before
ImportIDs itself had been constructed.
Commit: 91be47dccfa3480c152916838404d49107fde45c
https://github.com/llvm/llvm-project/commit/91be47dccfa3480c152916838404d49107fde45c
Author: Kazu Hirata <kazu at google.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M flang/lib/Lower/OpenMP/OpenMP.cpp
Log Message:
-----------
[flang] Fix warnings
This patch fixes:
flang/lib/Lower/OpenMP/OpenMP.cpp:3904:9: error: unused variable
'action0' [-Werror,-Wunused-variable]
flang/lib/Lower/OpenMP/OpenMP.cpp:3905:9: error: unused variable
'action1' [-Werror,-Wunused-variable]
Commit: 2ab83e9f68f0c7b1a7199455d7ce05430d93fa44
https://github.com/llvm/llvm-project/commit/2ab83e9f68f0c7b1a7199455d7ce05430d93fa44
Author: Tony Varghese <tonypalampalliyil at gmail.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M llvm/lib/Target/PowerPC/PPCInstrP10.td
Log Message:
-----------
[NFC][PowerPC] Rename xxevalPattern to adhere to naming convention. (#143675)
Rename class `xxevalPattern` to adhere to naming convention listed in
the coding guideline and used for all other classes in the td file.
Commit: 38fb0117ab10c4541e58697a4b56de2a646cf3f4
https://github.com/llvm/llvm-project/commit/38fb0117ab10c4541e58697a4b56de2a646cf3f4
Author: Peng Liu <winner245 at hotmail.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M libcxx/docs/FeatureTestMacroTable.rst
M libcxx/include/__memory/allocation_guard.h
M libcxx/include/__memory/pointer_traits.h
M libcxx/include/forward_list
M libcxx/include/version
M libcxx/test/std/containers/sequences/forwardlist/compare.three_way.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/empty.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.access/front.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.cons/alloc.compile.fail.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.cons/alloc.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.cons/assign_copy.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.cons/assign_init.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.cons/assign_move.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.cons/assign_op_init.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.cons/assign_range.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.cons/assign_size_value.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.cons/copy.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.cons/copy_alloc.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.cons/default.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.cons/from_range.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.cons/init.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.cons/init_alloc.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.cons/move.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.cons/move_alloc.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.cons/range.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.cons/range_alloc.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.cons/size.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.cons/size_value.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.cons/size_value_alloc.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.erasure/erase.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.erasure/erase_if.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.iter/before_begin.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.iter/iterators.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.modifiers/assign_range.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.modifiers/clear.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.modifiers/emplace_after.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.modifiers/emplace_front.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.modifiers/erase_after_many.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.modifiers/erase_after_one.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.modifiers/insert_after_const.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.modifiers/insert_after_init.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.modifiers/insert_after_range.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.modifiers/insert_after_rv.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.modifiers/insert_after_size_value.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.modifiers/insert_range_after.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.modifiers/pop_front.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.modifiers/prepend_range.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.modifiers/push_front_const.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.modifiers/push_front_exception_safety.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.modifiers/push_front_rv.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.modifiers/resize_size.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.modifiers/resize_size_value.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.ops/merge_lvalue.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.ops/merge_lvalue_pred.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.ops/merge_rvalue.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.ops/merge_rvalue_pred.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.ops/remove.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.ops/remove_if.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.ops/reverse.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.ops/splice_after_flist.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.ops/splice_after_one.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.ops/splice_after_range.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.ops/unique.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.ops/unique_pred.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.spec/equal.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.spec/member_swap.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.spec/non_member_swap.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.spec/relational.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.spec/swap_noexcept.compile.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/get_allocator.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/incomplete.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/max_size.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/forward_list.version.compile.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/version.version.compile.pass.cpp
M libcxx/test/support/counting_predicates.h
M libcxx/utils/generate_feature_test_macro_components.py
Log Message:
-----------
[libc++] Make forward_list constexpr as part of P3372R3 (#129435)
Fixes #128658
Commit: 5188bea9afac859fa6523e07d98748527c295aaf
https://github.com/llvm/llvm-project/commit/5188bea9afac859fa6523e07d98748527c295aaf
Author: Andrew Rogers <andrurogerz at gmail.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M llvm/include/llvm/TargetParser/AArch64TargetParser.h
M llvm/include/llvm/TargetParser/ARMTargetParser.h
M llvm/include/llvm/TargetParser/ARMTargetParserCommon.h
M llvm/include/llvm/TargetParser/CSKYTargetParser.h
M llvm/include/llvm/TargetParser/Host.h
M llvm/include/llvm/TargetParser/LoongArchTargetParser.h
M llvm/include/llvm/TargetParser/PPCTargetParser.h
M llvm/include/llvm/TargetParser/RISCVISAInfo.h
M llvm/include/llvm/TargetParser/RISCVTargetParser.h
M llvm/include/llvm/TargetParser/SubtargetFeature.h
M llvm/include/llvm/TargetParser/TargetParser.h
M llvm/include/llvm/TargetParser/Triple.h
M llvm/include/llvm/TargetParser/X86TargetParser.h
Log Message:
-----------
[llvm] annotate interfaces in llvm/TargetParser for DLL export (#143616)
## Purpose
This patch is one in a series of code-mods that annotate LLVM’s public
interface for export. This patch annotates the `llvm/TargetParser`
library. These annotations currently have no meaningful impact on the
LLVM build; however, they are a prerequisite to support an LLVM Windows
DLL (shared library) build.
## Background
This effort is tracked in #109483. Additional context is provided in
[this
discourse](https://discourse.llvm.org/t/psa-annotating-llvm-public-interface/85307),
and documentation for `LLVM_ABI` and related annotations is found in the
LLVM repo
[here](https://github.com/llvm/llvm-project/blob/main/llvm/docs/InterfaceExportAnnotations.rst).
Most of these changes were generated automatically using the [Interface
Definition Scanner (IDS)](https://github.com/compnerd/ids) tool,
followed formatting with `git clang-format`.
Additionally, I manually removed the redundant declaration of
`getCanonicalArchName` from
llvm/include/llvm/TargetParser/ARMTargetParser.h because IDS only
auto-annotates the first declaration it encounters, and the second
un-annotated declaration results in an MSVC warning.
## Validation
Local builds and tests to validate cross-platform compatibility. This
included llvm, clang, and lldb on the following configurations:
- Windows with MSVC
- Windows with Clang
- Linux with GCC
- Linux with Clang
- Darwin with Clang
Commit: 8f8ed23c6247e9c1dd2df4494930813b353c52c4
https://github.com/llvm/llvm-project/commit/8f8ed23c6247e9c1dd2df4494930813b353c52c4
Author: Andrew Rogers <andrurogerz at gmail.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M llvm/include/llvm/SandboxIR/BasicBlock.h
M llvm/include/llvm/SandboxIR/Constant.h
M llvm/include/llvm/SandboxIR/Context.h
M llvm/include/llvm/SandboxIR/Function.h
M llvm/include/llvm/SandboxIR/Instruction.h
M llvm/include/llvm/SandboxIR/Module.h
M llvm/include/llvm/SandboxIR/PassManager.h
M llvm/include/llvm/SandboxIR/Region.h
M llvm/include/llvm/SandboxIR/Tracker.h
M llvm/include/llvm/SandboxIR/Type.h
M llvm/include/llvm/SandboxIR/Use.h
M llvm/include/llvm/SandboxIR/User.h
M llvm/include/llvm/SandboxIR/Value.h
M llvm/lib/SandboxIR/Constant.cpp
Log Message:
-----------
[llvm] annotate interfaces in llvm/SandboxIR for DLL export (#142863)
## Purpose
This patch is one in a series of code-mods that annotate LLVM’s public
interface for export. This patch annotates the `llvm/SandboxIR` library.
These annotations currently have no meaningful impact on the LLVM build;
however, they are a prerequisite to support an LLVM Windows DLL (shared
library) build.
## Background
This effort is tracked in #109483. Additional context is provided in
[this
discourse](https://discourse.llvm.org/t/psa-annotating-llvm-public-interface/85307),
and documentation for `LLVM_ABI` and related annotations is found in the
LLVM repo
[here](https://github.com/llvm/llvm-project/blob/main/llvm/docs/InterfaceExportAnnotations.rst).
The bulk of these changes were generated automatically using the
[Interface Definition Scanner (IDS)](https://github.com/compnerd/ids)
tool, followed formatting with `git clang-format`.
The following manual adjustments were also applied after running IDS on
Linux:
- Remove explicit `GlobalWithNodeAPI::LLVMGVToGV::operator()` template
function instantiations that were previously added for the dylib build.
Instead, directly annotate the `LLVMGVToGV::operator()` method with
`LLVM_ABI`. This is done so the DLL build works with both MSVC and
clang-cl.
- Explicitly `#include "llvm/SandboxIR/Value.h"` in `Tracker.h` so that
the symbol is available for exported templates in this file. These
templates get fully instantiated on DLL export, so they require the full
definition of `Value`.
- Add extern template instantiation declarations for `GlobalWithNodeAPI`
template types in `Constants.h` and annotate them with
`LLVM_TEMPLATE_ABI`.
- Add `LLVM_EXPORT_TEMPLATE` to `GlobalWithNodeAPI` template
instantiations in `Constants.cpp`.
## Validation
Local builds and tests to validate cross-platform compatibility. This
included llvm, clang, and lldb on the following configurations:
- Windows with MSVC
- Windows with Clang
- Linux with GCC
- Linux with Clang
- Darwin with Clang
Commit: 2652d1b2fd65950a66f37ed6d5ed9c4ffabacbee
https://github.com/llvm/llvm-project/commit/2652d1b2fd65950a66f37ed6d5ed9c4ffabacbee
Author: Andrew Rogers <andrurogerz at gmail.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M llvm/include/llvm/TextAPI/Architecture.h
M llvm/include/llvm/TextAPI/ArchitectureSet.h
M llvm/include/llvm/TextAPI/DylibReader.h
M llvm/include/llvm/TextAPI/InterfaceFile.h
M llvm/include/llvm/TextAPI/PackedVersion.h
M llvm/include/llvm/TextAPI/Platform.h
M llvm/include/llvm/TextAPI/Record.h
M llvm/include/llvm/TextAPI/RecordVisitor.h
M llvm/include/llvm/TextAPI/RecordsSlice.h
M llvm/include/llvm/TextAPI/Symbol.h
M llvm/include/llvm/TextAPI/SymbolSet.h
M llvm/include/llvm/TextAPI/Target.h
M llvm/include/llvm/TextAPI/TextAPIError.h
M llvm/include/llvm/TextAPI/TextAPIReader.h
M llvm/include/llvm/TextAPI/TextAPIWriter.h
M llvm/include/llvm/TextAPI/Utils.h
Log Message:
-----------
[llvm] annotate interfaces in llvm/TextAPI for DLL export (#143447)
## Purpose
This patch is one in a series of code-mods that annotate LLVM’s public
interface for export. This patch annotates the `llvm/TextAPI` library.
These annotations currently have no meaningful impact on the LLVM build;
however, they are a prerequisite to support an LLVM Windows DLL (shared
library) build.
## Background
This effort is tracked in #109483. Additional context is provided in
[this
discourse](https://discourse.llvm.org/t/psa-annotating-llvm-public-interface/85307),
and documentation for `LLVM_ABI` and related annotations is found in the
LLVM repo
[here](https://github.com/llvm/llvm-project/blob/main/llvm/docs/InterfaceExportAnnotations.rst).
These changes were generated automatically using the [Interface
Definition Scanner (IDS)](https://github.com/compnerd/ids) tool,
followed formatting with `git clang-format`.
## Validation
Local builds and tests to validate cross-platform compatibility. This
included llvm, clang, and lldb on the following configurations:
- Windows with MSVC
- Windows with Clang
- Linux with GCC
- Linux with Clang
- Darwin with Clang
Commit: 78765bb856bd6cdc3b1db48e80f74b8de5181f3f
https://github.com/llvm/llvm-project/commit/78765bb856bd6cdc3b1db48e80f74b8de5181f3f
Author: Jay Foad <jay.foad at amd.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M llvm/utils/TableGen/Common/CodeGenRegisters.cpp
Log Message:
-----------
[TableGen] Simplify computeUberWeights. NFC. (#143716)
Using RegUnitIterator made the code more complicated than having two
nested loops over each register and each register's regunits.
Commit: 8e4f0d8614dcd48cfe2d885a021e2927c1bc8616
https://github.com/llvm/llvm-project/commit/8e4f0d8614dcd48cfe2d885a021e2927c1bc8616
Author: Morris Hafner <mmha at users.noreply.github.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M clang/include/clang/CIR/MissingFeatures.h
M clang/lib/CIR/CodeGen/CIRGenBuilder.cpp
M clang/lib/CIR/CodeGen/CIRGenBuilder.h
A clang/lib/CIR/CodeGen/CIRGenBuiltin.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/CMakeLists.txt
A clang/test/CIR/CodeGen/builtin_call.cpp
Log Message:
-----------
[CIR] Upstream minimal builtin function call support (#142981)
This patch adds all bits required to implement builtin function calls to
ClangIR. It doesn't actually implement any of the builtins except those
that fold to a constant ahead of CodeGen
(`__builtin_is_constant_evaluated()` being one example).
Commit: ec8d68b59f82423e5a6bf452e33ee8c5f64b0edc
https://github.com/llvm/llvm-project/commit/ec8d68b59f82423e5a6bf452e33ee8c5f64b0edc
Author: vabridgers <58314289+vabridgers at users.noreply.github.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/SMTConv.h
A clang/test/Analysis/bitint-z3.c
Log Message:
-----------
[clang][analyzer] Correct SMT Layer for _BitInt cases refutations (#143310)
Since _BitInt was added later, ASTContext did not comprehend getting a
type by bitwidth that's not a power of 2, and the SMT layer also did not
comprehend this. This led to unexpected crashes using Z3 refutation
during randomized testing. The assertion and redacted and summarized
crash stack is shown here.
clang:
../../clang/include/clang/StaticAnalyzer/Core/PathSensitive/SMTConv.h:103:
static llvm::SMTExprRef
clang::ento::SMTConv::fromBinOp(llvm::SMTSolverRef &,
const llvm::SMTExprRef &, const BinaryOperator::Opcode, const
llvm::SMTExprRef &, bool):
Assertion `*Solver->getSort(LHS) == *Solver->getSort(RHS) && "AST's must
have the same sort!"' failed.
...
<address>
clang::ento::SMTConv::fromBinOp(std::shared_ptr<llvm::SMTSolver>&,
llvm::SMTExpr const* const&, clang::BinaryOperatorKind, llvm::SMTExpr
const* const&,
bool) SMTConstraintManager.cpp
clang::ASTContext&, llvm::SMTExpr const* const&, clang::QualType,
clang::BinaryOperatorKind, llvm::SMTExpr const* const&, clang::QualType,
clang::QualType*) SMTConstraintManager.cpp
clang::ASTContext&, clang::ento::SymExpr const*, llvm::APSInt const&,
llvm::APSInt const&, bool) SMTConstraintManager.cpp
clang::ento::ExplodedNode const*, clang::ento::PathSensitiveBugReport&)
---------
Co-authored-by: Vince Bridgers <vince.a.bridgers at ericsson.com>
Commit: fe7bf4b90b1a835418bddd2b2aa63b4977a9f6d2
https://github.com/llvm/llvm-project/commit/fe7bf4b90b1a835418bddd2b2aa63b4977a9f6d2
Author: Rolf Morel <854835+rolfmorel at users.noreply.github.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M mlir/include/mlir/Dialect/Transform/IR/CMakeLists.txt
M mlir/include/mlir/Dialect/Transform/IR/TransformAttrs.h
M mlir/include/mlir/Dialect/Transform/IR/TransformAttrs.td
M mlir/include/mlir/Dialect/Transform/IR/TransformDialect.td
M mlir/include/mlir/Dialect/Transform/IR/TransformOps.td
M mlir/lib/Dialect/Transform/IR/TransformDialect.cpp
M mlir/lib/Dialect/Transform/IR/TransformOps.cpp
M mlir/python/mlir/dialects/transform/__init__.py
M mlir/test/Dialect/Transform/test-pass-application.mlir
M mlir/test/python/dialects/transform.py
Log Message:
-----------
[MLIR][Transform] apply_registered_pass op's options as a dict (#143159)
Improve ApplyRegisteredPassOp's support for taking options by taking
them as a dict (vs a list of string-valued key-value pairs).
Values of options are provided as either static attributes or as params
(which pass in attributes at interpreter runtime). In either case, the
keys and value attributes are converted to strings and a single
options-string, in the format used on the commandline, is constructed to
pass to the `addToPipeline`-pass API.
Commit: 459475020aeff15d0f886ab99c59d66b744d3e17
https://github.com/llvm/llvm-project/commit/459475020aeff15d0f886ab99c59d66b744d3e17
Author: Jeremy Morse <jeremy.morse at sony.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/FastISel.cpp
M llvm/lib/IR/AutoUpgrade.cpp
M llvm/lib/IR/BasicBlock.cpp
M llvm/lib/IR/DIBuilder.cpp
M llvm/lib/IR/DebugInfo.cpp
M llvm/lib/Transforms/Utils/LoopUtils.cpp
M llvm/unittests/IR/IRBuilderTest.cpp
Log Message:
-----------
Reapply 76197ea6f91f after removing an assertion
Specifically this is the assertion in BasicBlock.cpp. Now that we're not
examining or setting that flag consistently (because it'll be deleted in
about an hour) there's no need to keep this assertion.
Original commit title:
[DebugInfo][RemoveDIs] Remove some debug intrinsic-only codepaths (#143451)
Commit: f1575de4c5de9268f92eea1641af755a477e4ee4
https://github.com/llvm/llvm-project/commit/f1575de4c5de9268f92eea1641af755a477e4ee4
Author: Joseph Huber <huberjn at outlook.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M libc/src/__support/GPU/allocator.cpp
Log Message:
-----------
[libc][NFC] Remove template from GPU allocator reference counter
Summary:
We don't need this to be generic, precommit for
https://github.com/llvm/llvm-project/pull/143607
Commit: aa8a1fa6f515f45db55365b9c1f8453ded24ed32
https://github.com/llvm/llvm-project/commit/aa8a1fa6f515f45db55365b9c1f8453ded24ed32
Author: Stephen Tozer <stephen.tozer at sony.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M llvm/lib/Transforms/IPO/GlobalOpt.cpp
M llvm/lib/Transforms/IPO/IROutliner.cpp
M llvm/lib/Transforms/InstCombine/InstCombinePHI.cpp
M llvm/lib/Transforms/Scalar/CorrelatedValuePropagation.cpp
M llvm/lib/Transforms/Scalar/IndVarSimplify.cpp
M llvm/lib/Transforms/Scalar/JumpThreading.cpp
M llvm/lib/Transforms/Scalar/LICM.cpp
M llvm/lib/Transforms/Scalar/LoopLoadElimination.cpp
M llvm/lib/Transforms/Scalar/SimpleLoopUnswitch.cpp
M llvm/lib/Transforms/Scalar/TailRecursionElimination.cpp
M llvm/lib/Transforms/Utils/InlineFunction.cpp
M llvm/lib/Transforms/Utils/Local.cpp
M llvm/lib/Transforms/Utils/SCCPSolver.cpp
M llvm/lib/Transforms/Utils/SSAUpdater.cpp
M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
M llvm/lib/Transforms/Vectorize/LoopVectorizationPlanner.h
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/lib/Transforms/Vectorize/VPlan.h
Log Message:
-----------
[DLCov][NFC] Annotate intentionally-blank DebugLocs in existing code (#136192)
Following the work in PR #107279, this patch applies the annotative
DebugLocs, which indicate that a particular instruction is intentionally
missing a location for a given reason, to existing sites in the compiler
where their conditions apply. This is NFC in ordinary LLVM builds (each
function `DebugLoc::getFoo()` is inlined as `DebugLoc()`), but marks the
instruction in coverage-tracking builds so that it will be ignored by
Debugify, allowing only real errors to be reported. From a developer
standpoint, it also communicates the intentionality and reason for a
missing DebugLoc.
Some notes for reviewers:
- The difference between `I->dropLocation()` and
`I->setDebugLoc(DebugLoc::getDropped())` is that the former _may_ decide
to keep some debug info alive, while the latter will always be empty; in
this patch, I always used the latter (even if the former could
technically be correct), because the former could result in some
(barely) different output, and I'd prefer to keep this patch purely NFC.
- I've generally documented the uses of `DebugLoc::getUnknown()`, with
the exception of the vectorizers - in summary, they are a huge cause of
dropped source locations, and I don't have the time or the domain
knowledge currently to solve that, so I've plastered it all over them as
a form of "fixme".
Commit: 117e78fe5012087c1ee535b91936bf4d8e3c7785
https://github.com/llvm/llvm-project/commit/117e78fe5012087c1ee535b91936bf4d8e3c7785
Author: William <113542065+saturn691 at users.noreply.github.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M libc/include/CMakeLists.txt
M libc/include/locale.yaml
M libc/include/stdio.yaml
M libc/include/stdlib.yaml
M libc/include/string.h.def
M libc/include/string.yaml
M libc/include/time.yaml
M libc/include/wchar.yaml
Log Message:
-----------
[libc] Add NULL macro definitions to header files (#142764)
By the C standard, <locale.h>, <stddef.h> <stdio.h>, <stdlib.h>,
<string.h>, <time.h>, and <wchar.h> require NULL to be defined.
Commit: 469922f7c40a1733fba98e29fa2bd09a9565ddd6
https://github.com/llvm/llvm-project/commit/469922f7c40a1733fba98e29fa2bd09a9565ddd6
Author: Sami Tolvanen <samitolvanen at google.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M llvm/lib/Target/X86/X86IndirectBranchTracking.cpp
A llvm/test/CodeGen/X86/callbr-asm-endbr.ll
Log Message:
-----------
[X86] Don't emit ENDBR for asm goto branch targets (#143439)
Similarly to #141562, which disabled BTI generation for ARM asm goto
branch targets, drop unnecessary ENDBRs from IsInlineAsmBrIndirectTarget
machine basic blocks.
Commit: 145b1b0f103e61cfc8a47ed37080e955630a1390
https://github.com/llvm/llvm-project/commit/145b1b0f103e61cfc8a47ed37080e955630a1390
Author: Felipe de Azevedo Piovezan <fpiovezan at apple.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M lldb/include/lldb/Symbol/Variable.h
M lldb/source/Symbol/Variable.cpp
Log Message:
-----------
[lldb][nfc] Factor out code checking if Variable is in scope (#143572)
This is useful for checking whether a variable is in scope inside a
specific block.
Commit: 370e54d03a5bb11f3f283ad5ab479501c74069c7
https://github.com/llvm/llvm-project/commit/370e54d03a5bb11f3f283ad5ab479501c74069c7
Author: Amr Hesham <amr96 at programmer.net>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M clang/include/clang/CIR/Dialect/IR/CIROps.td
M clang/lib/CIR/CodeGen/CIRGenExprScalar.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
M clang/test/CIR/IR/vector.cir
Log Message:
-----------
[CIR] Upstream splat op for VectorType (#139827)
This change adds support for splat op for VectorType
Issue https://github.com/llvm/llvm-project/issues/136487
Commit: 621a7d0f66f3da27e687dd7dd832450334ee81da
https://github.com/llvm/llvm-project/commit/621a7d0f66f3da27e687dd7dd832450334ee81da
Author: jeanPerier <jperier at nvidia.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M flang/lib/Semantics/check-declarations.cpp
A flang/test/Semantics/modfile76.F90
Log Message:
-----------
[flang] silence bogus error with BIND(C) variable in hermetic module (#143737)
The global name semantic check was firing in a bogus way when BIND(C)
variables are in hermetic module.
Do not raise the error if one of the symbol with the conflicting global
name is an "hermetic variant" of the other.
Commit: 7414d88b5f8af1bdf8da6bf2493b485ba5d079f2
https://github.com/llvm/llvm-project/commit/7414d88b5f8af1bdf8da6bf2493b485ba5d079f2
Author: Jeremy Morse <jeremy.morse at sony.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M llvm/lib/IR/DIBuilder.cpp
Log Message:
-----------
Squelch an unused-function warning
After removing some debug-intrinsic creation code, this function is now
unused (and un-necessary)
Commit: 3e24dadee0d7ecc5f95fe0760afb7abdeb9a2dc5
https://github.com/llvm/llvm-project/commit/3e24dadee0d7ecc5f95fe0760afb7abdeb9a2dc5
Author: Shafik Yaghmour <shafik.yaghmour at intel.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M clang/lib/Tooling/DependencyScanning/ModuleDepCollector.cpp
Log Message:
-----------
[Clang][Tooling][NFC] Use move to avoid copies of large objects (#143603)
Static analysis flagged these cases in which can use std::move and avoid
copies of large objects.
Commit: 66f533e7e34d6f6d0e293a67dd54be9e4c240ddd
https://github.com/llvm/llvm-project/commit/66f533e7e34d6f6d0e293a67dd54be9e4c240ddd
Author: Kazu Hirata <kazu at google.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M llvm/include/llvm/IR/DIBuilder.h
M llvm/lib/IR/DIBuilder.cpp
Log Message:
-----------
[IR] Fix warnings (#143752)
This patch fixes:
llvm/lib/IR/DIBuilder.cpp:1072:18: error: unused function
'getDeclareIntrin' [-Werror,-Wunused-function]
llvm/include/llvm/IR/DIBuilder.h:51:15: error: private field
'DeclareFn' is not used [-Werror,-Wunused-private-field]
llvm/include/llvm/IR/DIBuilder.h:52:15: error: private field
'ValueFn' is not used [-Werror,-Wunused-private-field]
llvm/include/llvm/IR/DIBuilder.h:53:15: error: private field
'LabelFn' is not used [-Werror,-Wunused-private-field]
llvm/include/llvm/IR/DIBuilder.h:54:15: error: private field
'AssignFn' is not used [-Werror,-Wunused-private-field]
Commit: c2f0af514beb7618660cf8d145fa9e49fb78869c
https://github.com/llvm/llvm-project/commit/c2f0af514beb7618660cf8d145fa9e49fb78869c
Author: Alexander Richardson <alexrichardson at google.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
A llvm/test/CodeGen/AMDGPU/GlobalISel/knownbits-ptrtoint.mir
Log Message:
-----------
[GISelValueTracking] Add test case for G_PTRTOINT
While we can only reason about the index/address, the G_PTRTOINT
operations returns all representation bits, so we can't assume the
remaining ones are all zeroes. This behaviour was clarified as part of
the discussion in https://discourse.llvm.org/t/clarifiying-the-semantics-of-ptrtoint/83987/54.
The LangRef semantics of ptrtoint being a full representation bitcast
were documented in https://github.com/llvm/llvm-project/pull/139349.
Prior to 77c8d214131e951e3d3a07b45a7436f54988d6f3 we were incorrectly
assuming known zeroes beyond the index size even if the input was
completely unknown. This commit adds a test case for G_PTRTOINT which
was omitted from that change.
See https://github.com/llvm/llvm-project/issues/139598
Reviewed By: arsenm
Pull Request: https://github.com/llvm/llvm-project/pull/139608
Commit: bbe59e19b60b0efa8cc200fb3260fe572e188b26
https://github.com/llvm/llvm-project/commit/bbe59e19b60b0efa8cc200fb3260fe572e188b26
Author: Kewen12 <Kewen.Meng at amd.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M offload/libomptarget/PluginManager.cpp
Log Message:
-----------
[OpenMP][Offload] Update the Logic for Configuring Auto Zero-Copy (#143638)
Summary:
Currently the Auto Zero-Copy is enabled by checking every initialized
device to ensure that no dGPU is attached to an APU. However, an APU is
designed to comprise a homogeneous set of GPUs, therefore, it should be
sufficient to check any device for configuring Auto Zero-Copy. In this
PR, it checks the first initialized device in the list.
The changes in this PR are to clearly reflect the design and logic of
enabling the feature for further improving the readibility.
Commit: fad1972d74aead159a5e91b068cbf736e83836b5
https://github.com/llvm/llvm-project/commit/fad1972d74aead159a5e91b068cbf736e83836b5
Author: VISHAKH PRAKASH <vishakh.prakash at multicorewareinc.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M llvm/lib/Target/SPIRV/MCTargetDesc/SPIRVBaseInfo.cpp
M llvm/lib/Target/SPIRV/MCTargetDesc/SPIRVBaseInfo.h
M llvm/lib/Target/SPIRV/SPIRVInstrInfo.td
M llvm/lib/Target/SPIRV/SPIRVSymbolicOperands.td
M llvm/test/CodeGen/SPIRV/const-nested-vecs.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_function_pointers/fun-ptr-addrcast.ll
M llvm/test/CodeGen/SPIRV/opencl/basic/progvar_prog_scope_init.ll
M llvm/test/CodeGen/SPIRV/opt-gepoperator-of-gvar.ll
M llvm/test/CodeGen/SPIRV/pointers/PtrCast-in-OpSpecConstantOp.ll
M llvm/test/CodeGen/SPIRV/pointers/global-ptrtoint.ll
M llvm/test/CodeGen/SPIRV/pointers/irtrans-added-int-const-32-64.ll
Log Message:
-----------
[SPIRV] FIX print the symbolic operand for opcode for the operation OpSpecConstantOp (#135756)
Current implementation outputs opcode is an immediate but spirv-tools
requires that the name of the operation without "Op" is needed for the
instruction OpSpecConstantOp
that is if the opcode is OpBitcast the instruction must be
`%1 = OpSpecConstantOp %6 Bitcast %17`
instead of
`%1 = OpBitcast %6 124 %17`
[refer this commit for more
info](https://github.com/KhronosGroup/SPIRV-Tools/commit/0f166be68d4b6624a10d6bf312679505d391ec22)
---------
Co-authored-by: Dmitry Sidorov <dmitry.sidorov at intel.com>
Co-authored-by: Ebin-McW <ebin.jose at multicorewareinc.com>
Commit: 42c82fcc29c1c8e19b2265495a5d8f59fb5ea764
https://github.com/llvm/llvm-project/commit/42c82fcc29c1c8e19b2265495a5d8f59fb5ea764
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M .github/workflows/libcxx-build-and-test.yaml
M libcxx/docs/index.rst
M libcxx/src/experimental/time_zone.cpp
M libcxx/test/std/algorithms/alg.nonmodifying/alg.contains/ranges.contains.pass.cpp
M libcxx/test/std/concepts/concepts.compare/concept.equalitycomparable/equality_comparable.compile.pass.cpp
M libcxx/test/std/concepts/concepts.compare/concept.equalitycomparable/equality_comparable_with.compile.pass.cpp
M libcxx/test/std/concepts/concepts.compare/concepts.totallyordered/totally_ordered.compile.pass.cpp
M libcxx/test/std/concepts/concepts.compare/concepts.totallyordered/totally_ordered_with.compile.pass.cpp
M libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.array/new.size.except.pass.cpp
M libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.array/new.size.pass.cpp
M libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.array/new.size_align.except.pass.cpp
M libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.array/new.size_align.pass.cpp
M libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.single/new.size.except.pass.cpp
M libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.single/new.size.pass.cpp
M libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.single/new.size_align.except.pass.cpp
M libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.single/new.size_align.pass.cpp
M libcxx/test/std/numerics/rand/rand.dist/rand.dist.samp/rand.dist.samp.discrete/ctor_func.pass.cpp
M libcxx/test/std/numerics/rand/rand.dist/rand.dist.samp/rand.dist.samp.discrete/param_ctor_func.pass.cpp
M libcxx/test/std/ranges/range.adaptors/range.lazy.split/general.pass.cpp
M libcxx/test/std/utilities/expected/expected.expected/monadic/transform.pass.cpp
M libcxx/test/std/utilities/expected/expected.expected/monadic/transform_error.pass.cpp
M libcxx/test/std/utilities/expected/expected.void/monadic/transform_error.pass.cpp
M libcxx/test/std/utilities/format/format.formatter/format.formatter.spec/formatter.char_array.pass.cpp
M libcxx/test/std/utilities/meta/meta.rel/is_virtual_base_of.pass.cpp
R libcxx/test/std/utilities/meta/meta.unary/dependent_return_type.compile.pass.cpp
A libcxx/test/std/utilities/meta/meta.unary/dependent_return_type.pass.cpp
M libcxx/test/std/utilities/meta/meta.unary/meta.unary.prop/is_implicit_lifetime.pass.cpp
M libcxx/test/std/utilities/optional/optional.specalg/make_optional_explicit.pass.cpp
M libcxx/test/std/utilities/optional/optional.specalg/make_optional_explicit_initializer_list.pass.cpp
M libcxx/test/std/utilities/tuple/tuple.tuple/tuple.cnstr/PR31384.pass.cpp
M libcxxabi/test/catch_member_function_pointer_02.pass.cpp
Log Message:
-----------
[libc++] Upgrade to GCC 15 (#138293)
Commit: 806333063ff9a09ca001dcd77d4d5d6f0b9ecd74
https://github.com/llvm/llvm-project/commit/806333063ff9a09ca001dcd77d4d5d6f0b9ecd74
Author: Jesse Huang <jesse.huang at sifive.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVCallingConv.cpp
M llvm/test/CodeGen/RISCV/nest-register.ll
Log Message:
-----------
[RISCV] Guard the alternative static chain register use on ILP32E/LP64E (#142715)
Asserts the use of t3(x28) as the static chain register when branch control flow protection is enabled with ILP32E/LP64E, because such register is not present within the ABI.
Commit: 7a0c9f607a26b77a7e584fd6734f03b7ee40ca95
https://github.com/llvm/llvm-project/commit/7a0c9f607a26b77a7e584fd6734f03b7ee40ca95
Author: Tony Varghese <tonypalampalliyil at gmail.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
A llvm/test/CodeGen/PowerPC/xxeval-vselect-x-or.ll
Log Message:
-----------
[NFC][PowerPC] Pre-commit test case for exploitation of xxeval for the pattern ternary(A,X,or(B,C)) (#143693)
Pre-commit test case for exploitation of `xxeval` for ternary operations
of the pattern `ternary(A,X,or(B,C))`.
Exploitation of `xxeval` to be added later.
Co-authored-by: Tony Varghese <tony.varghese at ibm.com>
Commit: 8d7da9a2a40302af25ee70841a4b549f4ed5ee8a
https://github.com/llvm/llvm-project/commit/8d7da9a2a40302af25ee70841a4b549f4ed5ee8a
Author: Yifei Xu <yifei.xu at utexas.edu>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
Log Message:
-----------
Update BUILD.bazel
Add missing dependency after https://github.com/llvm/llvm-project/pull/142916.
Commit: 773d357b9882fe0e30ffddee5ac1fbe2254fac05
https://github.com/llvm/llvm-project/commit/773d357b9882fe0e30ffddee5ac1fbe2254fac05
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M libcxx/src/hash.cpp
Log Message:
-----------
[libc++] Simplify the implementation of __next_prime a bit (#143512)
Commit: 8dc63ca59003a4b72217221c1c801237614c9d7d
https://github.com/llvm/llvm-project/commit/8dc63ca59003a4b72217221c1c801237614c9d7d
Author: Jorge Gorbe Moya <jgorbe at google.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M clang/test/Frontend/aarch64-print-enabled-extensions-cc1.c
Log Message:
-----------
Make clang/test/Frontend/aarch64-print-enabled-extensions-cc1.c write output file to temp dir
Commit: 0c62571d9f02f7d5c1a649b5b20fdf5b0f6bb41c
https://github.com/llvm/llvm-project/commit/0c62571d9f02f7d5c1a649b5b20fdf5b0f6bb41c
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M libcxx/src/hash.cpp
Log Message:
-----------
[libc++] Remove static_assert from hash.cpp that fires unconditionall
Commit: 02b6849cf1feb425885bf6f5ee505d5cd4a824d7
https://github.com/llvm/llvm-project/commit/02b6849cf1feb425885bf6f5ee505d5cd4a824d7
Author: Abhinav Gaba <abhinav.gaba at intel.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Sema/SemaOpenMP.cpp
A clang/test/OpenMP/target_map_array_of_structs_with_nested_mapper_ast_dump.cpp
A clang/test/OpenMP/target_map_array_of_structs_with_nested_mapper_codegen.cpp
A clang/test/OpenMP/target_map_array_section_of_structs_with_nested_mapper_ast_dump.cpp
A clang/test/OpenMP/target_map_array_section_of_structs_with_nested_mapper_codegen.cpp
R clang/test/OpenMP/target_map_nest_defalut_mapper_ast_dump.cpp
R clang/test/OpenMP/target_map_nest_defalut_mapper_codegen.cpp
M offload/test/mapping/declare_mapper_nested_default_mappers_array.cpp
Log Message:
-----------
[Clang][OpenMP] Fix mapping of arrays of structs with members with mappers (#142511)
This builds upon #101101 from @jyu2-git, which used compiler-generated
mappers when mapping an array-section of structs with members that have
user-defined default mappers.
Now we do the same when mapping arrays of structs.
Commit: 574f77a1ee34461bc1f4a0823da6c960ff1c9655
https://github.com/llvm/llvm-project/commit/574f77a1ee34461bc1f4a0823da6c960ff1c9655
Author: Erich Keane <ekeane at nvidia.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenFunction.h
M clang/lib/CIR/CodeGen/CIRGenStmtOpenACC.cpp
M clang/lib/CIR/CodeGen/CIRGenStmtOpenACCLoop.cpp
M clang/test/CIR/CodeGenOpenACC/combined.cpp
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] Add parallelism determ. to all acc.loops (#143751)
PR #143720 adds a requirement to the ACC dialect that every acc.loop
must have a seq, independent, or auto attribute for the 'default'
device_type. The standard has rules for how this can be intuited:
orphan/parallel/parallel loop: independent
kernels/kernels loop: auto
serial/serial loop: seq, unless there is a gang/worker/vector, at which
point it should be 'auto'.
This patch implements all of this rule as a 'cleanup' step on the IR
generation for combined/loop operations. Note that the test impact is
much less since I inadvertently have my 'operation' terminating curley
matching the end curley from 'attribute' instead of the front of the
line, so I've added sufficient tests to ensure I captured the above.
Commit: d5f68cb145059fc6d2944e1d17ef561e183ade83
https://github.com/llvm/llvm-project/commit/d5f68cb145059fc6d2944e1d17ef561e183ade83
Author: Jorge Gorbe Moya <jgorbe at google.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
Log Message:
-----------
[bazel] Port fe7bf4b90b1a835418bddd2b2aa63b4977a9f6d2
Commit: 5dafe9dca867b90f20dcd71c620ad823aee4262b
https://github.com/llvm/llvm-project/commit/5dafe9dca867b90f20dcd71c620ad823aee4262b
Author: Alexey Samsonov <vonosmas at gmail.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M libc/test/src/__support/CMakeLists.txt
M libc/test/src/__support/str_to_double_test.cpp
M libc/test/src/__support/str_to_float_test.cpp
M libc/test/src/__support/str_to_fp_test.h
M libc/test/src/__support/str_to_integer_test.cpp
M libc/test/src/stdlib/CMakeLists.txt
M libc/test/src/stdlib/StrtolTest.h
M libc/test/src/stdlib/atof_test.cpp
M libc/test/src/stdlib/strtod_test.cpp
M libc/test/src/stdlib/strtof_test.cpp
M libc/test/src/stdlib/strtold_test.cpp
M libc/test/src/string/CMakeLists.txt
M libc/test/src/string/strdup_test.cpp
Log Message:
-----------
[libc] Reduce direct use of errno in src/stdlib and src/__support tests. (#143767)
* Get rid of libc_errno assignments in str_to_* __support tests, since
those API have been migrated to return error in a struct instead.
* Migrate tests for atof and to strto* functions from <stdlib.h> and for
strdup from <string.h> to use ErrnoCheckingTest harness.
Commit: 22fd11fe66a0d64f5ef359e21ae67a7d40936eaf
https://github.com/llvm/llvm-project/commit/22fd11fe66a0d64f5ef359e21ae67a7d40936eaf
Author: Abhina Sree <Abhina.Sreeskantharajan at ibm.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M llvm/include/llvm/Support/AutoConvert.h
M llvm/lib/Support/AutoConvert.cpp
M llvm/lib/Support/InitLLVM.cpp
M llvm/lib/Support/MemoryBuffer.cpp
M llvm/lib/Support/raw_ostream.cpp
Log Message:
-----------
[SystemZ][z/OS] Refactor AutoConvert.h to remove large MVS guard (#143174)
This AutoConvert.h header frequently gets mislabeled as an unused
include because it is guarded by MVS internally and every usage is also
guarded. This refactors the change to remove this guard and instead make
these functions a noop on other non-z/OS platforms.
Commit: 34a1b8ce2518d7868c080519a05892cd3b197192
https://github.com/llvm/llvm-project/commit/34a1b8ce2518d7868c080519a05892cd3b197192
Author: Razvan Lupusoru <razvan.lupusoru at gmail.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M mlir/lib/Dialect/OpenACC/IR/OpenACC.cpp
M mlir/test/Dialect/OpenACC/canonicalize.mlir
M mlir/test/Dialect/OpenACC/invalid.mlir
M mlir/test/Dialect/OpenACC/legalize-data.mlir
M mlir/test/Dialect/OpenACC/ops.mlir
Log Message:
-----------
[acc] acc.loop verifier now requires parallelism determination flag (#143720)
The OpenACC specification for `acc loop` describe that a loop's
parallelism determination mode is either auto, independent, or seq. The
rules are as follows.
- As per OpenACC 3.3 standard section 2.9.6 independent clause: A loop
construct with no auto or seq clause is treated as if it has the
independent clause when it is an orphaned loop construct or its parent
compute construct is a parallel construct.
- As per OpenACC 3.3 standard section 2.9.7 auto clause: When the parent
compute construct is a kernels construct, a loop construct with no
independent or seq clause is treated as if it has the auto clause.
- Additionally, loops marked with gang, worker, or vector are not
guaranteed to be parallel. Specifically noted in 2.9.7 auto clause: If
not, or if it is unable to make a determination, it must treat the auto
clause as if it is a seq clause, and it must ignore any gang, worker, or
vector clauses on the loop construct.
The verifier for `acc.loop` was updated to enforce this marking because
the context in which a loop appears is not trivially determined once IR
transformations begin. For example, orphaned loops are implicitly
`independent`, but after inlining into an `acc.kernels` region they
would be implicitly considered `auto`. Thus now the verifier requires
that a frontend specifically generates acc dialect with this marking
since it knows the context.
Commit: 02161c635fd70e0214bd8b8320a80992c50ec325
https://github.com/llvm/llvm-project/commit/02161c635fd70e0214bd8b8320a80992c50ec325
Author: Alex MacLean <amaclean at nvidia.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M llvm/lib/Target/NVPTX/NVPTXInstrInfo.td
M llvm/lib/Target/NVPTX/NVPTXIntrinsics.td
M llvm/lib/Target/NVPTX/NVPTXReplaceImageHandles.cpp
Log Message:
-----------
[NVPTX] Misc table-gen cleanup (NFC) (#142877)
Commit: ace356bc9777e6a5b5aa0ba2335d2546ac6f330e
https://github.com/llvm/llvm-project/commit/ace356bc9777e6a5b5aa0ba2335d2546ac6f330e
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlanVerifier.cpp
Log Message:
-----------
[VPlan] Always verify VPCanonicalIVPHIRecipe placement (NFC).
Loop regions are dissolved since dcef154b5caf6556e69bb1, remove the
check for VerifyLate and corresponding TODO.
Commit: ebc90d50b88a7c46634ea21e40ddb25c679ac874
https://github.com/llvm/llvm-project/commit/ebc90d50b88a7c46634ea21e40ddb25c679ac874
Author: Kazu Hirata <kazu at google.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/SeedCollector.h
Log Message:
-----------
[SandboxVectorizer] Use llvm::find (NFC) (#143724)
llvm::find allows us to pass a range.
Commit: e266d6a5da6871c89747416c70a4a39181b594fb
https://github.com/llvm/llvm-project/commit/e266d6a5da6871c89747416c70a4a39181b594fb
Author: Kazu Hirata <kazu at google.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M clang/lib/Format/MacroCallReconstructor.cpp
Log Message:
-----------
[Format] Use llvm::min_element (NFC) (#143725)
llvm::min_elements allows us to pass a range.
Commit: c1d21f44340901f6a23ae7eb7c5379f5ad197b27
https://github.com/llvm/llvm-project/commit/c1d21f44340901f6a23ae7eb7c5379f5ad197b27
Author: Kazu Hirata <kazu at google.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M lld/ELF/SyntheticSections.cpp
M lld/MachO/UnwindInfoSection.cpp
Log Message:
-----------
[lld] Use std::tie to implement comparison operators (NFC) (#143726)
std::tie facilitates lexicographical comparisons through std::tuple's
built-in operator< and operator>.
Commit: 8da1ac98efa0d315824a92d8b563299eccc3e0f1
https://github.com/llvm/llvm-project/commit/8da1ac98efa0d315824a92d8b563299eccc3e0f1
Author: Kazu Hirata <kazu at google.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldImpl.h
M llvm/lib/Target/Hexagon/HexagonConstExtenders.cpp
Log Message:
-----------
[llvm] Use std::tie to implement operator< (NFC) (#143728)
std::tie facilitates lexicographical comparisons through std::tuple's
built-in operator<.
Commit: 43c35e858ccae05d69151ccf9712a725aae37b52
https://github.com/llvm/llvm-project/commit/43c35e858ccae05d69151ccf9712a725aae37b52
Author: Kazu Hirata <kazu at google.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M mlir/lib/IR/AsmPrinter.cpp
M mlir/lib/IR/SymbolTable.cpp
M mlir/lib/Transforms/Utils/CFGToSCF.cpp
Log Message:
-----------
[mlir] Simplify calls to *Map::{insert,try_emplace} (NFC) (#143729)
This patch simplifies code by removing the values from
insert/try_emplace. Note that default values inserted by try_emplace
are immediately overrideen in all these cases.
Commit: ad2a2b8eed2f3ed1e050833ea8a8d88b0878c6a7
https://github.com/llvm/llvm-project/commit/ad2a2b8eed2f3ed1e050833ea8a8d88b0878c6a7
Author: Paul Kirth <paulkirth at google.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M llvm/CMakeLists.txt
M llvm/docs/CommandGuide/index.rst
A llvm/docs/CommandGuide/llvm-test-mustache-spec.rst
A llvm/utils/llvm-test-mustache-spec/CMakeLists.txt
A llvm/utils/llvm-test-mustache-spec/llvm-test-mustache-spec.cpp
Log Message:
-----------
[llvm] Add a tool to check mustache compliance against the public spec (#142813)
This is a cli tool to that tests the conformance of LLVM's mustache
implementation against the public Mustache spec, hosted at
https://github.com/mustache/spec. This is a revised version of the
patches in #111487.
Co-authored-by: Peter Chou <peter.chou at mail.utoronto.ca>
Commit: e7e491f6ee2baee4e2ab2947e1c64bc54e3ebbec
https://github.com/llvm/llvm-project/commit/e7e491f6ee2baee4e2ab2947e1c64bc54e3ebbec
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
M llvm/test/CodeGen/RISCV/rvv/combine-reduce-add-to-vcpop.ll
M llvm/test/CodeGen/RISCV/rvv/vector-interleave.ll
M llvm/test/CodeGen/X86/avx10_2_512bf16-arith.ll
M llvm/test/CodeGen/X86/avx10_2bf16-arith.ll
Log Message:
-----------
[SelectionDAG] Add ISD::VSELECT to SelectionDAG::canCreateUndefOrPoison. (#143760)
Commit: 5623b7f2d56ecba84de5d62444feed2dea2b7e25
https://github.com/llvm/llvm-project/commit/5623b7f2d56ecba84de5d62444feed2dea2b7e25
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
Log Message:
-----------
[LV] Use GeneratedRTChecks to check if safety checks were added (NFC).
Directly check via GeneratedRTChecks if any checks have been added,
instead of needing to go through ILV. This simplifies the code and
enables further refactoring in follow-up patches.
Commit: c70658e32debfc3b2c0f6c2b2228ac48e976fd51
https://github.com/llvm/llvm-project/commit/c70658e32debfc3b2c0f6c2b2228ac48e976fd51
Author: Jorge Gorbe Moya <jgorbe at google.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/libc/test/src/stdlib/BUILD.bazel
Log Message:
-----------
[bazel] port 5dafe9dca867b90f20dcd71c620ad823aee4262b
Commit: 52583b3ed7dd39788360361fc1e21039c8eb5479
https://github.com/llvm/llvm-project/commit/52583b3ed7dd39788360361fc1e21039c8eb5479
Author: Uzair Nawaz <uzairnawaz at google.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
A libc/hdr/types/char32_t.h
A libc/hdr/types/char8_t.h
A libc/hdr/uchar_overlay.h
A libc/src/__support/wchar/CMakeLists.txt
A libc/src/__support/wchar/character_converter.cpp
A libc/src/__support/wchar/character_converter.h
A libc/src/__support/wchar/mbstate.h
A libc/src/__support/wchar/utf_ret.h
Log Message:
-----------
[libc] Character converter skeleton class (#143619)
Made CharacterConverter class skeleton
Commit: a2d2941830d9c141d7f43da1ff58e7b7235a9f7d
https://github.com/llvm/llvm-project/commit/a2d2941830d9c141d7f43da1ff58e7b7235a9f7d
Author: Chelsea Cassanova <chelsea_cassanova at apple.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
A lldb/scripts/convert-lldb-header-to-rpc-header.py
A lldb/test/Shell/RPC/Scripts/TestConvertScript/CheckLLDBDefines.test
A lldb/test/Shell/RPC/Scripts/TestConvertScript/CheckLLDBEnumerations.test
A lldb/test/Shell/RPC/Scripts/TestConvertScript/CheckLLDBTypes.test
A lldb/test/Shell/RPC/Scripts/TestConvertScript/CheckSBDefines.test
A lldb/test/Shell/RPC/Scripts/TestConvertScript/Inputs/SBDefines.h
A lldb/test/Shell/RPC/Scripts/TestConvertScript/Inputs/lldb-defines.h
A lldb/test/Shell/RPC/Scripts/TestConvertScript/Inputs/lldb-enumerations.h
A lldb/test/Shell/RPC/Scripts/TestConvertScript/Inputs/lldb-types.h
Log Message:
-----------
[lldb][RPC] Upstream LLDB to RPC converstion Python script (#138028)
As part of upstreaming LLDB RPC, this commit adds a python script that
is used by LLDB RPC to modify the public lldb header files for use with
RPC.
https://discourse.llvm.org/t/rfc-upstreaming-lldb-rpc/85804
Commit: b42aef5e6f32a3ac6c259cb4cacf58239400b5aa
https://github.com/llvm/llvm-project/commit/b42aef5e6f32a3ac6c259cb4cacf58239400b5aa
Author: Peter Klausler <pklausler at nvidia.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M flang/lib/Semantics/mod-file.cpp
A flang/test/Semantics/modfile77.F90
A flang/test/Semantics/modfile78.F90
Log Message:
-----------
[flang] Don't duplicate hermetic module file dependencies (#143605)
When emitting the modules on which a module depends under the
-fhermetic-module-files options, eliminate duplicates by name rather
than by symbol addresses. This way, when a dependent module is in the
symbol table more than once due to the use of a nested hermetic module,
it doesn't get emitted multiple times to the new module file.
Commit: e389a0e7bb3d7aabbd10b9ba8f432f292de65649
https://github.com/llvm/llvm-project/commit/e389a0e7bb3d7aabbd10b9ba8f432f292de65649
Author: Uzair Nawaz <uzairnawaz at google.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M libc/src/wchar/CMakeLists.txt
M libc/src/wchar/wcscpy.cpp
M libc/src/wchar/wcsncpy.cpp
M libc/src/wchar/wmemcpy.cpp
M libc/src/wchar/wmempcpy.cpp
Log Message:
-----------
[libc] Switched calls to inline_memcpy to __builtin_memcpy for wide char utilities (#143011)
Switched calls to inline_memcpy to __builtin_memcpy for wide char
utilities
Removed unnecessary wctype_utils dependencies from the cmake file
Commit: fb761aa38b0bc01ab911f5dbbfb474b70aaafbb4
https://github.com/llvm/llvm-project/commit/fb761aa38b0bc01ab911f5dbbfb474b70aaafbb4
Author: Rolf Morel <rolf.morel at intel.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M mlir/include/mlir/Dialect/Transform/IR/TransformOps.td
M mlir/python/mlir/dialects/transform/__init__.py
M mlir/test/Dialect/Transform/test-pass-application.mlir
M mlir/test/python/dialects/transform.py
Log Message:
-----------
[MLIR][Transform] apply_registered_op fixes: arg order & python options auto-conversion (#143779)
Commit: d87eea35fac5a34a841c637db8908128409a184e
https://github.com/llvm/llvm-project/commit/d87eea35fac5a34a841c637db8908128409a184e
Author: lntue <lntue at google.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M libc/cmake/modules/LLVMLibCCompileOptionRules.cmake
M libc/config/config.json
M libc/docs/dev/code_style.rst
M libc/shared/fp_bits.h
A libc/shared/libc_common.h
M libc/shared/rpc_server.h
M libc/shared/str_to_float.h
M libc/shared/str_to_integer.h
M libc/src/__support/CMakeLists.txt
M libc/src/__support/FPUtil/FEnvImpl.h
M libc/src/__support/File/dir.cpp
M libc/src/__support/File/file.cpp
M libc/src/__support/File/linux/file.cpp
M libc/src/__support/File/linux/lseekImpl.h
M libc/src/__support/HashTable/randomness.h
M libc/src/__support/OSUtil/linux/fcntl.cpp
M libc/src/__support/OSUtil/linux/vdso.cpp
M libc/src/__support/StringUtil/tables/linux_extension_errors.h
A libc/src/__support/libc_errno.h
M libc/src/__support/threads/linux/thread.cpp
M libc/src/dirent/closedir.cpp
M libc/src/dirent/opendir.cpp
M libc/src/dirent/readdir.cpp
M libc/src/errno/CMakeLists.txt
M libc/src/errno/libc_errno.cpp
R libc/src/errno/libc_errno.h
M libc/src/fcntl/linux/creat.cpp
M libc/src/fcntl/linux/open.cpp
M libc/src/fcntl/linux/openat.cpp
M libc/src/inttypes/strtoimax.cpp
M libc/src/inttypes/strtoumax.cpp
M libc/src/math/generic/exp10m1f.cpp
M libc/src/math/generic/exp2m1f.cpp
M libc/src/math/generic/nan.cpp
M libc/src/math/generic/nanf.cpp
M libc/src/math/generic/nanf128.cpp
M libc/src/math/generic/nanf16.cpp
M libc/src/math/generic/nanl.cpp
M libc/src/poll/linux/poll.cpp
M libc/src/pthread/pthread_atfork.cpp
M libc/src/pthread/pthread_attr_setdetachstate.cpp
M libc/src/pthread/pthread_attr_setguardsize.cpp
M libc/src/pthread/pthread_attr_setstack.cpp
M libc/src/pthread/pthread_attr_setstacksize.cpp
M libc/src/pthread/pthread_condattr_setclock.cpp
M libc/src/pthread/pthread_condattr_setpshared.cpp
M libc/src/pthread/pthread_create.cpp
M libc/src/pthread/pthread_key_create.cpp
M libc/src/pthread/pthread_key_delete.cpp
M libc/src/pthread/pthread_mutexattr_setpshared.cpp
M libc/src/pthread/pthread_mutexattr_setrobust.cpp
M libc/src/pthread/pthread_mutexattr_settype.cpp
M libc/src/pthread/pthread_rwlock_timedrdlock.cpp
M libc/src/pthread/pthread_rwlock_trywrlock.cpp
M libc/src/pthread/pthread_rwlock_unlock.cpp
M libc/src/pthread/pthread_rwlockattr_setkind_np.cpp
M libc/src/pthread/pthread_rwlockattr_setpshared.cpp
M libc/src/pthread/pthread_setspecific.cpp
M libc/src/sched/linux/sched_get_priority_max.cpp
M libc/src/sched/linux/sched_get_priority_min.cpp
M libc/src/sched/linux/sched_getaffinity.cpp
M libc/src/sched/linux/sched_getparam.cpp
M libc/src/sched/linux/sched_getscheduler.cpp
M libc/src/sched/linux/sched_rr_get_interval.cpp
M libc/src/sched/linux/sched_setaffinity.cpp
M libc/src/sched/linux/sched_setparam.cpp
M libc/src/sched/linux/sched_setscheduler.cpp
M libc/src/sched/linux/sched_yield.cpp
M libc/src/search/hcreate.cpp
M libc/src/search/hcreate_r.cpp
M libc/src/search/hdestroy_r.cpp
M libc/src/search/hsearch.cpp
M libc/src/search/hsearch_r.cpp
M libc/src/signal/linux/kill.cpp
M libc/src/signal/linux/sigaction.cpp
M libc/src/signal/linux/sigaddset.cpp
M libc/src/signal/linux/sigaltstack.cpp
M libc/src/signal/linux/sigdelset.cpp
M libc/src/signal/linux/sigemptyset.cpp
M libc/src/signal/linux/sigfillset.cpp
M libc/src/signal/linux/sigprocmask.cpp
M libc/src/spawn/posix_spawn_file_actions_addclose.cpp
M libc/src/spawn/posix_spawn_file_actions_adddup2.cpp
M libc/src/spawn/posix_spawn_file_actions_addopen.cpp
M libc/src/spawn/posix_spawn_file_actions_destroy.cpp
M libc/src/stdio/fopencookie.cpp
M libc/src/stdio/generic/fclose.cpp
M libc/src/stdio/generic/fflush.cpp
M libc/src/stdio/generic/fgetc.cpp
M libc/src/stdio/generic/fgetc_unlocked.cpp
M libc/src/stdio/generic/fgets.cpp
M libc/src/stdio/generic/fopen.cpp
M libc/src/stdio/generic/fputc.cpp
M libc/src/stdio/generic/fputs.cpp
M libc/src/stdio/generic/fread.cpp
M libc/src/stdio/generic/fread_unlocked.cpp
M libc/src/stdio/generic/fseek.cpp
M libc/src/stdio/generic/fseeko.cpp
M libc/src/stdio/generic/ftell.cpp
M libc/src/stdio/generic/ftello.cpp
M libc/src/stdio/generic/fwrite.cpp
M libc/src/stdio/generic/fwrite_unlocked.cpp
M libc/src/stdio/generic/getc.cpp
M libc/src/stdio/generic/getc_unlocked.cpp
M libc/src/stdio/generic/getchar.cpp
M libc/src/stdio/generic/getchar_unlocked.cpp
M libc/src/stdio/generic/putc.cpp
M libc/src/stdio/generic/putchar.cpp
M libc/src/stdio/generic/puts.cpp
M libc/src/stdio/gpu/fprintf.cpp
M libc/src/stdio/gpu/printf.cpp
M libc/src/stdio/linux/fdopen.cpp
M libc/src/stdio/linux/remove.cpp
M libc/src/stdio/linux/rename.cpp
M libc/src/stdio/printf_core/parser.h
M libc/src/stdio/setbuf.cpp
M libc/src/stdio/setvbuf.cpp
M libc/src/stdlib/atof.cpp
M libc/src/stdlib/atoi.cpp
M libc/src/stdlib/atol.cpp
M libc/src/stdlib/atoll.cpp
M libc/src/stdlib/strtod.cpp
M libc/src/stdlib/strtod_l.cpp
M libc/src/stdlib/strtof.cpp
M libc/src/stdlib/strtof_l.cpp
M libc/src/stdlib/strtol.cpp
M libc/src/stdlib/strtol_l.cpp
M libc/src/stdlib/strtold.cpp
M libc/src/stdlib/strtold_l.cpp
M libc/src/stdlib/strtoll.cpp
M libc/src/stdlib/strtoll_l.cpp
M libc/src/stdlib/strtoul.cpp
M libc/src/stdlib/strtoul_l.cpp
M libc/src/stdlib/strtoull.cpp
M libc/src/stdlib/strtoull_l.cpp
M libc/src/string/strdup.cpp
M libc/src/sys/auxv/linux/getauxval.cpp
M libc/src/sys/epoll/linux/epoll_create.cpp
M libc/src/sys/epoll/linux/epoll_create1.cpp
M libc/src/sys/epoll/linux/epoll_ctl.cpp
M libc/src/sys/epoll/linux/epoll_pwait.cpp
M libc/src/sys/epoll/linux/epoll_pwait2.cpp
M libc/src/sys/epoll/linux/epoll_wait.cpp
M libc/src/sys/mman/linux/madvise.cpp
M libc/src/sys/mman/linux/mincore.cpp
M libc/src/sys/mman/linux/mlock.cpp
M libc/src/sys/mman/linux/mlock2.cpp
M libc/src/sys/mman/linux/mlockall.cpp
M libc/src/sys/mman/linux/mmap.cpp
M libc/src/sys/mman/linux/mprotect.cpp
M libc/src/sys/mman/linux/mremap.cpp
M libc/src/sys/mman/linux/msync.cpp
M libc/src/sys/mman/linux/munlock.cpp
M libc/src/sys/mman/linux/munlockall.cpp
M libc/src/sys/mman/linux/munmap.cpp
M libc/src/sys/mman/linux/remap_file_pages.cpp
M libc/src/sys/mman/linux/shm_common.h
M libc/src/sys/prctl/linux/prctl.cpp
M libc/src/sys/random/linux/getrandom.cpp
M libc/src/sys/resource/linux/getrlimit.cpp
M libc/src/sys/resource/linux/setrlimit.cpp
M libc/src/sys/select/linux/select.cpp
M libc/src/sys/sendfile/linux/sendfile.cpp
M libc/src/sys/socket/linux/bind.cpp
M libc/src/sys/socket/linux/recv.cpp
M libc/src/sys/socket/linux/recvfrom.cpp
M libc/src/sys/socket/linux/recvmsg.cpp
M libc/src/sys/socket/linux/send.cpp
M libc/src/sys/socket/linux/sendmsg.cpp
M libc/src/sys/socket/linux/sendto.cpp
M libc/src/sys/socket/linux/socket.cpp
M libc/src/sys/socket/linux/socketpair.cpp
M libc/src/sys/stat/linux/chmod.cpp
M libc/src/sys/stat/linux/fchmod.cpp
M libc/src/sys/stat/linux/fchmodat.cpp
M libc/src/sys/stat/linux/fstat.cpp
M libc/src/sys/stat/linux/lstat.cpp
M libc/src/sys/stat/linux/mkdir.cpp
M libc/src/sys/stat/linux/mkdirat.cpp
M libc/src/sys/stat/linux/stat.cpp
M libc/src/sys/statvfs/linux/statfs_utils.h
M libc/src/sys/time/linux/getitimer.cpp
M libc/src/sys/time/linux/setitimer.cpp
M libc/src/sys/time/linux/utimes.cpp
M libc/src/sys/uio/linux/readv.cpp
M libc/src/sys/uio/linux/writev.cpp
M libc/src/sys/utsname/linux/uname.cpp
M libc/src/sys/wait/wait4Impl.h
M libc/src/termios/linux/cfsetispeed.cpp
M libc/src/termios/linux/cfsetospeed.cpp
M libc/src/termios/linux/tcdrain.cpp
M libc/src/termios/linux/tcflow.cpp
M libc/src/termios/linux/tcflush.cpp
M libc/src/termios/linux/tcgetattr.cpp
M libc/src/termios/linux/tcgetsid.cpp
M libc/src/termios/linux/tcsendbreak.cpp
M libc/src/termios/linux/tcsetattr.cpp
M libc/src/threads/thrd_create.cpp
M libc/src/time/linux/clock.cpp
M libc/src/time/linux/clock_gettime.cpp
M libc/src/time/linux/gettimeofday.cpp
M libc/src/time/linux/nanosleep.cpp
M libc/src/time/linux/timespec_get.cpp
M libc/src/time/time.cpp
M libc/src/time/time_utils.h
M libc/src/time/windows/clock_getres.cpp
M libc/src/unistd/linux/access.cpp
M libc/src/unistd/linux/chdir.cpp
M libc/src/unistd/linux/close.cpp
M libc/src/unistd/linux/dup.cpp
M libc/src/unistd/linux/dup2.cpp
M libc/src/unistd/linux/dup3.cpp
M libc/src/unistd/linux/execv.cpp
M libc/src/unistd/linux/execve.cpp
M libc/src/unistd/linux/fchdir.cpp
M libc/src/unistd/linux/fork.cpp
M libc/src/unistd/linux/fsync.cpp
M libc/src/unistd/linux/ftruncate.cpp
M libc/src/unistd/linux/getcwd.cpp
M libc/src/unistd/linux/getentropy.cpp
M libc/src/unistd/linux/getsid.cpp
M libc/src/unistd/linux/isatty.cpp
M libc/src/unistd/linux/link.cpp
M libc/src/unistd/linux/linkat.cpp
M libc/src/unistd/linux/lseek.cpp
M libc/src/unistd/linux/pathconf.cpp
M libc/src/unistd/linux/pathconf_utils.cpp
M libc/src/unistd/linux/pipe.cpp
M libc/src/unistd/linux/pipe2.cpp
M libc/src/unistd/linux/pread.cpp
M libc/src/unistd/linux/pwrite.cpp
M libc/src/unistd/linux/read.cpp
M libc/src/unistd/linux/readlink.cpp
M libc/src/unistd/linux/readlinkat.cpp
M libc/src/unistd/linux/rmdir.cpp
M libc/src/unistd/linux/symlink.cpp
M libc/src/unistd/linux/symlinkat.cpp
M libc/src/unistd/linux/syscall.cpp
M libc/src/unistd/linux/sysconf.cpp
M libc/src/unistd/linux/truncate.cpp
M libc/src/unistd/linux/unlink.cpp
M libc/src/unistd/linux/unlinkat.cpp
M libc/src/unistd/linux/write.cpp
M libc/src/unistd/windows/getentropy.cpp
M libc/test/IntegrationTest/test.h
M libc/test/UnitTest/ErrnoCheckingTest.h
M libc/test/UnitTest/ErrnoSetterMatcher.h
M libc/test/UnitTest/FPMatcher.h
M libc/test/UnitTest/Test.h
M libc/test/integration/src/pthread/pthread_create_test.cpp
M libc/test/integration/src/pthread/pthread_join_test.cpp
M libc/test/integration/src/pthread/pthread_name_test.cpp
M libc/test/integration/src/unistd/getcwd_test.cpp
M libc/test/integration/startup/linux/tls_test.cpp
M libc/test/src/__support/str_to_fp_test.h
M libc/test/src/__support/str_to_integer_test.cpp
M libc/test/src/dirent/dirent_test.cpp
M libc/test/src/errno/errno_test.cpp
M libc/test/src/fcntl/creat_test.cpp
M libc/test/src/fcntl/fcntl_test.cpp
M libc/test/src/fcntl/openat_test.cpp
M libc/test/src/math/RoundToIntegerTest.h
M libc/test/src/math/acosf_test.cpp
M libc/test/src/math/acoshf16_test.cpp
M libc/test/src/math/acoshf_test.cpp
M libc/test/src/math/asin_test.cpp
M libc/test/src/math/asinf_test.cpp
M libc/test/src/math/asinhf_test.cpp
M libc/test/src/math/atan2f_test.cpp
M libc/test/src/math/atan_test.cpp
M libc/test/src/math/atanf_test.cpp
M libc/test/src/math/atanhf_test.cpp
M libc/test/src/math/cosf_test.cpp
M libc/test/src/math/coshf_test.cpp
M libc/test/src/math/cospif_test.cpp
M libc/test/src/math/exp10_test.cpp
M libc/test/src/math/exp10f_test.cpp
M libc/test/src/math/exp10m1f_test.cpp
M libc/test/src/math/exp2_test.cpp
M libc/test/src/math/exp2f_test.cpp
M libc/test/src/math/exp2m1f_test.cpp
M libc/test/src/math/exp_test.cpp
M libc/test/src/math/expf_test.cpp
M libc/test/src/math/expm1_test.cpp
M libc/test/src/math/expm1f_test.cpp
M libc/test/src/math/log10_test.cpp
M libc/test/src/math/log1p_test.cpp
M libc/test/src/math/log1pf_test.cpp
M libc/test/src/math/log2_test.cpp
M libc/test/src/math/log2f_test.cpp
M libc/test/src/math/log_test.cpp
M libc/test/src/math/powf_test.cpp
M libc/test/src/math/sin_test.cpp
M libc/test/src/math/sincosf_test.cpp
M libc/test/src/math/sinf_test.cpp
M libc/test/src/math/sinhf_test.cpp
M libc/test/src/math/sinpif_test.cpp
M libc/test/src/math/smoke/FModTest.h
M libc/test/src/math/smoke/RoundToIntegerTest.h
M libc/test/src/math/smoke/acos_test.cpp
M libc/test/src/math/smoke/acosf16_test.cpp
M libc/test/src/math/smoke/acosf_test.cpp
M libc/test/src/math/smoke/acoshf16_test.cpp
M libc/test/src/math/smoke/acoshf_test.cpp
M libc/test/src/math/smoke/acospif16_test.cpp
M libc/test/src/math/smoke/asinf16_test.cpp
M libc/test/src/math/smoke/asinf_test.cpp
M libc/test/src/math/smoke/asinhf16_test.cpp
M libc/test/src/math/smoke/asinhf_test.cpp
M libc/test/src/math/smoke/atan2f_test.cpp
M libc/test/src/math/smoke/atanf16_test.cpp
M libc/test/src/math/smoke/atanf_test.cpp
M libc/test/src/math/smoke/atanhf16_test.cpp
M libc/test/src/math/smoke/atanhf_test.cpp
M libc/test/src/math/smoke/cosf16_test.cpp
M libc/test/src/math/smoke/cosf_test.cpp
M libc/test/src/math/smoke/coshf16_test.cpp
M libc/test/src/math/smoke/coshf_test.cpp
M libc/test/src/math/smoke/cospif16_test.cpp
M libc/test/src/math/smoke/cospif_test.cpp
M libc/test/src/math/smoke/exp10_test.cpp
M libc/test/src/math/smoke/exp10f16_test.cpp
M libc/test/src/math/smoke/exp10f_test.cpp
M libc/test/src/math/smoke/exp10m1f16_test.cpp
M libc/test/src/math/smoke/exp10m1f_test.cpp
M libc/test/src/math/smoke/exp2_test.cpp
M libc/test/src/math/smoke/exp2f16_test.cpp
M libc/test/src/math/smoke/exp2f_test.cpp
M libc/test/src/math/smoke/exp2m1f16_test.cpp
M libc/test/src/math/smoke/exp2m1f_test.cpp
M libc/test/src/math/smoke/exp_test.cpp
M libc/test/src/math/smoke/expf16_test.cpp
M libc/test/src/math/smoke/expf_test.cpp
M libc/test/src/math/smoke/expm1_test.cpp
M libc/test/src/math/smoke/expm1f16_test.cpp
M libc/test/src/math/smoke/expm1f_test.cpp
M libc/test/src/math/smoke/log10_test.cpp
M libc/test/src/math/smoke/log10f16_test.cpp
M libc/test/src/math/smoke/log1p_test.cpp
M libc/test/src/math/smoke/log1pf_test.cpp
M libc/test/src/math/smoke/log2_test.cpp
M libc/test/src/math/smoke/log2f16_test.cpp
M libc/test/src/math/smoke/log2f_test.cpp
M libc/test/src/math/smoke/log_test.cpp
M libc/test/src/math/smoke/logf16_test.cpp
M libc/test/src/math/smoke/sincosf_test.cpp
M libc/test/src/math/smoke/sinf16_test.cpp
M libc/test/src/math/smoke/sinf_test.cpp
M libc/test/src/math/smoke/sinhf16_test.cpp
M libc/test/src/math/smoke/sinhf_test.cpp
M libc/test/src/math/smoke/sinpif16_test.cpp
M libc/test/src/math/smoke/sinpif_test.cpp
M libc/test/src/math/smoke/tanf16_test.cpp
M libc/test/src/math/smoke/tanf_test.cpp
M libc/test/src/math/smoke/tanhf16_test.cpp
M libc/test/src/math/smoke/tanhf_test.cpp
M libc/test/src/math/smoke/tanpif16_test.cpp
M libc/test/src/math/tanf_test.cpp
M libc/test/src/math/tanhf_test.cpp
M libc/test/src/poll/poll_test.cpp
M libc/test/src/sched/affinity_test.cpp
M libc/test/src/sched/cpu_count_test.cpp
M libc/test/src/sched/get_priority_test.cpp
M libc/test/src/sched/param_and_scheduler_test.cpp
M libc/test/src/sched/sched_rr_get_interval_test.cpp
M libc/test/src/sched/yield_test.cpp
M libc/test/src/signal/sigaltstack_test.cpp
M libc/test/src/signal/signal_test.cpp
M libc/test/src/signal/sigprocmask_test.cpp
M libc/test/src/spawn/posix_spawn_file_actions_test.cpp
M libc/test/src/stdio/fdopen_test.cpp
M libc/test/src/stdio/fgetc_test.cpp
M libc/test/src/stdio/fgetc_unlocked_test.cpp
M libc/test/src/stdio/fgets_test.cpp
M libc/test/src/stdio/fileop_test.cpp
M libc/test/src/stdio/fopencookie_test.cpp
M libc/test/src/stdio/remove_test.cpp
M libc/test/src/stdio/rename_test.cpp
M libc/test/src/stdio/setvbuf_test.cpp
M libc/test/src/stdio/sprintf_test.cpp
M libc/test/src/stdio/unlocked_fileop_test.cpp
M libc/test/src/stdlib/StrtolTest.h
M libc/test/src/stdlib/strtoint32_test.cpp
M libc/test/src/stdlib/strtoint64_test.cpp
M libc/test/src/stdlib/strtold_test.cpp
M libc/test/src/sys/mman/linux/mlock_test.cpp
M libc/test/src/sys/statvfs/linux/fstatvfs_test.cpp
M libc/test/src/sys/statvfs/linux/statvfs_test.cpp
M libc/test/src/sys/time/setitimer_test.cpp
M libc/test/src/termios/termios_test.cpp
M libc/test/src/time/asctime_r_test.cpp
M libc/test/src/time/asctime_test.cpp
M libc/test/src/time/ctime_r_test.cpp
M libc/test/src/time/ctime_test.cpp
M libc/test/src/time/gmtime_test.cpp
M libc/test/src/time/nanosleep_test.cpp
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
Log Message:
-----------
[libc] Move libc_errno.h to libc/src/__support and make LIBC_ERRNO_MODE_SYSTEM to be header-only. (#143187)
This is the first step in preparation for:
https://discourse.llvm.org/t/rfc-make-clang-builtin-math-functions-constexpr-with-llvm-libc-to-support-c-23-constexpr-math-functions/86450
Commit: 79108da325daec08f5b50169a9c35e03ea0645a3
https://github.com/llvm/llvm-project/commit/79108da325daec08f5b50169a9c35e03ea0645a3
Author: sribee8 <145801438+sribee8 at users.noreply.github.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M libc/src/__support/wchar/character_converter.cpp
M libc/src/__support/wchar/character_converter.h
Log Message:
-----------
[libc][obvious] Changed incorrect type (#143780)
After changing mbstate_t to mbstate we forgot to change the
character_converter files to reflect it.
Co-authored-by: Sriya Pratipati <sriyap at google.com>
Commit: c0c0f60ca14422dfbfe27fddd8d47faa596165d8
https://github.com/llvm/llvm-project/commit/c0c0f60ca14422dfbfe27fddd8d47faa596165d8
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M llvm/lib/Transforms/Utils/Evaluator.cpp
A llvm/test/Transforms/GlobalOpt/global-constructor-complex-constants.ll
Log Message:
-----------
[GlobalOpt] Bail out on non-ConstExprs in isSimpleEnoughtToCommit. (#143400)
Bail out for non ConstantExpr constants in
isSimpleEnoughValueToCommitHelper to prevent crash for non-ConstantExpr
constants
PR: https://github.com/llvm/llvm-project/pull/143400
Commit: f39f53e569f92987683626d910e9dbcbd59ff410
https://github.com/llvm/llvm-project/commit/f39f53e569f92987683626d910e9dbcbd59ff410
Author: Shafik Yaghmour <shafik.yaghmour at intel.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M clang/utils/TableGen/ClangAttrEmitter.cpp
Log Message:
-----------
[Clang][NFC] Move HeadingAndSpellings to avoid copying (#143611)
Static analysis flagged that we could move HeadingAndSpellings and avoid
a copy of a large object.
Commit: d7e7f22626f214766f3592341dd1737fd232c6a5
https://github.com/llvm/llvm-project/commit/d7e7f22626f214766f3592341dd1737fd232c6a5
Author: Oleksandr T. <oleksandr.tarasiuk at outlook.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Parse/Parser.h
M clang/lib/Parse/ParseExprCXX.cpp
M clang/lib/Parse/ParseStmt.cpp
M clang/lib/Parse/Parser.cpp
A clang/test/Parser/macro-expansion-recovery.cpp
M clang/test/Parser/switch-recovery.cpp
Log Message:
-----------
[Clang] fix missing source location for errors in macro-expanded (#143460)
Fixes #143216
---
This patch fixes diagnostic locations for tokens from macro expansions.
Commit: 625bfb7179ad1acab2aba1023095826628275a60
https://github.com/llvm/llvm-project/commit/625bfb7179ad1acab2aba1023095826628275a60
Author: Jiachen Yuan <jiacheny at nvidia.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M llvm/include/llvm/IR/Mangler.h
Log Message:
-----------
Workaround MSVC Linker Issue when Cross-Compiling for ARM64EC (#143659)
This MR presents a temporary workaround for the issue described at
https://github.com/llvm/llvm-project/issues/143575. While an [upstream
MSVC
bug](https://developercommunity.visualstudio.com/t/MSVC-Linker-Issue-When-Cross-Compiling-L/10920141)
is reported, it makes sense to apply a workaround in LLVM code to
quickly unblock anyone affected.
Commit: 7838fc0cd3fbe578d9554fdcd3198c2ba3616bcc
https://github.com/llvm/llvm-project/commit/7838fc0cd3fbe578d9554fdcd3198c2ba3616bcc
Author: Sirraide <aeternalmail at gmail.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M clang/include/clang/Basic/Diagnostic.h
M clang/include/clang/Basic/DiagnosticIDs.h
M clang/lib/Basic/Diagnostic.cpp
M clang/lib/Basic/DiagnosticIDs.cpp
Log Message:
-----------
[Clang] [NFC] Move diagnostics emitting code from `DiagnosticIDs` into `DiagnosticsEngine` (#143517)
It makes more sense for this functionality to be all in one place rather
than split up across two files—at least it caused me a bit of a headache
to try and find all places where we were actually forwarding the
diagnostic to the `DiagnosticConsumer`. Moreover, moving these functions
into `DiagnosticsEngine` simplifies the code quite a bit since we access
members of `DiagnosticsEngine` more frequently than those of
`DiagnosticIDs`. There was also a duplicated code snippet that I’ve
moved out into a new function.
Commit: 6f2ba4712f17d7c82228a5b705570571e13a3832
https://github.com/llvm/llvm-project/commit/6f2ba4712f17d7c82228a5b705570571e13a3832
Author: Ian Wood <ianwood2024 at u.northwestern.edu>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M mlir/include/mlir/Dialect/Utils/ReshapeOpsUtils.h
M mlir/test/Dialect/Tensor/canonicalize.mlir
Log Message:
-----------
[mlir] Fix ComposeExpandOfCollapseOp for dynamic case (#142663)
Changes `findCollapsingReassociation` to return nullopt in all cases
where source shape has `>=2` dynamic dims. `expand(collapse)` can
reshape to in any valid output shape but a collapse can only collapse
contiguous dimensions. When there are `>=2` dynamic dimensions it is
impossible to determine if it can be simplified to a collapse or if it
is preforming a more advanced reassociation.
This problem was uncovered by
https://github.com/llvm/llvm-project/pull/137963
---------
Signed-off-by: Ian Wood <ianwood2024 at u.northwestern.edu>
Commit: 9c9a4a284e95ea5e27617af7235e3ab049bae680
https://github.com/llvm/llvm-project/commit/9c9a4a284e95ea5e27617af7235e3ab049bae680
Author: Ellis Hoag <ellis.sparky.hoag at gmail.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64CollectLOH.cpp
M llvm/test/CodeGen/AArch64/loh-adrp-add-ldr-clobber.mir
Log Message:
-----------
[LOH] Don't emit AdrpAddStr when register could be clobbered (#142849)
https://github.com/llvm/llvm-project/commit/b783aa89795635cbe7b25b4143b562931fcec9f6
added a check to ensure an `AdrpAddLdr` LOH isn't created when there is
an instruction between the `add` and `ldr`
https://github.com/llvm/llvm-project/blob/50c5704dc000cc0af41a511aa44db03233edf0af/llvm/lib/Target/AArch64/AArch64CollectLOH.cpp#L419-L431
We need a similar check for `AdrpAddStr`. Although this technically
isn't implemented in LLD, it could be in the future.
https://github.com/llvm/llvm-project/blob/50c5704dc000cc0af41a511aa44db03233edf0af/lld/MachO/Arch/ARM64.cpp#L699-L702
Commit: 74172add65aa14e77e98b048db0074c3f273057f
https://github.com/llvm/llvm-project/commit/74172add65aa14e77e98b048db0074c3f273057f
Author: Michael Maitland <michaeltmaitland at gmail.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M mlir/utils/generate-test-checks.py
Log Message:
-----------
[mlir][generate-test-checks] Do not emit the autogenerated note if it exists (#143750)
Prior to this PR, the script removed the already existing autogenerated
note if we came across a line that was equal to the note. But the
default note is multiple lines, so there would never be a match.
Instead, check to see if the current line is a substring of the
autogenerated note.
Co-authored-by: Michael Maitland <michaelmaitland at meta.com>
Commit: 0e457315f55889878ccbc3e35d4beb04e277733f
https://github.com/llvm/llvm-project/commit/0e457315f55889878ccbc3e35d4beb04e277733f
Author: Michael Maitland <michaeltmaitland at gmail.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M mlir/utils/generate-test-checks.py
Log Message:
-----------
[mlir][generate-test-checks] Emit attributes with rest of CHECK lines (#143759)
Prior to this patch, generating test checks in place put the ATTR
definitions at the very top of the file, above the RUN lines and
autogenerated note. All CHECK lines should below the RUN lines and
autogenerated note.
This change ensures that the attribute definitions are emitted with the
rest of the CHECK lines.
---------
Co-authored-by: Michael Maitland <michaelmaitland at meta.com>
Commit: ee35e342945d6825c9b2b004fd135cf16c84ea0e
https://github.com/llvm/llvm-project/commit/ee35e342945d6825c9b2b004fd135cf16c84ea0e
Author: Nikolay Panchenko <nicholas.panchenko at gmail.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M llvm/lib/Analysis/ConstantFolding.cpp
A llvm/test/Transforms/InstSimplify/ConstProp/vector-calls.ll
Log Message:
-----------
[ConstantFolding] Add folding for [de]interleave2, insert and extract (#141301)
The change adds folding for 4 vector intrinsics: `interleave2`,
`deinterleave2`, `vector_extract` and `vector_insert`. For the last 2
intrinsics the change does not use `ShuffleVector` fold mechanism as
it's much simpler to construct result vector explicitly.
Commit: dc4335a2bf75c7b9928a72a7f15df0276120d7ed
https://github.com/llvm/llvm-project/commit/dc4335a2bf75c7b9928a72a7f15df0276120d7ed
Author: Joseph Huber <huberjn at outlook.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M libc/src/__support/GPU/allocator.cpp
Log Message:
-----------
[libc] Perform bitfield zero initialization wave-parallel (#143607)
Summary:
We need to set the bitfield memory to zero because the system does not
guarantee zeroed out memory. Even if fresh pages are zero, the system
allows re-use so we would need a `kfd` level API to skip this step.
Because we can't this patch updates the logic to perform the zero
initialization wave-parallel. This reduces the amount of time it takes
to allocate a fresh by up to a tenth.
This has the unfortunate side effect that the control flow is more
convoluted and we waste some extra registers, but it's worth it to
reduce the slab allocation latency.
Commit: 1ecd108cb7ceda2b11281b5d173e2827feb60c55
https://github.com/llvm/llvm-project/commit/1ecd108cb7ceda2b11281b5d173e2827feb60c55
Author: Alexey Samsonov <vonosmas at gmail.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M libc/test/src/stdio/CMakeLists.txt
M libc/test/src/stdio/fdopen_test.cpp
M libc/test/src/stdio/fgetc_test.cpp
M libc/test/src/stdio/fgetc_unlocked_test.cpp
M libc/test/src/stdio/fgets_test.cpp
M libc/test/src/stdio/fileop_test.cpp
M libc/test/src/stdio/fopencookie_test.cpp
M libc/test/src/stdio/remove_test.cpp
M libc/test/src/stdio/rename_test.cpp
M libc/test/src/stdio/setvbuf_test.cpp
M libc/test/src/stdio/unlocked_fileop_test.cpp
M libc/test/src/stdlib/StrtolTest.h
M libc/test/src/stdlib/strtold_test.cpp
Log Message:
-----------
[libc] Migrate stdio tests to ErrnoCheckingTest. (#143802)
Reduce the direct use of libc_errno in stdio unit tests by adopting
ErrnoCheckingTest where appropriate.
Also removes the libc_errno.h inclusions from stdlib.h tests that were
accidentally added in d87eea35fac5a34a841c637db8908128409a184e
Commit: 3c7af175e51c3ab08ac3c442146c2b822f38c01e
https://github.com/llvm/llvm-project/commit/3c7af175e51c3ab08ac3c442146c2b822f38c01e
Author: Michael Jones <michaelrj at google.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M libc/docs/configure.rst
M libc/test/src/stdio/fgetc_test.cpp
M libc/test/src/stdio/fgetc_unlocked_test.cpp
M libc/test/src/stdio/fgets_test.cpp
M libc/test/src/stdio/setvbuf_test.cpp
Log Message:
-----------
[libc] Fix stdio tests after #143802 (#143810)
In #143802 the stdio test cleanup missed a few places where errno was
being set to a failing value, and one where the framework needed to
included.
Commit: 6c72084a578a7a1e4dc1013a1a4a30b72ad5c6ab
https://github.com/llvm/llvm-project/commit/6c72084a578a7a1e4dc1013a1a4a30b72ad5c6ab
Author: Jorge Gorbe Moya <jgorbe at google.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/libc/test/src/stdio/BUILD.bazel
Log Message:
-----------
[bazel] port 1ecd108cb7ceda2b11281b5d173e2827feb60c55
Commit: bc7ea63e9c885fbe71dec29581a206bc0543d22a
https://github.com/llvm/llvm-project/commit/bc7ea63e9c885fbe71dec29581a206bc0543d22a
Author: Jameson Nash <vtjnash at gmail.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M llvm/lib/Transforms/Scalar/MemCpyOptimizer.cpp
M llvm/test/Transforms/MemCpyOpt/variable-sized-memset-memcpy.ll
Log Message:
-----------
[MemCpyOpt] handle memcpy from memset for non-constant sizes (#143727)
Allows forwarding memset to memcpy for mismatching unknown sizes if
overread has undef contents. In that case we can refine the undef bytes
to the memset value.
Refs #140954 which laid some of the groundwork for this.
Commit: d7c6cad744bc7ed28535dc6f75629902eda559ea
https://github.com/llvm/llvm-project/commit/d7c6cad744bc7ed28535dc6f75629902eda559ea
Author: Jake Egan <Jake.egan at ibm.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M compiler-rt/lib/sanitizer_common/sanitizer_common_interceptors.inc
M compiler-rt/lib/sanitizer_common/sanitizer_common_interceptors_ioctl.inc
M compiler-rt/lib/sanitizer_common/sanitizer_common_interceptors_memintrinsics.inc
M compiler-rt/lib/sanitizer_common/sanitizer_platform_interceptors.h
M compiler-rt/lib/sanitizer_common/sanitizer_redefine_builtins.h
Log Message:
-----------
[sanitizer_common] Implement interception on AIX (#138606)
Adjust AIX interceptor support in sanitizer_common.
Issue: https://github.com/llvm/llvm-project/issues/138916
Commit: 7a3bcf9f7179e6904d405de36360714da07c31ba
https://github.com/llvm/llvm-project/commit/7a3bcf9f7179e6904d405de36360714da07c31ba
Author: Jim Lin <jim at andestech.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfoXTHead.td
Log Message:
-----------
[RISCV] Add missing predicate for PseudoTHVdotVMAQA family instructions
Commit: 7034014d08249a1e159a668a71e96a0b78636a39
https://github.com/llvm/llvm-project/commit/7034014d08249a1e159a668a71e96a0b78636a39
Author: Jeffrey Byrnes <jeffrey.byrnes at amd.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
M llvm/test/Transforms/InstCombine/or-bitmask.ll
Log Message:
-----------
[InstCombine] Combine or-disjoint (and->mul), (and->mul) to and->mul (#136013)
The canonical pattern for bitmasked mul is currently
```
%val = and %x, %bitMask // where %bitMask is some constant
%cmp = icmp eq %val, 0
%sel = select %cmp, 0, %C // where %C is some constant = C' * %bitMask
```
In certain cases, where we are combining multiple of these bitmasked
muls with common factors, we are able to optimize into and->mul (see
https://github.com/llvm/llvm-project/pull/135274 )
This optimization lends itself to further optimizations. This PR
addresses one of such optimizations.
In cases where we have
`or-disjoint ( mul(and (X, C1), D) , mul (and (X, C2), D))`
we can combine into
`mul( and (X, (C1 + C2)), D) `
provided C1 and C2 are disjoint.
Generalized proof: https://alive2.llvm.org/ce/z/MQYMui
Commit: c4316180418ce8de4b4c9812c7fac791d55b6102
https://github.com/llvm/llvm-project/commit/c4316180418ce8de4b4c9812c7fac791d55b6102
Author: Shunsuke Watanabe <watanabe.shu-06 at fujitsu.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/test/Driver/range.c
Log Message:
-----------
[Clang][Driver] Override complex number calculation method by -fno-fast-math (#132680)
This patch fixes a bug where -fno-fast-math doesn't revert the complex
number calculation method to the default. The priority of overriding
options related to complex number calculations differs slightly from
GCC, as discussed in:
https://discourse.llvm.org/t/the-priority-of-fno-fast-math-regarding-complex-number-calculations/84679
Commit: 52360d195b85608c677d781272534dfa61e9a1c3
https://github.com/llvm/llvm-project/commit/52360d195b85608c677d781272534dfa61e9a1c3
Author: Longsheng Mou <longshengmou at gmail.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M clang-tools-extra/clangd/refactor/Rename.cpp
M llvm/lib/Transforms/Instrumentation/DataFlowSanitizer.cpp
M llvm/tools/sancov/sancov.cpp
M llvm/unittests/ADT/DAGDeltaAlgorithmTest.cpp
M llvm/unittests/ADT/DeltaAlgorithmTest.cpp
M llvm/utils/TableGen/AsmMatcherEmitter.cpp
M llvm/utils/TableGen/Common/CodeGenRegisters.cpp
Log Message:
-----------
[NFC] Use `llvm::includes` instead of `std::includes` (#143542)
This PR follows up #143297.
Commit: 082251bba4effea7f60191c6cbddacb3705c07db
https://github.com/llvm/llvm-project/commit/082251bba4effea7f60191c6cbddacb3705c07db
Author: Jameson Nash <vtjnash at gmail.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M compiler-rt/lib/builtins/README.txt
M compiler-rt/lib/builtins/trampoline_setup.c
M compiler-rt/test/builtins/Unit/trampoline_setup_test.c
M flang/lib/Optimizer/CodeGen/BoxedProcedure.cpp
M flang/test/Fir/boxproc.fir
M llvm/lib/Target/AArch64/AArch64CallingConvention.td
M llvm/lib/Target/AArch64/AArch64FrameLowering.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/TargetParser/Triple.cpp
M llvm/test/CodeGen/AArch64/nest-register.ll
M llvm/test/CodeGen/AArch64/statepoint-call-lowering.ll
M llvm/test/CodeGen/AArch64/trampoline.ll
M llvm/test/CodeGen/AArch64/win64cc-x18.ll
M llvm/test/CodeGen/AArch64/zero-call-used-regs.ll
Log Message:
-----------
[AArch64] fix trampoline implementation: use X15 (#126743)
AAPCS64 reserves any of X9-X15 for a compiler to choose to use for this
purpose, and says not to use X16 or X18 like GCC (and the previous
implementation) chose to use. The X18 register may need to get used by
the kernel in some circumstances, as specified by the platform ABI, so
it is generally an unwise choice. Simply choosing a different register
fixes the problem of this being broken on any platform that actually
follows the platform ABI (which is all of them except EABI, if I am
reading this linux kernel bug correctly
https://lkml2.uits.iu.edu/hypermail/linux/kernel/2001.2/01502.html). As
a side benefit, also generate slightly better code and avoids needing
the compiler-rt to be present. I did that by following the XCore
implementation instead of PPC (although in hindsight, following the
RISCV might have been slightly more readable). That X18 is wrong to use
for this purpose has been known for many years (e.g.
https://www.mail-archive.com/gcc@gcc.gnu.org/msg76934.html) and also
known that fixing this to use one of the correct registers is not an ABI
break, since this only appears inside of a translation unit. Some of the
other temporary registers (e.g. X9) are already reserved inside llvm for
internal use as a generic temporary register in the prologue before
saving registers, while X15 was already used in rare cases as a scratch
register in the prologue as well, so I felt that seemed the most logical
choice to choose here.
Commit: bb3b8306dc226c4dc4dfde36444b43476eea66ee
https://github.com/llvm/llvm-project/commit/bb3b8306dc226c4dc4dfde36444b43476eea66ee
Author: Chuanqi Xu <yedeng.yd at linux.alibaba.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
A clang/test/Modules/module-local-declarations.cppm
Log Message:
-----------
[NFC] [C++20] [Modules] Add a test module local declaration lookup
From
https://github.com/llvm/llvm-project/issues/143734, but it looks good on
trunk. Add it as tests are always good.
Commit: de51b2dd3c6fc995e7db56fc50b4c8dceddc0aab
https://github.com/llvm/llvm-project/commit/de51b2dd3c6fc995e7db56fc50b4c8dceddc0aab
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
A lldb/include/lldb/Host/JSONTransport.h
M lldb/source/Host/CMakeLists.txt
A lldb/source/Host/common/JSONTransport.cpp
M lldb/tools/lldb-dap/DAP.cpp
M lldb/tools/lldb-dap/Transport.cpp
M lldb/tools/lldb-dap/Transport.h
M lldb/unittests/DAP/DAPTest.cpp
M lldb/unittests/DAP/TestBase.cpp
M lldb/unittests/DAP/TransportTest.cpp
Log Message:
-----------
[lldb] Move Transport class into lldb_private (NFC) (#143806)
Move lldb-dap's Transport class into lldb_private so the code can be
shared between the "JSON with header" protocol used by DAP and the JSON
RPC protocol used by MCP (see [1]).
[1]: https://discourse.llvm.org/t/rfc-adding-mcp-support-to-lldb/86798
Commit: faa49d6662b4c14438cc8e63a3751c22f28d2481
https://github.com/llvm/llvm-project/commit/faa49d6662b4c14438cc8e63a3751c22f28d2481
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M llvm/utils/gn/secondary/lldb/source/Host/BUILD.gn
Log Message:
-----------
[gn build] Port de51b2dd3c6f
Commit: d8118ed6db28a3caaf3fa4a4f8d0d51d33b09c30
https://github.com/llvm/llvm-project/commit/d8118ed6db28a3caaf3fa4a4f8d0d51d33b09c30
Author: Fangrui Song <i at maskray.me>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M lld/test/ELF/weak-undef-rw.s
Log Message:
-----------
[ELF,test] Improve weak-undef-rw.s
Commit: b46f34452e9dec50eee6ddbe07875f05e421a81c
https://github.com/llvm/llvm-project/commit/b46f34452e9dec50eee6ddbe07875f05e421a81c
Author: Khem Raj <raj.khem at gmail.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M libunwind/src/UnwindLevel1.c
Log Message:
-----------
libunwind: Do not use __attribute__((target("gcs"))) with non-clang compilers (#138077)
This attribute is unsupported in GCC, so far it worked because before
GCC15 did not define this macros in _CHKFEAT_GCS in arm_acle.h [1]
With gcc15 compiler libunwind's check for this macros is succeeding and
it ends up enabling 'gcs' by using function attribute, this works with
clang but not with gcc.
We can see this in rust compiler bootstrap for aarch64/musl when system
uses gcc15, it ends up with these errors
Building libunwind.a for aarch64-poky-linux-musl
```
cargo:warning=/mnt/b/yoe/master/sources/poky/build/tmp/work/cortexa57-poky-linux-musl/rust/1.85.1/rustc-1.85.1-src/src/llvm-project/libunwind/src/UnwindLevel1.c:191:1: error: arch extension 'gcs' should be prefixed by '+' cargo:warning= 191 | unwind_phase2(unw_context_t *uc, unw_cursor_t *cursor, _Unwind_Exception *exception_object) {
cargo:warning= | ^~~~~~~~~~~~~
cargo:warning=/mnt/b/yoe/master/sources/poky/build/tmp/work/cortexa57-poky-linux-musl/rust/1.85.1/rustc-1.85.1-src/src/llvm-project/libunwind/src/UnwindLevel1.c:337:22: error: arch extension 'gcs' should be prefixed by '+'
cargo:warning= 337 | _Unwind_Stop_Fn stop, void *stop_parameter) {
cargo:warning= | ^~~~~~~~~~~~~~~
```
[1] https://gcc.gnu.org/git/?p=gcc.git;a=commit;h=5a6af707f0af
Signed-off-by: Khem Raj <raj.khem at gmail.com>
Commit: a71210e5abdbae80363cb5956a24a2004f625ca6
https://github.com/llvm/llvm-project/commit/a71210e5abdbae80363cb5956a24a2004f625ca6
Author: Kewen12 <Kewen.Meng at amd.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M libc/docs/configure.rst
M libc/test/src/stdio/fgetc_test.cpp
M libc/test/src/stdio/fgetc_unlocked_test.cpp
M libc/test/src/stdio/fgets_test.cpp
M libc/test/src/stdio/setvbuf_test.cpp
Log Message:
-----------
Revert "[libc] Fix stdio tests after #143802" (#143824)
Reverts llvm/llvm-project#143810
This PR breaks our buildbot:
https://lab.llvm.org/buildbot/#/builders/10/builds/7159 revert to
unblock downstream merge.
Commit: 968d8eaa44c500259fe8d56ad77ec1c71cad35e2
https://github.com/llvm/llvm-project/commit/968d8eaa44c500259fe8d56ad77ec1c71cad35e2
Author: Yang Zaizhou <91008302+Mxfg-incense at users.noreply.github.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M openmp/runtime/src/include/omp_lib.F90.var
Log Message:
-----------
[OpenMP][Flang]Fix omp_get_cancellation return type from integer to logical (#142990)
Commit: 2fcaa00d1e2317a90c9071b735eb0e758b5dd58b
https://github.com/llvm/llvm-project/commit/2fcaa00d1e2317a90c9071b735eb0e758b5dd58b
Author: Fangrui Song <i at maskray.me>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M lld/ELF/Relocations.cpp
M lld/test/ELF/weak-undef-rw.s
Log Message:
-----------
[ELF] -z undefs: handle relocations referencing undefined non-weak like undefined weak
* Merge the special case into isStaticLinkTimeConstant
* Generalize isUndefWeak to isUndefined. undefined non-weak is an error
case. We choose to be general, which also brings us in line with GNU ld.
Commit: 5f231db76482bbdd3e658d8e9797cbd46837d4e1
https://github.com/llvm/llvm-project/commit/5f231db76482bbdd3e658d8e9797cbd46837d4e1
Author: Brandon Wu <songwu0813 at gmail.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M clang/lib/Sema/SemaRISCV.cpp
Log Message:
-----------
[RISCV] Use StringRef for RequiredExtensions in RVVIntrinsicDef (#143503)
This prevents many duplicated copies of required extensions string.
Commit: f09050fdc85074869f0b34f0d9e061a74ef549ee
https://github.com/llvm/llvm-project/commit/f09050fdc85074869f0b34f0d9e061a74ef549ee
Author: Chuanqi Xu <yedeng.yd at linux.alibaba.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M clang/include/clang/AST/ASTContext.h
M clang/include/clang/AST/DeclBase.h
M clang/lib/AST/ASTContext.cpp
M clang/lib/AST/DeclBase.cpp
A clang/test/Modules/module-local-declarations-02.cppm
A clang/test/Modules/pr61360.cppm
Log Message:
-----------
[C++20] [Modules] Fix module local lookup ambiguousity
Close https://github.com/llvm/llvm-project/issues/61360
Close https://github.com/llvm/llvm-project/issues/129525
Close https://github.com/llvm/llvm-project/issues/143734
We shouldn't identify different module local decls in different modules
as the same entity.
Commit: 282e471018d234f78b0990100834532389877519
https://github.com/llvm/llvm-project/commit/282e471018d234f78b0990100834532389877519
Author: Kareem Ergawy <kareem.ergawy at amd.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M flang/lib/Optimizer/CodeGen/CodeGen.cpp
A flang/test/Fir/local.fir
Log Message:
-----------
[flang] Erase `fir.local` ops before lowering `fir` to `llvm` (#143687)
`fir.local` ops are not supposed to have any uses at this point (i.e.
during lowering to LLVM). In case of serialization, the
`fir.do_concurrent` users are expected to have been lowered to
`fir.do_loop` nests. In case of parallelization, the `fir.do_concurrent`
users are expected to have been lowered to the target parallel model
(e.g. OpenMP).
This hopefully resolved a build issue introduced by
https://github.com/llvm/llvm-project/pull/142567 (see for example:
https://lab.llvm.org/buildbot/#/builders/199/builds/4009).
Commit: c3be4524a56ba01bc1f868fc37e329f24ec5041c
https://github.com/llvm/llvm-project/commit/c3be4524a56ba01bc1f868fc37e329f24ec5041c
Author: Fangrui Song <i at maskray.me>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
R lld/test/ELF/weak-undef-got-pie.s
A lld/test/ELF/weak-undef-got-plt.s
R lld/test/ELF/weak-undef.s
Log Message:
-----------
[ELF,test] Improve weak-undef-got-plt.s
Commit: a93e55e57ed00a55f822c64e3520c7c732b58480
https://github.com/llvm/llvm-project/commit/a93e55e57ed00a55f822c64e3520c7c732b58480
Author: Alexey Samsonov <vonosmas at gmail.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M libc/test/src/stdio/CMakeLists.txt
M libc/test/src/stdio/fdopen_test.cpp
M libc/test/src/stdio/fgetc_test.cpp
M libc/test/src/stdio/fgetc_unlocked_test.cpp
M libc/test/src/stdio/fgets_test.cpp
M libc/test/src/stdio/fileop_test.cpp
M libc/test/src/stdio/fopencookie_test.cpp
M libc/test/src/stdio/remove_test.cpp
M libc/test/src/stdio/rename_test.cpp
M libc/test/src/stdio/setvbuf_test.cpp
M libc/test/src/stdio/unlocked_fileop_test.cpp
M libc/test/src/stdlib/StrtolTest.h
M libc/test/src/stdlib/strtold_test.cpp
Log Message:
-----------
Revert "[libc] Migrate stdio tests to ErrnoCheckingTest." (#143829)
Reverts llvm/llvm-project#143802. Follow-up fix
3c7af175e51c3ab08ac3c442146c2b822f38c01e wasn't robust enough and itself
got reverted.
Commit: 99638537cd19b84252685a3dd56535a4d54d690e
https://github.com/llvm/llvm-project/commit/99638537cd19b84252685a3dd56535a4d54d690e
Author: Kazu Hirata <kazu at google.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
Log Message:
-----------
[AArch64] Fix a warning
This patch fixes:
llvm/lib/Target/AArch64/AArch64ISelLowering.cpp:7157:3: error:
unannotated fall-through between switch labels
[-Werror,-Wimplicit-fallthrough]
Commit: 02550da932913bd7c3987c68abc9060c9e5bde2c
https://github.com/llvm/llvm-project/commit/02550da932913bd7c3987c68abc9060c9e5bde2c
Author: Fazlay Rabbi <106703039+mdfazlay at users.noreply.github.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M clang/include/clang/Basic/Attr.td
M clang/include/clang/Basic/DiagnosticParseKinds.td
M clang/include/clang/Basic/OpenMPKinds.def
M clang/include/clang/Sema/SemaOpenMP.h
M clang/lib/AST/AttrImpl.cpp
M clang/lib/Parse/ParseOpenMP.cpp
M clang/lib/Sema/SemaOpenMP.cpp
M clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
M clang/test/OpenMP/declare_variant_clauses_ast_print.cpp
M clang/test/OpenMP/declare_variant_clauses_messages.cpp
Log Message:
-----------
[OpenMP 60] Initial parsing/sema for `need_device_addr` modifier on `adjust_args` clause (#143442)
Adds initial parsing and semantic analysis for `need_device_addr`
modifier on `adjust_args` clause.
Commit: 28bda778437fea17a25b561f1b3b84545612b565
https://github.com/llvm/llvm-project/commit/28bda778437fea17a25b561f1b3b84545612b565
Author: Fangrui Song <i at maskray.me>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M clang/test/CodeGen/alias.c
M llvm/include/llvm/MC/MCAsmInfo.h
M llvm/lib/MC/MCAsmStreamer.cpp
M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCAsmInfo.cpp
M llvm/lib/Target/Hexagon/MCTargetDesc/HexagonMCAsmInfo.cpp
M llvm/lib/Target/PowerPC/MCTargetDesc/PPCMCAsmInfo.cpp
M llvm/lib/Target/SystemZ/MCTargetDesc/SystemZMCAsmInfo.cpp
M llvm/test/CodeGen/AArch64/arm64ec-alias.ll
M llvm/test/CodeGen/AArch64/arm64ec-hybrid-patchable.ll
M llvm/test/CodeGen/AArch64/arm64ec-symbols.ll
M llvm/test/CodeGen/AArch64/arm64ec-varargs.ll
M llvm/test/CodeGen/AArch64/ehcontguard.ll
M llvm/test/CodeGen/AArch64/global-merge-1.ll
M llvm/test/CodeGen/AArch64/global-merge-2.ll
M llvm/test/CodeGen/AArch64/global-merge-3.ll
M llvm/test/CodeGen/AArch64/global-merge-hidden-minsize.ll
M llvm/test/CodeGen/AArch64/ifunc-asm.ll
M llvm/test/CodeGen/AArch64/seh-finally.ll
M llvm/test/CodeGen/AArch64/stackguard-internal.ll
M llvm/test/CodeGen/ARM/alias_store.ll
M llvm/test/CodeGen/ARM/aliases.ll
M llvm/test/CodeGen/ARM/global-merge-dllexport.ll
M llvm/test/CodeGen/ARM/global-merge-external-2.ll
M llvm/test/CodeGen/ARM/global-merge-external.ll
M llvm/test/CodeGen/AVR/global-aliases.ll
M llvm/test/CodeGen/Mips/hf16call32_body.ll
M llvm/test/CodeGen/Mips/mips16ex.ll
M llvm/test/CodeGen/PowerPC/asm-printer-topological-order.ll
M llvm/test/CodeGen/PowerPC/data-align.ll
M llvm/test/CodeGen/WebAssembly/aliases.ll
M llvm/test/CodeGen/WinCFGuard/cfguard-mingw.ll
M llvm/test/CodeGen/WinCFGuard/cfguard.ll
M llvm/test/CodeGen/X86/2007-09-06-ExtWeakAliasee.ll
M llvm/test/CodeGen/X86/2009-08-12-badswitch.ll
M llvm/test/CodeGen/X86/2010-05-26-DotDebugLoc.ll
M llvm/test/CodeGen/X86/alias-gep.ll
M llvm/test/CodeGen/X86/aliases.ll
M llvm/test/CodeGen/X86/catchret-empty-fallthrough.ll
M llvm/test/CodeGen/X86/coff-alias-type.ll
M llvm/test/CodeGen/X86/coff-comdat.ll
M llvm/test/CodeGen/X86/coff-feat00.ll
M llvm/test/CodeGen/X86/dllexport-x86_64.ll
M llvm/test/CodeGen/X86/dllexport.ll
M llvm/test/CodeGen/X86/ehcontguard.ll
M llvm/test/CodeGen/X86/fastcall-correct-mangling.ll
M llvm/test/CodeGen/X86/ifunc-asm.ll
M llvm/test/CodeGen/X86/lea-opt-memop-check-1.ll
M llvm/test/CodeGen/X86/linux-preemption.ll
M llvm/test/CodeGen/X86/localescape.ll
M llvm/test/CodeGen/X86/pr22019.ll
M llvm/test/CodeGen/X86/seh-catch-all-win32.ll
M llvm/test/CodeGen/X86/seh-catchpad.ll
M llvm/test/CodeGen/X86/seh-finally.ll
M llvm/test/CodeGen/X86/seh-no-invokes.ll
M llvm/test/CodeGen/X86/seh-stack-realign.ll
M llvm/test/CodeGen/X86/tailcall-cgp-dup.ll
M llvm/test/CodeGen/X86/windows-seh-EHa-TryInFinally.ll
M llvm/test/CodeGen/XCore/globals.ll
M llvm/test/CodeGen/XCore/linkage.ll
M llvm/test/DebugInfo/X86/dbg-value-range.ll
M llvm/test/DebugInfo/X86/stmt-list-multiple-compile-units.ll
M llvm/test/MC/AArch64/basic-a64-instructions.s
M llvm/test/MC/AsmParser/assignment.s
M llvm/test/MC/AsmParser/directive_include.s
M llvm/test/MC/AsmParser/directive_set.s
M llvm/test/MC/AsmParser/include.ll
M llvm/test/MC/AsmParser/labels.s
M llvm/test/MC/AsmParser/macro-arg-darwin.s
M llvm/test/MC/AsmParser/motorola_integers.s
M llvm/test/MC/Mips/cpsetup.s
Log Message:
-----------
Introduce MCAsmInfo::UsesSetToEquateSymbol and prefer = to .set
Introduce MCAsmInfo::UsesSetToEquateSymbol to control the preferred
syntax for symbol equating. We now favor the more readable and common
`symbol = expression` syntax over `.set`. This aligns with pre- https://reviews.llvm.org/D44256 behavior.
On Apple platforms, this resolves a clang -S vs -c behavior difference (resolves #104623).
For targets whose = support is unconfirmed, UsesSetToEquateSymbol is set to false.
This also minimizes test updates.
Pull Request: https://github.com/llvm/llvm-project/pull/142289
Commit: 95bbaca6c1dcabb03bd67aabe3aaa4730a11200d
https://github.com/llvm/llvm-project/commit/95bbaca6c1dcabb03bd67aabe3aaa4730a11200d
Author: Rajveer Singh Bharadwaj <rajveer.developer at icloud.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelDAGToDAG.cpp
M llvm/test/CodeGen/AArch64/xar.ll
Log Message:
-----------
[AArch64] Extend usage of `XAR` instruction for fixed-length operations (#139460)
Commit: 2efff47363f18966cd37461323b5db5418183534
https://github.com/llvm/llvm-project/commit/2efff47363f18966cd37461323b5db5418183534
Author: Thurston Dang <thurston at google.com>
Date: 2025-06-11 (Wed, 11 Jun 2025)
Changed paths:
M llvm/lib/Transforms/Instrumentation/MemorySanitizer.cpp
A llvm/test/Instrumentation/MemorySanitizer/partial-poison.ll
Log Message:
-----------
[NFCI][msan] Show that shadow for partially undefined constant vectors is computed as fully initialized (#143823)
This happens because `getShadow(Value *V)` has a special case for fully undefined/poisoned values, but partially undefined values fall-through and are given a clean shadow. This leads to false negatives (no false positives).
Note: MSan correctly handles InsertElementInst, but the shadow of the initial constant vector may still be wrong and be propagated.
Showing that the same approximation happens for other composite types is left as an exercise for the reader.
Commit: bec85f3b187f57713e01191381c88134e122bd35
https://github.com/llvm/llvm-project/commit/bec85f3b187f57713e01191381c88134e122bd35
Author: Martin Storsjö <martin at martin.st>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
A lld/test/COFF/lto-late-arm.ll
Log Message:
-----------
[LLD] [COFF] [test] Readd lto-late-arm.ll (#143494)
This testcase was removed in 4cafd28b7dd92080103d11cccc78d9a2f01e1242,
as a082f665f85b1002ab22af263eeafceca5288657 had made it no longer
trigger the error that it was supposed to do. (Because the latter of
those two commits makes the symbol "__rt_sdiv" be included among the
potential libcalls listed by lto::LTO::getRuntimeLibcallSymbols().)
Readd the test as a positive test, making sure that such libcalls can
get linked.
We do have preexisting test coverage for LTO libcalls overall in
libcall-archive.ll, but readd this test to cover specifically the ARM
division helper functions as well.
Commit: 9d491bc602c2d9730cb42fe25f0753471a3af389
https://github.com/llvm/llvm-project/commit/9d491bc602c2d9730cb42fe25f0753471a3af389
Author: David Green <david.green at arm.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64Combine.td
M llvm/test/CodeGen/AArch64/vec-combine-compare-to-bitmask.ll
Log Message:
-----------
[AArch64][GlobalISel] Enable extract_vec_elt_combines postlegalization.
Commit: 3f0cf742ac4eb3437450f8f263081ea951248851
https://github.com/llvm/llvm-project/commit/3f0cf742ac4eb3437450f8f263081ea951248851
Author: Chuanqi Xu <yedeng.yd at linux.alibaba.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M clang/lib/Serialization/ASTWriterDecl.cpp
A clang/test/Modules/pr119947.cppm
Log Message:
-----------
[C++20] [Modules] [Reduced BMI] Don't write specializations with local args
Close https://github.com/llvm/llvm-project/issues/119947
As discussed in the above thread, we shouldn't write specializations
with local args in reduced BMI. Since users can't find such
specializations any way.
Commit: 6157028fea93ff14af18b173dd01eb431cfb6aef
https://github.com/llvm/llvm-project/commit/6157028fea93ff14af18b173dd01eb431cfb6aef
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M llvm/include/llvm/Analysis/ValueTracking.h
M llvm/test/Analysis/BasicAA/gep-decomposition-limit.ll
M llvm/test/Analysis/LoopAccessAnalysis/underlying-objects-2.ll
M llvm/test/Transforms/Inline/inline-noalias-unidentify-object.ll
Log Message:
-----------
[BasicAA][ValueTracking] Increase depth for underlying object search (#143714)
This depth limits a linear search (rather than the usual potentially
exponential one) and is not particularly important for compile-time in
practice.
The change in #137297 is going to increase the length of GEP chains, so
I'd like to increase this limit a bit to reduce the chance of
regressions (https://github.com/dtcxzyw/llvm-opt-benchmark/pull/2419
showed a 13% increase in SearchLimitReached). There is no particular
significance to the new value of 10.
Compile-time is neutral.
Commit: 77062244ed56be61aecda28d6fede3432545f741
https://github.com/llvm/llvm-project/commit/77062244ed56be61aecda28d6fede3432545f741
Author: Mikael Holmen <mikael.holmen at ericsson.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M clang/lib/Sema/SemaOverload.cpp
M llvm/lib/Target/AMDGPU/GCNSchedStrategy.cpp
Log Message:
-----------
Fix two instances of -Wparentheses warnings [NFC]
Add parentheses around the assert conditions.
Without this gcc warned like
../lib/Target/AMDGPU/GCNSchedStrategy.cpp:2250: warning: suggest parentheses around '&&' within '||' [-Wparentheses]
2250 | NewMI != RegionBounds.second && "cannot remove at region end");
and
../../clang/lib/Sema/SemaOverload.cpp:11326:39: warning: suggest parentheses around '&&' within '||' [-Wparentheses]
11326 | DeferredCandidatesCount == 0 &&
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
11327 | "Unexpected deferred template candidates");
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Commit: 2d35b568ef949717e35df664d4d9352eddbffbfd
https://github.com/llvm/llvm-project/commit/2d35b568ef949717e35df664d4d9352eddbffbfd
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M llvm/test/CodeGen/X86/bsf.ll
Log Message:
-----------
[X86] bsf.ll - add icmp_ne coverage to bsf passthrough tests
Commit: 6e5a1423b752c66273bfcff35aaa8083075788a8
https://github.com/llvm/llvm-project/commit/6e5a1423b752c66273bfcff35aaa8083075788a8
Author: Ian Wood <ianwood2024 at u.northwestern.edu>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M mlir/lib/Dialect/Utils/ReshapeOpsUtils.cpp
M mlir/test/Dialect/Linalg/simplify-pack-unpack.mlir
M mlir/test/Dialect/Tensor/canonicalize.mlir
M mlir/unittests/Dialect/Utils/CMakeLists.txt
A mlir/unittests/Dialect/Utils/ReshapeOpsUtilsTest.cpp
Log Message:
-----------
[mlir] Reapply "Loosen restrictions on folding dynamic reshapes" (#142827)
The original PR https://github.com/llvm/llvm-project/pull/137963 had a
nvidia bot failure. This appears to be a flaky test because rerunning
the build was successful.
This change needs commit 6f2ba47 to fix incorrect usage of
`getReassociationIndicesForCollapse`.
Reverts llvm/llvm-project#142639
Co-authored-by: Artem Gindinson <gindinson at roofline.ai>
Commit: edaac11df3f82268e8ca34bf34b3e9d115b7d475
https://github.com/llvm/llvm-project/commit/edaac11df3f82268e8ca34bf34b3e9d115b7d475
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/combine-mask-with-shuffle.ll
M llvm/test/CodeGen/X86/pr132844.ll
M llvm/test/CodeGen/X86/vector-interleaved-load-i8-stride-7.ll
M llvm/test/CodeGen/X86/vector-interleaved-store-i16-stride-8.ll
M llvm/test/CodeGen/X86/vector-interleaved-store-i8-stride-5.ll
M llvm/test/CodeGen/X86/vector-interleaved-store-i8-stride-6.ll
M llvm/test/CodeGen/X86/vector-interleaved-store-i8-stride-7.ll
M llvm/test/CodeGen/X86/vector-interleaved-store-i8-stride-8.ll
M llvm/test/CodeGen/X86/vector-shuffle-combining-avx512f.ll
Log Message:
-----------
[X86] combineSelect - attempt to combine with shuffles (#143753)
Before legalization we will convert to a vector_shuffle node - but afterward we can try to combine the select into an existing target shuffle chain
Commit: 4079ed3c9e72d64746c5d3f05fc585d844c1e8a7
https://github.com/llvm/llvm-project/commit/4079ed3c9e72d64746c5d3f05fc585d844c1e8a7
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M llvm/lib/IR/RuntimeLibcalls.cpp
M llvm/lib/Target/ARM/ARMISelLowering.cpp
Log Message:
-----------
ARM: Move setting of more runtime libcalls to RuntimeLibcallInfo (#143826)
These are the easy cases that do not really depend on the subtarget,
other than for the deceptive predicates on the subtarget class. Most
of the rest of the cases here also do not, but this is obscured by
going through helper predicates added onto the subtarget which hide
dependence on TargetOptions.
Commit: 5434b85d2c7a83d9cebae06dad2f9d630e9a3927
https://github.com/llvm/llvm-project/commit/5434b85d2c7a83d9cebae06dad2f9d630e9a3927
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M llvm/lib/IR/RuntimeLibcalls.cpp
Log Message:
-----------
ARM: Remove fake entries for divrem libcalls (#143832)
This was defining aliases of the i32 divrem functions for the i8
and i16 cases. This is unnecessary and was unused. The divrem
candidate cases wouldn't have formed with illegal types in the
first place, so codegen wouldn't even query these.
Commit: ce621041c2f162c50d630810491c2feee8eb6c64
https://github.com/llvm/llvm-project/commit/ce621041c2f162c50d630810491c2feee8eb6c64
Author: Pengcheng Wang <wangpengcheng.pp at bytedance.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M llvm/include/llvm/TargetParser/RISCVTargetParser.h
M llvm/lib/TargetParser/Host.cpp
M llvm/lib/TargetParser/RISCVTargetParser.cpp
Log Message:
-----------
[RISCV] Get host CPU name via hwprobe (#142745)
We can get the `mvendorid/marchid/mimpid` via hwprobe and then we
can compare these IDs with those defined in processors to find the
CPU name.
With this change, `-mcpu/-mtune=native` can set the proper name.
Commit: 4551e5035565606eb04253a35f31d51685657436
https://github.com/llvm/llvm-project/commit/4551e5035565606eb04253a35f31d51685657436
Author: kadir çetinkaya <kadircet at google.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M clang/include/clang/Basic/Diagnostic.h
M clang/lib/Basic/Diagnostic.cpp
M clang/lib/Basic/SourceManager.cpp
M clang/unittests/Frontend/CompilerInstanceTest.cpp
Log Message:
-----------
[clang] Reset FileID based diag state mappings (#143695)
When sharing same compiler instance for multiple compilations, we reset
source manager's file id tables in between runs. Diagnostics engine
keeps a cache based on these file ids, that became dangling references
across compilations.
This patch makes sure we reset those whenever sourcemanager is trashing
its FileIDs.
Commit: db8d34db26e9ea92c08d6e813eca9cce40c48478
https://github.com/llvm/llvm-project/commit/db8d34db26e9ea92c08d6e813eca9cce40c48478
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/VPlan.h
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
Log Message:
-----------
[VPlan] Set branch weight metadata on middle term in VPlan (NFC) (#143035)
Manage branch weights for the BranchOnCond in the middle block in VPlan.
This requires updating VPInstruction to inherit from VPIRMetadata, which
in general makes sense as there are a number of opcodes that could take
metadata.
There are other branches (part of the skeleton) that also need branch
weights adding.
PR: https://github.com/llvm/llvm-project/pull/143035
Commit: 2a27c059eccd96b6e46464dbdf69fd2f6237a56c
https://github.com/llvm/llvm-project/commit/2a27c059eccd96b6e46464dbdf69fd2f6237a56c
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/bsr.ll
M llvm/test/CodeGen/X86/pr40090.ll
Log Message:
-----------
[X86] Use BSR passthrough behaviour to fold (CMOV (BSR ?, X), Y, (X == 0)) -> (BSR Y, X) (#143662)
Make use of targets that support BSR "pass through behaviour" on a zero input to remove a CMOV thats performing the same function
BSF will be a trickier patch as we need to make sure it works with the "REP BSF" hack in X86MCInstLower
Commit: 1d1f9afe911c360b9505b5fd2c712cb112c8aa5f
https://github.com/llvm/llvm-project/commit/1d1f9afe911c360b9505b5fd2c712cb112c8aa5f
Author: Chuanqi Xu <yedeng.yd at linux.alibaba.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M clang/lib/Sema/SemaLookup.cpp
M clang/lib/Sema/SemaModule.cpp
A clang/test/Modules/pr143788.cppm
Log Message:
-----------
[C++20] [Modules] Treat directly imported internal partition unit as reachable
Close https://github.com/llvm/llvm-project/issues/143788
See the discussion for details.
Commit: 8e4fdff6f02161d878a63900abb35aaa32ff85e9
https://github.com/llvm/llvm-project/commit/8e4fdff6f02161d878a63900abb35aaa32ff85e9
Author: Omair Javaid <omair.javaid at linaro.org>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M llvm/test/CodeGen/X86/tailcc-ssp.ll
Log Message:
-----------
[X86] Update tailcc-ssp.ll assertions using update_llc_test_checks.py (#143500)
The assertions in llvm/test/CodeGen/X86/tailcc-ssp.ll were outdated. The
initial comment indicated they were generated with
`utils/update_llc_test_checks.py UTC_ARGS: --version 5`, but this was
not accurate based on the file's content.
Running `utils/update_llc_test_checks.py` regenerated the assertions,
aligning them with the current `llc` output.
This commit ensures that the test's claimed behavior accurately reflects
the actual `llc` output, even though the tests were already passing.
This was identified by @efriedma-quic during review of #136290.
Submitting a separate PR to make sure these changes stay isolated.
Commit: 3e5d50f9c61bb266ab17919ab5209c7b08520aff
https://github.com/llvm/llvm-project/commit/3e5d50f9c61bb266ab17919ab5209c7b08520aff
Author: Durgadoss R <durgadossr at nvidia.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M llvm/docs/NVPTXUsage.rst
M llvm/include/llvm/IR/IntrinsicsNVVM.td
M llvm/include/llvm/IR/NVVMIntrinsicUtils.h
M llvm/lib/IR/AutoUpgrade.cpp
M llvm/lib/Target/NVPTX/MCTargetDesc/NVPTXInstPrinter.cpp
M llvm/lib/Target/NVPTX/MCTargetDesc/NVPTXInstPrinter.h
M llvm/lib/Target/NVPTX/NVPTXISelDAGToDAG.cpp
M llvm/lib/Target/NVPTX/NVPTXIntrinsics.td
M llvm/lib/Target/NVPTX/NVPTXSubtarget.h
M llvm/test/Assembler/auto_upgrade_nvvm_intrinsics.ll
A llvm/test/CodeGen/NVPTX/cp-async-bulk-tensor-g2s-1cta.ll
A llvm/test/CodeGen/NVPTX/cp-async-bulk-tensor-g2s-2cta.ll
A llvm/test/CodeGen/NVPTX/cp-async-bulk-tensor-g2s-invalid.ll
Log Message:
-----------
[NVPTX] Add cta_group support to TMA G2S intrinsics (#143178)
This patch extends the TMA G2S intrinsics with the
support for cta_group::1/2 available from Blackwell onwards.
The existing intrinsics are auto-upgraded with a default
value of '0' for the `cta_group` flag operand.
* lit tests are added for all combinations of the newer variants.
* Negative tests are added to validate the error-handling
when the value of the cta_group flag falls out-of-range.
* The generated PTX is verified with a 12.8 ptxas executable.
Signed-off-by: Durgadoss R <durgadossr at nvidia.com>
Commit: a8c6fb4cb8e686f733e022afc549bc085d1558f4
https://github.com/llvm/llvm-project/commit/a8c6fb4cb8e686f733e022afc549bc085d1558f4
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M llvm/test/Analysis/ScopedNoAliasAA/alias-scope-merging.ll
M llvm/test/Transforms/MemCpyOpt/callslot_badaa.ll
Log Message:
-----------
[MemCpyOpt] Fix lifetime marker sizes in tests (NFC)
As pointed out in https://github.com/llvm/llvm-project/pull/143782,
these tests were specifying the size in bits instead of bytes.
In order to preserve the intent of the tests, add a use of %src,
which prevents stack-move optimization. These are supposed to test
the handling of scoped alias metadata in call slot optimization.
Commit: 5987f1ee5cc59a05961156c04010ab0f3c857628
https://github.com/llvm/llvm-project/commit/5987f1ee5cc59a05961156c04010ab0f3c857628
Author: Antonio Frighetto <me at antoniofrighetto.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M llvm/test/Transforms/InstCombine/narrow-switch.ll
Log Message:
-----------
[InstCombine] Regenerate `narrow-switch.ll` test (NFC)
`narrow-switch.ll` test has been regenerated via latest UTC using
`--prefix-filecheck-ir-name _`, so as to avoid conflicts with
scripted variable names.
Commit: 7ef77eb9984d1fb537a409cf4be89560fbb681fe
https://github.com/llvm/llvm-project/commit/7ef77eb9984d1fb537a409cf4be89560fbb681fe
Author: Luke Lau <luke at igalia.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M llvm/include/llvm/Analysis/VectorUtils.h
M llvm/lib/Analysis/VectorUtils.cpp
M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
M llvm/test/Transforms/LoopVectorize/AArch64/sve-interleaved-accesses.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-interleaved-masked-accesses.ll
M llvm/test/Transforms/LoopVectorize/RISCV/interleaved-accesses.ll
Log Message:
-----------
[LV] Support scalable interleave groups for factors 3,5,6 and 7 (#141865)
Currently the loop vectorizer can only vectorize interleave groups for
power-of-2 factors at scalable VFs by recursively interleaving
[de]interleave2 intrinsics.
However after https://github.com/llvm/llvm-project/pull/124825 and
#139893, we now have [de]interleave intrinsics for all factors up to 8,
which is enough to support all types of segmented loads and stores on
RISC-V.
Now that the interleaved access pass has been taught to lower these in
#139373 and #141512, this patch teaches the loop vectorizer to emit
these intrinsics for factors up to 8, which enables scalable
vectorization for non-power-of-2 factors.
As far as I'm aware, no in-tree target will vectorize a scalable
interelave group above factor 8 because the maximum interleave factor is
capped at 4 on AArch64 and 8 on RISC-V, and the
`-max-interleave-group-factor` CLI option defaults to 8, so the
recursive [de]interleaving code has been removed for now.
Factors of 3 with scalable VFs are also turned off in AArch64 since
there's no lowering for [de]interleave3 just yet either.
Commit: 702b9033c115500a934a6c49c325c112b30fe47f
https://github.com/llvm/llvm-project/commit/702b9033c115500a934a6c49c325c112b30fe47f
Author: Paul Walker <paul.walker at arm.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/test/CodeGen/AArch64/sve-vector-deinterleave.ll
M llvm/test/CodeGen/AArch64/sve-vector-interleave.ll
Log Message:
-----------
[LLVM][CodeGen][AArch64] Lower vector-(de)interleave to multi-register uzp/zip instructions. (#143128)
Commit: d517f15e09e49e172387cb6deb76e4ee2d45d0e4
https://github.com/llvm/llvm-project/commit/d517f15e09e49e172387cb6deb76e4ee2d45d0e4
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M llvm/test/Transforms/LICM/call-hoisting.ll
Log Message:
-----------
[LICM] Regenerate test checks (NFC)
Commit: 971c49fbf361c22ccf20913f61a58c28b26c4e27
https://github.com/llvm/llvm-project/commit/971c49fbf361c22ccf20913f61a58c28b26c4e27
Author: SahilPatidar <patidarsahil2001 at gmail.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineAddSub.cpp
M llvm/test/Transforms/InstCombine/fneg.ll
M llvm/test/Transforms/InstCombine/fsub.ll
Log Message:
-----------
[InstCombine] Ensure Safe Handling of Flags in foldFNegIntoConstant (#94148)
Fix #93769
alive2: https://alive2.llvm.org/ce/z/MHShQY
Commit: 20d5d09e99188dfc7df6e4e4f1c37512e0ab318e
https://github.com/llvm/llvm-project/commit/20d5d09e99188dfc7df6e4e4f1c37512e0ab318e
Author: Charles Zablit <c_zablit at apple.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M compiler-rt/test/lit.common.configured.in
Log Message:
-----------
[compiler-rt] remove unused default in compiler-rt lit tests (#143738)
In https://github.com/llvm/llvm-project/pull/143183 was mistakenly added
a default value to `python_root_dir` in lit tests of compiler-rt.
This is unused by the lit tests of compiler-rt, as it was meant to be
used by `lldb`.
This patch removes this change.
Commit: fe28ea37b640ea4842583df3b89e08877220fb8e
https://github.com/llvm/llvm-project/commit/fe28ea37b640ea4842583df3b89e08877220fb8e
Author: hev <wangrui at loongson.cn>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
M llvm/lib/Target/LoongArch/LoongArchISelLowering.h
M llvm/test/CodeGen/LoongArch/lasx/xvmskcond.ll
M llvm/test/CodeGen/LoongArch/lsx/vmskcond.ll
Log Message:
-----------
[LoongArch] Add demanded bits support for [X]VMSKLTZ (#143528)
This patch adds a DAG combine hook for the [X]VMSKLTZ nodes to simplify
their input when possible. It also implements target-specific logic in
SimplifyDemandedBitsForTargetNode to optimize away unnecessary
computations when only a subset of the sign bits in the vector results
is actually used.
Commit: 97ac6483aaead89897d9bda8a12f1f4c11fad621
https://github.com/llvm/llvm-project/commit/97ac6483aaead89897d9bda8a12f1f4c11fad621
Author: Jeremy Morse <jeremy.morse at sony.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M llvm/include/llvm/IR/BasicBlock.h
M llvm/include/llvm/IR/Function.h
M llvm/include/llvm/IR/Module.h
M llvm/lib/AsmParser/LLParser.cpp
M llvm/lib/Bitcode/Reader/BitcodeReader.cpp
M llvm/lib/CodeGen/CodeGenPrepare.cpp
M llvm/lib/IR/BasicBlock.cpp
M llvm/lib/IR/Core.cpp
M llvm/lib/IR/Function.cpp
M llvm/lib/IR/Instruction.cpp
M llvm/lib/IR/Module.cpp
M llvm/lib/IR/Verifier.cpp
M llvm/lib/LTO/LTO.cpp
M llvm/lib/Linker/IRMover.cpp
M llvm/lib/Target/AMDGPU/AMDGPULowerBufferFatPointers.cpp
M llvm/lib/Target/AMDGPU/AMDGPUPreloadKernelArguments.cpp
M llvm/lib/Target/AMDGPU/AMDGPURewriteOutArguments.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyAddMissingPrototypes.cpp
M llvm/lib/Transforms/IPO/ArgumentPromotion.cpp
M llvm/lib/Transforms/IPO/Attributor.cpp
M llvm/lib/Transforms/IPO/DeadArgumentElimination.cpp
M llvm/lib/Transforms/IPO/ExpandVariadics.cpp
M llvm/lib/Transforms/IPO/MergeFunctions.cpp
M llvm/lib/Transforms/Utils/BasicBlockUtils.cpp
M llvm/lib/Transforms/Utils/CloneFunction.cpp
M llvm/lib/Transforms/Utils/CloneModule.cpp
M llvm/lib/Transforms/Utils/CodeExtractor.cpp
M llvm/lib/Transforms/Utils/LoopRotationUtils.cpp
M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
M llvm/tools/llvm-as/llvm-as.cpp
M llvm/tools/llvm-dis/llvm-dis.cpp
M llvm/tools/llvm-link/llvm-link.cpp
M llvm/unittests/IR/IRBuilderTest.cpp
M mlir/lib/Target/LLVMIR/ConvertFromLLVMIR.cpp
M mlir/lib/Target/LLVMIR/ModuleTranslation.cpp
Log Message:
-----------
[DebugInfo][RemoveDIs] Delete debug-info-format flag (#143746)
This flag was used to let us incrementally introduce debug records
into LLVM, however everything is now using records. It serves no
purpose now, so delete it.
Commit: 013034cd0f5ae19ef02fc35a83362874e727f13c
https://github.com/llvm/llvm-project/commit/013034cd0f5ae19ef02fc35a83362874e727f13c
Author: Jeremy Morse <jeremy.morse at sony.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M llvm/lib/Transforms/Utils/CloneFunction.cpp
Log Message:
-----------
Follow-up to 97ac6483aae, squelch an unused lambda capture warning
NewBB here was being captured for some code that was deleted in
97ac6483aae, and that leads to some warnings on some compilers.
Commit: d698ede748e66f5519cb8481abc2df89a994a059
https://github.com/llvm/llvm-project/commit/d698ede748e66f5519cb8481abc2df89a994a059
Author: Adam Siemieniuk <adam.siemieniuk at intel.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M mlir/include/mlir/Dialect/AMX/Transforms.h
M mlir/include/mlir/InitAllExtensions.h
M mlir/lib/Dialect/AMX/Transforms/LegalizeForLLVMExport.cpp
M mlir/test/Target/LLVMIR/amx.mlir
Log Message:
-----------
[mlir][amx] Restore conversion interface for AMX (#143871)
Restores mistakenly removed AMX interface which ensures that the custom
tile type is converted to its LLVM equivalent within other operations
such as control flow.
Fix after #140559
Commit: 0604dc199c019b23746f4a54885ba0c75569cdae
https://github.com/llvm/llvm-project/commit/0604dc199c019b23746f4a54885ba0c75569cdae
Author: Hans Wennborg <hans at chromium.org>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/VPlan.h
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
Log Message:
-----------
Revert "[VPlan] Set branch weight metadata on middle term in VPlan (NFC) (#143035)"
This caused assertion failures:
llvm/lib/Transforms/Vectorize/VPlan.h:4021:
llvm::VPBasicBlock* llvm::VPlan::getMiddleBlock():
Assertion `LoopRegion && "cannot call the function after vector loop region has been removed"' failed.
See comment on the PR.
> Manage branch weights for the BranchOnCond in the middle block in VPlan.
> This requires updating VPInstruction to inherit from VPIRMetadata, which
> in general makes sense as there are a number of opcodes that could take
> metadata.
>
> There are other branches (part of the skeleton) that also need branch
> weights adding.
>
> PR: https://github.com/llvm/llvm-project/pull/143035
This reverts commit db8d34db26e9ea92c08d6e813eca9cce40c48478.
Commit: 9f542f14701cdf70023790b206273ae8174e913a
https://github.com/llvm/llvm-project/commit/9f542f14701cdf70023790b206273ae8174e913a
Author: Ryan Buchner <92571492+bababuck at users.noreply.github.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
A llvm/test/CodeGen/RISCV/zicond-opts.ll
Log Message:
-----------
[RISCV] Add new tests for RISCV zicond extension (#143580)
I have a few patches to improve compilation for these tests which I will
be posting as separate MRs.
Commit: 2ecbfc0beb42abbbd2c3d28bfd576b38c44a5b46
https://github.com/llvm/llvm-project/commit/2ecbfc0beb42abbbd2c3d28bfd576b38c44a5b46
Author: Ami-zhang <zhanglimin at loongson.cn>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M clang/lib/Driver/ToolChains/Arch/LoongArch.cpp
M clang/test/Preprocessor/init-loongarch.c
Log Message:
-----------
[LoongArch] Fix '-mno-lsx' option not disabling LASX feature (#143821)
When '-march' with LASX feature and '-mno-lsx' options are used
together, '-mno-lsx' fails to disable LASX, leaving
'HasFeatureLASX=true' and causing incorrect '__loongarch_sx/asx=1' macro
definition.
Fixes https://github.com/loongson-community/discussions/issues/95
Commit: bc7fafbeea08bf8cd9a18fa10d3d3bc63f0c45a3
https://github.com/llvm/llvm-project/commit/bc7fafbeea08bf8cd9a18fa10d3d3bc63f0c45a3
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M llvm/include/llvm/Analysis/AliasAnalysis.h
M llvm/include/llvm/Analysis/CaptureTracking.h
M llvm/lib/Analysis/BasicAliasAnalysis.cpp
M llvm/lib/Analysis/CaptureTracking.cpp
M llvm/lib/Transforms/Scalar/DeadStoreElimination.cpp
M llvm/test/Analysis/BasicAA/captures.ll
M llvm/test/Transforms/GVN/captures.ll
Log Message:
-----------
[AA] Take read-only provenance captures into account (#143097)
Update the AA CaptureAnalysis providers to return CaptureComponents, so
we can distinguish between full provenance and read-only provenance
captures.
Use this to restrict "other" memory effects on call from ModRef to Ref.
Ideally we would also apply the same reasoning for escape sources, but
the current API cannot actually convey the necessary information (we can
only say NoAlias or MayAlias, not MayAlias but only via Ref).
Commit: 3550662c040024597485d1bfac0d733340514ae1
https://github.com/llvm/llvm-project/commit/3550662c040024597485d1bfac0d733340514ae1
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M llvm/lib/Target/ARM/ARMISelLowering.cpp
Log Message:
-----------
ARM: Avoid using getTargetLowering in TargetLowering (#143833)
This is this.
Commit: 633375a29f52504b0b23a30bb767de521dd3e2a8
https://github.com/llvm/llvm-project/commit/633375a29f52504b0b23a30bb767de521dd3e2a8
Author: David Spickett <david.spickett at linaro.org>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M llvm/lib/DWARFLinker/Parallel/OutputSections.h
Log Message:
-----------
[llvm][DWARFLinker] Fix gcc 13 -Wuninitialized warnings (#143867)
A bit awkward that we have to switch from public to protected and back
again, but it seemed neater than putting OS all the way down at the
bottom. Since it is a public member that you're more likely to be
looking for.
llvm-project/llvm/lib/DWARFLinker/Parallel/OutputSections.h:157:67:
warning: member
‘llvm::dwarf_linker::parallel::SectionDescriptor::Contents’ is used
uninitialized [-Wuninitialized]
Which refers to the use in the constructor:
```
SectionDescriptor(DebugSectionKind SectionKind, LinkingGlobalData &GlobalData,
dwarf::FormParams Format, llvm::endianness Endianess)
: SectionDescriptorBase(SectionKind, Format, Endianess), OS(Contents),
```
Where Contents is passed to `OS`, before Contents has been constructed.
Commit: aac603c47800bf2e167b53ddfd3bb10be292bc53
https://github.com/llvm/llvm-project/commit/aac603c47800bf2e167b53ddfd3bb10be292bc53
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M llvm/lib/Target/ARM/ARMISelLowering.cpp
Log Message:
-----------
ARM: Avoid repeating hardcoded windows division libcall names (#143834)
This is properly set in the runtime libcall info, so query
the name.
Commit: b9793118423f928b8dcda933aa581f3904ae2b68
https://github.com/llvm/llvm-project/commit/b9793118423f928b8dcda933aa581f3904ae2b68
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M libcxx/docs/ReleaseNotes/21.rst
M libcxx/include/__functional/function.h
Log Message:
-----------
[libc++] Remove allocator support from std::function (#140395)
The allocator support was removed in P0302R1, since it was impossible to
implement. We're currently providing the API for this, but ignore the
allocator in all cases but one (which is almost certainly an oversight).
That case is the `function(allocator_arg_t, const Alloc&, Func)`
constuctor. IMO we should remove the API entirely at a later date, but
this only removes most of the code for now, leaving only the public
functions. This not only simplifies the code quite a bit, but also
results in the constructor being instantiated ~8x faster.
Fixes #133901
Commit: 5aed4800f33a72c778f3b49f6389fff099ff4ff6
https://github.com/llvm/llvm-project/commit/5aed4800f33a72c778f3b49f6389fff099ff4ff6
Author: Tim Gymnich <tim at gymni.ch>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M llvm/lib/CodeGen/GlobalISel/GISelValueTracking.cpp
M llvm/unittests/CodeGen/GlobalISel/KnownFPClassTest.cpp
Log Message:
-----------
[GISel] KnownFPClass ValueTracking fix handling of vectors (#143372)
Commit: 41c8df147b83026db8612ad2ca07fc0f007e3448
https://github.com/llvm/llvm-project/commit/41c8df147b83026db8612ad2ca07fc0f007e3448
Author: woruyu <99597449+woruyu at users.noreply.github.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
Log Message:
-----------
[DAG] Convert foldMaskedMerge to SDPatternMatch to match (m & x) | (~m & y) (#143855)
This PR resolves https://github.com/llvm/llvm-project/issues/143363
Remove foldMaskedMergeImpl entirely to use SDPatternMatch
Commit: 36ac72f4e3e4752f85c16363d630f4cfbd682e48
https://github.com/llvm/llvm-project/commit/36ac72f4e3e4752f85c16363d630f4cfbd682e48
Author: David Spickett <david.spickett at linaro.org>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M llvm/lib/Transforms/IPO/MemProfContextDisambiguation.cpp
Log Message:
-----------
[llvm][MemProf] Fix unused variable warning in release build
g++-13 warned that:
llvm/lib/Transforms/IPO/MemProfContextDisambiguation.cpp:1645:8: warning: variable ‘PrevIterCreatedNode’ set but not used [-Wunused-but-set-variable]
1645 | bool PrevIterCreatedNode = false;
| ^~~~~~~~~~~~~~~~~~~
When asserts were not enabled.
Commit: a08a831515919bcc384b453799f33bc97860c73b
https://github.com/llvm/llvm-project/commit/a08a831515919bcc384b453799f33bc97860c73b
Author: Stephen Tozer <stephen.tozer at sony.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M llvm/include/llvm/CodeGen/GlobalISel/LegalizationArtifactCombiner.h
M llvm/include/llvm/IR/DebugInfoMetadata.h
M llvm/include/llvm/IR/DebugLoc.h
M llvm/include/llvm/IR/IRBuilder.h
M llvm/include/llvm/IR/Instruction.h
M llvm/lib/CodeGen/BranchFolding.cpp
M llvm/lib/CodeGen/GlobalISel/CSEMIRBuilder.cpp
M llvm/lib/CodeGen/GlobalISel/LoadStoreOpt.cpp
M llvm/lib/CodeGen/MachineBasicBlock.cpp
M llvm/lib/CodeGen/MachineSink.cpp
M llvm/lib/IR/DebugInfo.cpp
M llvm/lib/IR/DebugLoc.cpp
M llvm/lib/IR/IRBuilder.cpp
M llvm/lib/IR/Instruction.cpp
M llvm/lib/Target/BPF/BPFPreserveStaticOffset.cpp
M llvm/lib/Transforms/InstCombine/InstCombineLoadStoreAlloca.cpp
M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
M llvm/lib/Transforms/Scalar/ConstantHoisting.cpp
M llvm/lib/Transforms/Scalar/LICM.cpp
M llvm/lib/Transforms/Scalar/SimplifyCFGPass.cpp
M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
M llvm/lib/Transforms/Vectorize/VPlan.cpp
Log Message:
-----------
[DLCov][NFC] Propagate annotated DebugLocs through transformations (#138047)
Part of the coverage-tracking feature, following #107279.
In order for DebugLoc coverage testing to work, we firstly have to set
annotations for intentionally-empty DebugLocs, and secondly we have to
ensure that we do not drop these annotations as we propagate DebugLocs
throughout compilation. As the annotations exist as part of the DebugLoc
class, and not the underlying DILocation, they will not survive a
DebugLoc->DILocation->DebugLoc roundtrip. Therefore this patch modifies
a number of places in the compiler to propagate DebugLocs directly
rather than via the underlying DILocation. This has no effect on the
output of normal builds; it only ensures that during coverage builds, we
do not drop incorrectly annotations and therefore create false
positives.
The bulk of these changes are in replacing
DILocation::getMergedLocation(s) with a DebugLoc equivalent, and in
changing the IRBuilder to store a DebugLoc directly rather than storing
DILocations in its general Metadata array. We also use a new function,
`DebugLoc::orElse`, which selects the "best" DebugLoc out of a pair
(valid location > annotated > empty), preferring the current DebugLoc on
a tie - this encapsulates the existing behaviour at a few sites where we
_may_ assign a DebugLoc to an existing instruction, while extending the
logic to handle annotation DebugLocs at the same time.
Commit: ce747a16328b2fbc365e1cb1cb01cb400c2c1b4c
https://github.com/llvm/llvm-project/commit/ce747a16328b2fbc365e1cb1cb01cb400c2c1b4c
Author: Mel Chen <mel.chen at sifive.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
A llvm/test/Transforms/LoopVectorize/single-scalar-cast-minbw.ll
Log Message:
-----------
[LV] Pre-commit test case for support VPWidenCastRecipe in isSingleScalar. nfc (#143498)
Commit: d49bc5e621c8931679b232fa28abfc89a171105e
https://github.com/llvm/llvm-project/commit/d49bc5e621c8931679b232fa28abfc89a171105e
Author: David Spickett <david.spickett at linaro.org>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M llvm/lib/ProfileData/MemProfRadixTree.cpp
Log Message:
-----------
[llvm][MemProf] Correct position of LLVM_ABI macro in computeFrameHistogram
The previous placement resulted in this warning when using g++-13:
/home/david.spickett/llvm-project/llvm/include/llvm/Support/Compiler.h:120:43: warning: attribute ignored [-Wattributes]
120 | #define LLVM_ATTRIBUTE_VISIBILITY_DEFAULT [[gnu::visibility("default")]]
| ^
/home/david.spickett/llvm-project/llvm/include/llvm/Support/Compiler.h:213:18: note: in expansion of macro ‘LLVM_ATTRIBUTE_VISIBILITY_DEFAULT’
213 | #define LLVM_ABI LLVM_ATTRIBUTE_VISIBILITY_DEFAULT
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/david.spickett/llvm-project/llvm/lib/ProfileData/MemProfRadixTree.cpp:245:5: note: in expansion of macro ‘LLVM_ABI’
245 | LLVM_ABI computeFrameHistogram<FrameId>(
| ^~~~~~~~
/home/david.spickett/llvm-project/llvm/include/llvm/Support/Compiler.h:120:43: note: an attribute that appertains to a type-specifier is ignored
120 | #define LLVM_ATTRIBUTE_VISIBILITY_DEFAULT [[gnu::visibility("default")]]
| ^
According to the interface guide, that macro should go before the return
type to be effective.
https://llvm.org/docs/InterfaceExportAnnotations.html#specialized-template-functions
Commit: 843f256623a68f51a80ae503c08b98433eeda04d
https://github.com/llvm/llvm-project/commit/843f256623a68f51a80ae503c08b98433eeda04d
Author: Nico Weber <thakis at chromium.org>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M llvm/utils/gn/secondary/compiler-rt/test/BUILD.gn
Log Message:
-----------
[gn] port 20d5d09e99188
Commit: 622df892b844749440124167e8eee9e652fba613
https://github.com/llvm/llvm-project/commit/622df892b844749440124167e8eee9e652fba613
Author: Pavel Labath <pavel at labath.sk>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M lldb/cmake/modules/AddLLDB.cmake
M lldb/source/Plugins/Language/ObjC/CMakeLists.txt
Log Message:
-----------
[lldb/cmake] Remove EXTRA_CXXFLAGS arg (#143731)
We have one library using this and three libraries directly calling
`target_compile_options`. Might as well standardize on the latter.
Commit: b8e3e0749fb62a9845f8790f858e11f2558f94a2
https://github.com/llvm/llvm-project/commit/b8e3e0749fb62a9845f8790f858e11f2558f94a2
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineAddSub.cpp
M llvm/lib/Transforms/InstCombine/InstCombineInternal.h
Log Message:
-----------
[InstCombine] Export logic for common base pointer (NFC)
Make this available to other parts of InstCombine, to be used for
pointer comparison optimization.
Commit: 3100b50f78c06dcd5207140e0d6e5ba6954d8828
https://github.com/llvm/llvm-project/commit/3100b50f78c06dcd5207140e0d6e5ba6954d8828
Author: Janek van Oirschot <janek.vanoirschot at amd.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUMCResourceInfo.cpp
M llvm/lib/Target/AMDGPU/AMDGPUMCResourceInfo.h
M llvm/test/CodeGen/AMDGPU/function-resource-usage.ll
M llvm/test/CodeGen/AMDGPU/recursive-resource-usage-mcexpr.ll
Log Message:
-----------
[AMDGPU] Flatten recursive register resource info propagation (#142766)
In #112251 I had mentioned I'd follow up with flattening of recursion
for register resource info propagation
Behaviour prior to this patch when a recursive call is used is to take
the module scope worst case function register use (even prior to
AMDGPUMCResourceInfo). With this patch it will, when a cycle is
detected, attempt to do a simple cycle avoidant dfs to find the worst
case constant within the cycle and the cycle's propagates. In other
words, it will attempt to look for the cycle scope worst case rather
than module scope worst case.
Commit: 79f4a43839386e785451c8f0a362b2d1e5850b74
https://github.com/llvm/llvm-project/commit/79f4a43839386e785451c8f0a362b2d1e5850b74
Author: Shamshura Egor <164661612+egorshamshura at users.noreply.github.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M llvm/lib/Target/X86/MCTargetDesc/X86InstComments.cpp
M llvm/test/CodeGen/X86/any_extend_vector_inreg_of_broadcast.ll
M llvm/test/CodeGen/X86/any_extend_vector_inreg_of_broadcast_from_memory.ll
M llvm/test/CodeGen/X86/avgfloors.ll
M llvm/test/CodeGen/X86/avx512-cvt.ll
M llvm/test/CodeGen/X86/avx512-logic.ll
M llvm/test/CodeGen/X86/avx512fp16-arith.ll
M llvm/test/CodeGen/X86/avx512vl-logic.ll
M llvm/test/CodeGen/X86/combine-bitselect.ll
M llvm/test/CodeGen/X86/combine-or-shuffle.ll
M llvm/test/CodeGen/X86/fp-round.ll
M llvm/test/CodeGen/X86/gfni-funnel-shifts.ll
M llvm/test/CodeGen/X86/gfni-shifts.ll
M llvm/test/CodeGen/X86/midpoint-int-vec-128.ll
M llvm/test/CodeGen/X86/midpoint-int-vec-256.ll
M llvm/test/CodeGen/X86/min-legal-vector-width.ll
M llvm/test/CodeGen/X86/pmul.ll
M llvm/test/CodeGen/X86/psubus.ll
M llvm/test/CodeGen/X86/sadd_sat_vec.ll
M llvm/test/CodeGen/X86/srem-seteq-vec-nonsplat.ll
M llvm/test/CodeGen/X86/ssub_sat_vec.ll
M llvm/test/CodeGen/X86/usub_sat_vec.ll
M llvm/test/CodeGen/X86/vector-fshl-128.ll
M llvm/test/CodeGen/X86/vector-fshl-256.ll
M llvm/test/CodeGen/X86/vector-fshl-512.ll
M llvm/test/CodeGen/X86/vector-fshl-rot-128.ll
M llvm/test/CodeGen/X86/vector-fshl-rot-256.ll
M llvm/test/CodeGen/X86/vector-fshl-rot-512.ll
M llvm/test/CodeGen/X86/vector-fshr-128.ll
M llvm/test/CodeGen/X86/vector-fshr-256.ll
M llvm/test/CodeGen/X86/vector-fshr-512.ll
M llvm/test/CodeGen/X86/vector-fshr-rot-128.ll
M llvm/test/CodeGen/X86/vector-fshr-rot-256.ll
M llvm/test/CodeGen/X86/vector-fshr-rot-512.ll
M llvm/test/CodeGen/X86/vector-idiv-sdiv-512.ll
M llvm/test/CodeGen/X86/vector-idiv-udiv-512.ll
M llvm/test/CodeGen/X86/vector-interleaved-store-i16-stride-5.ll
M llvm/test/CodeGen/X86/vector-interleaved-store-i16-stride-7.ll
M llvm/test/CodeGen/X86/vector-rotate-128.ll
M llvm/test/CodeGen/X86/vector-rotate-256.ll
M llvm/test/CodeGen/X86/vector-rotate-512.ll
M llvm/test/CodeGen/X86/vector-shift-ashr-128.ll
M llvm/test/CodeGen/X86/vector-shift-ashr-256.ll
M llvm/test/CodeGen/X86/vector-shift-ashr-512.ll
M llvm/test/CodeGen/X86/vector-shift-ashr-sub128.ll
M llvm/test/CodeGen/X86/vector-shift-shl-256.ll
M llvm/test/CodeGen/X86/vector-shift-shl-512.ll
M llvm/test/CodeGen/X86/vector-shuffle-avx512.ll
M llvm/test/CodeGen/X86/vselect-pcmp.ll
M llvm/test/CodeGen/X86/zero_extend_vector_inreg_of_broadcast.ll
M llvm/test/CodeGen/X86/zero_extend_vector_inreg_of_broadcast_from_memory.ll
Log Message:
-----------
[X86] VPTERNLOG comments - use "mem" just for full width loads and "m32bcst" / "m64bcst" for broadcast loads (#143721)
Use "mem" just for full width loads and "m32bcst" / "m64bcst" for 32-bit (D) / 64-bit (Q) broadcasts.
Fixes #143679
---------
Co-authored-by: Simon Pilgrim <llvm-dev at redking.me.uk>
Commit: cc17f68e566ab7db4ac8e95dc857e49e10d8366c
https://github.com/llvm/llvm-project/commit/cc17f68e566ab7db4ac8e95dc857e49e10d8366c
Author: Jeffrey Byrnes <jeffrey.byrnes at amd.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
A llvm/test/Transforms/SLPVectorizer/AMDGPU/external-shuffle.ll
Log Message:
-----------
[SLP] NFC: Precommit test for pull/137419 (#137730)
Precommit for https://github.com/llvm/llvm-project/pull/137419
Commit: e1e1836bbd70e4f30bd0be97b9d81eabfd6b45c8
https://github.com/llvm/llvm-project/commit/e1e1836bbd70e4f30bd0be97b9d81eabfd6b45c8
Author: Omair Javaid <omair.javaid at linaro.org>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp
M llvm/lib/Target/X86/CMakeLists.txt
M llvm/lib/Target/X86/X86.h
M llvm/lib/Target/X86/X86TargetMachine.cpp
R llvm/lib/Target/X86/X86WinFixupBufferSecurityCheck.cpp
M llvm/test/CodeGen/AArch64/GlobalISel/irtranslator-stack-protector-windows.ll
M llvm/test/CodeGen/X86/opt-pipeline.ll
A llvm/test/CodeGen/X86/stack-protector-msvc-oz.ll
M llvm/test/CodeGen/X86/stack-protector-msvc.ll
M llvm/test/CodeGen/X86/tailcc-ssp.ll
M llvm/test/DebugInfo/COFF/fpo-stack-protect.ll
Log Message:
-----------
[CodeGen] Inline stack guard check on Windows (#136290)
This patch optimizes the Windows security cookie check mechanism by
moving the comparison inline and only calling __security_check_cookie
when the check fails. This reduces the overhead of making a DLL call
for every function return.
Previously, we implemented this optimization through a machine pass
(X86WinFixupBufferSecurityCheckPass) in PR #95904 submitted by
@mahesh-attarde. We have reverted that pass in favor of this new
approach. Also we have abandoned the AArch64 specific implementation
of same pass in PR #121938 in favor of this more general solution.
The old machine instruction pass approach:
- Scanned the generated code to find __security_check_cookie calls
- Modified these calls by splitting basic blocks
- Added comparison logic and conditional branching
- Required complex block management and live register computation
The new approach:
- Implements the same optimization during instruction selection
- Directly emits the comparison and conditional branching
- No need for post-processing or basic block manipulation
- Disables optimization at -Oz.
Thanks @tamaspetz, @efriedma-quic and @arsenm for their help.
Commit: 36878158586b92e53dd615264f883e9d7530d047
https://github.com/llvm/llvm-project/commit/36878158586b92e53dd615264f883e9d7530d047
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M llvm/utils/gn/secondary/llvm/lib/Target/X86/BUILD.gn
Log Message:
-----------
[gn build] Port e1e1836bbd70
Commit: b6a56b8ef26a6b612eb5f49d37024666b073481e
https://github.com/llvm/llvm-project/commit/b6a56b8ef26a6b612eb5f49d37024666b073481e
Author: Tobias Stadler <mail at stadler-tobias.de>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M llvm/test/tools/llvm-remarkutil/convert.test
M llvm/tools/llvm-remarkutil/RemarkConvert.cpp
Log Message:
-----------
[llvm-remarkutil] bitstream2yaml: Keep output file (#143220)
Keep the output file on successful exit, otherwise `llvm-remarkutil
bitstream2yaml -o filename.yaml ...` does not produce any output,
because the output file is deleted when the tool exits.
Commit: ca5b71a4559890a9768558ddea724782fb638bfa
https://github.com/llvm/llvm-project/commit/ca5b71a4559890a9768558ddea724782fb638bfa
Author: Jon Roelofs <jonathan_roelofs at apple.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M llvm/lib/Transforms/Scalar/LowerMatrixIntrinsics.cpp
A llvm/test/Transforms/LowerMatrixIntrinsics/select.ll
Log Message:
-----------
[Matrix] Propagate shape information through Select insts (#141876)
Commit: bba4ded3c2f94fe0de6011a6941b135b3cb0370a
https://github.com/llvm/llvm-project/commit/bba4ded3c2f94fe0de6011a6941b135b3cb0370a
Author: A. Jiang <de34 at live.cn>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M libcxx/include/bitset
M libcxx/test/std/utilities/template.bitset/bitset.cons/char_ptr_ctor.pass.cpp
Log Message:
-----------
[libc++] Fix constructing `bitset` from non-null-terminated arrays (#143691)
Unconditional evaluation of `char_traits<_CharT>::length(__str)` is problematic, because it causes
UB when `__str` points to a non-null-terminated array. We should only call `length` (currently, in
`basic_string_view`'s constructor) when `__n == npos` per [bitset.cons]/8.
Drive-by change: Reduction of conditional compilation, given that
- both `basic_string_view<_CharT>::size_type` and `basic_string<_CharT>::size_type` must be
`size_t`, and thus
- both `basic_string_view<_CharT>::npos` and `basic_string<_CharT>::npos` must be `size_t(-1)`.
For the type sameness in the standard wording, see:
- [string.view.template.general]
- [basic.string.general]
- [allocator.traits.types]/6
- [default.allocator.general]/1
Fixes #143684
Commit: 5c1a021f7f285f702a290d7faaaf0a274b3bf5a1
https://github.com/llvm/llvm-project/commit/5c1a021f7f285f702a290d7faaaf0a274b3bf5a1
Author: Kazu Hirata <kazu at google.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M libcxx/docs/ABIGuarantees.rst
Log Message:
-----------
[libc++] Fix typos in documentation (#143912)
Commit: 4f60321ca183ebf132e97e54d8d560643c5c3340
https://github.com/llvm/llvm-project/commit/4f60321ca183ebf132e97e54d8d560643c5c3340
Author: Ross Brunton <ross at codeplay.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M offload/liboffload/API/Common.td
M offload/liboffload/API/Kernel.td
M offload/liboffload/src/OffloadImpl.cpp
M offload/unittests/OffloadAPI/kernel/olLaunchKernel.cpp
Log Message:
-----------
[Offload] Add `ol_dimensions_t` and convert ranges from size_t -> uint32_t (#143901)
This is a three element x, y, z size_t vector that can be used any place
where a 3D vector is required. This ensures that all vectors across
liboffload are the same and don't require any resizing/reordering
dances.
Commit: 4bd0a0e50bcfc3263c219acc9709ae234a334456
https://github.com/llvm/llvm-project/commit/4bd0a0e50bcfc3263c219acc9709ae234a334456
Author: Kareem Ergawy <kareem.ergawy at amd.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M flang/lib/Lower/Bridge.cpp
M flang/test/Lower/do_concurrent_delayed_locality.f90
M flang/test/Lower/do_concurrent_local_assoc_entity.f90
M flang/test/Lower/do_concurrent_local_default_init.f90
M flang/test/Lower/loops.f90
M flang/test/Lower/loops3.f90
Log Message:
-----------
Revert "[flang] Enable delayed localization by default for `do concurrent` (#142567)" (#143905)
This reverts commit 937be177528de156922c1b5f6cab08ba3009dbf2.
Resolves https://github.com/llvm/llvm-project/issues/143897 until the
todo is properly handled.
Commit: 62b694090093ed34d620dd1129b194fc66fa4bb0
https://github.com/llvm/llvm-project/commit/62b694090093ed34d620dd1129b194fc66fa4bb0
Author: Igor Wodiany <igor.wodiany at imgtec.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVGLOps.td
M mlir/test/Dialect/SPIRV/IR/gl-ops.mlir
M mlir/test/Target/SPIRV/gl-ops.mlir
Log Message:
-----------
[mlir][spirv] Add definition for GL Pack/UnpackHalf2x16 (#143889)
Commit: e4de74ba11eadb47cf78afbabffbf2b1a50e7298
https://github.com/llvm/llvm-project/commit/e4de74ba11eadb47cf78afbabffbf2b1a50e7298
Author: Nicolas Vasilache <nicolas.vasilache at gmail.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
M mlir/test/Dialect/Vector/canonicalize.mlir
Log Message:
-----------
[mlir][Vector] Tighten up application conditions in TransferReadAfter… (#143869)
…WriteToBroadcast
The pattern would previously apply in spurious cases and generate
incorrect IR.
In the process, we disable the application of this pattern in the case
where there is no broadcast; this should be handled separately and may
more easily support masking.
The case {no-broadcast, yes-transpose} was previously caught by this
pattern and arguably could also generate incorrect IR (and was also
untested): this case does not apply anymore.
The last cast {yes-broadcast, yes-transpose} continues to apply but
should arguably be removed from the future because creating transposes
as part of canonicalization feels dangerous.
There are other patterns that move permutation logic:
- either into the transfer, or
- outside of the transfer
Ideally, this would be target-dependent and not a canonicalization (i.e.
does your DMA HW allow transpose on the fly or not) but this is beyond
the scope of this PR.
Co-authored-by: Nicolas Vasilache <nicolasvasilache at users.noreply.github.com>
Commit: 2e5fb77ce03748608cfad49fd62479fc3d912372
https://github.com/llvm/llvm-project/commit/2e5fb77ce03748608cfad49fd62479fc3d912372
Author: Paul Kirth <paulkirth at google.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M llvm/utils/llvm-test-mustache-spec/llvm-test-mustache-spec.cpp
Log Message:
-----------
[llvm] Make TestData compatible with c++20 (#143801)
The clang-debian-cpp20 buildbot did not like direct initialization
without a matching constructor. This patch adds a new constructor taking
a json::Object that directly initializes the struct fields. We also
update an internal interface for const correctness.
https://lab.llvm.org/buildbot/#/builders/108/builds/13950
Commit: 9b679889b596aa5076062d5fbbdd01e3532b4ff5
https://github.com/llvm/llvm-project/commit/9b679889b596aa5076062d5fbbdd01e3532b4ff5
Author: Cyndy Ishida <cyndy_ishida at apple.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M clang/include/clang/Basic/DiagnosticDriverKinds.td
M clang/lib/Driver/ToolChains/Darwin.cpp
A clang/test/Driver/darwin-invalid-version-range.c
Log Message:
-----------
[clang][darwin] Fix assertion failure when reporting fatal errors when inferring OS versions (#143817)
Commit: f6eaa2b00cc8d6421934cc92d4b210348809d700
https://github.com/llvm/llvm-project/commit/f6eaa2b00cc8d6421934cc92d4b210348809d700
Author: Owen Pan <owenpiano at gmail.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M clang/tools/clang-format/ClangFormat.cpp
Log Message:
-----------
Reland "[clang-format][NFC] Clean up fillRanges() in ClangFormat.cpp" (#143477)
Reapply https://github.com/llvm/llvm-project/pull/143236 and fix the bug
reported in
https://github.com/llvm/llvm-project/pull/143236#issuecomment-2957102180.
Commit: f12b1ed11672bc40a53fb1180541b2fda6e7d9fc
https://github.com/llvm/llvm-project/commit/f12b1ed11672bc40a53fb1180541b2fda6e7d9fc
Author: Kajetan Puchalski <kajetan.puchalski at arm.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M flang/lib/Lower/OpenMP/OpenMP.cpp
A flang/test/Lower/OpenMP/Todo/target-parallel-private.f90
A flang/test/Lower/OpenMP/Todo/target-teams-private.f90
Log Message:
-----------
[flang][OpenMP] Add TODOs for target [teams|parallel] private (#143706)
Using the private clause on `target teams` or `target parallel` is not
currently implemented and causes crashes during lowering. Add
appropriate TODOs.
Resolves https://github.com/llvm/llvm-project/issues/116428.
Signed-off-by: Kajetan Puchalski <kajetan.puchalski at arm.com>
Commit: 13fe07d670e8a115929c9e595c4490ef5c75f583
https://github.com/llvm/llvm-project/commit/13fe07d670e8a115929c9e595c4490ef5c75f583
Author: tynasello-google <tynasello at google.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M libcxx/cmake/caches/AndroidNDK.cmake
R libcxx/test/configs/llvm-libc++-android-ndk.cfg.in
A libcxx/test/configs/llvm-libc++-android.cfg.in
R libcxxabi/test/configs/llvm-libc++abi-android-ndk.cfg.in
A libcxxabi/test/configs/llvm-libc++abi-android.cfg.in
Log Message:
-----------
[libc++] Expand Android libc++ test config files (#142846)
Parameterize (and rename) existing libc++/libc++abi test configuration
files for the Android NDK to work for both the NDK and platform.
Android LLVM downstream seeks to test libc++ for both the NDK and
platform build (currently only testing the NDK), which will use almost
identical test configuration files. The only difference is the name of
the libc++ shared object used. Because of this we parameterize the
current test files (for both libc++ and libc++abi) with the existing
LIBCXX_SHARED_OUTPUT_NAME cmake variable, and rename the file
accordingly.
Commit: 1c1df94d09820959c771cb4aaae4d36cdf5cab5a
https://github.com/llvm/llvm-project/commit/1c1df94d09820959c771cb4aaae4d36cdf5cab5a
Author: Michael Buch <michaelbuch12 at gmail.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M lldb/source/Commands/CommandObjectMemory.cpp
M lldb/test/API/functionalities/memory/find/TestMemoryFind.py
M lldb/test/API/functionalities/memory/find/main.cpp
Log Message:
-----------
[lldb][Commands][NFC] Extract memory find expression evaluation into helpers (#143686)
This patch factors out the `-e` option logic into two helper functions.
The `EvaluateExpression` helper might seem redundant but I'll be adding
to it in a follow-up patch to fix an issue when running `memory find -e`
for Swift targets.
Also adds test coverage for the error cases that were previously
untested.
rdar://152113525
Commit: 2a905dd1ebb46a6865b1f4743589b50cdb2cb4f0
https://github.com/llvm/llvm-project/commit/2a905dd1ebb46a6865b1f4743589b50cdb2cb4f0
Author: Jon Roelofs <jonathan_roelofs at apple.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M llvm/lib/Transforms/Scalar/LowerMatrixIntrinsics.cpp
Log Message:
-----------
[Matrix] Use range-for in Visit* Result construction. NFC
Commit: 316f530724ee2e870886e75729799afbcc1ff8d3
https://github.com/llvm/llvm-project/commit/316f530724ee2e870886e75729799afbcc1ff8d3
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/zero_extend_vector_inreg_of_broadcast.ll
M llvm/test/CodeGen/X86/zero_extend_vector_inreg_of_broadcast_from_memory.ll
Log Message:
-----------
[X86] getTargetConstantBitsFromNode - handle EXTRACT_SUBVECTOR through bitcasts (#143886)
Generalize the extraction index/width to account for any changes in type through bitcasts
Commit: a53003fe23cb6c871e72d70ff2d3a075a7490da2
https://github.com/llvm/llvm-project/commit/a53003fe23cb6c871e72d70ff2d3a075a7490da2
Author: kotborealis <kotborealis at awooo.ru>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M libcxx/utils/gdb/libcxx/printers.py
Log Message:
-----------
[libc++] Update GDB pretty-printer to work with GDB 17 (#142106)
This patch fixes an issue in libcxx/utils/gdb/libcxx/printers.py.
With gdb 17 (binutils 2_44) pretty-printers do not work anymore because
calls to `gdb.printing` requires `import gdb.printing` statement, which
was missing from the `printers.py`.
This was broken after commit https://github.com/bminor/binutils-gdb/commit/fc14343205d3a
and `import gdb.printing` was first referenced in https://github.com/bminor/binutils-gdb/commit/ee06c79b0f.
Co-authored-by: Dmitry Chestnykh <dm.chestnykh at gmail.com>
Commit: 882b58a90ae0c4a91e1ecda6df3767b0fc44dab1
https://github.com/llvm/llvm-project/commit/882b58a90ae0c4a91e1ecda6df3767b0fc44dab1
Author: Farzon Lotfi <farzonlotfi at microsoft.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M llvm/lib/Target/DirectX/DXILFlattenArrays.cpp
M llvm/test/CodeGen/DirectX/flatten-array.ll
M llvm/test/CodeGen/DirectX/flatten-bug-117273.ll
M llvm/test/CodeGen/DirectX/llc-vector-load-scalarize.ll
M llvm/test/CodeGen/DirectX/scalar-bug-117273.ll
Log Message:
-----------
[DirectX] Reland #142853 with Circular GEP fixes (#143747)
This change relands https://github.com/llvm/llvm-project/pull/142853
It fixes the circular reference issue we were seeing in GEPs
ex `%.flat = getelementptr inbounds [16 x i32], ptr %.flat, i32 0, i32
15`
Commit: ef1cb8277ac3cb34ce9700a313ed60410dd9f84b
https://github.com/llvm/llvm-project/commit/ef1cb8277ac3cb34ce9700a313ed60410dd9f84b
Author: Nathan Gauër <brioche at google.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M llvm/lib/Target/SPIRV/SPIRVAsmPrinter.cpp
M llvm/lib/Target/SPIRV/SPIRVCallLowering.cpp
M llvm/lib/Target/SPIRV/SPIRVModuleAnalysis.cpp
M llvm/test/CodeGen/SPIRV/ExecutionMode_Fragment.ll
Log Message:
-----------
[SPIR-V] Fix ExecutionMode generation (#143888)
PR #141787 added code to emit the Fragment execution model. This
required emitting the OriginUpperLeft ExecutionMode. But this was done
by using the same codepath used for OpEntrypoint.
This has 2 issues:
- the interface variables were added to both OpEntryPoint and
OpExecutionMode.
- the existing OpExecutionMode logic was not used.
This commit fixes this, regrouping OpExecutionMode handling in one
place, and fixing bad codegen issue when interface variiables are added.
Commit: daee5eee8562d26d234f85152e803b6571b15ee2
https://github.com/llvm/llvm-project/commit/daee5eee8562d26d234f85152e803b6571b15ee2
Author: Ethan Luis McDonough <ethanluismcdonough at gmail.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M offload/test/offloading/gpupgo/pgo_atomic_teams.c
M offload/test/offloading/gpupgo/pgo_atomic_threads.c
Log Message:
-----------
[Offload][PGO] Fix new GPU PGO tests (#143645)
`pgo_atomic_teams.c` and `pgo_atomic_threads.c` currently are set to run
on NVPTX despite the changes for that target not being upstreamed yet.
This patch also replaces instances of `llvm-profdata` with `%profdata`
in those tests.
Commit: c6da2c877cb407c0404e58c5ca257d12036ed164
https://github.com/llvm/llvm-project/commit/c6da2c877cb407c0404e58c5ca257d12036ed164
Author: Michael Buch <michaelbuch12 at gmail.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M lldb/source/Commands/CommandObjectMemory.cpp
Log Message:
-----------
[lldb][Commands] Fix memory find for Swift expressions (#143860)
(depends on https://github.com/llvm/llvm-project/pull/143686)
There were two issues previously preventing `memory find -e` expressions
to succeed when stopped in Swift frames:
1. We weren't getting the dynamic type of the result `ValueObject`.
For Swift this would fail when we tried to produce a scalar value
out of it because the static VO wasn't sufficient to get to the
integer value. Hence we add a call to
`GetQualifiedRepresentationIfAvailable`
(which is what we do for expressions in `OptionArgParser::ToAddress`
too).
2. We weren't passing an `ExecutionContextScope` to `GetByteSize`, which
Swift relied on to get the size of the result type.
My plan is to add an API test for this on the Apple
`swiftlang/llvm-project` fork.
I considered an alternative where we use `OptionArgParser::ToAddress`
for `memory find -e` expressions, but it got a bit icky when trying to
figure out how many bytes we should copy out of the result into the
`DataBufferHeap` (currently we rely on the size of the result variable
type). This gets even trickier when we were to pass an expression that
was actually a hex digit or a number into `ToAddress`.
rdar://152113525
Commit: 4039fdb7ba5a0d9ead5bdc0404f036063a4ca95d
https://github.com/llvm/llvm-project/commit/4039fdb7ba5a0d9ead5bdc0404f036063a4ca95d
Author: W. Turner Abney <weebney at gmail.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M libc/config/linux/aarch64/entrypoints.txt
M libc/config/linux/arm/entrypoints.txt
M libc/config/linux/riscv/entrypoints.txt
M libc/config/linux/x86_64/entrypoints.txt
M libc/hdr/CMakeLists.txt
A libc/hdr/sys_ioctl_macros.h
M libc/include/llvm-libc-macros/linux/sys-ioctl-macros.h
M libc/src/sys/CMakeLists.txt
A libc/src/sys/ioctl/CMakeLists.txt
A libc/src/sys/ioctl/ioctl.h
A libc/src/sys/ioctl/linux/CMakeLists.txt
A libc/src/sys/ioctl/linux/ioctl.cpp
M libc/test/src/sys/CMakeLists.txt
A libc/test/src/sys/ioctl/CMakeLists.txt
A libc/test/src/sys/ioctl/linux/CMakeLists.txt
A libc/test/src/sys/ioctl/linux/ioctl_test.cpp
Log Message:
-----------
[libc] add ioctl (#141393)
Closes #85275
Closes #90317
Updates #97191
---------
Co-authored-by: Joseph Huber <huberjn at outlook.com>
Co-authored-by: Michael Jones <michaelrj at google.com>
Commit: 77834a40cf350d2fe63fac26222c3918f5f348fd
https://github.com/llvm/llvm-project/commit/77834a40cf350d2fe63fac26222c3918f5f348fd
Author: Andy Kaylor <akaylor at nvidia.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M clang/include/clang/CIR/MissingFeatures.h
A clang/lib/CIR/CodeGen/CIRGenCXX.cpp
M clang/lib/CIR/CodeGen/CIRGenCXXABI.h
M clang/lib/CIR/CodeGen/CIRGenCall.cpp
M clang/lib/CIR/CodeGen/CIRGenClass.cpp
M clang/lib/CIR/CodeGen/CIRGenFunction.cpp
M clang/lib/CIR/CodeGen/CIRGenFunction.h
M clang/lib/CIR/CodeGen/CIRGenItaniumCXXABI.cpp
M clang/lib/CIR/CodeGen/CIRGenModule.cpp
M clang/lib/CIR/CodeGen/CIRGenModule.h
M clang/lib/CIR/CodeGen/CMakeLists.txt
M clang/test/CIR/CodeGen/ctor.cpp
Log Message:
-----------
[CIR] Upstream support for emitting constructors (#143639)
This change upstreams the code to emit simple constructor defintions.
Commit: 639c19ddb688595a69ad9f83a40aa32e2187134c
https://github.com/llvm/llvm-project/commit/639c19ddb688595a69ad9f83a40aa32e2187134c
Author: long.chen <lipracer at gmail.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M mlir/include/mlir/ExecutionEngine/MemRefUtils.h
Log Message:
-----------
[NFC][mlir] make the assert consistent with the declared behavior (#143874)
Commit: 56548e1d9b2ed4f5d2fe3913c27af770cf0e06e5
https://github.com/llvm/llvm-project/commit/56548e1d9b2ed4f5d2fe3913c27af770cf0e06e5
Author: Jon Roelofs <jonathan_roelofs at apple.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M llvm/lib/Transforms/Scalar/LowerMatrixIntrinsics.cpp
M llvm/test/Transforms/LowerMatrixIntrinsics/select.ll
Log Message:
-----------
[Matrix] Fix a crash in VisitSelectInst due to iteration length mismatch
Commit: 31daed868d69ac1ac6f6a29340d0b5e0e6dc39ab
https://github.com/llvm/llvm-project/commit/31daed868d69ac1ac6f6a29340d0b5e0e6dc39ab
Author: Sudharsan Veeravalli <quic_svs at quicinc.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfoXqci.td
M llvm/test/CodeGen/RISCV/xqcibm-extract.ll
Log Message:
-----------
[RISCV] Prefer QC_EXTU to ANDI for certain 12-bit mask immediates (#143838)
`QC_EXTU` can be compressed to `QC_C_EXTU` when the immediate is a `mask
>=63`. We currently only handle masks that don't fit in 12-bits in
`RISCVISelDAGToDAG`.
I have added ISEL patterns in `RISCVInstrInfoXqci.td` instead of
changing code in `RISCVISelDAGToDAG` since the other extract
instructions ( in `XTHeadbb` and `XAndesPerf`) don't have compressed
versions and it is a lot easier to maintain things this way.
Commit: cd8facebabab9b61c6af1313cd1fd1e586bc2ba6
https://github.com/llvm/llvm-project/commit/cd8facebabab9b61c6af1313cd1fd1e586bc2ba6
Author: Amr Hesham <amr96 at programmer.net>
Date: 2025-06-12 (Thu, 12 Jun 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/CIRCanonicalize.cpp
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
M clang/test/CIR/CodeGen/vector-ext.cpp
M clang/test/CIR/CodeGen/vector.cpp
A clang/test/CIR/Transforms/vector-create-fold.cir
Log Message:
-----------
[CIR] Implement folder for VecCreateOp (#143355)
This change adds a folder for the VecCreateOp
Issue https://github.com/llvm/llvm-project/issues/136487
Commit: ae7ea6e3a28c017485cc2401703d6fab1549123d
https://github.com/llvm/llvm-project/commit/ae7ea6e3a28c017485cc2401703d6fab1549123d
Author: Michael Jones <michaelrj at google.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M libc/src/sys/ioctl/linux/ioctl.cpp
M libc/test/src/sys/ioctl/linux/CMakeLists.txt
M libc/test/src/sys/ioctl/linux/ioctl_test.cpp
Log Message:
-----------
[libc] Fix ioctl errno inclusion (#143928)
Since errno was moved in
https://github.com/llvm/llvm-project/pull/143187 the code including it
in https://github.com/llvm/llvm-project/pull/141393 was rendered
incorrect. This patch fixes the include and the cmake depends.
Commit: e65131a56335fc6b8e47c609f17df50ea65577b4
https://github.com/llvm/llvm-project/commit/e65131a56335fc6b8e47c609f17df50ea65577b4
Author: Fangrui Song <i at maskray.me>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M llvm/test/MC/AsmParser/include.ll
Log Message:
-----------
MC,test: Specify explicit triple for include.ll
The output is subject to .set or = difference.
Commit: 2c20bc5112a18a8a893e8caea6fd59c097754d74
https://github.com/llvm/llvm-project/commit/2c20bc5112a18a8a893e8caea6fd59c097754d74
Author: fairywreath <65404740+fairywreath at users.noreply.github.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVGLOps.td
M mlir/test/Dialect/SPIRV/IR/gl-ops.mlir
M mlir/test/Target/SPIRV/gl-ops.mlir
Log Message:
-----------
[mlir][spirv] Add definitions for GL FindILsb and FindSMsb (#143916)
Adds SPIRV GL FindILsb and FindSMsb instructions which correspond to GL
instruction numbers 73 and 74.
Commit: 1a4cf1d3edff2d4c790f597834301702cfc6dc15
https://github.com/llvm/llvm-project/commit/1a4cf1d3edff2d4c790f597834301702cfc6dc15
Author: Chelsea Cassanova <chelsea_cassanova at apple.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M lldb/cmake/modules/LLDBFramework.cmake
A lldb/scripts/framework-header-fix.py
A lldb/test/Shell/Scripts/Inputs/Main/SBAddress.h
A lldb/test/Shell/Scripts/Inputs/RPC/RPCSBAddress.h
A lldb/test/Shell/Scripts/TestFrameworkFixScript.test
A lldb/test/Shell/Scripts/TestFrameworkFixUnifdef.test
A lldb/test/Shell/Scripts/TestRPCFrameworkFixScript.test
Log Message:
-----------
[lldb][headers] Create Python script to fix up framework headers (#142051)
This commit replaces the shell script that fixes up includes for the
LLDB framework with a Python script. This script will also be used when
fixing up includes for the LLDBRPC.framework.
Commit: 217304a09949de73a8def5ee4c7ed9510449ce4c
https://github.com/llvm/llvm-project/commit/217304a09949de73a8def5ee4c7ed9510449ce4c
Author: 黃國庭 <we3223 at gmail.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M llvm/lib/Target/X86/X86FixupInstTuning.cpp
M llvm/test/CodeGen/X86/2012-01-12-extract-sv.ll
M llvm/test/CodeGen/X86/avx-insertelt.ll
M llvm/test/CodeGen/X86/avx512-intrinsics-fast-isel.ll
M llvm/test/CodeGen/X86/avx512-intrinsics-upgrade.ll
M llvm/test/CodeGen/X86/avx512-intrinsics.ll
M llvm/test/CodeGen/X86/avx512copy-intrinsics.ll
M llvm/test/CodeGen/X86/build-vector-512.ll
M llvm/test/CodeGen/X86/buildvec-extract.ll
M llvm/test/CodeGen/X86/canonicalize-vars-f16-type.ll
M llvm/test/CodeGen/X86/coalesce_commute_movsd.ll
M llvm/test/CodeGen/X86/combine-and.ll
M llvm/test/CodeGen/X86/combine-or-shuffle.ll
M llvm/test/CodeGen/X86/fminimumnum-fmaximumnum.ll
M llvm/test/CodeGen/X86/fmsubadd-combine.ll
M llvm/test/CodeGen/X86/fp-strict-scalar-fp16.ll
M llvm/test/CodeGen/X86/fp-strict-scalar-inttofp-fp16.ll
M llvm/test/CodeGen/X86/fp-strict-scalar-round-fp16.ll
M llvm/test/CodeGen/X86/half-constrained.ll
M llvm/test/CodeGen/X86/half-darwin.ll
M llvm/test/CodeGen/X86/insertelement-zero.ll
M llvm/test/CodeGen/X86/masked_expandload.ll
M llvm/test/CodeGen/X86/masked_gather.ll
M llvm/test/CodeGen/X86/masked_gather_scatter.ll
M llvm/test/CodeGen/X86/masked_load.ll
M llvm/test/CodeGen/X86/pr40730.ll
M llvm/test/CodeGen/X86/scalarize-fp.ll
M llvm/test/CodeGen/X86/sse-insertelt-from-mem.ll
M llvm/test/CodeGen/X86/sse-insertelt.ll
M llvm/test/CodeGen/X86/sse-intrinsics-fast-isel.ll
M llvm/test/CodeGen/X86/sse-scalar-fp-arith.ll
M llvm/test/CodeGen/X86/sse2-intrinsics-fast-isel.ll
M llvm/test/CodeGen/X86/sse2.ll
M llvm/test/CodeGen/X86/sse41.ll
M llvm/test/CodeGen/X86/stack-folding-fp-avx1.ll
M llvm/test/CodeGen/X86/vec-strict-128-fp16.ll
M llvm/test/CodeGen/X86/vec-strict-fptoint-128-fp16.ll
M llvm/test/CodeGen/X86/vec_extract-avx.ll
M llvm/test/CodeGen/X86/vec_floor.ll
M llvm/test/CodeGen/X86/vec_ss_load_fold.ll
M llvm/test/CodeGen/X86/vector-blend.ll
M llvm/test/CodeGen/X86/vector-half-conversions.ll
M llvm/test/CodeGen/X86/vector-interleaved-store-i32-stride-5.ll
M llvm/test/CodeGen/X86/vector-interleaved-store-i32-stride-7.ll
M llvm/test/CodeGen/X86/vector-shuffle-128-v2.ll
M llvm/test/CodeGen/X86/vector-shuffle-128-v4.ll
M llvm/test/CodeGen/X86/vector-shuffle-256-v4.ll
M llvm/test/CodeGen/X86/vector-shuffle-256-v8.ll
M llvm/test/CodeGen/X86/vector-shuffle-combining-avx2.ll
M llvm/test/CodeGen/X86/vector-shuffle-combining-ssse3.ll
M llvm/test/CodeGen/X86/vector-shuffle-combining-xop.ll
M llvm/test/CodeGen/X86/vector-zmov.ll
M llvm/test/CodeGen/X86/vselect.ll
Log Message:
-----------
[X86] Use X86FixupInstTunings to select between (V)MOVSS/D and (V)BLENDPS/D (#143895)
Fix https://github.com/llvm/llvm-project/issues/142588
Following @RKSimon’s suggestion, the transformation applies only when
the blend mask is exactly 1, indicating that the instruction behaves
like a move. Additionally, the conversion will only be performed when
optimizing for size or when the target prefers MOVSS/D over BLENDPS/D
for performance reasons.
The switch-case instructions were identified with GPT O.O .
Co-authored-by: Simon Pilgrim <llvm-dev at redking.me.uk>
Commit: 53e50472ff445bb946a53aba30649ae65f3534b1
https://github.com/llvm/llvm-project/commit/53e50472ff445bb946a53aba30649ae65f3534b1
Author: Shafik Yaghmour <shafik.yaghmour at intel.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M clang/lib/Interpreter/DeviceOffload.cpp
Log Message:
-----------
[Clang][NFC] Move FatbinFileName instead of copy (#143827)
Static analysis flagged FatbinFileName since we can move it instead of
copying it.
Commit: 82f19674bff578b9afd164144fd6b75d042ac932
https://github.com/llvm/llvm-project/commit/82f19674bff578b9afd164144fd6b75d042ac932
Author: lntue <lntue at google.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M libc/include/llvm-libc-types/size_t.h
M libc/include/llvm-libc-types/ssize_t.h
Log Message:
-----------
[libc] Update size_t and ssize_t definitions to use __SIZE_TYPE__ and __PTRDIFF_TYPE__ respectively. (#143921)
The current definition of `ssize_t` does not have the same bit width as
`size_t` on 32-bit platforms.
Commit: cbc2ef0e890e6c700023fe00c7166554f2f5ad14
https://github.com/llvm/llvm-project/commit/cbc2ef0e890e6c700023fe00c7166554f2f5ad14
Author: Dave Lee <davelee.com at gmail.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M llvm/utils/lldbDataFormatters.py
Log Message:
-----------
[llvm][utils] Add synthetic provider for llvm::DenseSet (#143631)
Add a synthetic child provider for `DenseSet`, which is a wrapper around
`DenseMap`. This provider leverages the existing `DenseMap` provider,
reshaping its dictionary structured children into a set.
Commit: eab1a1d4914a51de8383b818bf595125fb830c51
https://github.com/llvm/llvm-project/commit/eab1a1d4914a51de8383b818bf595125fb830c51
Author: halbi2 <hehiralbi at gmail.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
A libcxx/test/libcxx/containers/container.adaptors/flat.set/scary.compile.pass.cpp
Log Message:
-----------
[libc++][test] Improve test coverage for flat_set (lack of) SCARY iterators (#139649)
Missing from 5e94e26a7afb8db00cc123e5fc5471c1125596e3.
Commit: d1ca8d891ff038ec29e67065a446aa2f2043325e
https://github.com/llvm/llvm-project/commit/d1ca8d891ff038ec29e67065a446aa2f2043325e
Author: lntue <lntue at google.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
A libc/shared/math.h
A libc/shared/math/expf.h
M libc/src/__support/CMakeLists.txt
A libc/src/__support/math/CMakeLists.txt
A libc/src/__support/math/exp_float_constants.h
A libc/src/__support/math/expf.h
M libc/src/math/generic/CMakeLists.txt
M libc/src/math/generic/expf.cpp
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
M utils/bazel/llvm-project-overlay/libc/test/libc_test_rules.bzl
Log Message:
-----------
[libc][math] Refactor expf implementation to header-only in src/__support/math folder. (#143790)
This is a step in preparation for:
https://discourse.llvm.org/t/rfc-make-clang-builtin-math-functions-constexpr-with-llvm-libc-to-support-c-23-constexpr-math-functions/86450
Commit: 6311f039b2678f0a1367a88679efb7b2e37949dc
https://github.com/llvm/llvm-project/commit/6311f039b2678f0a1367a88679efb7b2e37949dc
Author: Uzair Nawaz <uzairnawaz at google.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M libc/hdr/CMakeLists.txt
M libc/hdr/types/CMakeLists.txt
M libc/include/llvm-libc-types/char8_t.h
M libc/src/__support/CMakeLists.txt
M libc/src/__support/wchar/mbstate.h
M libc/src/__support/wchar/utf_ret.h
Log Message:
-----------
[libc] Build fixes for widechar characterconverter (#143805)
Build fixes for wchar CharacterConverter class
Commit: 9208b343e962b9f1140ee345c0050a3920bdcbf2
https://github.com/llvm/llvm-project/commit/9208b343e962b9f1140ee345c0050a3920bdcbf2
Author: zhijian lin <zhijian at ca.ibm.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M clang/lib/Basic/Targets/PPC.cpp
M clang/test/CodeGenCXX/cxx11-thread-local-reference.cpp
M clang/test/Driver/aix-shared-lib-tls-model-opt.c
M clang/test/Driver/aix-small-local-exec-dynamic-tls.c
M clang/test/Driver/ppc-crbits.cpp
M clang/test/Driver/ppc-isa-features.cpp
M llvm/include/llvm/TargetParser/PPCTargetParser.h
M llvm/include/llvm/TargetParser/TargetParser.h
M llvm/lib/Target/PowerPC/PPC.td
M llvm/lib/TargetParser/CMakeLists.txt
M llvm/lib/TargetParser/PPCTargetParser.cpp
M llvm/lib/TargetParser/TargetParser.cpp
M llvm/utils/TableGen/SubtargetEmitter.cpp
Log Message:
-----------
[PowerPC] frontend get target feature from backend with cpu name (#137670)
1. The PR proceeds with a backend target hook to allow front-ends to
determine what target features are available in a compilation based on
the CPU name.
2. Fix a backend target feature bug that supports HTM for
Power8/9/10/11. However, HTM is only supported on Power8/9 according to
the ISA.
3. All target features that are hardcoded in PPC.cpp can be retrieved
from the backend target feature. I have double-checked that the
hardcoded logic for inferring target features from the CPU in the
frontend(PPC.cpp) is the same as in PPC.td.
Commit: 06dad352dba16fd9afa89be7abf9bb46f7552b48
https://github.com/llvm/llvm-project/commit/06dad352dba16fd9afa89be7abf9bb46f7552b48
Author: Chelsea Cassanova <chelsea_cassanova at apple.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M lldb/cmake/modules/LLDBFramework.cmake
R lldb/scripts/framework-header-fix.py
R lldb/test/Shell/Scripts/Inputs/Main/SBAddress.h
R lldb/test/Shell/Scripts/Inputs/RPC/RPCSBAddress.h
R lldb/test/Shell/Scripts/TestFrameworkFixScript.test
R lldb/test/Shell/Scripts/TestFrameworkFixUnifdef.test
R lldb/test/Shell/Scripts/TestRPCFrameworkFixScript.test
Log Message:
-----------
Revert "[lldb][headers] Create Python script to fix up framework headers" (#143941)
Reverts llvm/llvm-project#142051
Commit: 4e765b7a6b93b5d82e90f9a112b3eca4f873f005
https://github.com/llvm/llvm-project/commit/4e765b7a6b93b5d82e90f9a112b3eca4f873f005
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M llvm/test/CodeGen/X86/dpbusd_i4.ll
Log Message:
-----------
[x86] dpbusd_i4.ll - regenerate VPTERNLOGD asm comment
Commit: 5a6a4b6ba6945363bf366a885103a4adca11b5ef
https://github.com/llvm/llvm-project/commit/5a6a4b6ba6945363bf366a885103a4adca11b5ef
Author: Michael Jones <michaelrj at google.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M libc/config/linux/aarch64/entrypoints.txt
M libc/config/linux/riscv/entrypoints.txt
M libc/config/linux/x86_64/entrypoints.txt
M libc/include/stdio.yaml
M libc/src/stdio/CMakeLists.txt
M libc/src/stdio/generic/CMakeLists.txt
A libc/src/stdio/generic/perror.cpp
A libc/src/stdio/perror.h
M libc/test/src/stdio/CMakeLists.txt
A libc/test/src/stdio/perror_test.cpp
Log Message:
-----------
[libc] Implement perror (#143624)
The perror function writes an error message directly to stderr. This
patch adds an implementation, tests, and header generation details.
Commit: f94950db89a905309ec9ea2245889df88ffd0690
https://github.com/llvm/llvm-project/commit/f94950db89a905309ec9ea2245889df88ffd0690
Author: sribee8 <145801438+sribee8 at users.noreply.github.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M libc/src/__support/wchar/character_converter.cpp
M libc/src/__support/wchar/mbstate.h
Log Message:
-----------
[libc] Changed mbstate struct (#143942)
Changed the mbstate variable from bits processed to bytes processed and
implemented isComplete().
Co-authored-by: Sriya Pratipati <sriyap at google.com>
Commit: fd88aef21bae75b4641472badeb2abe3757872ac
https://github.com/llvm/llvm-project/commit/fd88aef21bae75b4641472badeb2abe3757872ac
Author: Qinkun Bao <qinkun at google.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M clang/docs/SanitizerSpecialCaseList.rst
Log Message:
-----------
[Doc][NFC] Fix Sanitizer Ignore list example errors. (#143755)
Commit: 639e811434d2c21b9161fe9955acdea28ce33c7b
https://github.com/llvm/llvm-project/commit/639e811434d2c21b9161fe9955acdea28ce33c7b
Author: Amr Hesham <amr96 at programmer.net>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenCall.cpp
Log Message:
-----------
[CIR][NFC] Fix an unused variable warning (#143933)
This fixes a warning where a variable assigned in 'if' statement wasn't
referenced again.
Commit: 4a58a63280a673142fc674db1fb668b7bae00420
https://github.com/llvm/llvm-project/commit/4a58a63280a673142fc674db1fb668b7bae00420
Author: Andrzej Warzyński <andrzej.warzynski at arm.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M mlir/test/Integration/Dialect/Linalg/CPU/test-padtensor.mlir
M mlir/test/lib/Dialect/Linalg/TestLinalgTransforms.cpp
Log Message:
-----------
[mlir][linalg] Remove the `test-linalg-to-vector-patterns` option (#142116)
This patch removes the `test-linalg-to-vector-patterns` option from the
`-test-linalg-transform-patterns=` test flag. It was only used in one
test, where a more specialized transform dialect op can be used instead:
* `transform.apply_patterns.linalg.pad_vectorization`
While we could preserve `test-linalg-to-vector-patterns`, it's better to
rely on finer-grained transformations — this way, we know exactly what
is being run and tested. Now that its only use has been removed, it
feels natural to delete `test-linalg-to-vector-patterns`.
Commit: 3c1053811e6925e8b9f7a044f3a18bfda1d7ccfe
https://github.com/llvm/llvm-project/commit/3c1053811e6925e8b9f7a044f3a18bfda1d7ccfe
Author: David Rivera <davidriverg at gmail.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M clang-tools-extra/clang-tidy/modernize/UseIntegerSignComparisonCheck.cpp
M clang-tools-extra/docs/ReleaseNotes.rst
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-integer-sign-comparison.cpp
Log Message:
-----------
Revert "[clang-tidy] Improve integer comparison by matching valid expressions outside implicitCastExpr" (#143944)
Reverts llvm/llvm-project#134188
related: https://github.com/llvm/llvm-project/issues/143927
Commit: edf636afe405ff90da7bf1834aa334bd52bc861e
https://github.com/llvm/llvm-project/commit/edf636afe405ff90da7bf1834aa334bd52bc861e
Author: Lei Huang <lei at ca.ibm.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M llvm/lib/Target/PowerPC/PPCRegisterInfo.cpp
Log Message:
-----------
[PowerPC][NFC] Update lowering STXVP to STXV in Oct word spilling (#142220)
Remove explicit register arithmetic from spilling ACC and STXVP code.
Commit: 46085d8f83623f6ea2921459de9f731d7df762d4
https://github.com/llvm/llvm-project/commit/46085d8f83623f6ea2921459de9f731d7df762d4
Author: Arthur Eubanks <aeubanks at google.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M lld/ELF/Writer.cpp
M lld/test/ELF/x86-64-section-layout.s
Log Message:
-----------
[lld/ELF][x86-64] Place large executable sections at the edges of binary (#70358)
So that when mixing small and large text, large text stays out of the
way of the rest of the binary.
Place large RX sections at the beginning rather than at the end so that
with `--no-rosegment`, the large text and rodata share a single PT_LOAD
segment. Place large RWX sections at the end to keep writable and
readonly sections separate.
Clang started emitting the large section flag for `.ltext` sections in
#73037.
Commit: df7db441d4e97568a5cbf830b0810512bb702159
https://github.com/llvm/llvm-project/commit/df7db441d4e97568a5cbf830b0810512bb702159
Author: Lei Huang <lei at ca.ibm.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M llvm/lib/Target/PowerPC/PPCRegisterInfo.cpp
Log Message:
-----------
Revert "[PowerPC][NFC] Update lowering STXVP to STXV in Oct word spil… (#143948)
…ling (#142220)"
This reverts commit edf636afe405ff90da7bf1834aa334bd52bc861e.
checked in wrong branch.
Commit: c317eda6e3785037f16a746a1096c2cca82d9455
https://github.com/llvm/llvm-project/commit/c317eda6e3785037f16a746a1096c2cca82d9455
Author: Lei Huang <lei at ca.ibm.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M llvm/lib/Target/PowerPC/PPCRegisterInfo.cpp
M llvm/lib/Target/PowerPC/PPCRegisterInfo.h
Log Message:
-----------
[PowerPC][NFC] Update lowering STXVP to STXV in Oct word spilling (#143953)
Simpliy handling for spilling of acc reg with stx by removing explicit
register arithmetic and clean up code gen for register mapping used in
stxvp spilling.
Relanding: https://github.com/llvm/llvm-project/pull/142220
Commit: 030a471753421477c7ef345cc60091788252fabc
https://github.com/llvm/llvm-project/commit/030a471753421477c7ef345cc60091788252fabc
Author: David Green <david.green at arm.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M clang/lib/CodeGen/Targets/AArch64.cpp
M clang/test/CodeGen/AArch64/struct-coerce-using-ptr.cpp
Log Message:
-----------
[AArch64][Clang] Exclude address spaces from pointer-only coercion types.
As reported on #135064, the generic pointer coercion code in
CoerceIntOrPtrToIntOrPtr cannot handle address space casts (it tries to bitcast
the pointers). This bails out if an address space qualifier is found on the
pointer.
Commit: 891f6ae783b36122b0f2fadc0c2d95d7dd590415
https://github.com/llvm/llvm-project/commit/891f6ae783b36122b0f2fadc0c2d95d7dd590415
Author: Philip Reames <preames at rivosinc.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
A llvm/test/Transforms/InstCombine/vp-reverse.ll
Log Message:
-----------
[instcombine] Add test coverage for vp.reverse elimination combines
Commit: cbf27bf711c08c34185f05ca5edbfa61bd3786e2
https://github.com/llvm/llvm-project/commit/cbf27bf711c08c34185f05ca5edbfa61bd3786e2
Author: Reid Kleckner <rnk at google.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M clang/lib/Basic/Targets/PPC.cpp
M clang/test/CodeGenCXX/cxx11-thread-local-reference.cpp
M clang/test/Driver/aix-shared-lib-tls-model-opt.c
M clang/test/Driver/aix-small-local-exec-dynamic-tls.c
M clang/test/Driver/ppc-crbits.cpp
M clang/test/Driver/ppc-isa-features.cpp
M llvm/include/llvm/TargetParser/PPCTargetParser.h
M llvm/include/llvm/TargetParser/TargetParser.h
M llvm/lib/Target/PowerPC/PPC.td
M llvm/lib/TargetParser/CMakeLists.txt
M llvm/lib/TargetParser/PPCTargetParser.cpp
M llvm/lib/TargetParser/TargetParser.cpp
M llvm/utils/TableGen/SubtargetEmitter.cpp
Log Message:
-----------
Revert " [PowerPC] frontend get target feature from backend with cpu name (#137670)"
This reverts commit 9208b343e962b9f1140ee345c0050a3920bdcbf2.
TargetParser shouldn't re-run the PPC subtarget tablegen target, it
should define its own `-gen-ppc-target-def` rule like all the other
targets do in llvm/include/llvm/TargetParser/CMakeLists.txt .
One user reported that there are incorrect CMake dependencies after this
change, so I will roll this back in the meantime.
Commit: c19e900ce8b422f6b8c028fbbd9ef7e9d3720236
https://github.com/llvm/llvm-project/commit/c19e900ce8b422f6b8c028fbbd9ef7e9d3720236
Author: AZero13 <gfunni234 at gmail.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/test/CodeGen/AArch64/cmp-to-cmn.ll
Log Message:
-----------
[AArch64] Signed comparison using CMN is safe when the subtraction is nsw (#141993)
nsw means no signed wrap, and 0 - INT_MIN is a signed wrap.
Now, this is going to be a point I need to get out of the way:
So is it okay to always transform a > -b into cmn if it is a signed
comparison, even if b is INT_MIN because -INT_MIN is undefined, at least
in C, because unless fwrapv is specified, opt puts nsw on signed integer
operations, allowing for more folds anyway.
Commit: b1f5e26b78a9550a22ee2f24bb3f220d396c452f
https://github.com/llvm/llvm-project/commit/b1f5e26b78a9550a22ee2f24bb3f220d396c452f
Author: GeorgeHuyubo <113479859+GeorgeHuyubo at users.noreply.github.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M lldb/source/Target/Target.cpp
Log Message:
-----------
[lldb] Properly handle locate module callback when Target change arch (#143793)
Since this PR: https://github.com/llvm/llvm-project/pull/141670/ We
started to override the Platform/Arch for a target if needed. However we
may have already registered locate module callback with the old
platform.
This PR will move the locate module callback to the new Platform
whenever Target changes architecture.
Co-authored-by: George Hu <georgehuyubo at gmail.com>
Commit: d65904675ea106713937c9cce24e3d1ec0bc570a
https://github.com/llvm/llvm-project/commit/d65904675ea106713937c9cce24e3d1ec0bc570a
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
Log Message:
-----------
[LV] Move logic to create trip count check to helper (NFC).
Move the logic to create the iteration count check to a separate helper,
so it can be re-used by when creating the skeleton for epilogue
vectorization as well.
Commit: 8ee9646b06cd128a6c55f375e4df431aee053c76
https://github.com/llvm/llvm-project/commit/8ee9646b06cd128a6c55f375e4df431aee053c76
Author: Philip Reames <preames at rivosinc.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
R llvm/include/llvm/IR/VectorBuilder.h
M llvm/include/llvm/Transforms/Utils/LoopUtils.h
M llvm/lib/IR/CMakeLists.txt
R llvm/lib/IR/VectorBuilder.cpp
M llvm/lib/Transforms/Utils/LoopUtils.cpp
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
M llvm/unittests/IR/CMakeLists.txt
R llvm/unittests/IR/VectorBuilderTest.cpp
Log Message:
-----------
[LV] Simplify creation of vp.load/vp.store/vp.reduce intrinsics (#143804)
The use of VectorBuilder here was simply obscuring what was actually
going on. For vp.load and vp.store, the resulting code is significantly
more idiomatic. For the vp.reduce cases, we remove several layers of
indirection, including passing parameters via implicit state on the
builder. In both cases, the code is significantly easier to follow.
Commit: 741ea80446e21b4052d723765011fe3583d3fc7f
https://github.com/llvm/llvm-project/commit/741ea80446e21b4052d723765011fe3583d3fc7f
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M llvm/utils/gn/secondary/llvm/lib/IR/BUILD.gn
M llvm/utils/gn/secondary/llvm/unittests/IR/BUILD.gn
Log Message:
-----------
[gn build] Port 8ee9646b06cd
Commit: 8a8ea8fec063bd64c17e463e7c3eaae5cdb4a645
https://github.com/llvm/llvm-project/commit/8a8ea8fec063bd64c17e463e7c3eaae5cdb4a645
Author: Chelsea Cassanova <chelsea_cassanova at apple.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M lldb/cmake/modules/LLDBFramework.cmake
A lldb/scripts/framework-header-fix.py
A lldb/test/Shell/Scripts/Inputs/Main/SBAddress.h
A lldb/test/Shell/Scripts/Inputs/RPC/RPCSBAddress.h
A lldb/test/Shell/Scripts/TestFrameworkFixScript.test
A lldb/test/Shell/Scripts/TestFrameworkFixUnifdef.test
A lldb/test/Shell/Scripts/TestRPCFrameworkFixScript.test
Log Message:
-----------
Reland "[lldb][headers] Create Python script to fix up framework head… (#143945)
…ers" (#143941)
Reland the script that converts lldb headers to RPC headers. The RPC
test was failing due to the incorrect input filepath being used.
Original commit message:
This commit replaces the shell script that fixes up includes for the
LLDB framework with a Python script. This script will also be used when
fixing up includes for the LLDBRPC.framework.
Commit: 6f3e2c076d6e3abac9cfd756e95a1ebb5979dd88
https://github.com/llvm/llvm-project/commit/6f3e2c076d6e3abac9cfd756e95a1ebb5979dd88
Author: Florian Mayer <fmayer at google.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
A llvm/test/Instrumentation/MemorySanitizer/X86/avx512vl-intrinsics.ll
A llvm/test/Instrumentation/MemorySanitizer/X86/x86-vpermi2.ll
Log Message:
-----------
[MSAN] fork avx512vl-intrinsics and x86-vpermi2 tests (#143643)
Commit: ee6362515dfa4fe4531c7a7690c270313669195b
https://github.com/llvm/llvm-project/commit/ee6362515dfa4fe4531c7a7690c270313669195b
Author: Philip Reames <preames at rivosinc.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M llvm/test/Analysis/CostModel/RISCV/rvv-shuffle.ll
M llvm/test/Analysis/CostModel/RISCV/shuffle-reverse.ll
Log Message:
-----------
[RISCV][CostModel] Add additional high LMUL reverse tests
Commit: e4c32a4147012da735205eb44a45b8be5eea048d
https://github.com/llvm/llvm-project/commit/e4c32a4147012da735205eb44a45b8be5eea048d
Author: Shafik Yaghmour <shafik.yaghmour at intel.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M clang/lib/Frontend/CompilerInstance.cpp
Log Message:
-----------
[Clang][NFC] Move Input into SmallVector instead of copy (#143830)
Static analysis flagged Input as a large object that would benefit from
being moved over being copied.
Commit: 902a991e1245537f5fc11e031409fdd69fba1c06
https://github.com/llvm/llvm-project/commit/902a991e1245537f5fc11e031409fdd69fba1c06
Author: Amir Ayupov <aaupov at fb.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M bolt/lib/Profile/DataAggregator.cpp
Log Message:
-----------
[BOLT] Make memory profile parsing optional (#129585)
Introduce `parse-mem-profile` option to limit overheads processing
tracing data (Intel PT or ARM ETM). By default, it's enabled for
perf data (existing behavior), unless `itrace` is passed to parse
tracing data where it's extremely expensive. In this case, the flag
needs to be set explicitly if needed.
Commit: 1ac61c8334782629462e6bf7c91b3fc8f4e663e8
https://github.com/llvm/llvm-project/commit/1ac61c8334782629462e6bf7c91b3fc8f4e663e8
Author: Diego Caballero <dieg0ca6aller0 at gmail.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M mlir/lib/Dialect/SparseTensor/Transforms/SparseVectorization.cpp
M mlir/test/Dialect/SparseTensor/minipipeline_vector.mlir
M mlir/test/Dialect/SparseTensor/sparse_vector.mlir
M mlir/test/Dialect/SparseTensor/sparse_vector_chain.mlir
M mlir/test/Dialect/SparseTensor/vectorize_reduction.mlir
Log Message:
-----------
[mlir][Vector] Remove `vector.extractelement/insertelement` from sparse vectorizer (#143270)
This PR is part of the last step to remove `vector.extractelement` and `vector.insertelement` ops.
RFC: https://discourse.llvm.org/t/rfc-psa-remove-vector-extractelement-and-vector-insertelement-ops-in-favor-of-vector-extract-and-vector-insert-ops
It updates the Sparse Vectorizer to use `vector.extract` and `vector.insert` instead of `vector.extractelement` and `vector.insertelement`.
Commit: 4a4035c86b0dd2b1aa09bb2ff4b6788c2bf88745
https://github.com/llvm/llvm-project/commit/4a4035c86b0dd2b1aa09bb2ff4b6788c2bf88745
Author: Andy Kaylor <akaylor at nvidia.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M clang/include/clang/CIR/MissingFeatures.h
M clang/lib/CIR/CodeGen/CIRGenCall.cpp
M clang/lib/CIR/CodeGen/CIRGenClass.cpp
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/CIRGenFunction.cpp
M clang/lib/CIR/CodeGen/CIRGenFunction.h
M clang/lib/CIR/CodeGen/CIRGenValue.h
M clang/test/CIR/CodeGen/ctor.cpp
Log Message:
-----------
[CIR] Add support for delegating constructors (#143932)
This change adds the necessary support for handling delegating
constructors in ClangIR. The implementation is kept as small as possible
by not handling any other sort of initialization (members, base classes,
etc.). That will be added in a future commit.
Commit: 8a2895ad89793591cd3f0114bc56cd345f651823
https://github.com/llvm/llvm-project/commit/8a2895ad89793591cd3f0114bc56cd345f651823
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M lldb/include/lldb/Host/JSONTransport.h
M lldb/source/Host/common/JSONTransport.cpp
M lldb/unittests/DAP/CMakeLists.txt
M lldb/unittests/DAP/TestBase.cpp
M lldb/unittests/DAP/TestBase.h
R lldb/unittests/DAP/TransportTest.cpp
M lldb/unittests/Host/CMakeLists.txt
A lldb/unittests/Host/JSONTransportTest.cpp
A lldb/unittests/TestingSupport/Host/PipeTestUtilities.h
Log Message:
-----------
[lldb] Implement JSON RPC (newline delimited) Transport (#143946)
This PR implements JSON RPC-style (i.e. newline delimited) JSON
transport. I moved the existing transport tests from DAP to Host and
moved the PipeTest base class into TestingSupport so it can be shared by
both.
Commit: 26f91610011f1a23cb306d61bbc1fafded7d077d
https://github.com/llvm/llvm-project/commit/26f91610011f1a23cb306d61bbc1fafded7d077d
Author: Charles Zablit <c_zablit at apple.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M lld/test/Unit/lit.cfg.py
M lldb/test/API/lit.cfg.py
M lldb/test/Shell/lit.cfg.py
M lldb/test/lit.cfg.py
M llvm/utils/lit/lit/LitConfig.py
M llvm/utils/lit/lit/TestRunner.py
M llvm/utils/lit/lit/discovery.py
M llvm/utils/lit/lit/worker.py
Log Message:
-----------
[lit] cleanup unused imports (#143930)
Remove imports that are not used in some lit test files.
Commit: 2ee8fdbfddcca86ac079104718e6fda3aabed0eb
https://github.com/llvm/llvm-project/commit/2ee8fdbfddcca86ac079104718e6fda3aabed0eb
Author: Uzair Nawaz <uzairnawaz at google.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M libc/src/__support/CMakeLists.txt
Log Message:
-----------
[libc] Prevent building wchar on MacOS (#143978)
Prevent building wchar on macos as it depends on uchar.h which isn't
available
Commit: 2b8f82b8308fc9df0a74cdd61a1257d9eb51189c
https://github.com/llvm/llvm-project/commit/2b8f82b8308fc9df0a74cdd61a1257d9eb51189c
Author: Luke Lau <luke at igalia.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVAsmPrinter.cpp
M llvm/lib/Target/RISCV/RISCVInsertVSETVLI.cpp
M llvm/lib/Target/RISCV/RISCVInstrInfo.cpp
M llvm/lib/Target/RISCV/RISCVInstrInfo.h
M llvm/lib/Target/RISCV/RISCVInstrInfoVPseudos.td
M llvm/lib/Target/RISCV/RISCVInstrPredicates.td
M llvm/test/CodeGen/RISCV/rvv/vleff-vlseg2ff-output.ll
M llvm/test/CodeGen/RISCV/rvv/vleff.ll
M llvm/test/CodeGen/RISCV/rvv/vlsegff-rv32-dead.ll
M llvm/test/CodeGen/RISCV/rvv/vlsegff-rv64-dead.ll
Log Message:
-----------
[RISCV] Remove implicit $vl def on vleNff pseudos (#143935)
In #90049 we removed the side effect flag on the vleNff pseudos with the
reasoning that we modelled the effect of setting vl as an output
operand.
This extends this further by removing the implicit def on vl, inserting
it back in RISCVInsertVSETVLI when we also emit the PseudoReadVL.
The motiviation for this is to make it easier to handle vleff in more
places in RISCVVectorPeephole in a follow up patch, which in turn will
make migrating the last vmerge peephole over from RISCVISelDAGToDAG
easier.
Some of these tests claim that the vleff shouldn't be deleted when none
of its values are used, but these are from the initial commit in
3b5430eb0dad5. I'm not sure if these still hold today?
This also moves the fault-only-first predicate to
RISCVInstrPredicates.td since we can't rely on the implicit vl operand
anymore.
Commit: 703e4460228fa5893dd0dff514ce44442b310b5e
https://github.com/llvm/llvm-project/commit/703e4460228fa5893dd0dff514ce44442b310b5e
Author: Feng Zou <feng.zou at intel.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M clang/lib/Driver/ToolChains/Clang.cpp
A clang/test/Driver/stack-alignment.c
Log Message:
-----------
[Clang] Add check for -mstack-alignment (#143124)
Currently the assertion in Alignment.h is triggered if a wrong value is
passed -mstack-alignment option:
```
Assertion `(Value == 0 || llvm::isPowerOf2_64(Value)) && "Alignment is neither 0 nor
a power of 2"' failed.
```
Added check in clang driver for the value of -mstack-alignment option,
and emitted an error message when the wrong value was passed.
Commit: 28c14d475fbd16d07db88c8d12edddfe9cc226ab
https://github.com/llvm/llvm-project/commit/28c14d475fbd16d07db88c8d12edddfe9cc226ab
Author: Michael Jones <michaelrj at google.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M libc/src/string/CMakeLists.txt
M libc/src/string/stpcpy.cpp
M libc/src/string/strcat.cpp
M libc/src/string/strncat.cpp
Log Message:
-----------
[libc] Independent strcat/strncat/stpcpy (#142643)
The previous implementations called other entrypoints. This patch fixes
strcat, strncat, and stpcpy to be properly independent.
Commit: 32e1360aaa9fbf5e388f9d061fa004b02c0a1359
https://github.com/llvm/llvm-project/commit/32e1360aaa9fbf5e388f9d061fa004b02c0a1359
Author: Andy Kaylor <akaylor at nvidia.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenValue.h
Log Message:
-----------
[CIR][NFC] Fix build problems with [[maybe_unused]] (#143994)
A recent commit introduced the use of [[maybe_unused]] following
LLVM_PREFFERED_TYPE(bool) on a member variable declaration. I compiled
it with clang 14.0, which doesn't support the `preferred_type` attribute
so I didn't notice a problem. However, starting with clang 18.0, this
reports an error ("an attribute list cannot appear here") because of the
mixing of attribute styles.
This change fixes the problem by replacing [[maybe_unused]] with
LLVM_ATTRIBUTE_UNUSED.
Commit: 70f44ec6feba56b076cf65e02b8876f185efdab9
https://github.com/llvm/llvm-project/commit/70f44ec6feba56b076cf65e02b8876f185efdab9
Author: Michael Jones <michaelrj at google.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M libc/docs/configure.rst
Log Message:
-----------
[libc][NFC] Accept doc fix (#143996)
Docgen updates the docs when the config options are changed. This update
has been waiting since https://github.com/llvm/llvm-project/pull/143187.
Commit: e1bb35d067568794585544b8942638c467d13bea
https://github.com/llvm/llvm-project/commit/e1bb35d067568794585544b8942638c467d13bea
Author: Reid Kleckner <rnk at google.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
M utils/bazel/llvm-project-overlay/libc/test/UnitTest/BUILD.bazel
Log Message:
-----------
[bazel] Fix modules build for llvm-libc (speculative) (#143995)
Commit: 3ddd137332237918fbb6175c20327fe765d2c4ad
https://github.com/llvm/llvm-project/commit/3ddd137332237918fbb6175c20327fe765d2c4ad
Author: Zhen Wang <37195552+wangzpgi at users.noreply.github.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M flang/lib/Semantics/resolve-names.cpp
M flang/test/Semantics/cuf21.cuf
Log Message:
-----------
[flang] [cuda] Move SetImplicityCUDADevice after symbols in block construct are converted to objects (#143791)
`SetImplicitCUDADevice` looks for `symbol.has<ObjectEntityDetails>()` to
set the device attribute before symbols inside block constructs are
converted to ObjectEntity. Fix is to move the call to
`SetImplicitCUDADevice` after those symbols are converted.
Commit: 22f9b4aa1dad597d908be77be1e10ba4c77330ce
https://github.com/llvm/llvm-project/commit/22f9b4aa1dad597d908be77be1e10ba4c77330ce
Author: Yaxun (Sam) Liu <yaxun.liu at amd.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M clang/lib/CodeGen/CGCUDANV.cpp
M clang/lib/Driver/Driver.cpp
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/test/Driver/hip-binding.hip
M clang/test/Driver/hip-phases.hip
M clang/test/Driver/hip-toolchain-no-rdc.hip
M clang/test/Driver/linker-wrapper.c
M clang/tools/clang-linker-wrapper/ClangLinkerWrapper.cpp
Log Message:
-----------
Reland [HIP] use offload wrapper for non-device-only non-rdc (#132869) (#143964)
Fixed two issues:
1. assertion with -flto. the linker wrapper action is missing for
wrapping the device binary. Added it for -flto.
2. when there are two HIP files, the kernels in the second file were not
found. This is because the -r option of linker wrapper assumes offload
entries section of HIP to be hip_offloading_entries but it is actually
llvm_offload_entries, causing the offload entries sections not made
unique for different object files. Fixed and tested working for both
-fgpu-rdc and -fno-gpu-rdc case with and without -r
Commit: 029f8892a500594bd044507352503249fd641e6c
https://github.com/llvm/llvm-project/commit/029f8892a500594bd044507352503249fd641e6c
Author: Luke Lau <luke at igalia.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVVectorPeephole.cpp
M llvm/test/CodeGen/RISCV/rvv/vmv.v.v-peephole.ll
M llvm/test/CodeGen/RISCV/rvv/vmv.v.v-peephole.mir
Log Message:
-----------
[RISCV] Fold vmv.v.v into vleNff.v (#143981)
We currently already fold vmerge.vvm into vleNff.v via
RISCVDAGToDAGISel::performCombineVMergeAndVOps, so this teaches
RISCVVectorPeephole::foldVMV_V_V to do the same.
Commit: 8890706db67384a423773cc921302dd63d950ef5
https://github.com/llvm/llvm-project/commit/8890706db67384a423773cc921302dd63d950ef5
Author: Yaxun (Sam) Liu <yaxun.liu at amd.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M clang/lib/CodeGen/CGCUDANV.cpp
M clang/lib/Driver/Driver.cpp
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/test/Driver/hip-binding.hip
M clang/test/Driver/hip-phases.hip
M clang/test/Driver/hip-toolchain-no-rdc.hip
M clang/test/Driver/linker-wrapper.c
M clang/tools/clang-linker-wrapper/ClangLinkerWrapper.cpp
Log Message:
-----------
Revert "Reland [HIP] use offload wrapper for non-device-only non-rdc (#132869) (#143964)"
This reverts commit 22f9b4aa1dad597d908be77be1e10ba4c77330ce.
Commit: 7232c07eb97d5c21d47a661c9cca8981c7f91698
https://github.com/llvm/llvm-project/commit/7232c07eb97d5c21d47a661c9cca8981c7f91698
Author: Yaxun (Sam) Liu <yaxun.liu at amd.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M clang/lib/CodeGen/CGCUDANV.cpp
M clang/lib/Driver/Driver.cpp
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/test/Driver/hip-binding.hip
M clang/test/Driver/hip-phases.hip
M clang/test/Driver/hip-toolchain-no-rdc.hip
M clang/test/Driver/linker-wrapper.c
M clang/tools/clang-linker-wrapper/ClangLinkerWrapper.cpp
Log Message:
-----------
Reland [HIP] use offload wrapper for non-device-only non-rdc (#143964)
Fixed a typo:
- auto Section = (Prefix + "llvm_offload_entries").str();
+ auto Section = (Prefix + "_offload_entries").str();
which broke buildbot e.g.
https://lab.llvm.org/buildbot/#/builders/208/builds/1948
Commit: 07dad4ecba43bcd92453a0cd4c351025126db683
https://github.com/llvm/llvm-project/commit/07dad4ecba43bcd92453a0cd4c351025126db683
Author: Fangrui Song <i at maskray.me>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M lld/ELF/Config.h
M lld/ELF/Driver.cpp
M lld/ELF/Symbols.cpp
M lld/ELF/Writer.cpp
M lld/docs/ReleaseNotes.rst
M lld/docs/ld.lld.1
M lld/test/ELF/driver.test
M lld/test/ELF/weak-undef-got-plt.s
M lld/test/ELF/weak-undef-hidden.s
M lld/test/ELF/weak-undef-rw.s
Log Message:
-----------
[ELF] Implement -z dynamic-undefined-weak
The behavior of an undefined weak reference is implementation defined.
For static -no-pie linking, dynamic relocations are generally avoided (except
IRELATIVE). -shared linking generally emits dynamic relocations.
Dynamic -no-pie linking and -pie allow flexibility. Changes adjust the
behavior for better consistency and simpler internal representation,
e.g. https://reviews.llvm.org/D63003 https://reviews.llvm.org/D105164
(generalized to undefined non-weak in
2fcaa00d1e2317a90c9071b735eb0e758b5dd58b).
GNU ld introduced -z [no]dynamic-undefined-weak option to fine-tune the
behavior. (The option is not very effective with -no-pie, e.g. on
x86-64, `ld.bfd a.o s.so -z dynamic-undefined-weak` generates
R_X86_64_NONE relocations instead of GLOB_DAT/JUMP_SLOT)
This patch implements -z [no]dynamic-undefined-weak option.
The effects are summarized as follows:
* Static -no-pie: no-op
* Dynamic -no-pie: nodynamic-undefined-weak suppresses GLOB_DAT/JUMP_SLOT
* Static -pie: dynamic-undefined-weak generates ABS/GLOB_DAT/JUMP_SLOT.
https://discourse.llvm.org/t/lld-weak-undefined-symbols-in-vdso-only/86749
* Dynamic -pie: nodynamic-undefined-weak suppresses ABS/GLOB_DAT/JUMP_SLOT
The -pie behavior likely stays stable while -no-pie (`!ctx.arg.isPic` in
`isStaticLinkTimeConstant`) behavior will likely change in the future.
The current default value of ctx.arg.zDynamicUndefined is selected to
prevent behavior changes.
Pull Request: https://github.com/llvm/llvm-project/pull/143831
Commit: 9992668404cfb2302f7a62f01884c210642caea1
https://github.com/llvm/llvm-project/commit/9992668404cfb2302f7a62f01884c210642caea1
Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M flang-rt/lib/cuda/descriptor.cpp
M flang/include/flang/Lower/LoweringOptions.def
M flang/include/flang/Optimizer/Builder/Runtime/CUDA/Descriptor.h
M flang/include/flang/Runtime/CUDA/descriptor.h
M flang/lib/Lower/ConvertCall.cpp
M flang/lib/Optimizer/Builder/Runtime/CUDA/Descriptor.cpp
A flang/test/Lower/CUDA/cuda-runtime-check.cuf
M flang/tools/bbc/bbc.cpp
Log Message:
-----------
[flang][cuda] Add runtime check for passing device arrays (#144003)
Commit: 4268360003e2dc6721469aa5ccab7efbb29dcbfd
https://github.com/llvm/llvm-project/commit/4268360003e2dc6721469aa5ccab7efbb29dcbfd
Author: Thirumalai Shaktivel <74826228+Thirumalai-Shaktivel at users.noreply.github.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
A flang/test/Lower/OpenMP/flush02.f90
M mlir/include/mlir/Dialect/OpenMP/OpenMPOps.td
Log Message:
-----------
[Flang] [OpenMP] Allow any type as argument to the FlushOp (#143844)
Fixes: #143842
Commit: cd573e0a547dba18e2a960967c1f24f124c6cb26
https://github.com/llvm/llvm-project/commit/cd573e0a547dba18e2a960967c1f24f124c6cb26
Author: Kazu Hirata <kazu at google.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M compiler-rt/lib/fuzzer/FuzzerDataFlowTrace.cpp
Log Message:
-----------
[compiler-rt] Remove unused local variables (NFC) (#144010)
Commit: 752538c12cf4b37499f73e1bf05ea421ab055665
https://github.com/llvm/llvm-project/commit/752538c12cf4b37499f73e1bf05ea421ab055665
Author: Kazu Hirata <kazu at google.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M llvm/tools/llvm-pdbutil/llvm-pdbutil.cpp
Log Message:
-----------
[llvm-pdbutil] Remove an unused local variable (NFC) (#144011)
Commit: 054f4a50bb2ec1e535111d779bc5fdc93314c55a
https://github.com/llvm/llvm-project/commit/054f4a50bb2ec1e535111d779bc5fdc93314c55a
Author: Kazu Hirata <kazu at google.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M polly/lib/Support/RegisterPasses.cpp
Log Message:
-----------
[polly] Remove an unused local variable (NFC) (#144012)
Commit: dfc5125946ade289840fa119716957ebce2d31d2
https://github.com/llvm/llvm-project/commit/dfc5125946ade289840fa119716957ebce2d31d2
Author: Alex MacLean <amaclean at nvidia.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M llvm/lib/Target/NVPTX/NVPTXISelDAGToDAG.cpp
M llvm/lib/Target/NVPTX/NVPTXISelDAGToDAG.h
M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
M llvm/lib/Target/NVPTX/NVPTXISelLowering.h
M llvm/lib/Target/NVPTX/NVPTXInstrInfo.td
M llvm/lib/Target/NVPTX/NVPTXIntrinsics.td
M llvm/test/CodeGen/NVPTX/fast-math.ll
M llvm/test/CodeGen/NVPTX/sqrt-approx.ll
Log Message:
-----------
[NVPTX] Consistently check fast-math flags when lowering fsqrt (#143776)
Ensure that we check the global, function-level, and instruction-level
flags when considering whether to use `sqrt.rn` or `sqrt.approx` to
lower either `@llvm.sqrt.f32` or `@llvm.nvvm.sqrt.f`
Commit: 432d06ab919ae18c4ed1e94148448501578a6c85
https://github.com/llvm/llvm-project/commit/432d06ab919ae18c4ed1e94148448501578a6c85
Author: Saiyedul Islam <Saiyedul.Islam at amd.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M clang/docs/HIPSupport.rst
M llvm/docs/AMDGPUDwarfExtensionsForHeterogeneousDebugging.rst
M llvm/docs/AMDGPUUsage.rst
M llvm/test/Analysis/KernelInfo/openmp/amdgpu.ll
M mlir/include/mlir/Dialect/LLVMIR/ROCDLDialect.h
Log Message:
-----------
[NFC][AMDGPU] Fix stale links to ROCm repositories (#143949)
Following GitHub organizations were merged into the ROCm org:
* ROCm-Developer-Tools
* RadeonOpenCompute
* ROCmSoftwarePlatform
Ensure that all hyperlinks to the old organizations now point to the new
organization at https://github.com/ROCm.
Commit: 4e80a033a1bade55bca8a32e267cf1b06d05b1ed
https://github.com/llvm/llvm-project/commit/4e80a033a1bade55bca8a32e267cf1b06d05b1ed
Author: Alex MacLean <amaclean at nvidia.com>
Date: 2025-06-12 (Thu, 12 Jun 2025)
Changed paths:
M llvm/lib/Target/NVPTX/NVPTXInstrInfo.td
M llvm/test/CodeGen/NVPTX/prmt.ll
Log Message:
-----------
[NVPTX] Use prmt.f4e to lower pointer alignment fshr idiom (#143407)
Commit: f64b3bb276e820f00911dbf6ecc484751daeb5f1
https://github.com/llvm/llvm-project/commit/f64b3bb276e820f00911dbf6ecc484751daeb5f1
Author: Adam Siemieniuk <adam.siemieniuk at intel.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M mlir/include/mlir/Conversion/LLVMCommon/Pattern.h
M mlir/lib/Dialect/AMX/Transforms/LegalizeForLLVMExport.cpp
M mlir/lib/Dialect/X86Vector/Transforms/LegalizeForLLVMExport.cpp
Log Message:
-----------
[mlir][llvm] Op interface LLVM converter (#143922)
Adds a utility conversion class for rewriting op interface instances
targeting LLVM dialect.
Commit: 483d19619c3221c1d54080e57e43052eb863436a
https://github.com/llvm/llvm-project/commit/483d19619c3221c1d54080e57e43052eb863436a
Author: Jim Lin <jim at andestech.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVFeatures.td
M llvm/lib/Target/RISCV/RISCVProcessors.td
M llvm/lib/Target/RISCV/RISCVSubtarget.h
M llvm/test/CodeGen/RISCV/features-info.ll
Log Message:
-----------
[RISCV] Add tune features for Andes 45 series cpus (#143899)
Add tune features TuneNoDefaultUnroll, TuneShortForwardBranchOpt and
TunePostRAScheduler for Andes 45 series cpus.
Commit: 4903c11a7e144d63635b115d97936a7aecf7a2f6
https://github.com/llvm/llvm-project/commit/4903c11a7e144d63635b115d97936a7aecf7a2f6
Author: Pengcheng Wang <wangpengcheng.pp at bytedance.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
M llvm/test/CodeGen/RISCV/memcmp-optsize.ll
M llvm/test/CodeGen/RISCV/memcmp.ll
Log Message:
-----------
[RISCV] Support memcmp expansion for vectors
This patch adds the support of generating vector instructions for
`memcmp`. This implementation is inspired by X86's.
We convert integer comparisons (eq/ne only) into vector comparisons
and do a vector reduction and to get the result.
The range of supported load sizes is (XLEN, VLEN * LMUL8] and
non-power-of-2 types are not supported.
Fixes #143294.
Reviewers: lukel97, asb, preames, topperc, dtcxzyw
Reviewed By: topperc, lukel97
Pull Request: https://github.com/llvm/llvm-project/pull/114517
Commit: 43be31e35ab0985ec381041762586902c2718751
https://github.com/llvm/llvm-project/commit/43be31e35ab0985ec381041762586902c2718751
Author: Fangrui Song <i at maskray.me>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M llvm/lib/Target/Sparc/AsmParser/SparcAsmParser.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/SparcAsmPrinter.cpp
M llvm/lib/Target/Sparc/SparcTargetObjectFile.cpp
Log Message:
-----------
SPARC: Simplify SparcMCExpr
Reduce direct uses of SparcMCExpr, facilitating transition to
MCSpecifierExpr in the future.
Commit: 1fae5918b3d6fbed8ce6d8a2edf31bdf304ca8db
https://github.com/llvm/llvm-project/commit/1fae5918b3d6fbed8ce6d8a2edf31bdf304ca8db
Author: Owen Pan <owenpiano at gmail.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M clang/test/Format/multiple-inputs-error.cpp
M clang/test/Format/ranges.cpp
M clang/tools/clang-format/ClangFormat.cpp
Log Message:
-----------
[clang-format] Fix an off-by-1 bug with -length option (#143302)
Also validate the argument value.
Fixes #56245
Commit: 1f4b1729851bcada646be75c2bc90e0d012525dd
https://github.com/llvm/llvm-project/commit/1f4b1729851bcada646be75c2bc90e0d012525dd
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M llvm/lib/Transforms/Scalar/GVN.cpp
A llvm/test/Transforms/GVN/opt-remark-assert-constant-uselistorder.ll
Log Message:
-----------
GVN: Fix trying to inspect uselist of constants when emitting remark (#144009)
Commit: 02f1f6967a847bba35fc207d61732f3466f39403
https://github.com/llvm/llvm-project/commit/02f1f6967a847bba35fc207d61732f3466f39403
Author: Longsheng Mou <longshengmou at gmail.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M mlir/lib/Dialect/Linalg/Transforms/WinogradConv2D.cpp
M mlir/test/Dialect/Linalg/transform-winograd-conv2d.mlir
Log Message:
-----------
[mlir][linalg] Add pure tensor check for `winogradConv2DHelper` (#142299)
This PR adds pure tensor semantics check for `winogradConv2DHelper` to
prevent a crash. Fixes #141566.
Commit: cd3d234868cad8b42e2a09a570e3e229d5ecfb08
https://github.com/llvm/llvm-project/commit/cd3d234868cad8b42e2a09a570e3e229d5ecfb08
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M llvm/lib/Target/X86/X86FixupInstTuning.cpp
M llvm/test/CodeGen/X86/combine-and.ll
M llvm/test/CodeGen/X86/combine-or-shuffle.ll
M llvm/test/CodeGen/X86/insertelement-zero.ll
M llvm/test/CodeGen/X86/masked_expandload.ll
M llvm/test/CodeGen/X86/masked_load.ll
M llvm/test/CodeGen/X86/sse-insertelt-from-mem.ll
M llvm/test/CodeGen/X86/sse-insertelt.ll
M llvm/test/CodeGen/X86/sse-scalar-fp-arith.ll
M llvm/test/CodeGen/X86/sse41.ll
M llvm/test/CodeGen/X86/vec_floor.ll
M llvm/test/CodeGen/X86/vector-shuffle-128-v2.ll
M llvm/test/CodeGen/X86/vector-shuffle-combining-ssse3.ll
M llvm/test/CodeGen/X86/vector-zmov.ll
M llvm/test/CodeGen/X86/vselect.ll
Log Message:
-----------
[X86] X86FixupInstTuning - extend BLENDPD/S -> MOVSD/S handling to SSE variant (#143961)
Commit: 02b6ed0bf139518c704a2996418e66f3a93260a1
https://github.com/llvm/llvm-project/commit/02b6ed0bf139518c704a2996418e66f3a93260a1
Author: Shamshura Egor <164661612+egorshamshura at users.noreply.github.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/lib/Sema/SemaTypeTraits.cpp
M clang/test/CXX/drs/cwg18xx.cpp
M clang/test/SemaCXX/overload-resolution-deferred-templates.cpp
M clang/test/SemaCXX/type-traits-unsatisfied-diags-std.cpp
M clang/test/SemaCXX/type-traits-unsatisfied-diags.cpp
Log Message:
-----------
[Clang] Added explanation why `is_constructible` evaluated to false. (#143309)
Added explanation why a is constructible evaluated to false. Also fixed
problem with ```ExtractTypeTraitFromExpression```. In case
```std::is_xxx_v<>``` with variadic pack it tries to get template
argument, but fails in expression ```Arg.getAsType()``` due to
```Arg.getKind() == TemplateArgument::ArgKind::Pack```, but not
```TemplateArgument::ArgKind::Type```.
Commit: c4caf00bfbf10caa88f1c46a561564b4f0f723af
https://github.com/llvm/llvm-project/commit/c4caf00bfbf10caa88f1c46a561564b4f0f723af
Author: LU-JOHN <John.Lu at amd.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp
M llvm/test/CodeGen/AMDGPU/mad_64_32.ll
M llvm/test/CodeGen/AMDGPU/srl64_reduce.ll
Log Message:
-----------
[AMDGPU] Convert more 64-bit lshr to 32-bit if shift amt>=32 (#138204)
Convert vector 64-bit lshr to 32-bit if shift amt is known to be >= 32.
Also convert scalar 64-bit lshr to 32-bit if shift amt is variable but
known to be >=32.
---------
Signed-off-by: John Lu <John.Lu at amd.com>
Commit: d4826cd324d9a10abdc67c973affa62d36dff4ee
https://github.com/llvm/llvm-project/commit/d4826cd324d9a10abdc67c973affa62d36dff4ee
Author: Sander de Smalen <sander.desmalen at arm.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/test/CodeGen/AArch64/aarch64-sme2-asm.ll
Log Message:
-----------
[AArch64] Observe Z-reg inline asm clobbers without SVE (#143742)
inline asm that clobbers any of the z-registers when not in streaming
mode, should still observe that the lower 128 bits of those registers
are clobbered.
Commit: 0cf333878d310bf9bbc8156cb7d8a0e271fb2c6f
https://github.com/llvm/llvm-project/commit/0cf333878d310bf9bbc8156cb7d8a0e271fb2c6f
Author: Orlando Cazalet-Hyams <orlando.hyams at sony.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M llvm/lib/IR/LLVMContextImpl.h
Log Message:
-----------
[NFC] Pack MDNodeKeyImpl<DILocation> from 40 to 32 bytes (#143891)
Commit: addd98f7a5b964a5a5860d65f327f3fc3b7e0a42
https://github.com/llvm/llvm-project/commit/addd98f7a5b964a5a5860d65f327f3fc3b7e0a42
Author: David Spickett <david.spickett at linaro.org>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M lldb/test/API/api/multiple-debuggers/TestMultipleDebuggers.py
M lldb/test/API/api/multiple-debuggers/multi-process-driver.cpp
Log Message:
-----------
[lldb][test] Don't call SBDebugger::Terminate if TestMultipleDebuggers times out (#143732)
Fixes #101162
This test did this:
* SBDebugger::Initialize
* Spawn a bunch of threads that do:
* SBDebugger::Create
* some work
* SBDebugger::Destroy
* Wait on those threads to finish then call SBDebugger::Terminate and
exit, or -
* Reach a time limit before all the threads finish, call
SBDebugger::Terminate and exit.
The problem was that in the timeout case, calling SBDebugger::Terminate
destroys data being used by threads that are still running. I expect
this test was expecting said threads to be so broken they were probably
stuck, but when the machine is just heavily loaded, one of them might
read that data before the whole program exits.
This means what should have been a timeout becomes a crash. Sometimes.
Which explains why we saw both timeouts and various signals on the
AArch64 Linux bot. It depends on the timings.
So I'm changing it not to call SBDebugger::Terminate in the timeout
case. We will have to tweak the timeout value based on what happens on
the buildbot, but we will know it's machine load not an lldb bug.
Also use _exit instead of exit, to skip more cleanup that might cause a
crash.
Commit: 8ba62fdb3d2da2f5f199ee7a07222620a451293f
https://github.com/llvm/llvm-project/commit/8ba62fdb3d2da2f5f199ee7a07222620a451293f
Author: Sirui Mu <msrlancern at gmail.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M clang/include/clang/CIR/MissingFeatures.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/CIRGenExpr.cpp
M clang/lib/CIR/CodeGen/CIRGenExprAggregate.cpp
M clang/lib/CIR/CodeGen/CIRGenFunction.cpp
M clang/lib/CIR/CodeGen/CIRGenFunction.h
M clang/lib/CIR/CodeGen/CIRGenValue.h
A clang/test/CIR/CodeGen/call.c
M clang/test/CIR/CodeGen/call.cpp
Log Message:
-----------
[CIR] Function calls with aggregate arguments and return values (#143377)
This patch updates cir.call operation and allows function calls with
aggregate arguments and return values.
It seems that C++ class support is still at a minimum now. I tried to
make a call to a C++ function with an argument of aggregate type but it
failed because the initialization of C++ class / struct is NYI. I also
tried to inline this part of support into this patch, but the mixed
patch quickly blows in size and becomes unsuitable for review. Thus,
tests for calling functions with aggregate arguments are added only for
C for now.
Commit: 2d49bc01cf07434138ea01ef7b9ba4b646b54183
https://github.com/llvm/llvm-project/commit/2d49bc01cf07434138ea01ef7b9ba4b646b54183
Author: David Sherwood <david.sherwood at arm.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M llvm/test/Transforms/LoopVectorize/check-prof-info.ll
Log Message:
-----------
[LV][NFC] Tidy up check-prof-info.ll test (#143884)
Commit: 4b59b7b94608ddbd21d14bec68400f2eb21f510d
https://github.com/llvm/llvm-project/commit/4b59b7b94608ddbd21d14bec68400f2eb21f510d
Author: Simone Pellegrini <simone.pellegrini at arm.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M mlir/lib/Dialect/Linalg/Transforms/ElementwiseOpFusion.cpp
M mlir/test/Dialect/Linalg/fusion-elementwise-ops.mlir
Log Message:
-----------
[mlir][Linalg] Fix fusing of indexed linalg consumer with different axes (#140892)
When fusing two `linalg.genericOp`, where the producer has index
semantics, invalid `affine.apply` ops can be generated where the number
of indices do not match the number of loops in the fused genericOp.
This patch fixes the issue by directly using the number of loops from
the generated fused op.
Commit: 67c590004d055b7aeb0f82787041a114c3a136b3
https://github.com/llvm/llvm-project/commit/67c590004d055b7aeb0f82787041a114c3a136b3
Author: Tim Gymnich <tim at gymni.ch>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M mlir/include/mlir/Dialect/AMDGPU/IR/AMDGPU.td
M mlir/lib/Conversion/AMDGPUToROCDL/AMDGPUToROCDL.cpp
M mlir/lib/Dialect/AMDGPU/IR/AMDGPUDialect.cpp
A mlir/test/Conversion/AMDGPUToROCDL/packed-ext.mlir
A mlir/test/Conversion/AMDGPUToROCDL/packed-trunc.mlir
M mlir/test/Dialect/AMDGPU/ops.mlir
Log Message:
-----------
[mlir][AMDGPU] Add scaled floating point conversion ops (#141554)
implement `ScaledExtPackedOp` and `PackedScaledTruncOp`
Commit: 06c783567069db169ee2d1545a4bd3ffd0e3fec0
https://github.com/llvm/llvm-project/commit/06c783567069db169ee2d1545a4bd3ffd0e3fec0
Author: David Spickett <david.spickett at linaro.org>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M lldb/test/API/api/multiple-debuggers/TestMultipleDebuggers.py
Log Message:
-----------
[lldb][test] Disable TestMultipleDebuggers again
I did manage to turn a crash into a non-zero return code,
but on the very first build it managed to time out.
I thought I had the appetite to tweak timeouts but
on second thought, I don't want yet another test to look
out for.
The test is not wrong, but on heavily loaded machines
it's always going to be inherently unstable.
Commit: 5762491e2a1935911c1e998a4865591d429f8559
https://github.com/llvm/llvm-project/commit/5762491e2a1935911c1e998a4865591d429f8559
Author: SivanShani-Arm <sivan.shani at arm.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M lld/ELF/Arch/AArch64.cpp
M lld/ELF/Config.h
M lld/ELF/Driver.cpp
M lld/ELF/InputFiles.cpp
M lld/ELF/InputFiles.h
M lld/ELF/SyntheticSections.cpp
M lld/test/ELF/aarch64-feature-pauth.s
Log Message:
-----------
[lld] Refactor storage of PAuth ABI core info (#141920)
Previously, the AArch64 PAuth ABI core values were stored as an
ArrayRef<uint8_t>, introducing unnecessary indirection.
This patch replaces the ArrayRef with two explicit uint64_t fields:
aarch64PauthAbiPlatform and aarch64PauthAbiVersion. This simplifies the
representation and improves readability.
No functional change intended, aside from improved error messages.
Commit: 058602372e2bb7460469c5c53cc36f0a4b131f54
https://github.com/llvm/llvm-project/commit/058602372e2bb7460469c5c53cc36f0a4b131f54
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M llvm/lib/Target/X86/X86FixupInstTuning.cpp
M llvm/test/CodeGen/X86/avx-insertelt.ll
M llvm/test/CodeGen/X86/avx-intrinsics-x86-upgrade.ll
M llvm/test/CodeGen/X86/coalesce_commute_movsd.ll
M llvm/test/CodeGen/X86/combine-and.ll
M llvm/test/CodeGen/X86/combine-or-shuffle.ll
M llvm/test/CodeGen/X86/commute-blend-sse41.ll
M llvm/test/CodeGen/X86/horizontal-sum.ll
M llvm/test/CodeGen/X86/insertelement-zero.ll
M llvm/test/CodeGen/X86/masked_load.ll
M llvm/test/CodeGen/X86/sse-insertelt.ll
M llvm/test/CodeGen/X86/sse-scalar-fp-arith.ll
M llvm/test/CodeGen/X86/sse2-intrinsics-fast-isel.ll
M llvm/test/CodeGen/X86/sse2-intrinsics-x86-upgrade.ll
M llvm/test/CodeGen/X86/sse2.ll
M llvm/test/CodeGen/X86/sse41-intrinsics-fast-isel.ll
M llvm/test/CodeGen/X86/sse41-intrinsics-x86-upgrade.ll
M llvm/test/CodeGen/X86/vec-strict-128-fp16.ll
M llvm/test/CodeGen/X86/vec_floor.ll
M llvm/test/CodeGen/X86/vector-blend.ll
M llvm/test/CodeGen/X86/vector-interleaved-load-i32-stride-4.ll
M llvm/test/CodeGen/X86/vector-interleaved-load-i32-stride-5.ll
M llvm/test/CodeGen/X86/vector-mul.ll
M llvm/test/CodeGen/X86/vector-shuffle-128-v2.ll
M llvm/test/CodeGen/X86/vector-shuffle-128-v4.ll
M llvm/test/CodeGen/X86/vector-shuffle-256-v8.ll
M llvm/test/CodeGen/X86/vector-shuffle-combining-ssse3.ll
M llvm/test/CodeGen/X86/vector-shuffle-concatenation.ll
M llvm/test/CodeGen/X86/vselect-2.ll
M llvm/test/CodeGen/X86/vselect.ll
Log Message:
-----------
[X86] X86FixupInstTuning - fold BLENDPS -> MOVSD (#144029)
Reduces codesize - make use of free PS<->PD domain transfers (like we do in many other places) and replace a suitable BLENDPS mask with MOVSD if OptSize or the scheduler prefers it
Commit: e2c27fd66a13c7a37cccbf4309532fcbce86c09b
https://github.com/llvm/llvm-project/commit/e2c27fd66a13c7a37cccbf4309532fcbce86c09b
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M llvm/lib/Target/X86/X86FixupInstTuning.cpp
Log Message:
-----------
[X86] X86FixupInstTuning - hoist OptSize flag. NFC.
Allow reuse in a future patch.
Commit: 6fc8ec720ea590bbdb94e19acefaf5bafdfcf817
https://github.com/llvm/llvm-project/commit/6fc8ec720ea590bbdb94e19acefaf5bafdfcf817
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineAddSub.cpp
M llvm/test/Transforms/InstCombine/sub-gep.ll
Log Message:
-----------
[InstCombine] Restore splat gep support in OptimizePointerDifference() (#143906)
When looking for the common base pointer, support the case where the
type changes because the GEP goes from pointer to vector of pointers.
This was supported prior to #142958.
Commit: 2019553a0b8811a23d7546cbace52a8e241a3b37
https://github.com/llvm/llvm-project/commit/2019553a0b8811a23d7546cbace52a8e241a3b37
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineAddSub.cpp
M llvm/lib/Transforms/InstCombine/InstCombineInternal.h
M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
Log Message:
-----------
[InstCombine] Extract EmitGEPOffsets() helper (NFC)
Extract a reusable helper for emitting a sum of multiple GEP
offsets.
Commit: 541e5118ce570c9bed74cb5ff836f88cf1c0e644
https://github.com/llvm/llvm-project/commit/541e5118ce570c9bed74cb5ff836f88cf1c0e644
Author: David Sherwood <david.sherwood at arm.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/VPlan.cpp
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
Log Message:
-----------
[LV] Use getFixedValue instead of getKnownMinValue when appropriate (#143526)
There are many places in VPlan and LoopVectorize where we use
getKnownMinValue to discover the number of elements in a vector. Where
we expect the vector to have a fixed length, I have used the stronger
getFixedValue call. I believe this is clearer and adds extra protection
in the form of an assert in getFixedValue that the vector is not
scalable.
While looking at VPFirstOrderRecurrencePHIRecipe::computeCost I also
took the liberty of simplifying the code.
In theory I believe this patch should be NFC, but I'm reluctant to add
that to the title in case we're just missing tests for some of the VPlan
changes. I built and ran the LLVM test suite when targeting neoverse-v1
and it seemed ok.
Commit: 9eef4d1c5fa6b1bcbbe675c14ca8301d5d346f7b
https://github.com/llvm/llvm-project/commit/9eef4d1c5fa6b1bcbbe675c14ca8301d5d346f7b
Author: Aaron Ballman <aaron at aaronballman.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M clang-tools-extra/clangd/unittests/HoverTests.cpp
M clang/docs/ReleaseNotes.rst
M clang/include/clang/AST/Expr.h
M clang/include/clang/AST/RecursiveASTVisitor.h
M clang/include/clang/Basic/StmtNodes.td
M clang/include/clang/Parse/Parser.h
M clang/include/clang/Sema/Sema.h
M clang/include/clang/Sema/SemaInternal.h
M clang/lib/AST/Expr.cpp
M clang/lib/AST/ExprClassification.cpp
M clang/lib/AST/ExprConstant.cpp
M clang/lib/AST/ItaniumMangle.cpp
M clang/lib/AST/StmtPrinter.cpp
M clang/lib/AST/StmtProfile.cpp
M clang/lib/Parse/ParseCXXInlineMethods.cpp
M clang/lib/Parse/ParseDecl.cpp
M clang/lib/Parse/ParseDeclCXX.cpp
M clang/lib/Parse/ParseExpr.cpp
M clang/lib/Parse/ParseExprCXX.cpp
M clang/lib/Parse/ParseInit.cpp
M clang/lib/Parse/ParseObjc.cpp
M clang/lib/Parse/ParseOpenACC.cpp
M clang/lib/Parse/ParseOpenMP.cpp
M clang/lib/Parse/ParseStmt.cpp
M clang/lib/Parse/ParseStmtAsm.cpp
M clang/lib/Parse/ParseTemplate.cpp
M clang/lib/Sema/Sema.cpp
M clang/lib/Sema/SemaChecking.cpp
M clang/lib/Sema/SemaCoroutine.cpp
M clang/lib/Sema/SemaDecl.cpp
M clang/lib/Sema/SemaDeclCXX.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/SemaLookup.cpp
M clang/lib/Sema/SemaObjC.cpp
M clang/lib/Sema/SemaOverload.cpp
M clang/lib/Sema/SemaStmt.cpp
M clang/lib/Sema/SemaStmtAttr.cpp
M clang/lib/Sema/SemaTemplateVariadic.cpp
M clang/lib/Sema/TreeTransform.h
M clang/lib/Serialization/ASTReaderStmt.cpp
M clang/lib/Serialization/ASTWriterStmt.cpp
M clang/lib/StaticAnalyzer/Core/ExprEngine.cpp
M clang/test/AST/ByteCode/literals.cpp
M clang/test/AST/ast-dump-recovery.c
M clang/test/AST/ast-dump-recovery.cpp
R clang/test/AST/ast-dump-recovery.m
M clang/test/CXX/drs/cwg1xx.cpp
M clang/test/CXX/drs/cwg26xx.cpp
M clang/test/CXX/module/basic/basic.link/p2.cppm
R clang/test/FixIt/typo.cpp
R clang/test/Index/complete-switch.c
M clang/test/Index/fix-its.c
M clang/test/Lexer/raw-string-ext.c
M clang/test/Modules/diagnose-missing-import.m
M clang/test/OpenMP/begin_declare_variant_messages.c
M clang/test/OpenMP/declare_reduction_messages.cpp
M clang/test/OpenMP/declare_variant_messages.c
M clang/test/OpenMP/declare_variant_messages.cpp
M clang/test/OpenMP/target_update_messages.cpp
M clang/test/Parser/cxx1z-decomposition.cpp
M clang/test/Parser/cxx1z-fold-expressions.cpp
M clang/test/Parser/cxx2c-pack-indexing.cpp
M clang/test/Parser/objc-foreach-syntax.m
M clang/test/Parser/opencl-atomics-cl20.cl
M clang/test/Parser/recovery.c
M clang/test/Parser/switch-recovery.cpp
M clang/test/Parser/switch-typo-correction.cpp
M clang/test/ParserOpenACC/parse-cache-construct.cpp
M clang/test/ParserOpenACC/parse-clauses.c
M clang/test/ParserOpenACC/parse-constructs.cpp
M clang/test/ParserOpenACC/parse-wait-clause.c
M clang/test/ParserOpenACC/parse-wait-construct.c
M clang/test/Sema/PR28181.c
M clang/test/Sema/builtin-unary-fp.c
A clang/test/Sema/c23-delayed-typo-correction-crashes.c
A clang/test/Sema/delayed-typo-correction-crashes.c
M clang/test/Sema/invalid-member.cpp
M clang/test/Sema/typo-correction-ambiguity.cpp
M clang/test/Sema/typo-correction-no-hang.c
M clang/test/Sema/typo-correction-no-hang.cpp
M clang/test/Sema/typo-correction-recursive.cpp
M clang/test/Sema/typo-correction.c
M clang/test/SemaCXX/arrow-operator.cpp
M clang/test/SemaCXX/constant-expression-cxx11.cpp
M clang/test/SemaCXX/conversion-function.cpp
M clang/test/SemaCXX/coroutines.cpp
A clang/test/SemaCXX/cxx-delayed-typo-correction-crashes.cpp
M clang/test/SemaCXX/cxx1z-decomposition.cpp
A clang/test/SemaCXX/cxx20-delayed-typo-correction-crashes.cpp
M clang/test/SemaCXX/cxx2a-adl-only-template-id.cpp
M clang/test/SemaCXX/destructor.cpp
M clang/test/SemaCXX/invalid-if-constexpr.cpp
M clang/test/SemaCXX/member-expr.cpp
M clang/test/SemaCXX/nested-name-spec.cpp
R clang/test/SemaCXX/pr13394-crash-on-invalid.cpp
M clang/test/SemaCXX/return.cpp
M clang/test/SemaCXX/typo-correction-crash.cpp
M clang/test/SemaCXX/typo-correction-cxx11.cpp
R clang/test/SemaCXX/typo-correction-delayed.cpp
M clang/test/SemaCXX/typo-correction.cpp
M clang/test/SemaCXX/virtuals.cpp
M clang/test/SemaObjC/call-super-2.m
M clang/test/SemaObjC/typo-correction-subscript.m
M clang/test/SemaObjC/undef-arg-super-method-call.m
M clang/test/SemaObjCXX/block-for-lambda-conversion.mm
M clang/test/SemaOpenACC/compute-construct-num_gangs-clause.cpp
M clang/test/SemaOpenCL/atomic-ops.cl
M clang/test/SemaOpenCL/clang-builtin-version.cl
M clang/test/SemaTemplate/concepts-recovery-expr.cpp
M clang/test/SemaTemplate/concepts.cpp
M clang/test/SemaTemplate/typo-variadic.cpp
M clang/tools/libclang/CXCursor.cpp
M clang/unittests/Sema/ExternalSemaSourceTest.cpp
Log Message:
-----------
Remove delayed typo expressions (#143423)
This removes the delayed typo correction functionality from Clang
(regular typo correction still remains) due to fragility of the
solution.
An RFC was posted here:
https://discourse.llvm.org/t/rfc-removing-support-for-delayed-typo-correction/86631
and while that RFC was asking for folks to consider stepping up to be
maintainers, and we did have a few new contributors show some interest,
experiments show that it's likely worth it to remove this functionality
entirely and focus efforts on improving regular typo correction.
This removal fixes ~20 open issues (quite possibly more), improves
compile time performance by roughly .3-.4%
(https://llvm-compile-time-tracker.com/?config=Overview&stat=instructions%3Au&remote=AaronBallman&sortBy=date),
and does not appear to regress diagnostic behavior in a way we wouldn't
find acceptable.
Fixes #142457
Fixes #139913
Fixes #138850
Fixes #137867
Fixes #137860
Fixes #107840
Fixes #93308
Fixes #69470
Fixes #59391
Fixes #58172
Fixes #46215
Fixes #45915
Fixes #45891
Fixes #44490
Fixes #36703
Fixes #32903
Fixes #23312
Fixes #69874
Commit: a5cbd2ab0bebc722f836cd3b04dbab691ef9ed2f
https://github.com/llvm/llvm-project/commit/a5cbd2ab0bebc722f836cd3b04dbab691ef9ed2f
Author: Diana Picus <Diana-Magda.Picus at amd.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M llvm/docs/AMDGPUUsage.rst
M llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.cpp
M llvm/lib/Target/AMDGPU/AMDGPUResourceUsageAnalysis.cpp
M llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.h
M llvm/lib/Target/AMDGPU/SIRegisterInfo.cpp
M llvm/lib/Target/AMDGPU/SIRegisterInfo.h
M llvm/test/CodeGen/AMDGPU/GlobalISel/extractelement.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-no-agprs-violations.ll
M llvm/test/CodeGen/AMDGPU/amdhsa-kernarg-preload-num-sgprs.ll
M llvm/test/CodeGen/AMDGPU/amdpal-callable.ll
M llvm/test/CodeGen/AMDGPU/amdpal-elf.ll
M llvm/test/CodeGen/AMDGPU/attr-amdgpu-flat-work-group-size.ll
M llvm/test/CodeGen/AMDGPU/attr-amdgpu-waves-per-eu.ll
M llvm/test/CodeGen/AMDGPU/call-alias-register-usage-agpr.ll
M llvm/test/CodeGen/AMDGPU/call-alias-register-usage0.ll
M llvm/test/CodeGen/AMDGPU/call-alias-register-usage1.ll
M llvm/test/CodeGen/AMDGPU/call-alias-register-usage2.ll
M llvm/test/CodeGen/AMDGPU/call-alias-register-usage3.ll
M llvm/test/CodeGen/AMDGPU/call-graph-register-usage.ll
M llvm/test/CodeGen/AMDGPU/coalescer_remat.ll
M llvm/test/CodeGen/AMDGPU/code-object-v3.ll
M llvm/test/CodeGen/AMDGPU/elf-notes.ll
M llvm/test/CodeGen/AMDGPU/flat-scratch-reg.ll
M llvm/test/CodeGen/AMDGPU/function-resource-usage.ll
M llvm/test/CodeGen/AMDGPU/hsa-metadata-kernel-code-props.ll
M llvm/test/CodeGen/AMDGPU/hsa.ll
R llvm/test/CodeGen/AMDGPU/init-whole-wave-vgpr-count-large.ll
R llvm/test/CodeGen/AMDGPU/init-whole-wave-vgpr-count-leaf.ll
R llvm/test/CodeGen/AMDGPU/init-whole-wave-vgpr-count-use-inactive.ll
R llvm/test/CodeGen/AMDGPU/init-whole-wave-vgpr-count.ll
M llvm/test/CodeGen/AMDGPU/ipra.ll
M llvm/test/CodeGen/AMDGPU/mcexpr-knownbits-assign-crash-gh-issue-110930.ll
M llvm/test/CodeGen/AMDGPU/multi-call-resource-usage-mcexpr.ll
M llvm/test/CodeGen/AMDGPU/pal-metadata-3.0-callable.ll
M llvm/test/CodeGen/AMDGPU/ps-shader-arg-count.ll
M llvm/test/CodeGen/AMDGPU/register-count-comments.ll
M llvm/test/CodeGen/AMDGPU/resource-optimization-remarks.ll
M llvm/test/CodeGen/AMDGPU/schedule-amdgpu-tracker-physreg.ll
M llvm/test/CodeGen/AMDGPU/schedule-amdgpu-trackers.ll
M llvm/test/CodeGen/AMDGPU/schedule-regpressure-limit2.ll
M llvm/test/CodeGen/AMDGPU/stack-realign-kernel.ll
M llvm/test/CodeGen/AMDGPU/tid-kd-xnack-any.ll
M llvm/test/CodeGen/AMDGPU/tid-kd-xnack-off.ll
M llvm/test/CodeGen/AMDGPU/tid-kd-xnack-on.ll
M llvm/test/CodeGen/AMDGPU/unnamed-function-resource-info.ll
M llvm/test/CodeGen/AMDGPU/vgpr-agpr-limit-gfx90a.ll
R llvm/test/CodeGen/AMDGPU/vgpr-count-compute.ll
R llvm/test/CodeGen/AMDGPU/vgpr-count-graphics.ll
Log Message:
-----------
Revert "[AMDGPU] Skip register uses in AMDGPUResourceUsageAnalysis (#… (#144039)
…133242)"
This reverts commit 130080fab11cde5efcb338b77f5c3b31097df6e6 because it
causes issues in testcases similar to coalescer_remat.ll [1], i.e. when
we use a VGPR tuple but only write to its lower parts. The high VGPRs
would then not be included in the vgpr_count, and accessing them would
be an out of bounds violation.
[1]
https://github.com/llvm/llvm-project/blob/main/llvm/test/CodeGen/AMDGPU/coalescer_remat.ll
Commit: be9994b09206a84a32c3029b409587008d179b95
https://github.com/llvm/llvm-project/commit/be9994b09206a84a32c3029b409587008d179b95
Author: Abhina Sree <Abhina.Sreeskantharajan at ibm.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M llvm/include/llvm/Support/AutoConvert.h
M llvm/lib/Support/AutoConvert.cpp
M llvm/lib/Support/Unix/Path.inc
M llvm/lib/Support/Unix/Program.inc
Log Message:
-----------
[SystemZ][z/OS] Refactor AutoConvert more (#143955)
This patch removes the C++
disablezOSAutoConversion,enablezOSAutoConversion declarations and also
updates Path.inc to use the common function.
Commit: 30725efe671bc82bf9095a575aece60fc40fbef5
https://github.com/llvm/llvm-project/commit/30725efe671bc82bf9095a575aece60fc40fbef5
Author: Aaron Ballman <aaron at aaronballman.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M clang/lib/Parse/ParseExpr.cpp
M clang/lib/Sema/SemaExpr.cpp
M clang/lib/Sema/SemaExprCXX.cpp
Log Message:
-----------
Fix build after removing delayed typo expression
This addresses issues found by:
https://lab.llvm.org/buildbot/#/builders/64/builds/4220
https://lab.llvm.org/buildbot/#/builders/51/builds/17890
Commit: 4236423ee863be5903819db57205fc83a4bd21e1
https://github.com/llvm/llvm-project/commit/4236423ee863be5903819db57205fc83a4bd21e1
Author: Ilia Kuklin <ikuklin at accesssoftek.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M lldb/include/lldb/ValueObject/DILAST.h
M lldb/include/lldb/ValueObject/DILEval.h
M lldb/include/lldb/ValueObject/DILLexer.h
M lldb/source/ValueObject/DILAST.cpp
M lldb/source/ValueObject/DILEval.cpp
M lldb/source/ValueObject/DILLexer.cpp
M lldb/source/ValueObject/DILParser.cpp
M lldb/test/API/commands/frame/var-dil/basics/ArraySubscript/TestFrameVarDILArraySubscript.py
A lldb/test/API/commands/frame/var-dil/basics/BitFieldExtraction/Makefile
A lldb/test/API/commands/frame/var-dil/basics/BitFieldExtraction/TestFrameVarDILBitFieldExtraction.py
A lldb/test/API/commands/frame/var-dil/basics/BitFieldExtraction/main.cpp
Log Message:
-----------
[LLDB] Add bit extraction to DIL (#141422)
Commit: 41b37f05554ae59974675ae219430b5598c6159f
https://github.com/llvm/llvm-project/commit/41b37f05554ae59974675ae219430b5598c6159f
Author: Michael Buch <michaelbuch12 at gmail.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M lldb/source/Commands/CommandObjectMemory.cpp
M lldb/test/API/functionalities/memory/find/TestMemoryFind.py
Log Message:
-----------
[lldb] CommandObjectMemoryFind: Improve expression evaluation error messages (#144036)
We now bubble up the expression evaluation diagnostics to the user and
also distinguish between "expression failed to parse/run" versus other
ways in which expressions didn't complete (e.g., setup errors, etc.).
Before:
```
(lldb) memory find -e "" 0x16fdfedc0 0x16fdfede0
error: expression evaluation failed. pass a string instead
(lldb) memory find -e "invalid" 0x16fdfedc0 0x16fdfede0
error: expression evaluation failed. pass a string instead
```
After:
```
(lldb) memory find -e "" 0x16fdfedc0 0x16fdfede0
error: Expression evaluation failed:
error: No result returned from expression. Exit status: 1
(lldb) memory find -e "invalid" 0x16fdfedc0 0x16fdfede0
error: Expression evaluation failed:
error: <user expression 0>:1:1: use of undeclared identifier 'invalid'
1 | invalid
| ^~~~~~~
```
Commit: f1036d844e4b886ac702859ccf8a19cf2153c7f7
https://github.com/llvm/llvm-project/commit/f1036d844e4b886ac702859ccf8a19cf2153c7f7
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M llvm/lib/Target/X86/X86InstrInfo.cpp
Log Message:
-----------
[X86] X86InstrInfo::commuteInstructionImpl - remove (V)BLENDPD/S commutation to (V)MOVSD/S optsize handling (#144051)
Just commute with (V)BLENDPD/S like all other BLEND instructions
This is now handled more generally by the X86FixupInstTuningPass (OptSize fold occurs even without a scheduler model).
First step towards #142972
Commit: cc365331af423de99ae98655d035e4892842fe97
https://github.com/llvm/llvm-project/commit/cc365331af423de99ae98655d035e4892842fe97
Author: Stephen Tozer <stephen.tozer at sony.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M llvm/CMakeLists.txt
M llvm/cmake/modules/HandleLLVMOptions.cmake
M llvm/docs/CMake.rst
M llvm/include/llvm/Config/llvm-config.h.cmake
Log Message:
-----------
[DLCov] Origin-Tracking: Add config options (#143590)
This patch is part of a series that adds origin-tracking to the debugify
source location coverage checks, allowing us to report symbolized stack
traces of the point where missing source locations appear.
This patch adds the configuration options needed to enable this feature,
in the form of a new CMake option that enables a flag in
`llvm-config.h`; this is not an entirely new CMake flag, but a new
option, `COVERAGE_AND_ORIGIN`, for the existing flag
`LLVM_ENABLE_DEBUGLOC_COVERAGE_TRACKING`. This patch contains
documentation, but no actual implementation for the flag itself.
Commit: fbea0fc5c77713a4d62db2512b1b51cc76ed6a25
https://github.com/llvm/llvm-project/commit/fbea0fc5c77713a4d62db2512b1b51cc76ed6a25
Author: Martin Wehking <martin.wehking at arm.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M clang/lib/Basic/Targets/AArch64.cpp
M clang/lib/Basic/Targets/AArch64.h
M clang/test/Preprocessor/aarch64-target-features.c
Log Message:
-----------
Add Macro for CSSC Feature (#143148)
Add a new __ARM_FEATURE_CSSC macro that can be utilized during the
preprocessing stage.
__ARM_FEATURE_CSSC is defined to 1 if there is hardware support for
CSSC.
Implements the ACLE change:
https://github.com/ARM-software/acle/pull/394
Commit: 9a237f35ef58c838a461d560908e380c481aadad
https://github.com/llvm/llvm-project/commit/9a237f35ef58c838a461d560908e380c481aadad
Author: Shilei Tian <i at tianshilei.me>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
M llvm/test/MC/AMDGPU/gfx11_asm_vop1.s
M llvm/test/MC/AMDGPU/gfx11_asm_vop1_t16_err.s
Log Message:
-----------
[AMDGPU][AsmParser] Support true16 register suffix for valid register range (#143997)
Commit: d7ddd461162cc5585408417f64dd160929dd0691
https://github.com/llvm/llvm-project/commit/d7ddd461162cc5585408417f64dd160929dd0691
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M llvm/lib/Target/X86/X86CompressEVEX.cpp
M llvm/lib/Target/X86/X86PadShortFunction.cpp
Log Message:
-----------
[X86] Add start/end debug messages for the X86CompressEVEXPass and X86PadShortFunctionPass (#144056)
Commit: 4f8187c0dc6e7a818ebf3272a0c022203f901e96
https://github.com/llvm/llvm-project/commit/4f8187c0dc6e7a818ebf3272a0c022203f901e96
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M llvm/test/Instrumentation/ThreadSanitizer/atomic-non-integer.ll
Log Message:
-----------
[TSan] Regenerate test checks (NFC)
Commit: a59e4acd753007c83594a6a56654025d4202a528
https://github.com/llvm/llvm-project/commit/a59e4acd753007c83594a6a56654025d4202a528
Author: Ryan Buchner <92571492+bababuck at users.noreply.github.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/test/CodeGen/RISCV/short-forward-branch-opt.ll
M llvm/test/CodeGen/RISCV/zicond-opts.ll
Log Message:
-----------
[RISCV] Lower SELECT's with one constant more efficiently using Zicond (#143581)
See #143580 for MR with the test commit.
Performs the following transformations:
(select c, c1, t) -> (add (czero_nez t - c1, c), c1)
(select c, t, c1) -> (add (czero_eqz t - c1, c), c1)
@mgudim
Commit: 85a9f2e14859b472750f13fb441291e6e9c893a0
https://github.com/llvm/llvm-project/commit/85a9f2e14859b472750f13fb441291e6e9c893a0
Author: zhijian lin <zhijian at ca.ibm.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M llvm/include/llvm/CodeGen/TargetLowering.h
M llvm/include/llvm/IR/IntrinsicsPowerPC.td
M llvm/lib/Target/PowerPC/PPCISelLowering.cpp
M llvm/lib/Target/PowerPC/PPCISelLowering.h
M llvm/lib/Target/PowerPC/PPCInstr64Bit.td
M llvm/lib/Target/PowerPC/PPCInstrInfo.td
M llvm/test/CodeGen/PowerPC/PR35812-neg-cmpxchg.ll
M llvm/test/CodeGen/PowerPC/all-atomics.ll
M llvm/test/CodeGen/PowerPC/atomic-2.ll
M llvm/test/CodeGen/PowerPC/atomic-compare-exchange-weak.ll
M llvm/test/CodeGen/PowerPC/atomic-float.ll
M llvm/test/CodeGen/PowerPC/atomicrmw-cond-sub-clamp.ll
M llvm/test/CodeGen/PowerPC/atomicrmw-uinc-udec-wrap.ll
M llvm/test/CodeGen/PowerPC/atomics-regression.ll
M llvm/test/CodeGen/PowerPC/atomics.ll
M llvm/test/CodeGen/PowerPC/loop-comment.ll
M llvm/test/Transforms/AtomicExpand/PowerPC/atomicrmw-fp.ll
Log Message:
-----------
[PowerPC] enable AtomicExpandImpl::expandAtomicCmpXchg for powerpc (#142395)
In PowerPC, the AtomicCmpXchgInst is lowered to
ISD::ATOMIC_CMP_SWAP_WITH_SUCCESS. However, this node does not handle
the weak attribute of AtomicCmpXchgInst. As a result, when compiling C++
atomic_compare_exchange_weak_explicit, the generated assembly includes a
"reservation lost" loop — i.e., it branches back and retries if the
stwcx. (store-conditional) fails. This differs from GCC’s codegen, which
does not include that loop for weak compare-exchange.
Since PowerPC uses LL/SC-style atomic instructions, the patch enables
AtomicExpandImpl::expandAtomicCmpXchg for PowerPC. With this, the weak
attribute is properly respected, and the "reservation lost" loop is
removed for weak operations.
---------
Co-authored-by: Matt Arsenault <arsenm2 at gmail.com>
Commit: 4a47634a0075c49051cb4708a7f54577ecb080f4
https://github.com/llvm/llvm-project/commit/4a47634a0075c49051cb4708a7f54577ecb080f4
Author: Tom Eccles <tom.eccles at arm.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M flang/include/flang/Evaluate/tools.h
M flang/lib/Lower/OpenMP/ClauseProcessor.cpp
M flang/lib/Lower/OpenMP/Clauses.cpp
M flang/lib/Semantics/check-omp-structure.cpp
A flang/test/Lower/OpenMP/depend-complex.f90
A flang/test/Lower/OpenMP/depend-substring.f90
A flang/test/Semantics/OpenMP/depend-substring.f90
Log Message:
-----------
[flang][OpenMP] Support substrings and complex part refs for DEPEND (#143907)
Fixes #142404
The parser can't tell the difference between array indexing and a
substring: that has to be done in semantics once we have types.
Substrings can only be in the form string([lower]:[higher]) not
string(index) or string(lower:higher:step). I added semantic checks to
catch this for the DEPEND clause.
This patch also adds lowering for correct substrings and for complex
part references.
Commit: 6ca31ad720ba32bff3664af218ec2d3c29bdd1b0
https://github.com/llvm/llvm-project/commit/6ca31ad720ba32bff3664af218ec2d3c29bdd1b0
Author: Tom Eccles <tom.eccles at arm.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M flang/lib/Semantics/resolve-directives.cpp
A flang/test/Semantics/OpenMP/parallel-master-goto.f90
Log Message:
-----------
[flang][OpenMP] improve semantic check for invalid goto (#144040)
Fixes #143229
Commit: 9c2e0bd59ce0438fcad61b0468fd939c6282d048
https://github.com/llvm/llvm-project/commit/9c2e0bd59ce0438fcad61b0468fd939c6282d048
Author: zhijian lin <zhijian at ca.ibm.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
A llvm/test/CodeGen/PowerPC/mtvsrbmi.ll
Log Message:
-----------
[PowerPC][NFC] Pre-commit test case for checking whether `mtvsrbmi` power10 instruction not used (#143956)
Verify whether the generated assembly for the following function
includes the mtvsrbmi instruction.
vector unsigned char v00FF()
{
vector unsigned char x = { 0xFF, 0,0,0, 0,0,0,0, 0,0,0,0, 0,0,0,0 };
return x;
}
Commit: 7e0bb2b0b9f66715c07c5eeaadb367d1a084d4c7
https://github.com/llvm/llvm-project/commit/7e0bb2b0b9f66715c07c5eeaadb367d1a084d4c7
Author: Kareem Ergawy <kareem.ergawy at amd.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M flang/lib/Optimizer/Transforms/SimplifyFIROperations.cpp
A flang/test/Transforms/do-concurrent-localizer-dealloc-region.fir
A flang/test/Transforms/do-concurrent-localizer-init-region.fir
Log Message:
-----------
[flang][fir] Extend locality specs lowering to support `init` and `dealloc` regions (#144027)
Extending `fir.do_concurrent` to `fir.do_loop ... unordered` lowering by
adding support for lowring/inlining non-empty `init` and `dealloc`
regions.
Resolves https://github.com/llvm/llvm-project/issues/143897 (actually
handles the todo).
Commit: ea73fc5f079d1849ca3bed902e598191105a95dc
https://github.com/llvm/llvm-project/commit/ea73fc5f079d1849ca3bed902e598191105a95dc
Author: zhijian lin <zhijian at ca.ibm.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M llvm/test/CodeGen/PowerPC/mtvsrbmi.ll
Log Message:
-----------
[PowerPC] fixed mtvsrbmi.ll test case error caused by run the update_llc_test_checks.py (#144075)
fixed mtvsrbmi.ll test case error which caused by run the
update_llc_test_checks.py
Commit: c3ec9e3f6553b43caf2b9d754f128abbf44cf80e
https://github.com/llvm/llvm-project/commit/c3ec9e3f6553b43caf2b9d754f128abbf44cf80e
Author: Michael Buch <michaelbuch12 at gmail.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugInfoEntry.cpp
Log Message:
-----------
[lldb][DWARF] Don't try to compute address range information of forward declarations (#144059)
This fixes the error reported in
https://github.com/llvm/llvm-project/pull/144037.
When computing the aranges table of a CU, LLDB would currently visit all
`DW_TAG_subprogram` DIEs and check their
`DW_AT_low_pc`/`DW_AT_high_pc`/`DW_AT_ranges` attributes. If those don't
exist it would error out and spam the console. Some subprograms
(particularly forward declarations) don't have low/high pc attributes,
so it's not really an "error". See DWARFv5 spec section `3.3.3
Subroutine and Entry Point Locations`:
```
A subroutine entry may have either a DW_AT_low_pc and DW_AT_high_pc
pair of attributes or a DW_AT_ranges attribute whose values encode the
contiguous or non-contiguous address ranges, respectively, of the machine
instructions generated for the subroutine (see Section 2.17 on page 51).
...
A subroutine entry representing a subroutine declaration that is not also a
definition does not have code address or range attributes.
```
We should just ignore those DIEs.
Commit: 6f999a5d99e5cb21520d8a7878ed0d3a32971af6
https://github.com/llvm/llvm-project/commit/6f999a5d99e5cb21520d8a7878ed0d3a32971af6
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M llvm/test/CodeGen/X86/vector-pcmp.ll
Log Message:
-----------
[x86] vector-pcmp.ll - regenerate VPTERNLOGD asm comment
Commit: a361a3dc7a12b776507f48035f245e764c45455d
https://github.com/llvm/llvm-project/commit/a361a3dc7a12b776507f48035f245e764c45455d
Author: Yash Solanki <67216443+yashnator at users.noreply.github.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
A llvm/test/Transforms/InstCombine/select-to-cmp.ll
Log Message:
-----------
[llvm][InstCombine] Fold select to cmp for weak and inverted inequalities (#143445)
Commit: 8b11de70681355d7e7a4f8f3da85afa31fa7fc74
https://github.com/llvm/llvm-project/commit/8b11de70681355d7e7a4f8f3da85afa31fa7fc74
Author: Fabian Ritter <fabian.ritter at amd.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
M llvm/lib/Target/AMDGPU/SIISelLowering.h
M llvm/lib/Target/AMDGPU/SIInstructions.td
A llvm/test/CodeGen/AMDGPU/ptradd-sdag.ll
Log Message:
-----------
[AMDGPU][SDAG] Initial support for ISD::PTRADD (#141725)
Enable generation of PTRADD SelectionDAG nodes for pointer arithmetic for SI,
for now behind an internal CLI option. Also add basic patterns to match these
nodes. Optimizations will come in follow-up PRs. Basic tests for SDAG codegen
with PTRADD are in test/CodeGen/AMDGPU/ptradd-sdag.ll
Only affects 64-bit address spaces for now, since the immediate use case only
affects the flat address space.
For SWDEV-516125.
Commit: 0a0960dac69fc88a3c8bd5e2099f8d45b0292c78
https://github.com/llvm/llvm-project/commit/0a0960dac69fc88a3c8bd5e2099f8d45b0292c78
Author: Darren Wihandi <65404740+fairywreath at users.noreply.github.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVBase.td
M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVCastOps.td
M mlir/lib/Dialect/SPIRV/IR/SPIRVDialect.cpp
M mlir/lib/Dialect/SPIRV/IR/SPIRVTypes.cpp
M mlir/lib/Target/SPIRV/Deserialization/Deserializer.cpp
M mlir/lib/Target/SPIRV/Serialization/Serializer.cpp
M mlir/test/Conversion/FuncToSPIRV/types-to-spirv.mlir
M mlir/test/Dialect/SPIRV/IR/arithmetic-ops.mlir
M mlir/test/Dialect/SPIRV/IR/atomic-ops.mlir
M mlir/test/Dialect/SPIRV/IR/cast-ops.mlir
M mlir/test/Dialect/SPIRV/IR/composite-ops.mlir
M mlir/test/Dialect/SPIRV/IR/gl-ops.mlir
M mlir/test/Dialect/SPIRV/IR/logical-ops.mlir
M mlir/test/Dialect/SPIRV/IR/non-uniform-ops.mlir
M mlir/test/Dialect/SPIRV/IR/types.mlir
M mlir/test/Dialect/SPIRV/Transforms/vce-deduction.mlir
M mlir/test/Target/SPIRV/cast-ops.mlir
M mlir/test/Target/SPIRV/logical-ops.mlir
Log Message:
-----------
[mlir][spirv] Add bfloat16 support (#141458)
Adds bf16 support to SPIRV by using the `SPV_KHR_bfloat16` extension.
Only a few operations are supported, including loading from and storing
to memory, conversion to/from other types, cooperative matrix operations
(including coop matrix arithmetic ops) and dot product support.
This PR adds the type definition and implements the basic cast
operations. Arithmetic/coop matrix ops will be added in a separate PR.
Commit: e6a3579653196af337f191ed2a3acbbf0e6d01bb
https://github.com/llvm/llvm-project/commit/e6a3579653196af337f191ed2a3acbbf0e6d01bb
Author: Ross Brunton <ross at codeplay.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M offload/liboffload/src/OffloadImpl.cpp
M offload/plugins-nextgen/amdgpu/src/rtl.cpp
M offload/plugins-nextgen/common/include/PluginInterface.h
M offload/plugins-nextgen/common/src/PluginInterface.cpp
M offload/plugins-nextgen/cuda/src/rtl.cpp
M offload/plugins-nextgen/host/src/rtl.cpp
Log Message:
-----------
[Offload] Replace device info queue with a tree (#144050)
Previously, device info was returned as a queue with each element having
a "Level" field indicating its nesting level. This replaces this queue
with a more traditional tree-like structure.
This should not result in a change to the output of
`llvm-offload-device-info`.
Commit: 82911f188be7ce7cb0a04b7fd648ea8b4aad2e59
https://github.com/llvm/llvm-project/commit/82911f188be7ce7cb0a04b7fd648ea8b4aad2e59
Author: David Spickett <david.spickett at linaro.org>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M lldb/unittests/Host/JSONTransportTest.cpp
Log Message:
-----------
[lldb][test] Skip ReadAfterClose JSON Transport tests on Windows
These were failing on our Windows on Arm bot, or more precisely,
not even completing.
This is because Microsoft's C runtime does extra parameter validation.
So when we called _read with an invalid fd, it called an invalid
parameter handler instead of returning an error.
https://learn.microsoft.com/en-us/%20cpp/c-runtime-library/reference/read?view=msvc-170
https://learn.microsoft.com/en-us/%20cpp/c-runtime-library/parameter-validation?view=msvc-170
(lldb) run
Process 8440 launched: 'C:\Users\tcwg\llvm-worker\lldb-aarch64-windows\build\tools\lldb\unittests\Host\HostTests.exe' (aarch64)
Process 8440 stopped
* thread #1, stop reason = Exception 0xc0000409 encountered at address 0x7ffb7453564c
frame #0: 0x00007ffb7453564c ucrtbase.dll`_get_thread_local_invalid_parameter_handler + 652
ucrtbase.dll`_get_thread_local_invalid_parameter_handler:
-> 0x7ffb7453564c <+652>: brk #0xf003
ucrtbase.dll`_invalid_parameter_noinfo:
0x7ffb74535650 <+0>: b 0x7ffb745354d8 ; _get_thread_local_invalid_parameter_handler + 280
0x7ffb74535654 <+4>: nop
0x7ffb74535658 <+8>: nop
You can override this handler but I'm assuming that this reading
after close isn't a crucial feature, so disabling the tests seems
like the way to go.
If it is crucial, we can check the fd before we use it.
Tests added by https://github.com/llvm/llvm-project/pull/143946.
Commit: 9670e09d0eac596fba6bf03ef1a6f3229dddee46
https://github.com/llvm/llvm-project/commit/9670e09d0eac596fba6bf03ef1a6f3229dddee46
Author: Devon Loehr <DKLoehr at users.noreply.github.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M clang/include/clang/Basic/DiagnosticGroups.td
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/lib/Sema/SemaDecl.cpp
M clang/test/SemaCXX/unique_object_duplication.cpp
M clang/test/SemaCXX/unique_object_duplication.h
Log Message:
-----------
Enable unique-object-duplication warning for windows (#143537)
Followup to #125526. This expands the logic of the
unique-object-duplication warning so that it also works for windows
code.
For the most part, the logic is unchanged, merely substituting "has no
import/export annotation" in place of "has hidden visibility". However,
there are some small inconsistencies between the two; namely, visibility
is propagated through nested classes, while import/export annotations
aren't.
This PR:
1. Updates the logic for the warning to account for the differences
between posix and windows
2. Changes the warning message and documentation appropriately
3. Updates the tests to cover windows, and adds new test cases for the
places where behavior differs.
This PR was tested by building chromium (cross compiling linux->windows)
with the changes in place. After accounting for the differences in
semantics, no new warnings were discovered.
Commit: cf6ae065a042aae6324b28e99628c40bc53be0b7
https://github.com/llvm/llvm-project/commit/cf6ae065a042aae6324b28e99628c40bc53be0b7
Author: nicebert <110385235+nicebert at users.noreply.github.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M openmp/runtime/src/include/ompx.h.var
Log Message:
-----------
[OpenMP] Remove declaration and usage of __AMDGCN_WAVEFRONT_SIZE (#143761)
Removes usage of __AMDGCN_WAVEFRONT_SIZE as compile time constant.
---------
Co-authored-by: Shilei Tian <i at tianshilei.me>
Commit: ebd7f7539b1c2bc7d5e391bbb00cb56dc245b2dd
https://github.com/llvm/llvm-project/commit/ebd7f7539b1c2bc7d5e391bbb00cb56dc245b2dd
Author: Orlando Cazalet-Hyams <orlando.hyams at sony.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
Log Message:
-----------
[KeyInstr][NFC] Fix incorrect atomGroup/rank uint size in computeKeyInstructions
Commit: 9e622986526a35f3f8bc60a7fc756b5c7bf825c0
https://github.com/llvm/llvm-project/commit/9e622986526a35f3f8bc60a7fc756b5c7bf825c0
Author: Darren Wihandi <65404740+fairywreath at users.noreply.github.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M mlir/lib/Dialect/SPIRV/Transforms/SPIRVConversion.cpp
M mlir/test/Conversion/ConvertToSPIRV/func-signature-vector-unroll.mlir
Log Message:
-----------
[mlir][spirv] Fix FuncOpVectorUnroll to process placeholder values in all blocks (#142339)
`FuncOpVectorUnroll` contains logic that replaces function arguments by
placeholders values. These replacements also involve changing all
instructions in the function that use the arguments to use these
placeholders. These placeholder values will later be changed back to use
the function arguments (either new or original if already legal).
The current implementation however only replaces back (the second
replacement, i.e. replacing the placeholder values to new/legal
arguments) the first block of instructions and not all of the blocks.
This may leave some instructions to use these placeholder values (which
for already legal arguments are just zeroattr values that will get
DCE'd) instead of the arguments, which is incorrect.
Closes #132158.
Commit: bcfbba12e6754e0a2a5a1c8e3aac3a24316bba2d
https://github.com/llvm/llvm-project/commit/bcfbba12e6754e0a2a5a1c8e3aac3a24316bba2d
Author: Kazu Hirata <kazu at google.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M llvm/lib/Analysis/ConstantFolding.cpp
M llvm/lib/IR/Attributes.cpp
Log Message:
-----------
[llvm] Compare std::optional<T> to values directly (NFC) (#143913)
This patch transforms:
X && *X == Y
to:
X == Y
where X is of std::optional<T>, and Y is of T or similar.
Commit: 6751b3a549ebef78a7e75b100d61742c20945592
https://github.com/llvm/llvm-project/commit/6751b3a549ebef78a7e75b100d61742c20945592
Author: Charles Zablit <c_zablit at apple.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M lld/test/Unit/lit.cfg.py
M lldb/test/API/lit.cfg.py
M lldb/test/Shell/lit.cfg.py
M lldb/test/lit.cfg.py
M llvm/utils/lit/lit/LitConfig.py
M llvm/utils/lit/lit/TestRunner.py
M llvm/utils/lit/lit/discovery.py
M llvm/utils/lit/lit/worker.py
Log Message:
-----------
Revert "[lit] cleanup unused imports" (#144054)
Reverts llvm/llvm-project#143930 as it causes build failures:
https://github.com/llvm/llvm-project/pull/143930#issuecomment-2969115461
Commit: 3ea45a65edb2f033e59a12f71a8241f220791ac8
https://github.com/llvm/llvm-project/commit/3ea45a65edb2f033e59a12f71a8241f220791ac8
Author: Nicholas Guy <nicholas.guy at arm.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/test/CodeGen/AArch64/sve-fixed-length-partial-reduce.ll
Log Message:
-----------
[AArch64] Add fixed-length SVE USDOT support (#143730)
Commit: eba63cd76f7ba7f9e9964b1263f76409d08fcd04
https://github.com/llvm/llvm-project/commit/eba63cd76f7ba7f9e9964b1263f76409d08fcd04
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M flang/lib/Semantics/rewrite-directives.cpp
A flang/test/Lower/OpenMP/requires-atomic-default-mem-order.f90
M flang/test/Semantics/OpenMP/requires-atomic02.f90
Log Message:
-----------
[flang][OpenMP] Improve handling of REQUIRES ATOMIC_DEFAULT_MEM_ORDER (#143917)
According to OpenMP 5.0 rules, the ACQ_REL ordering coming from a
REQUIRES directive may need to be replaced with ACQUIRE or RELEASE
depending on the directive in the ATOMIC construct. This was not done,
leading to an incorrect "memory-order" clause appearing in the generated
HLFIR.
This may need to be relaxed a bit to fully comply with later spec
versions, that will be done in a future PR.
Commit: ec21b0fc9f64e8cffe689699d1e39533c62fcfc3
https://github.com/llvm/llvm-project/commit/ec21b0fc9f64e8cffe689699d1e39533c62fcfc3
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
A llvm/test/CodeGen/X86/fixup-blend.ll
Log Message:
-----------
[X86] Add X86FixupInstTuning test coverage for (V)BLENDPD/S <-> (V)MOVSD/S patterns for various scheduler models
Commit: ca5040990ed17fa444d30c22fffcfa7ddc72612f
https://github.com/llvm/llvm-project/commit/ca5040990ed17fa444d30c22fffcfa7ddc72612f
Author: Aleksandr Platonov <platonov.aleksandr at huawei.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M clang-tools-extra/clangd/unittests/XRefsTests.cpp
M clang/lib/Index/IndexBody.cpp
Log Message:
-----------
[clangd] Collect references in array designators (#140356)
Commit: dc9e300f12f3b9c8160dbfb0bc32252ad99c3ba7
https://github.com/llvm/llvm-project/commit/dc9e300f12f3b9c8160dbfb0bc32252ad99c3ba7
Author: Fabian Meumertzheim <fabian at meumertzhe.im>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M llvm/docs/CommandGuide/llvm-cov.rst
M llvm/include/llvm/ProfileData/Coverage/CoverageMapping.h
M llvm/lib/ProfileData/Coverage/CoverageMapping.cpp
A llvm/test/tools/llvm-cov/showLineExecutionCounts-lcov-baseline.test
M llvm/tools/llvm-cov/CodeCoverage.cpp
M llvm/unittests/ProfileData/CoverageMappingTest.cpp
Log Message:
-----------
[llvm-cov] Add support for baseline coverage (#117910)
When no profile is provided, but the new --empty-profile option is
specifed, the export/report/show commands now emit coverage data
equivalent to that obtained from a profile with all zero counters
("baseline coverage").
This is useful for build systems (e.g. Bazel) that can track coverage
information for each build target, even those that are never linked into
tests and thus don't have runtime coverage data recorded. By merging in
baseline coverage, lines in files that aren't linked into tests are
correctly reported as uncovered.
Commit: 18b67a7a102c0052e5ae0e76ef1297902ffeb22d
https://github.com/llvm/llvm-project/commit/18b67a7a102c0052e5ae0e76ef1297902ffeb22d
Author: Fangrui Song <i at maskray.me>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M llvm/include/llvm/MC/MCAsmInfo.h
M llvm/lib/MC/MCAsmInfo.cpp
M llvm/lib/MC/MCAsmStreamer.cpp
M llvm/lib/MC/MCStreamer.cpp
Log Message:
-----------
MC: Add MCAsmInfo::printExpr to replace MCExpr::print
* Make relocation specifier code closer (MCAsmInfo defines specifiers).
* MCExpr::print has an optional MCAsmInfo argument, which is
error-prone when omitted.
* Enable MCSpecifierExpr
Commit: d688df52ba9012197b3716ae85f818fafee7cf62
https://github.com/llvm/llvm-project/commit/d688df52ba9012197b3716ae85f818fafee7cf62
Author: Philip Reames <preames at rivosinc.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
A llvm/test/Transforms/InstSimplify/vp-reverse.ll
Log Message:
-----------
[instsimplify] Add tests for missing vp.reverse simplifications
Commit: dec576514cb7106c59a5059ac6d52ebdf5de5275
https://github.com/llvm/llvm-project/commit/dec576514cb7106c59a5059ac6d52ebdf5de5275
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M llvm/lib/Target/X86/X86FixupInstTuning.cpp
Log Message:
-----------
[X86] X86FixupInstTuning - add dbg message for each instruction replacement (#144083)
Help debug the changes the pass makes
Commit: bd33eef7f1013bea24289a898f788a2efe9d8282
https://github.com/llvm/llvm-project/commit/bd33eef7f1013bea24289a898f788a2efe9d8282
Author: Steven Perron <stevenperron at google.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M clang/lib/CodeGen/CGHLSLBuiltins.cpp
M clang/lib/CodeGen/CGHLSLRuntime.cpp
M clang/lib/CodeGen/CGHLSLRuntime.h
M llvm/include/llvm/IR/IntrinsicsSPIRV.td
M llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.cpp
M llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.h
M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
M llvm/lib/Target/SPIRV/SPIRVUtils.cpp
M llvm/lib/Target/SPIRV/SPIRVUtils.h
M llvm/test/CodeGen/SPIRV/hlsl-resources/BufferLoad.ll
M llvm/test/CodeGen/SPIRV/hlsl-resources/BufferLoadStore.ll
M llvm/test/CodeGen/SPIRV/hlsl-resources/BufferStore.ll
M llvm/test/CodeGen/SPIRV/hlsl-resources/Packed.ll
M llvm/test/CodeGen/SPIRV/hlsl-resources/ScalarResourceType.ll
M llvm/test/CodeGen/SPIRV/hlsl-resources/StorageImageDynIdx.ll
M llvm/test/CodeGen/SPIRV/hlsl-resources/StorageImageNonUniformIdx.ll
M llvm/test/CodeGen/SPIRV/hlsl-resources/StructuredBuffer.ll
M llvm/test/CodeGen/SPIRV/hlsl-resources/UnknownBufferLoad.ll
M llvm/test/CodeGen/SPIRV/hlsl-resources/UnknownBufferStore.ll
M llvm/test/CodeGen/SPIRV/hlsl-resources/spirv.layout.type.ll
M llvm/test/CodeGen/SPIRV/pointers/resource-addrspacecast-2.ll
M llvm/test/CodeGen/SPIRV/pointers/resource-addrspacecast.ll
M llvm/test/CodeGen/SPIRV/spirv-explicit-layout.ll
Log Message:
-----------
[HLSL][SPIRV] Use resource names (#143412)
The SPIR-V backend does not have access to the original name of a
resource in the source, so it tries to create a name. This leads to some
problems with reflection.
That is why start to pass the name of the resource from Clang to the
SPIR-V backend.
Fixes #138533
Commit: 68b6f392ed446ff8edfbb2a52899c9361d45ba28
https://github.com/llvm/llvm-project/commit/68b6f392ed446ff8edfbb2a52899c9361d45ba28
Author: Daniel Hernandez-Juarez <danherna at amd.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M llvm/docs/AMDGPUUsage.rst
M mlir/lib/Conversion/AMDGPUToROCDL/AMDGPUToROCDL.cpp
M mlir/test/Conversion/AMDGPUToROCDL/load_lds.mlir
Log Message:
-----------
[MLIR][AMDGPU] Fix bug in GatherToLDSOpLowering, get the correct MemRefType for destination (#142915)
This PR fixes a bug in GatherToLDSOpLowering, we were getting the
MemRefType of source for the destination. Additionally, some related
typos are corrected.
CC: @krzysz00 @umangyadav @lialan
Commit: 3b09a3d5ae41faac3c0046b93a9c6e0297cc860b
https://github.com/llvm/llvm-project/commit/3b09a3d5ae41faac3c0046b93a9c6e0297cc860b
Author: Fangrui Song <i at maskray.me>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M llvm/include/llvm/MC/MCAsmInfo.h
M llvm/include/llvm/MC/MCExpr.h
M llvm/lib/MC/MCAsmInfo.cpp
M llvm/lib/MC/MCExpr.cpp
M llvm/lib/Target/Sparc/MCTargetDesc/SparcInstPrinter.cpp
M llvm/lib/Target/Sparc/MCTargetDesc/SparcMCAsmInfo.cpp
M llvm/lib/Target/Sparc/MCTargetDesc/SparcMCAsmInfo.h
M llvm/lib/Target/Sparc/MCTargetDesc/SparcMCExpr.cpp
M llvm/lib/Target/Sparc/MCTargetDesc/SparcMCExpr.h
Log Message:
-----------
MC,SPARC: Replace SparcMCExpr with MCSpecifierExpr
Add a hook printSpecifierExpr so that targets can implement
relocation specifier printing without inheriting from MCSpecifierExpr.
Commit: 36c710c40e8a59f74f56eb0e04e438cec5532ec5
https://github.com/llvm/llvm-project/commit/36c710c40e8a59f74f56eb0e04e438cec5532ec5
Author: Andy Kaylor <akaylor at nvidia.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenExpr.cpp
A clang/test/CIR/CodeGen/libc.c
Log Message:
-----------
[CIR] Change default assumption about allowing builtins (#144004)
The code to read the "nobuiltins" attributes hasn't been implemented
yet, but we were defaulting to the assumption that use of builtins is
allowed for function calls that we recognize as standard C library calls
and have builtin equivalents of. This change reverses that assumption so
that when such calls are encountered, we just emit the call. This is a
better default assumption, and since our builtin handling for these
functions isn't implemented yet, it also allows us to compile more
programs.
Commit: 3bf1e1f79ce5b4921586b24014acf5888c35e03f
https://github.com/llvm/llvm-project/commit/3bf1e1f79ce5b4921586b24014acf5888c35e03f
Author: Igor Wodiany <igor.wodiany at imgtec.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVBase.td
M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVImageOps.td
M mlir/lib/Dialect/SPIRV/IR/ImageOps.cpp
M mlir/test/Dialect/SPIRV/IR/image-ops.mlir
M mlir/test/Target/SPIRV/image-ops.mlir
Log Message:
-----------
[mlir][spirv] Add definition of OpImageRead (#144038)
Commit: b184672ec7f1433e5dc698cda7e61be8a6085aa6
https://github.com/llvm/llvm-project/commit/b184672ec7f1433e5dc698cda7e61be8a6085aa6
Author: Uzair Nawaz <uzairnawaz at google.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M libc/config/linux/x86_64/entrypoints.txt
M libc/include/wchar.yaml
M libc/src/wchar/CMakeLists.txt
A libc/src/wchar/wmemmove.cpp
A libc/src/wchar/wmemmove.h
M libc/test/src/wchar/CMakeLists.txt
A libc/test/src/wchar/wmemmove_test.cpp
Log Message:
-----------
[libc] Implemented wmemmove (#142245)
Implemented wmemmove and added tests
Commit: c403cf1e38faa456fdd6f1301efabea3f36c3e6b
https://github.com/llvm/llvm-project/commit/c403cf1e38faa456fdd6f1301efabea3f36c3e6b
Author: Fangrui Song <i at maskray.me>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M llvm/lib/Target/VE/MCTargetDesc/VEInstPrinter.cpp
M llvm/lib/Target/VE/MCTargetDesc/VEMCAsmInfo.cpp
M llvm/lib/Target/VE/MCTargetDesc/VEMCAsmInfo.h
M llvm/lib/Target/VE/MCTargetDesc/VEMCExpr.cpp
M llvm/lib/Target/VE/MCTargetDesc/VEMCExpr.h
Log Message:
-----------
VE: Replace VEMCExpr::printImpl with printSpecifierExpr
Prepare for removing the VEMCExpr subclass.
VEMCExpr overrides evaluateAsRelocatableImpl, so it cannot be removed
yet.
Commit: 6e988bd33f5fa8a529ef9208d3e147945b7bb7ed
https://github.com/llvm/llvm-project/commit/6e988bd33f5fa8a529ef9208d3e147945b7bb7ed
Author: Reid Kleckner <rnk at google.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/mlir/tblgen.bzl
Log Message:
-----------
[mlir] Forward **kwargs through gentbl_shard_rule (#144001)
This allows clients to pass additional cc_library arguments through this
macro to the build rules it calls.
Commit: 2704b27a0b452f4aaf87ab26d315fdc92857373a
https://github.com/llvm/llvm-project/commit/2704b27a0b452f4aaf87ab26d315fdc92857373a
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M lldb/test/API/api/multiple-debuggers/multi-process-driver.cpp
Log Message:
-----------
[lldb] Include unistd.h for _exit in multi-process-driver.cpp
This test fails to build on macOS without the correct header include.
Commit: 65d88d31ea279bbab8a0fa2c8abfb3f723a1715b
https://github.com/llvm/llvm-project/commit/65d88d31ea279bbab8a0fa2c8abfb3f723a1715b
Author: Keith Smiley <keithbsmiley at gmail.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M llvm/docs/CommandGuide/llvm-cov.rst
M llvm/include/llvm/ProfileData/Coverage/CoverageMapping.h
M llvm/lib/ProfileData/Coverage/CoverageMapping.cpp
R llvm/test/tools/llvm-cov/showLineExecutionCounts-lcov-baseline.test
M llvm/tools/llvm-cov/CodeCoverage.cpp
M llvm/unittests/ProfileData/CoverageMappingTest.cpp
Log Message:
-----------
Revert "[llvm-cov] Add support for baseline coverage" (#144121)
Reverts llvm/llvm-project#117910
```
/home/buildbots/llvm-external-buildbots/workers/ppc64le-lld-multistage-test/ppc64le-lld-multistage-test/llvm-project/llvm/unittests/ProfileData/CoverageMappingTest.cpp
/home/buildbots/llvm-external-buildbots/workers/ppc64le-lld-multistage-test/ppc64le-lld-multistage-test/llvm-project/llvm/unittests/ProfileData/CoverageMappingTest.cpp:281:28: error: 'std::reference_wrapper' may not intend to support class template argument deduction [-Werror,-Wctad-maybe-unsupported]
281 | std::make_optional(std::reference_wrapper(*ProfileReader));
| ^
/usr/lib/gcc/ppc64le-redhat-linux/8/../../../../include/c++/8/bits/refwrap.h:289:11: note: add a deduction guide to suppress this warning
289 | class reference_wrapper
| ^
```
Commit: 9e23e85d6597bd59ff316a3ce93bb8ec41919b19
https://github.com/llvm/llvm-project/commit/9e23e85d6597bd59ff316a3ce93bb8ec41919b19
Author: Tomohiro Kashiwada <kikairoya at gmail.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M lld/MinGW/Driver.cpp
M lld/MinGW/Options.td
M lld/test/MinGW/lib.test
Log Message:
-----------
[LLD][Cygwin] Implement --dll-search-prefix (#143263)
GCC on Cygwin environment invokes linker with passing
`--dll-search-prefix=cyg`.
Implementing this option makes lld-mingw invokable by `gcc -fuse-ld=lld`.
---------
Co-authored-by: jeremyd2019 <github at jdrake.com>
Commit: 1072196c2737fcf921ad52e9a44c13423789111b
https://github.com/llvm/llvm-project/commit/1072196c2737fcf921ad52e9a44c13423789111b
Author: Tai Ly <tai.ly at arm.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M mlir/include/mlir/Dialect/Tosa/Utils/ConversionUtils.h
M mlir/lib/Dialect/Tosa/Transforms/TosaValidation.cpp
M mlir/lib/Dialect/Tosa/Utils/ConversionUtils.cpp
M mlir/test/Dialect/Tosa/invalid.mlir
Log Message:
-----------
[tosa] Add duplicate indices check for Scatter (#143736)
Tosa scatter operator disallow duplicate indices (per batch)
This patch adds, to the validation pass, checking for duplicate values
in scatter operator's constant indices values.
Signed-off-by: Tai Ly <tai.ly at arm.com>
Commit: b81d5e06c7cba8c9f1f5380daed4b9ee139214ba
https://github.com/llvm/llvm-project/commit/b81d5e06c7cba8c9f1f5380daed4b9ee139214ba
Author: Luke Lau <luke at igalia.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
M llvm/test/Transforms/InstCombine/abs-1.ll
M llvm/test/Transforms/InstCombine/fma.ll
M llvm/test/Transforms/InstCombine/minmax-intrinsics.ll
M llvm/test/Transforms/InstCombine/powi.ll
M llvm/test/Transforms/InstCombine/scmp.ll
M llvm/test/Transforms/InstCombine/sqrt.ll
M llvm/test/Transforms/SLPVectorizer/AMDGPU/add_sub_sat-inseltpoison.ll
M llvm/test/Transforms/SLPVectorizer/AMDGPU/add_sub_sat.ll
M llvm/test/Transforms/SLPVectorizer/X86/alternate-calls-inseltpoison.ll
M llvm/test/Transforms/SLPVectorizer/X86/alternate-calls.ll
Log Message:
-----------
[InstCombine] Fold shuffles through all trivially vectorizable intrinsics (#141979)
This addresses a TODO in foldShuffledIntrinsicOperands to use
isTriviallyVectorizable instead of a hardcoded list of intrinsics, which
in turn allows more intriniscs to be scalarized by VectorCombine.
>From what I can tell every intrinsic here should be speculatable so an
assertion was added.
Because this enables intrinsics like abs which have a scalar operand, we
need to also check isVectorIntrinsicWithScalarOpAtArg.
Commit: c609112a5383c10272e3afceedd4d03f26437cf0
https://github.com/llvm/llvm-project/commit/c609112a5383c10272e3afceedd4d03f26437cf0
Author: Alexey Samsonov <vonosmas at gmail.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M libc/test/src/stdio/CMakeLists.txt
M libc/test/src/stdio/fdopen_test.cpp
M libc/test/src/stdio/fgetc_test.cpp
M libc/test/src/stdio/fgetc_unlocked_test.cpp
M libc/test/src/stdio/fgets_test.cpp
M libc/test/src/stdio/fileop_test.cpp
M libc/test/src/stdio/fopencookie_test.cpp
M libc/test/src/stdio/remove_test.cpp
M libc/test/src/stdio/rename_test.cpp
M libc/test/src/stdio/setvbuf_test.cpp
M libc/test/src/stdio/unlocked_fileop_test.cpp
M libc/test/src/stdlib/StrtolTest.h
M libc/test/src/stdlib/strtold_test.cpp
Log Message:
-----------
Fix/reapply "[libc] Migrate stdio tests to ErrnoCheckingTest." (#143972)
This reverts commit a93e55e57ed00a55f822c64e3520c7c732b58480 and fixes
build and test failures:
* Proper include added to setvbuf_test.cpp
* fgetc/fgetc_unlocked/fgets tests are ported to ErrnoSetterMatcher and
are made more precise. This fixes inconsistencies between expectations
in regular and GPU builds - ErrnoSetterMatcher is configured to omit
errno matching on GPUs, as fgetc implementation on GPU doesn't set
errno, in contrast to Linux.
Commit: 493c1612d6f8f7a40d0bf0ba28fb753be83fac1c
https://github.com/llvm/llvm-project/commit/493c1612d6f8f7a40d0bf0ba28fb753be83fac1c
Author: Steven Perron <stevenperron at google.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M llvm/test/CodeGen/SPIRV/ExecutionMode_Fragment.ll
Log Message:
-----------
[SPIRV] Fix ExecutionMode_fragment.ll test (#144116)
Fix test broken by https://github.com/llvm/llvm-project/pull/143412.
Commit: fd432151a607a997c417f32cb70650fc7728629a
https://github.com/llvm/llvm-project/commit/fd432151a607a997c417f32cb70650fc7728629a
Author: William Huynh <113542065+saturn691 at users.noreply.github.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M libc/include/math.yaml
M libc/include/wchar.yaml
M libc/test/src/stdio/printf_core/converter_test.cpp
Log Message:
-----------
[libc] Fix bugs found when testing with all headers (#144049)
Fixes a couple of bugs found when building. The PR to enable the headers
can be found here: #144114.
- math.yaml: float128 guard
- wchar.yaml: __restrict keyword order
Commit: 9a3082276d21873a37925d0c6ad89bd28d065cea
https://github.com/llvm/llvm-project/commit/9a3082276d21873a37925d0c6ad89bd28d065cea
Author: Andy Kaylor <akaylor at nvidia.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M clang/test/CIR/CodeGen/forrange.cpp
Log Message:
-----------
[CIR][NFC] Fix forrange.cpp test (#144123)
A recent change has cause the begin and end iterators in the
forrange.cpp CIR codegen test to be marked as 'init' causing the test to
fail. This change fixes the checks in the test.
Commit: 62eea86424c4eacd38ad8a03f4bdae78687e3ade
https://github.com/llvm/llvm-project/commit/62eea86424c4eacd38ad8a03f4bdae78687e3ade
Author: Amr Hesham <amr96 at programmer.net>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenBuilder.h
M clang/lib/CIR/CodeGen/CIRGenTypes.cpp
M clang/test/CIR/CodeGen/array.cpp
Log Message:
-----------
[CIR] Update isSized with upstreamed types (#143960)
Update `isSized` function with the upstreamed types
Commit: ec330cf6701793525da9eb471e7ff796938ab54a
https://github.com/llvm/llvm-project/commit/ec330cf6701793525da9eb471e7ff796938ab54a
Author: Reid Kleckner <rnk at google.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/llvm/include/llvm/Config/llvm-config.h
M utils/bazel/llvm_configs/llvm-config.h.cmake
Log Message:
-----------
[bazel] Update llvm-config.h and disable DebugLoc tracking (#144125)
In c588224ca797886064a7a79f6c0114a6963c325e, @chapuni set
LLVM_ENABLE_DEBUGLOC_COVERAGE_TRACKING to 1, but from what I can tell,
this is not the default setting for CMake builds. I think the intention
was mostly just to update llvm-config.h to fix the Bazel build.
I'm adding LLVM_ENABLE_DEBUGLOC_ORIGIN_TRACKING as well to fix the build
for the same purpose.
Commit: 51689c9df2fbb81aab1ff802f3efb86cac926853
https://github.com/llvm/llvm-project/commit/51689c9df2fbb81aab1ff802f3efb86cac926853
Author: Michael Jones <michaelrj at google.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M libc/src/__support/File/linux/file.cpp
M libc/src/__support/OSUtil/fcntl.h
M libc/src/__support/OSUtil/linux/CMakeLists.txt
M libc/src/__support/OSUtil/linux/fcntl.cpp
M libc/src/fcntl/linux/CMakeLists.txt
M libc/src/fcntl/linux/fcntl.cpp
M libc/src/fcntl/linux/open.cpp
M libc/src/sys/auxv/linux/getauxval.cpp
M libc/src/sys/mman/linux/shm_common.h
M libc/src/sys/mman/linux/shm_open.cpp
M libc/src/sys/mman/linux/shm_unlink.cpp
M libc/src/unistd/linux/close.cpp
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
Log Message:
-----------
[libc][NFC] clean internal fd handling (#143991)
The previous internal fcntl implementation modified errno directly, this
patch fixes that. This patch also moves open and close into OSUtil since
they are used in multiple places. There are more places that need
similar cleanup but only got comments in this patch to keep it
relatively reviewable.
Related to: https://github.com/llvm/llvm-project/issues/143937
Commit: 5578bcbcfd25c797d4d14b8dfb3f83360712513d
https://github.com/llvm/llvm-project/commit/5578bcbcfd25c797d4d14b8dfb3f83360712513d
Author: Chao Chen <chao.chen at intel.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M mlir/include/mlir/Dialect/XeGPU/Utils/XeGPUUtils.h
M mlir/lib/Dialect/XeGPU/Transforms/XeGPUWgToSgDistribute.cpp
M mlir/lib/Dialect/XeGPU/Utils/XeGPUUtils.cpp
M mlir/test/Dialect/XeGPU/xegpu-wg-to-sg-rr.mlir
M mlir/test/Dialect/XeGPU/xegpu-wg-to-sg.mlir
Log Message:
-----------
[mlir][xegpu] add support for structure control flow ops in workgroup to subgroup distribution (#142618)
This PR introduces support for `scf::ForOp`, `scf::WhileOp`, `scf::If`,
and `scf::Condition` within the workgroup-subgroup-distribution pass,
leveraging the `SCFStructuralTypeConversionsAndLegality`.
Commit: ecdb549e6de60b3211cfa860eec498270e3980f1
https://github.com/llvm/llvm-project/commit/ecdb549e6de60b3211cfa860eec498270e3980f1
Author: Min-Yih Hsu <min.hsu at sifive.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M llvm/lib/TableGen/Record.cpp
M llvm/test/TableGen/true-false.td
Log Message:
-----------
[TableGen] Avoid evaluating RHS of a BinOp until short-circuit is complete (#144021)
This patch adds an even more aggressive short-circuit on `!and` and
`!or` that completely avoids the evaluation of RHS operand until short
circuiting decisions are made.
Commit: 09c54c2e9e044fa0857831e6ce1bf77c8ce16ecc
https://github.com/llvm/llvm-project/commit/09c54c2e9e044fa0857831e6ce1bf77c8ce16ecc
Author: S. VenkataKeerthy <31350914+svkeerthy at users.noreply.github.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M llvm/include/llvm/Analysis/IR2Vec.h
M llvm/lib/Analysis/IR2Vec.cpp
M llvm/unittests/Analysis/IR2VecTest.cpp
Log Message:
-----------
[IR2Vec] Minor vocab changes and exposing weights (#143200)
This PR changes some asserts in Vocab to hard checks that emit error and exposes flags and constructor to help in unit tests.
(Tracking issue - #141817)
Commit: 9d49b82de077c730d687593604dfa00770f11965
https://github.com/llvm/llvm-project/commit/9d49b82de077c730d687593604dfa00770f11965
Author: Naveen Seth Hanig <naveen.hanig at outlook.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M clang/lib/Lex/DependencyDirectivesScanner.cpp
M clang/unittests/Lex/DependencyDirectivesScannerTest.cpp
Log Message:
-----------
[clang-scan-deps] Implement P2223R2 for DependencyDirectiveScanner.cpp (#143950)
P2223R2 allows the line-continuation slash `\` to be followed by
additional whitespace. The Clang lexer already follows this behavior,
also for versions prior to C++23. The dependency directive scanner
however only implements it for `#define` directives (15d5f5d).
This fully implements P2223R2 for the dependency directive scanner (for
any C++ standard) and aligns the dependency directive scanner's splicing
behavior with that of the Clang lexer.
For example, the following code was previously not scanned correctly by
`clang-scan-deps` but now works as expected:
```cpp
import \<whitespace here>
A;
```
Commit: 92a116c4ef822950f8c57eaa5164c844c73a1f7e
https://github.com/llvm/llvm-project/commit/92a116c4ef822950f8c57eaa5164c844c73a1f7e
Author: Alexey Samsonov <vonosmas at gmail.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M libc/test/src/stdio/CMakeLists.txt
M libc/test/src/stdio/fdopen_test.cpp
M libc/test/src/stdio/fgetc_test.cpp
M libc/test/src/stdio/fgetc_unlocked_test.cpp
M libc/test/src/stdio/fgets_test.cpp
M libc/test/src/stdio/fileop_test.cpp
M libc/test/src/stdio/fopencookie_test.cpp
M libc/test/src/stdio/remove_test.cpp
M libc/test/src/stdio/rename_test.cpp
M libc/test/src/stdio/setvbuf_test.cpp
M libc/test/src/stdio/unlocked_fileop_test.cpp
M libc/test/src/stdlib/StrtolTest.h
M libc/test/src/stdlib/strtold_test.cpp
Log Message:
-----------
Revert "Fix/reapply "[libc] Migrate stdio tests to ErrnoCheckingTest."" (#144129)
Reverts llvm/llvm-project#143972 - matcher seems to be pedantic for
fgets tests, reverting to verify and fix.
Commit: 452276ecc0f5d1cb9bf5e1655e422a68eafdb8b9
https://github.com/llvm/llvm-project/commit/452276ecc0f5d1cb9bf5e1655e422a68eafdb8b9
Author: Michael Jones <michaelrj at google.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M libc/fuzzing/stdio/CMakeLists.txt
Log Message:
-----------
[libc] Fix missing errno include in fuzzer (#144132)
The printf parser uses errno for setting up the %m conversion. It was
presumably getting this include indirectly until a recent change. This
patch adds a direct dependency to fix it.
Commit: 0c7ce6883a04dadd9daf0d41cba58c2f9eec19ad
https://github.com/llvm/llvm-project/commit/0c7ce6883a04dadd9daf0d41cba58c2f9eec19ad
Author: Charitha Saumya <136391709+charithaintc at users.noreply.github.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M mlir/lib/Dialect/Vector/Transforms/VectorDistribute.cpp
M mlir/test/Dialect/Vector/vector-warp-distribute.mlir
Log Message:
-----------
Revert "[mlir][vector] Fix for WarpOpScfForOp failure when scf.for has results that are unused." (#144124)
Reverts llvm/llvm-project#141853
Reverting the bug fix because it does not handle all cases correctly.
Commit: f82cf7442029d3376813db82eca60800e999bfb9
https://github.com/llvm/llvm-project/commit/f82cf7442029d3376813db82eca60800e999bfb9
Author: Artem Gindinson <gindinson at roofline.ai>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M mlir/lib/Dialect/Utils/ReshapeOpsUtils.cpp
M mlir/unittests/Dialect/Utils/ReshapeOpsUtilsTest.cpp
Log Message:
-----------
[mlir][tensor] Fix `getReassociationForCollapse` for tensor/scalar re… (#144118)
…shapes
Commit 6e5a142 changed the behavior of the function when computing
reassociations between tensors (consisting of unit/dynamic dimensions)
and scalars/0d vectors. The IR representation for such reshapes actually
expects an empty reassociation, like so:
```
func.func @example(%arg0 : tensor<?x?x?xf32>) -> tensor<f32> {
%0 = tensor.collapse_shape %arg0 [] : tensor<?x?x?xf32> into tensor<f32>
}
```
Restore the original behavior - the routine should resort to reporting
failures when compile time-known non-unit dimensions are part of the
attempted reassociation.
Signed-off-by: Artem Gindinson <gindinson at roofline.ai>
Commit: 52d34865b9db3485c8a671a88cc571270349f720
https://github.com/llvm/llvm-project/commit/52d34865b9db3485c8a671a88cc571270349f720
Author: FYK <fanju110 at 163.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M clang/include/clang/Basic/CodeGenOptions.def
M clang/include/clang/Basic/CodeGenOptions.h
M clang/include/clang/Basic/ProfileList.h
M clang/include/clang/Driver/Options.td
M clang/lib/Basic/ProfileList.cpp
M clang/lib/CodeGen/BackendUtil.cpp
M clang/lib/CodeGen/CodeGenAction.cpp
M clang/lib/CodeGen/CodeGenFunction.cpp
M clang/lib/CodeGen/CodeGenModule.cpp
M clang/lib/Driver/ToolChains/Flang.cpp
M clang/lib/Frontend/CompilerInvocation.cpp
M flang/include/flang/Frontend/CodeGenOptions.def
M flang/include/flang/Frontend/CodeGenOptions.h
M flang/lib/Frontend/CompilerInvocation.cpp
M flang/lib/Frontend/FrontendActions.cpp
M flang/test/Driver/flang-f-opts.f90
A flang/test/Profile/Inputs/gcc-flag-compatibility_IR.proftext
A flang/test/Profile/Inputs/gcc-flag-compatibility_IR_entry.proftext
A flang/test/Profile/gcc-flag-compatibility.f90
M llvm/include/llvm/Frontend/Driver/CodeGenOptions.h
M llvm/lib/Frontend/Driver/CMakeLists.txt
M llvm/lib/Frontend/Driver/CodeGenOptions.cpp
Log Message:
-----------
Fix and reapply IR PGO support for Flang (#142892)
This PR resubmits the changes from #136098, which was previously
reverted due to a build failure during the linking stage:
```
undefined reference to `llvm::DebugInfoCorrelate'
undefined reference to `llvm::ProfileCorrelate'
```
The root cause was that `llvm/lib/Frontend/Driver/CodeGenOptions.cpp`
references symbols from the `Instrumentation` component, but the
`LINK_COMPONENTS` in the `llvm/lib/Frontend/CMakeLists.txt` for
`LLVMFrontendDriver` did not include it. As a result, linking failed in
configurations where these components were not transitively linked.
### Fix:
This updated patch explicitly adds `Instrumentation` to
`LINK_COMPONENTS` in the relevant `llvm/lib/Frontend/CMakeLists.txt`
file to ensure the required symbols are properly resolved.
---------
Co-authored-by: ict-ql <168183727+ict-ql at users.noreply.github.com>
Co-authored-by: Chyaka <52224511+liliumshade at users.noreply.github.com>
Co-authored-by: Tarun Prabhu <tarunprabhu at gmail.com>
Commit: f6bf3bd5e001918780e7b1e8fceeb02604d65783
https://github.com/llvm/llvm-project/commit/f6bf3bd5e001918780e7b1e8fceeb02604d65783
Author: Reid Kleckner <rnk at google.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
Log Message:
-----------
[bazel] Fix XeGpu deps for 5578bcbcfd25c (#144133)
Commit: 59388fb0b92d7efd5737efd6c7b6d5c82f1bc6a8
https://github.com/llvm/llvm-project/commit/59388fb0b92d7efd5737efd6c7b6d5c82f1bc6a8
Author: Alex MacLean <amaclean at nvidia.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineInternal.h
M llvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
M llvm/test/Transforms/InstCombine/canonicalize-const-to-bop.ll
Log Message:
-----------
[InstCombine] Preserve NSW/NUW flags when folding const BOp with min/max (#143471)
When folding `X Pred C2 ? X BOp C1 : C2 BOp C1` to `min/max(X, C2) BOp
C1`, if NUW/NSW flags are present on `X BOp C1` and could be safely
applied to `C2 BOp C1`, then they may be added on the BOp after the fold
is complete. https://alive2.llvm.org/ce/z/n_3aNJ
Preserving these flags can allow subsequent transforms to re-order the
min/max and BOp, which in the case of NVPTX would allow for some
potential future transformations which would improve
instruction-selection.
Commit: f68848015f62156b8c3539b44f16d9c8b0a93a89
https://github.com/llvm/llvm-project/commit/f68848015f62156b8c3539b44f16d9c8b0a93a89
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/VPlanPatternMatch.h
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
M llvm/lib/Transforms/Vectorize/VPlanUnroll.cpp
M llvm/test/Transforms/LoopVectorize/vplan-printing-reductions.ll
Log Message:
-----------
[VPlan] Manage Sentinel value for FindLastIV in VPlan. (#142291)
Similar to modeling the start value as operand, also model the sentinel
value as operand explicitly. This makes all require information for
code-gen available directly in VPlan.
PR: https://github.com/llvm/llvm-project/pull/142291
Commit: 24bbc820701b49ab8bc7b9670034e39e11da8a16
https://github.com/llvm/llvm-project/commit/24bbc820701b49ab8bc7b9670034e39e11da8a16
Author: Andy Kaylor <akaylor at nvidia.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M clang/include/clang/CIR/Dialect/Builder/CIRBaseBuilder.h
M clang/lib/CIR/CodeGen/CIRGenBuilder.h
M clang/lib/CIR/CodeGen/CIRGenDecl.cpp
M clang/lib/CIR/CodeGen/CIRGenFunction.h
M clang/lib/CIR/CodeGen/CIRGenModule.h
A clang/test/CIR/CodeGen/static-vars.c
A clang/test/CIR/CodeGen/static-vars.cpp
Log Message:
-----------
[CIR] Support for static variables (#143980)
This adds support for emitting static variables and their initializers.
Commit: 79e06bf1ae9961c5045134288fd8acc9173f6be2
https://github.com/llvm/llvm-project/commit/79e06bf1ae9961c5045134288fd8acc9173f6be2
Author: zGoldthorpe <Zach.Goldthorpe at amd.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUPromoteAlloca.cpp
A llvm/test/CodeGen/AMDGPU/promote-alloca-structs.ll
Log Message:
-----------
[AMDGPU] Extended vector promotion to aggregate types. (#143784)
Extends the `amdgpu-promote-alloca-to-vector` pass to also promote
aggregate types whose elements are all the same type to vector
registers.
The motivation for this extension was to account for IR generated by the
frontend containing several singleton struct types containing vectors or
vector-like elements, though the implementation is strictly more
general.
Commit: a08de429e4ae0baaed23060cbae5c73dc6ffcc5d
https://github.com/llvm/llvm-project/commit/a08de429e4ae0baaed23060cbae5c73dc6ffcc5d
Author: Nico Weber <thakis at chromium.org>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M llvm/utils/gn/secondary/llvm/include/llvm/Config/BUILD.gn
Log Message:
-----------
[gn] port cc365331af42
Commit: 2f1e6eb6c3e731266052536c3f98cce3a71a316e
https://github.com/llvm/llvm-project/commit/2f1e6eb6c3e731266052536c3f98cce3a71a316e
Author: yonghong-song <yhs at fb.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M llvm/lib/Target/BPF/MCTargetDesc/BPFMCCodeEmitter.cpp
A llvm/test/CodeGen/BPF/warn-cmp.ll
Log Message:
-----------
[BPF] Report an warning if certain insn imm operand cannot fit in 32bit (#142989)
Ihor Solodrai reported a case ([1]) where gcc reports an error but clang
ignores that error and proceeds to generate incorrect code. More
specifically, the problematic code looks like:
if r1 == 0xcafefeeddeadbeef goto <label>
Here, 0xcafefeeddeadbeef needs to be encoded in a 32-bit imm field
of the insns and the 32-bit imm allows sign extenstion to 64-bit imm.
Obviously, 0xcafefeeddeadbeef cannot encode properly.
The compilation failed for gcc with the following error:
Error: immediate out of range, shall fit in 32 bits
Given a 64-bit imm value, converting to the proper 32-bit imm value
must satisfy the following 64-bit patterns:
00000000 00000000 00000000 00000000 xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx
11111111 11111111 11111111 11111111 1xxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx
So if the top 32-bits is 0 or the top 33-bits is 0x1ffffffff, then the 64-bit imm
value can be truncated into proper 32-bit imm. Otherwise, a warning
message, the same as gcc, will be issued. If -Werror is enabled during
compilation, the warning will turn into an error.
[1] https://lore.kernel.org/bpf/70affb12-327b-4882-bd1d-afda8b8c6f56@linux.dev/
Commit: 90d98a38b273f5d62424a3815447675860947927
https://github.com/llvm/llvm-project/commit/90d98a38b273f5d62424a3815447675860947927
Author: Corentin Jabot <corentinjabot at gmail.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/lib/Sema/SemaTypeTraits.cpp
M clang/test/CXX/drs/cwg18xx.cpp
M clang/test/SemaCXX/overload-resolution-deferred-templates.cpp
M clang/test/SemaCXX/type-traits-unsatisfied-diags-std.cpp
M clang/test/SemaCXX/type-traits-unsatisfied-diags.cpp
Log Message:
-----------
Revert "[Clang] Added explanation why `is_constructible` evaluated to false. " (#144127)
Reverts llvm/llvm-project#143309
Someone needs to go through the libc++ tests and update the diagnostics
checks in those tests (ie, i don't believe there was anything wrong with
the PR, but it impacts libc++ tests nonetheless
Commit: 83f215b0350289f3bd349c1f85826a58d8d80f03
https://github.com/llvm/llvm-project/commit/83f215b0350289f3bd349c1f85826a58d8d80f03
Author: Fabian Meumertzheim <fabian at meumertzhe.im>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M llvm/docs/CommandGuide/llvm-cov.rst
M llvm/include/llvm/ProfileData/Coverage/CoverageMapping.h
M llvm/lib/ProfileData/Coverage/CoverageMapping.cpp
A llvm/test/tools/llvm-cov/showLineExecutionCounts-lcov-baseline.test
M llvm/tools/llvm-cov/CodeCoverage.cpp
M llvm/unittests/ProfileData/CoverageMappingTest.cpp
Log Message:
-----------
Reland "[llvm-cov] Add support for baseline coverage" (#144130)
When no profile is provided, but the new --empty-profile option is
specified, the export/report/show commands now emit coverage data
equivalent to that obtained from a profile with all zero counters
("baseline coverage").
This is useful for build systems (e.g. Bazel) that can track coverage
information for each build target, even those that are never linked into
tests and thus don't have runtime coverage data recorded. By merging in
baseline coverage, lines in files that aren't linked into tests are
correctly reported as uncovered.
Reland with fixes to `CoverageMappingTest.cpp`.
Reverts llvm/llvm-project#144121
Commit: f952af30fd2efbf6effa3e845f0e49a9f0e2302d
https://github.com/llvm/llvm-project/commit/f952af30fd2efbf6effa3e845f0e49a9f0e2302d
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M clang/include/clang/Driver/Options.td
Log Message:
-----------
[clang][docs][RISCV] Prepend the HelpText for -mrvv-vector-bits into the DocBrief. (#144128)
The DocBrief is used to generate the webpage description of the option.
The current text only talks about the possible values, but not what the
option does.
Commit: acc58ac8bf792d78233daf913565e2cbb61a8f5c
https://github.com/llvm/llvm-project/commit/acc58ac8bf792d78233daf913565e2cbb61a8f5c
Author: Reid Kleckner <rnk at google.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/llvm/BUILD.bazel
Log Message:
-----------
[bazel] Add missing dep for 52d34865b9db3485c (#144147)
Commit: b7cb34840cd1e8cea932f04d5b4e34b4056cb6de
https://github.com/llvm/llvm-project/commit/b7cb34840cd1e8cea932f04d5b4e34b4056cb6de
Author: Andy Kaylor <akaylor at nvidia.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
M clang/test/CIR/CodeGen/cast.cpp
Log Message:
-----------
[CIR] Enable floating point casts (#144142)
We already had the code in place to emit CIR floating point cast ops
that get lowered to fpext or fptrunc, but we weren't calling the
function to emit that cast from ScalarExprEmitter::emitScalarCast. This
change adds that call.
Commit: 65eaed7d5a08210cd5b419f45845d5de81435d7e
https://github.com/llvm/llvm-project/commit/65eaed7d5a08210cd5b419f45845d5de81435d7e
Author: Andy Kaylor <akaylor at nvidia.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
M clang/test/CIR/CodeGen/basic.c
Log Message:
-----------
[CIR] Handle character literal values (#144141)
This change adds a handler for emitting a cir.constant op when a
character literal is encountered outside an initializer expression.
Commit: f5df231d8caece81fd800b921cf4fbd7774e2885
https://github.com/llvm/llvm-project/commit/f5df231d8caece81fd800b921cf4fbd7774e2885
Author: Philip Reames <preames at rivosinc.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M llvm/test/Transforms/LoopVectorize/RISCV/riscv-vector-reverse.ll
Log Message:
-----------
[LV] Fix test line and regen an autogen test
Commit: 1ded2c599fd230b2d355386c019a3054f5745d55
https://github.com/llvm/llvm-project/commit/1ded2c599fd230b2d355386c019a3054f5745d55
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-dot-product-epilogue.ll
M llvm/test/Transforms/LoopVectorize/AArch64/vector-loop-backedge-elimination-epilogue.ll
Log Message:
-----------
[LV] Use createIterationCountCheck during epilogue skeleton creation.
Use helper already used for minimum trip count checks for the regular
ILV skeleton creation also for epilogue skeleton creation.
Commit: c42912b8c96ff1130437e47c163aeb5c1191fe5d
https://github.com/llvm/llvm-project/commit/c42912b8c96ff1130437e47c163aeb5c1191fe5d
Author: Amy Huang <akhuang at google.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M libc/src/string/string_utils.h
Log Message:
-----------
Fix string_length function so that it always returns. (#144148)
Previously setting LIBC_COPT_STRING_UNSAFE_WIDE_READ would cause a build
error because there is a path in the ifdef that doesn't return anything.
Commit: 938e91e4fe10a9ff810b41ee74f5c0af8d3ac490
https://github.com/llvm/llvm-project/commit/938e91e4fe10a9ff810b41ee74f5c0af8d3ac490
Author: Kazu Hirata <kazu at google.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M llvm/unittests/ProfileData/DataAccessProfTest.cpp
Log Message:
-----------
[memprof] Use testing::IsEmpty (NFC) (#144096)
This patch replaces testing::IsEmpty with IsEmpty because we already
have:
using ::testing::IsEmpty;
near the beginning of the file.
Commit: 6d0cfc2ca51e9365f1c6f216df30a612958aca70
https://github.com/llvm/llvm-project/commit/6d0cfc2ca51e9365f1c6f216df30a612958aca70
Author: Kazu Hirata <kazu at google.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlan.h
Log Message:
-----------
[Vectorize] Use llvm::drop_begin (NFC) (#144098)
We can pass a range to llvm::drop_begin.
Commit: 2a805589f56b30b27057c7549dd0ad2963ae16b1
https://github.com/llvm/llvm-project/commit/2a805589f56b30b27057c7549dd0ad2963ae16b1
Author: Kazu Hirata <kazu at google.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
Log Message:
-----------
[SPIRV] Use llvm::all_of (NFC) (#144099)
We can pass a range to llvm::all_of.
Commit: 5064a5bc3e958aeb18bf3f8c7144c99cc3103a91
https://github.com/llvm/llvm-project/commit/5064a5bc3e958aeb18bf3f8c7144c99cc3103a91
Author: Kazu Hirata <kazu at google.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M llvm/lib/IR/DebugInfo.cpp
Log Message:
-----------
[IR] Remove a redundant control flow statement (NFC) (#144100)
Commit: a89df72ec0864301f102296dcf7b3bd22844adf5
https://github.com/llvm/llvm-project/commit/a89df72ec0864301f102296dcf7b3bd22844adf5
Author: Peter Collingbourne <peter at pcc.me.uk>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M llvm/lib/Transforms/IPO/WholeProgramDevirt.cpp
A llvm/test/ThinLTO/X86/Inputs/devirt_single_hybrid_foo_tcl.ll
M llvm/test/ThinLTO/X86/devirt_single_hybrid.ll
Log Message:
-----------
WholeProgramDevirt: Fix importing in llvm.type.checked.load case.
We were clearing SummaryTypeCheckedLoadUsers to prevent devirtualized
llvm.type.checked.load calls from being converted to llvm.type.test,
which meant that AddCalls would not see them in the list of
callsites and they would not get imported. Fix that by not clearing
SummaryTypeCheckedLoadUsers so that the list survives to AddCalls and
using AllCallSitesDevirted to control whether to convert them instead.
Reviewers: teresajohnson
Reviewed By: teresajohnson
Pull Request: https://github.com/llvm/llvm-project/pull/144019
Commit: 52a6492136ef43462c68efa88a0276bb66ee8c52
https://github.com/llvm/llvm-project/commit/52a6492136ef43462c68efa88a0276bb66ee8c52
Author: Reid Kleckner <rnk at google.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/libc/test/UnitTest/BUILD.bazel
M utils/bazel/llvm-project-overlay/libc/test/src/stdlib/BUILD.bazel
Log Message:
-----------
[bazel] Add missing errno deps one more time
Commit: 60d000496b5485c89c51e64b2b339210d48263be
https://github.com/llvm/llvm-project/commit/60d000496b5485c89c51e64b2b339210d48263be
Author: Tomohiro Kashiwada <kikairoya at gmail.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M llvm/include/llvm/Support/Compiler.h
Log Message:
-----------
[Cygwin] Define LLVM_ABI for Cygwin (#143222)
592243c1cb3ea53b34033132a87b0d14af9d1079 should be also applied to
LLVM_ABI.
Commit: be5c96bfac328fed548c532bbe1710fe23460a85
https://github.com/llvm/llvm-project/commit/be5c96bfac328fed548c532bbe1710fe23460a85
Author: Jacek Caban <jacek at codeweavers.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M clang/lib/CodeGen/CodeGenModule.cpp
A clang/test/CodeGen/debug-info-version-coff.c
M clang/test/CodeGen/debug-info-version.c
A clang/test/CodeGenCXX/debug-info-coff.cpp
M clang/test/CodeGenCXX/debug-info-hotpatch-aarch64.cpp
M clang/test/CodeGenCXX/debug-info-hotpatch-arm.cpp
M clang/test/Frontend/ast-main.c
M clang/test/Frontend/ast-main.cpp
M llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
M llvm/lib/CodeGen/AsmPrinter/CodeViewDebug.cpp
M llvm/lib/CodeGen/AsmPrinter/CodeViewDebug.h
M llvm/test/CodeGen/Generic/selection-dag-determinism.ll
M llvm/test/DebugInfo/COFF/dwarf-headers.ll
A llvm/test/DebugInfo/COFF/emission-kind-no-codeview.ll
M llvm/test/DebugInfo/COFF/emission-kind-no-debug.ll
M llvm/test/DebugInfo/COFF/fission-cu.ll
M llvm/test/DebugInfo/COFF/fission-sections.ll
A llvm/test/DebugInfo/COFF/uefi-nodebug.ll
M llvm/test/DebugInfo/Generic/directives-only.ll
Log Message:
-----------
[CodeGen][COFF] Always emit CodeView compiler info on Windows targets (#142970)
MSVC always emits minimal CodeView metadata with compiler information,
even when debug info is otherwise disabled. Other tools may rely on this
metadata being present. For example, linkers use it to determine whether
hotpatching is enabled for the object file.
Commit: f62a8ab9304fb8b8b3ac3519a7addd7d3d234b04
https://github.com/llvm/llvm-project/commit/f62a8ab9304fb8b8b3ac3519a7addd7d3d234b04
Author: Amr Hesham <amr96 at programmer.net>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M clang/lib/CIR/Dialect/IR/CIRDialect.cpp
A clang/test/CIR/IR/invalid-vector-shuffle-wrong-index.cir
Log Message:
-----------
[CIR] Extend VecShuffleOp verifier to catch invalid index (#143262)
Extend the verifier to catch index larger than the size of vector
elements in VecShuffleOp
Issue https://github.com/llvm/llvm-project/issues/136487
Commit: 5ab285e0a60ad914bda893dbe18b6c1c562f3db6
https://github.com/llvm/llvm-project/commit/5ab285e0a60ad914bda893dbe18b6c1c562f3db6
Author: Jacek Caban <jacek at codeweavers.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M lld/COFF/Writer.cpp
M lld/test/COFF/pdata-arm64ec.test
Log Message:
-----------
[LLD][COFF] Fix ARM64X CHPE exception data size relocation when no x86 .pdata is present (#144085)
Fixes an issue where we incorrectly skip setting the relocation value if
`hybridPdata.first` is null.
Commit: 8229628cf1812e126ff72ee9f4b5f267db4c91da
https://github.com/llvm/llvm-project/commit/8229628cf1812e126ff72ee9f4b5f267db4c91da
Author: Jacek Caban <jacek at codeweavers.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M clang/test/CodeGenCXX/debug-info-coff.cpp
Log Message:
-----------
[Clang] Relax DICompileUnit producer check in debug-info-coff.cpp test (NFC)
Fixes test from #142970 on Fuchsia CI, which uses "Fuchsia clang version" prefix.
Commit: 3afc2be1f0a4d3e3f646403a7495bcb12ef94246
https://github.com/llvm/llvm-project/commit/3afc2be1f0a4d3e3f646403a7495bcb12ef94246
Author: Peter Collingbourne <peter at pcc.me.uk>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
A llvm/test/tools/llvm-lto2/print-guid.test
M llvm/tools/llvm-lto2/llvm-lto2.cpp
Log Message:
-----------
llvm-lto2: Add print-guid subcommand.
This is useful for debugging ThinLTO issues.
Reviewers: teresajohnson
Reviewed By: teresajohnson
Pull Request: https://github.com/llvm/llvm-project/pull/143992
Commit: 473dea9b0b86d48db805079fa3e68b37e1dbcdd9
https://github.com/llvm/llvm-project/commit/473dea9b0b86d48db805079fa3e68b37e1dbcdd9
Author: William Huynh <William.Huynh at arm.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M libc/CMakeLists.txt
M libc/cmake/modules/LLVMLibCHeaderRules.cmake
M libc/test/UnitTest/CMakeLists.txt
Log Message:
-----------
[libc] Output all headers with LIBC_CONF_OUTPUT_ALL_HEADERS (#144114)
Following discussion from
https://discourse.llvm.org/t/missing-declarations-in-header-files/86678,
we decided to add a flag to output all headers. Requires #144049.
- Allows outputting all headers
- Minor whitespace change for alignment
---------
Co-authored-by: Michael Jones <michaelrj at google.com>
Commit: 2c440232e261746970cdf6f74d6588464eecd48b
https://github.com/llvm/llvm-project/commit/2c440232e261746970cdf6f74d6588464eecd48b
Author: Jorge Gorbe Moya <jgorbe at google.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
Log Message:
-----------
[bazel][libc] Add missing deps after 51689c9df2fbb81aab1ff802f3efb86cac926853
Commit: a591bd222b2e0356b8132b515422fe480b87322b
https://github.com/llvm/llvm-project/commit/a591bd222b2e0356b8132b515422fe480b87322b
Author: Amy Huang <akhuang at google.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M libc/config/config.json
Log Message:
-----------
Turn LIBC_COPT_STRING_UNSAFE_WIDE_READ on by default (#144163)
Configure strlen to use unsafe implementation because it is faster.
Because this is undefined behavior it could cause sanitizers to fail.
Commit: ca38027c036593ae487ccef250ebd5133803bb55
https://github.com/llvm/llvm-project/commit/ca38027c036593ae487ccef250ebd5133803bb55
Author: Amy Huang <akhuang at google.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M libc/config/config.json
Log Message:
-----------
Revert "Turn LIBC_COPT_STRING_UNSAFE_WIDE_READ on by default" (#144167)
Reverts llvm/llvm-project#144163 because for some reason I didn't
realize there are ASan tests.
Commit: d7e64d9594d241d6a9186fadad2b0d40a8fba8a7
https://github.com/llvm/llvm-project/commit/d7e64d9594d241d6a9186fadad2b0d40a8fba8a7
Author: Florian Mayer <fmayer at google.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M llvm/lib/Transforms/Instrumentation/MemorySanitizer.cpp
M llvm/test/Instrumentation/MemorySanitizer/X86/avx2-intrinsics-x86.ll
M llvm/test/Instrumentation/MemorySanitizer/X86/avx512-intrinsics-upgrade.ll
M llvm/test/Instrumentation/MemorySanitizer/X86/avx512-intrinsics.ll
M llvm/test/Instrumentation/MemorySanitizer/X86/avx512vl-intrinsics.ll
M llvm/test/Instrumentation/MemorySanitizer/X86/x86-vpermi2.ll
M llvm/test/Instrumentation/MemorySanitizer/i386/avx2-intrinsics-i386.ll
Log Message:
-----------
[MSAN] handle assorted AVX permutations (#143462)
Commit: 7f69cd578de899f8b00525a02d1fe25dab567bcf
https://github.com/llvm/llvm-project/commit/7f69cd578de899f8b00525a02d1fe25dab567bcf
Author: Erick Velez <erickvelez7 at gmail.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M clang-tools-extra/clang-doc/BitcodeReader.cpp
M clang-tools-extra/clang-doc/BitcodeWriter.cpp
M clang-tools-extra/clang-doc/Representation.cpp
M clang-tools-extra/clang-doc/Serialize.cpp
M clang-tools-extra/unittests/clang-doc/BitcodeTest.cpp
Log Message:
-----------
[clang-doc] remove default label on some switches (#143919)
LLVM style prefers no default label on fully covered switches to warn if
new enums are added. This patch removes the default label for that
purpose or uses IT_default instead of default if that was the only enum
not covered.
Commit: 417ab37d85ad1bb3e5623dff487ef108404e37f5
https://github.com/llvm/llvm-project/commit/417ab37d85ad1bb3e5623dff487ef108404e37f5
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M llvm/lib/Analysis/ConstantFolding.cpp
M llvm/test/Transforms/InstSimplify/ConstProp/vector-calls.ll
Log Message:
-----------
[ConstantFolding] Fold deinterleave2 of any splat vector not just zeroinitializer (#144144)
While there remove an unnecessary dyn_cast from Constant to Constant.
Reverse a branch condition into an early out to reduce nesting.
Commit: 15f100d1445846cdb55c24e588a74fde522fc9c9
https://github.com/llvm/llvm-project/commit/15f100d1445846cdb55c24e588a74fde522fc9c9
Author: Jorge Gorbe Moya <jgorbe at google.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/mlir/tblgen.bzl
Log Message:
-----------
[bazel] fix mlir/tblgen.bzl formatting after 6e988bd33f5fa8a529ef9208d3e147945b7bb7ed
Commit: bd319d9071fb0c6e1bda9db500d039d32a49c28a
https://github.com/llvm/llvm-project/commit/bd319d9071fb0c6e1bda9db500d039d32a49c28a
Author: Tomohiro Kashiwada <kikairoya at gmail.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M llvm/cmake/config-ix.cmake
M llvm/cmake/modules/HandleLLVMOptions.cmake
Log Message:
-----------
[Cygwin] CYGWIN is not WIN32 in current CMake (#143130)
On old CMake, Cygwin were also WIN32 but currently not. LLVM_ON_UNIX=1
and LLVM_HAVE_LINK_VERSION_SCRIPT=0 should be defined for Cygwin target.
Commit: e37707b1e85cfc07fe75fd6b7e5d41963c52a8ec
https://github.com/llvm/llvm-project/commit/e37707b1e85cfc07fe75fd6b7e5d41963c52a8ec
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfo.cpp
M llvm/lib/Target/RISCV/RISCVInstrInfo.h
Log Message:
-----------
[RISCV] Use unsigned instead of uint16_t for the Opcode argument to getVectorLowDemandedScalarBits. NFC
All the callers pass an unsigned and uint16_t arguments are unusual.
Commit: d4c7d0be1f5235555393313bb1f8e46c97f76766
https://github.com/llvm/llvm-project/commit/d4c7d0be1f5235555393313bb1f8e46c97f76766
Author: Fangrui Song <i at maskray.me>
Date: 2025-06-13 (Fri, 13 Jun 2025)
Changed paths:
M llvm/lib/MC/MCObjectStreamer.cpp
Log Message:
-----------
MCObjectStreamer: Replace getAssemblerPtr with getAssembler
In general getAssemblerPtr should only be called by MCParse.
Revert some changes from https://reviews.llvm.org/D45164?id=143128
Commit: e17d8d0fafa71524bd216541f8cd76d97cdf1ba2
https://github.com/llvm/llvm-project/commit/e17d8d0fafa71524bd216541f8cd76d97cdf1ba2
Author: Iris Shi <0.0 at owo.li>
Date: 2025-06-14 (Sat, 14 Jun 2025)
Changed paths:
M .github/workflows/libcxx-build-and-test.yaml
M bolt/lib/Profile/DataAggregator.cpp
M clang-tools-extra/clang-doc/BitcodeReader.cpp
M clang-tools-extra/clang-doc/BitcodeWriter.cpp
M clang-tools-extra/clang-doc/Representation.cpp
M clang-tools-extra/clang-doc/Serialize.cpp
M clang-tools-extra/clang-tidy/modernize/UseIntegerSignComparisonCheck.cpp
M clang-tools-extra/clangd/refactor/Rename.cpp
M clang-tools-extra/clangd/unittests/HoverTests.cpp
M clang-tools-extra/clangd/unittests/XRefsTests.cpp
M clang-tools-extra/docs/ReleaseNotes.rst
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-integer-sign-comparison.cpp
M clang-tools-extra/unittests/clang-doc/BitcodeTest.cpp
M clang/docs/HIPSupport.rst
M clang/docs/OpenMPSupport.rst
M clang/docs/ReleaseNotes.rst
M clang/docs/SanitizerSpecialCaseList.rst
M clang/include/clang/AST/ASTContext.h
M clang/include/clang/AST/DeclBase.h
M clang/include/clang/AST/Expr.h
M clang/include/clang/AST/RecursiveASTVisitor.h
M clang/include/clang/Basic/AArch64ACLETypes.def
M clang/include/clang/Basic/Attr.td
M clang/include/clang/Basic/AttrDocs.td
M clang/include/clang/Basic/CodeGenOptions.def
M clang/include/clang/Basic/CodeGenOptions.h
M clang/include/clang/Basic/Diagnostic.h
M clang/include/clang/Basic/DiagnosticDriverKinds.td
M clang/include/clang/Basic/DiagnosticGroups.td
M clang/include/clang/Basic/DiagnosticIDs.h
M clang/include/clang/Basic/DiagnosticParseKinds.td
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/include/clang/Basic/OpenMPKinds.def
M clang/include/clang/Basic/ProfileList.h
M clang/include/clang/Basic/StmtNodes.td
M clang/include/clang/CIR/Dialect/Builder/CIRBaseBuilder.h
M clang/include/clang/CIR/Dialect/IR/CIROps.td
M clang/include/clang/CIR/MissingFeatures.h
M clang/include/clang/Driver/Options.td
M clang/include/clang/Parse/Parser.h
M clang/include/clang/Sema/Sema.h
M clang/include/clang/Sema/SemaHLSL.h
M clang/include/clang/Sema/SemaInternal.h
M clang/include/clang/Sema/SemaOpenMP.h
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/SMTConv.h
M clang/lib/AST/ASTContext.cpp
M clang/lib/AST/AttrImpl.cpp
M clang/lib/AST/ByteCode/InterpBuiltin.cpp
M clang/lib/AST/DeclBase.cpp
M clang/lib/AST/Expr.cpp
M clang/lib/AST/ExprClassification.cpp
M clang/lib/AST/ExprConstant.cpp
M clang/lib/AST/ItaniumMangle.cpp
M clang/lib/AST/StmtPrinter.cpp
M clang/lib/AST/StmtProfile.cpp
M clang/lib/Basic/Diagnostic.cpp
M clang/lib/Basic/DiagnosticIDs.cpp
M clang/lib/Basic/ProfileList.cpp
M clang/lib/Basic/SourceManager.cpp
M clang/lib/Basic/Targets/AArch64.cpp
M clang/lib/Basic/Targets/AArch64.h
M clang/lib/Basic/Targets/SPIR.h
M clang/lib/CIR/CodeGen/CIRGenBuilder.cpp
M clang/lib/CIR/CodeGen/CIRGenBuilder.h
A clang/lib/CIR/CodeGen/CIRGenBuiltin.cpp
A clang/lib/CIR/CodeGen/CIRGenCXX.cpp
M clang/lib/CIR/CodeGen/CIRGenCXXABI.h
M clang/lib/CIR/CodeGen/CIRGenCall.cpp
M clang/lib/CIR/CodeGen/CIRGenCall.h
M clang/lib/CIR/CodeGen/CIRGenClass.cpp
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/CIRGenExprScalar.cpp
M clang/lib/CIR/CodeGen/CIRGenFunction.cpp
M clang/lib/CIR/CodeGen/CIRGenFunction.h
M clang/lib/CIR/CodeGen/CIRGenItaniumCXXABI.cpp
M clang/lib/CIR/CodeGen/CIRGenModule.cpp
M clang/lib/CIR/CodeGen/CIRGenModule.h
M clang/lib/CIR/CodeGen/CIRGenStmtOpenACC.cpp
M clang/lib/CIR/CodeGen/CIRGenStmtOpenACCLoop.cpp
M clang/lib/CIR/CodeGen/CIRGenTypes.cpp
M clang/lib/CIR/CodeGen/CIRGenValue.h
M clang/lib/CIR/CodeGen/CMakeLists.txt
M clang/lib/CIR/Dialect/IR/CIRDialect.cpp
M clang/lib/CIR/Dialect/Transforms/CIRCanonicalize.cpp
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.h
M clang/lib/CodeGen/BackendUtil.cpp
M clang/lib/CodeGen/CGCUDANV.cpp
M clang/lib/CodeGen/CGHLSLBuiltins.cpp
M clang/lib/CodeGen/CGHLSLRuntime.cpp
M clang/lib/CodeGen/CGHLSLRuntime.h
M clang/lib/CodeGen/CGOpenMPRuntime.cpp
M clang/lib/CodeGen/CGOpenMPRuntime.h
M clang/lib/CodeGen/CGStmtOpenMP.cpp
M clang/lib/CodeGen/CGVTables.cpp
M clang/lib/CodeGen/CodeGenAction.cpp
M clang/lib/CodeGen/CodeGenFunction.cpp
M clang/lib/CodeGen/CodeGenModule.cpp
M clang/lib/CodeGen/Targets/AArch64.cpp
M clang/lib/Driver/Driver.cpp
M clang/lib/Driver/ToolChains/Arch/LoongArch.cpp
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/lib/Driver/ToolChains/Darwin.cpp
M clang/lib/Driver/ToolChains/Flang.cpp
M clang/lib/Format/MacroCallReconstructor.cpp
M clang/lib/Frontend/CompilerInstance.cpp
M clang/lib/Frontend/CompilerInvocation.cpp
M clang/lib/Index/IndexBody.cpp
M clang/lib/Interpreter/DeviceOffload.cpp
M clang/lib/Lex/DependencyDirectivesScanner.cpp
M clang/lib/Parse/ParseCXXInlineMethods.cpp
M clang/lib/Parse/ParseDecl.cpp
M clang/lib/Parse/ParseDeclCXX.cpp
M clang/lib/Parse/ParseExpr.cpp
M clang/lib/Parse/ParseExprCXX.cpp
M clang/lib/Parse/ParseHLSL.cpp
M clang/lib/Parse/ParseInit.cpp
M clang/lib/Parse/ParseObjc.cpp
M clang/lib/Parse/ParseOpenACC.cpp
M clang/lib/Parse/ParseOpenMP.cpp
M clang/lib/Parse/ParseStmt.cpp
M clang/lib/Parse/ParseStmtAsm.cpp
M clang/lib/Parse/ParseTemplate.cpp
M clang/lib/Parse/Parser.cpp
M clang/lib/Sema/Sema.cpp
M clang/lib/Sema/SemaChecking.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/SemaExceptionSpec.cpp
M clang/lib/Sema/SemaExpr.cpp
M clang/lib/Sema/SemaExprCXX.cpp
M clang/lib/Sema/SemaExprMember.cpp
M clang/lib/Sema/SemaHLSL.cpp
M clang/lib/Sema/SemaLookup.cpp
M clang/lib/Sema/SemaModule.cpp
M clang/lib/Sema/SemaObjC.cpp
M clang/lib/Sema/SemaOpenMP.cpp
M clang/lib/Sema/SemaOverload.cpp
M clang/lib/Sema/SemaRISCV.cpp
M clang/lib/Sema/SemaStmt.cpp
M clang/lib/Sema/SemaStmtAttr.cpp
M clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
M clang/lib/Sema/SemaTemplateVariadic.cpp
M clang/lib/Sema/SemaTypeTraits.cpp
M clang/lib/Sema/TreeTransform.h
M clang/lib/Serialization/ASTReaderStmt.cpp
M clang/lib/Serialization/ASTWriterDecl.cpp
M clang/lib/Serialization/ASTWriterStmt.cpp
M clang/lib/StaticAnalyzer/Core/ExprEngine.cpp
M clang/lib/Tooling/DependencyScanning/ModuleDepCollector.cpp
M clang/test/AST/ByteCode/literals.cpp
M clang/test/AST/ast-dump-aarch64-neon-types.c
M clang/test/AST/ast-dump-recovery.c
M clang/test/AST/ast-dump-recovery.cpp
R clang/test/AST/ast-dump-recovery.m
A clang/test/Analysis/bitint-z3.c
M clang/test/CIR/CodeGen/array.cpp
M clang/test/CIR/CodeGen/basic.c
A clang/test/CIR/CodeGen/builtin_call.cpp
A clang/test/CIR/CodeGen/call.c
M clang/test/CIR/CodeGen/call.cpp
M clang/test/CIR/CodeGen/cast.cpp
M clang/test/CIR/CodeGen/ctor.cpp
M clang/test/CIR/CodeGen/forrange.cpp
A clang/test/CIR/CodeGen/libc.c
A clang/test/CIR/CodeGen/static-vars.c
A clang/test/CIR/CodeGen/static-vars.cpp
M clang/test/CIR/CodeGen/vector-ext.cpp
M clang/test/CIR/CodeGen/vector.cpp
M clang/test/CIR/CodeGenOpenACC/combined.cpp
M clang/test/CIR/CodeGenOpenACC/loop.cpp
A clang/test/CIR/IR/invalid-vector-shuffle-wrong-index.cir
M clang/test/CIR/IR/vector.cir
A clang/test/CIR/Transforms/vector-create-fold.cir
M clang/test/CXX/drs/cwg1xx.cpp
M clang/test/CXX/drs/cwg26xx.cpp
M clang/test/CXX/module/basic/basic.link/p2.cppm
M clang/test/CodeGen/AArch64/mixed-neon-types.c
M clang/test/CodeGen/AArch64/struct-coerce-using-ptr.cpp
M clang/test/CodeGen/alias.c
M clang/test/CodeGen/attr-arm-sve-vector-bits-cast.c
A clang/test/CodeGen/debug-info-version-coff.c
M clang/test/CodeGen/debug-info-version.c
A clang/test/CodeGenCXX/debug-info-coff.cpp
M clang/test/CodeGenCXX/debug-info-hotpatch-aarch64.cpp
M clang/test/CodeGenCXX/debug-info-hotpatch-arm.cpp
M clang/test/CodeGenHLSL/group_shared.hlsl
A clang/test/CodeGenHLSL/semantics/SV_Position.ps.hlsl
A clang/test/Driver/darwin-invalid-version-range.c
M clang/test/Driver/dxc_spirv.hlsl
M clang/test/Driver/hip-binding.hip
M clang/test/Driver/hip-phases.hip
M clang/test/Driver/hip-toolchain-no-rdc.hip
M clang/test/Driver/linker-wrapper.c
M clang/test/Driver/range.c
A clang/test/Driver/stack-alignment.c
R clang/test/FixIt/typo.cpp
M clang/test/Format/multiple-inputs-error.cpp
M clang/test/Format/ranges.cpp
A clang/test/Frontend/aarch64-print-enabled-extensions-cc1.c
M clang/test/Frontend/ast-main.c
M clang/test/Frontend/ast-main.cpp
R clang/test/Index/complete-switch.c
M clang/test/Index/fix-its.c
M clang/test/Lexer/raw-string-ext.c
A clang/test/Modules/constexpr-initialization-failure.cpp
M clang/test/Modules/diagnose-missing-import.m
A clang/test/Modules/module-local-declarations-02.cppm
A clang/test/Modules/module-local-declarations.cppm
A clang/test/Modules/pr119947.cppm
A clang/test/Modules/pr143788.cppm
A clang/test/Modules/pr61360.cppm
M clang/test/OpenMP/begin_declare_variant_messages.c
M clang/test/OpenMP/declare_reduction_messages.cpp
M clang/test/OpenMP/declare_variant_clauses_ast_print.cpp
M clang/test/OpenMP/declare_variant_clauses_messages.cpp
M clang/test/OpenMP/declare_variant_messages.c
M clang/test/OpenMP/declare_variant_messages.cpp
M clang/test/OpenMP/distribute_simd_misc_messages.c
A clang/test/OpenMP/for_private_reduction_codegen.cpp
M clang/test/OpenMP/for_reduction_messages.cpp
M clang/test/OpenMP/for_simd_reduction_messages.cpp
M clang/test/OpenMP/sections_reduction_messages.cpp
A clang/test/OpenMP/target_map_array_of_structs_with_nested_mapper_ast_dump.cpp
A clang/test/OpenMP/target_map_array_of_structs_with_nested_mapper_codegen.cpp
A clang/test/OpenMP/target_map_array_section_of_structs_with_nested_mapper_ast_dump.cpp
A clang/test/OpenMP/target_map_array_section_of_structs_with_nested_mapper_codegen.cpp
R clang/test/OpenMP/target_map_nest_defalut_mapper_ast_dump.cpp
R clang/test/OpenMP/target_map_nest_defalut_mapper_codegen.cpp
M clang/test/OpenMP/target_update_messages.cpp
M clang/test/Parser/cxx1z-decomposition.cpp
M clang/test/Parser/cxx1z-fold-expressions.cpp
M clang/test/Parser/cxx2c-pack-indexing.cpp
A clang/test/Parser/macro-expansion-recovery.cpp
M clang/test/Parser/objc-foreach-syntax.m
M clang/test/Parser/opencl-atomics-cl20.cl
M clang/test/Parser/recovery.c
M clang/test/Parser/switch-recovery.cpp
M clang/test/Parser/switch-typo-correction.cpp
M clang/test/ParserOpenACC/parse-cache-construct.cpp
M clang/test/ParserOpenACC/parse-clauses.c
M clang/test/ParserOpenACC/parse-constructs.cpp
M clang/test/ParserOpenACC/parse-wait-clause.c
M clang/test/ParserOpenACC/parse-wait-construct.c
M clang/test/Preprocessor/aarch64-target-features.c
M clang/test/Preprocessor/init-loongarch.c
M clang/test/Sema/PR28181.c
M clang/test/Sema/builtin-unary-fp.c
A clang/test/Sema/c23-delayed-typo-correction-crashes.c
A clang/test/Sema/delayed-typo-correction-crashes.c
M clang/test/Sema/invalid-member.cpp
M clang/test/Sema/typo-correction-ambiguity.cpp
M clang/test/Sema/typo-correction-no-hang.c
M clang/test/Sema/typo-correction-no-hang.cpp
M clang/test/Sema/typo-correction-recursive.cpp
M clang/test/Sema/typo-correction.c
M clang/test/SemaCXX/arrow-operator.cpp
M clang/test/SemaCXX/constant-expression-cxx11.cpp
M clang/test/SemaCXX/conversion-function.cpp
M clang/test/SemaCXX/coroutines.cpp
A clang/test/SemaCXX/cxx-delayed-typo-correction-crashes.cpp
M clang/test/SemaCXX/cxx1z-decomposition.cpp
A clang/test/SemaCXX/cxx20-delayed-typo-correction-crashes.cpp
M clang/test/SemaCXX/cxx2a-adl-only-template-id.cpp
M clang/test/SemaCXX/cxx2c-trivially-relocatable.cpp
M clang/test/SemaCXX/destructor.cpp
M clang/test/SemaCXX/invalid-if-constexpr.cpp
M clang/test/SemaCXX/member-expr.cpp
M clang/test/SemaCXX/nested-name-spec.cpp
R clang/test/SemaCXX/pr13394-crash-on-invalid.cpp
M clang/test/SemaCXX/return.cpp
M clang/test/SemaCXX/type-traits-unsatisfied-diags.cpp
M clang/test/SemaCXX/typo-correction-crash.cpp
M clang/test/SemaCXX/typo-correction-cxx11.cpp
R clang/test/SemaCXX/typo-correction-delayed.cpp
M clang/test/SemaCXX/typo-correction.cpp
M clang/test/SemaCXX/unique_object_duplication.cpp
M clang/test/SemaCXX/unique_object_duplication.h
M clang/test/SemaCXX/virtuals.cpp
A clang/test/SemaHLSL/Semantics/position.ps.hlsl
A clang/test/SemaHLSL/Semantics/position.ps.size.hlsl
A clang/test/SemaHLSL/Semantics/position.vs.hlsl
M clang/test/SemaObjC/call-super-2.m
M clang/test/SemaObjC/typo-correction-subscript.m
M clang/test/SemaObjC/undef-arg-super-method-call.m
M clang/test/SemaObjCXX/block-for-lambda-conversion.mm
M clang/test/SemaOpenACC/compute-construct-num_gangs-clause.cpp
M clang/test/SemaOpenCL/atomic-ops.cl
M clang/test/SemaOpenCL/clang-builtin-version.cl
M clang/test/SemaTemplate/concepts-recovery-expr.cpp
M clang/test/SemaTemplate/concepts.cpp
M clang/test/SemaTemplate/typo-variadic.cpp
M clang/tools/clang-format/ClangFormat.cpp
M clang/tools/clang-linker-wrapper/ClangLinkerWrapper.cpp
M clang/tools/libclang/CXCursor.cpp
M clang/unittests/Frontend/CompilerInstanceTest.cpp
M clang/unittests/Lex/DependencyDirectivesScannerTest.cpp
M clang/unittests/Sema/ExternalSemaSourceTest.cpp
M clang/utils/TableGen/ClangAttrEmitter.cpp
M compiler-rt/lib/builtins/README.txt
M compiler-rt/lib/builtins/trampoline_setup.c
M compiler-rt/lib/fuzzer/FuzzerDataFlowTrace.cpp
M compiler-rt/lib/sanitizer_common/sanitizer_common_interceptors.inc
M compiler-rt/lib/sanitizer_common/sanitizer_common_interceptors_ioctl.inc
M compiler-rt/lib/sanitizer_common/sanitizer_common_interceptors_memintrinsics.inc
M compiler-rt/lib/sanitizer_common/sanitizer_platform_interceptors.h
M compiler-rt/lib/sanitizer_common/sanitizer_redefine_builtins.h
M compiler-rt/test/builtins/Unit/trampoline_setup_test.c
M compiler-rt/test/lit.common.configured.in
M flang-rt/include/flang-rt/runtime/environment.h
M flang-rt/include/flang-rt/runtime/stat.h
M flang-rt/include/flang-rt/runtime/type-info.h
R flang-rt/include/flang-rt/runtime/work-queue.h
M flang-rt/lib/cuda/descriptor.cpp
M flang-rt/lib/runtime/CMakeLists.txt
M flang-rt/lib/runtime/assign.cpp
M flang-rt/lib/runtime/derived.cpp
M flang-rt/lib/runtime/descriptor-io.cpp
M flang-rt/lib/runtime/descriptor-io.h
M flang-rt/lib/runtime/environment.cpp
M flang-rt/lib/runtime/namelist.cpp
M flang-rt/lib/runtime/tools.cpp
M flang-rt/lib/runtime/type-info.cpp
R flang-rt/lib/runtime/work-queue.cpp
M flang-rt/unittests/Runtime/ExternalIOTest.cpp
M flang/Maintainers.md
M flang/docs/Extensions.md
M flang/docs/OpenMPSupport.md
M flang/examples/FeatureList/FeatureList.cpp
M flang/examples/FlangOmpReport/FlangOmpReportVisitor.cpp
M flang/include/flang/Evaluate/tools.h
M flang/include/flang/Frontend/CodeGenOptions.def
M flang/include/flang/Frontend/CodeGenOptions.h
M flang/include/flang/Lower/LoweringOptions.def
M flang/include/flang/Optimizer/Builder/Runtime/CUDA/Descriptor.h
M flang/include/flang/Parser/dump-parse-tree.h
M flang/include/flang/Parser/parse-tree.h
M flang/include/flang/Runtime/CUDA/descriptor.h
M flang/include/flang/Runtime/assign.h
M flang/include/flang/Semantics/tools.h
M flang/lib/Frontend/CompilerInvocation.cpp
M flang/lib/Frontend/FrontendActions.cpp
M flang/lib/Lower/Bridge.cpp
M flang/lib/Lower/ConvertCall.cpp
M flang/lib/Lower/OpenACC.cpp
M flang/lib/Lower/OpenMP/ClauseProcessor.cpp
M flang/lib/Lower/OpenMP/Clauses.cpp
M flang/lib/Lower/OpenMP/DataSharingProcessor.cpp
M flang/lib/Lower/OpenMP/OpenMP.cpp
M flang/lib/Optimizer/Builder/Runtime/CUDA/Descriptor.cpp
M flang/lib/Optimizer/CodeGen/BoxedProcedure.cpp
M flang/lib/Optimizer/CodeGen/CodeGen.cpp
M flang/lib/Optimizer/OpenMP/DoConcurrentConversion.cpp
M flang/lib/Optimizer/Transforms/SimplifyFIROperations.cpp
M flang/lib/Parser/openmp-parsers.cpp
M flang/lib/Parser/parse-tree.cpp
M flang/lib/Parser/unparse.cpp
M flang/lib/Semantics/check-declarations.cpp
M flang/lib/Semantics/check-omp-structure.cpp
M flang/lib/Semantics/check-omp-structure.h
M flang/lib/Semantics/mod-file.cpp
M flang/lib/Semantics/resolve-directives.cpp
M flang/lib/Semantics/resolve-names.cpp
M flang/lib/Semantics/rewrite-directives.cpp
M flang/lib/Semantics/runtime-type-info.cpp
M flang/lib/Semantics/tools.cpp
M flang/module/__fortran_type_info.f90
A flang/test/Driver/darwin-version.f90
M flang/test/Driver/flang-f-opts.f90
M flang/test/Driver/pic-flags.f90
M flang/test/Examples/omp-atomic.f90
M flang/test/Fir/boxproc.fir
A flang/test/Fir/local.fir
M flang/test/HLFIR/assign-side-effects.fir
M flang/test/HLFIR/memory-effects.fir
A flang/test/Lower/CUDA/cuda-runtime-check.cuf
M flang/test/Lower/OpenACC/acc-kernels-loop.f90
M flang/test/Lower/OpenACC/acc-loop.f90
M flang/test/Lower/OpenACC/acc-parallel-loop.f90
M flang/test/Lower/OpenACC/acc-serial-loop.f90
M flang/test/Lower/OpenMP/Todo/atomic-compare-fail.f90
M flang/test/Lower/OpenMP/Todo/atomic-compare.f90
A flang/test/Lower/OpenMP/Todo/target-parallel-private.f90
A flang/test/Lower/OpenMP/Todo/target-teams-private.f90
M flang/test/Lower/OpenMP/atomic-capture.f90
M flang/test/Lower/OpenMP/atomic-implicit-cast.f90
M flang/test/Lower/OpenMP/atomic-privatize.f90
M flang/test/Lower/OpenMP/atomic-write.f90
A flang/test/Lower/OpenMP/depend-complex.f90
A flang/test/Lower/OpenMP/depend-substring.f90
A flang/test/Lower/OpenMP/dump-atomic-analysis.f90
A flang/test/Lower/OpenMP/flush02.f90
A flang/test/Lower/OpenMP/requires-atomic-default-mem-order.f90
M flang/test/Lower/do_concurrent_delayed_locality.f90
M flang/test/Lower/do_concurrent_local_assoc_entity.f90
M flang/test/Lower/do_concurrent_local_default_init.f90
M flang/test/Lower/loops.f90
M flang/test/Lower/loops3.f90
M flang/test/Lower/volatile-openmp.f90
M flang/test/Parser/OpenMP/atomic-compare.f90
A flang/test/Parser/OpenMP/atomic-end.f90
A flang/test/Profile/Inputs/gcc-flag-compatibility_IR.proftext
A flang/test/Profile/Inputs/gcc-flag-compatibility_IR_entry.proftext
A flang/test/Profile/gcc-flag-compatibility.f90
M flang/test/Semantics/OpenMP/atomic-compare.f90
M flang/test/Semantics/OpenMP/atomic-hint-clause.f90
A flang/test/Semantics/OpenMP/atomic-read.f90
A flang/test/Semantics/OpenMP/atomic-update-capture.f90
A flang/test/Semantics/OpenMP/atomic-update-only.f90
M flang/test/Semantics/OpenMP/atomic-update-overloaded-ops.f90
A flang/test/Semantics/OpenMP/atomic-write.f90
M flang/test/Semantics/OpenMP/atomic.f90
M flang/test/Semantics/OpenMP/atomic01.f90
M flang/test/Semantics/OpenMP/atomic02.f90
M flang/test/Semantics/OpenMP/atomic03.f90
M flang/test/Semantics/OpenMP/atomic04.f90
M flang/test/Semantics/OpenMP/atomic05.f90
M flang/test/Semantics/OpenMP/critical-hint-clause.f90
A flang/test/Semantics/OpenMP/depend-substring.f90
M flang/test/Semantics/OpenMP/implicit-dsa.f90
M flang/test/Semantics/OpenMP/omp-atomic-assignment-stmt.f90
A flang/test/Semantics/OpenMP/parallel-master-goto.f90
M flang/test/Semantics/OpenMP/requires-atomic01.f90
M flang/test/Semantics/OpenMP/requires-atomic02.f90
M flang/test/Semantics/cuf21.cuf
A flang/test/Semantics/modfile76.F90
A flang/test/Semantics/modfile77.F90
A flang/test/Semantics/modfile78.F90
M flang/test/Semantics/typeinfo01.f90
M flang/test/Semantics/typeinfo03.f90
M flang/test/Semantics/typeinfo04.f90
M flang/test/Semantics/typeinfo05.f90
M flang/test/Semantics/typeinfo06.f90
M flang/test/Semantics/typeinfo07.f90
M flang/test/Semantics/typeinfo08.f90
M flang/test/Semantics/typeinfo11.f90
R flang/test/Semantics/typeinfo12.f90
A flang/test/Transforms/DoConcurrent/locality_specifiers_init_dealloc.mlir
A flang/test/Transforms/DoConcurrent/locality_specifiers_simple.mlir
A flang/test/Transforms/do-concurrent-localizer-dealloc-region.fir
A flang/test/Transforms/do-concurrent-localizer-init-region.fir
M flang/tools/bbc/bbc.cpp
M libc/CMakeLists.txt
M libc/cmake/modules/LLVMLibCCompileOptionRules.cmake
M libc/cmake/modules/LLVMLibCHeaderRules.cmake
M libc/config/config.json
M libc/config/linux/aarch64/entrypoints.txt
M libc/config/linux/arm/entrypoints.txt
M libc/config/linux/riscv/entrypoints.txt
M libc/config/linux/x86_64/entrypoints.txt
M libc/docs/configure.rst
M libc/docs/dev/code_style.rst
M libc/fuzzing/stdio/CMakeLists.txt
M libc/hdr/CMakeLists.txt
A libc/hdr/sys_ioctl_macros.h
M libc/hdr/types/CMakeLists.txt
A libc/hdr/types/char32_t.h
A libc/hdr/types/char8_t.h
A libc/hdr/uchar_overlay.h
M libc/include/CMakeLists.txt
M libc/include/llvm-libc-macros/linux/sys-ioctl-macros.h
M libc/include/llvm-libc-types/char8_t.h
M libc/include/llvm-libc-types/size_t.h
M libc/include/llvm-libc-types/ssize_t.h
M libc/include/locale.yaml
M libc/include/math.yaml
M libc/include/stdio.yaml
M libc/include/stdlib.yaml
M libc/include/string.h.def
M libc/include/string.yaml
M libc/include/time.yaml
M libc/include/wchar.yaml
M libc/shared/fp_bits.h
A libc/shared/libc_common.h
A libc/shared/math.h
A libc/shared/math/expf.h
M libc/shared/rpc_server.h
M libc/shared/str_to_float.h
M libc/shared/str_to_integer.h
M libc/src/__support/CMakeLists.txt
M libc/src/__support/FPUtil/FEnvImpl.h
M libc/src/__support/File/dir.cpp
M libc/src/__support/File/file.cpp
M libc/src/__support/File/linux/file.cpp
M libc/src/__support/File/linux/lseekImpl.h
M libc/src/__support/GPU/allocator.cpp
M libc/src/__support/HashTable/randomness.h
M libc/src/__support/OSUtil/fcntl.h
M libc/src/__support/OSUtil/linux/CMakeLists.txt
M libc/src/__support/OSUtil/linux/fcntl.cpp
M libc/src/__support/OSUtil/linux/vdso.cpp
M libc/src/__support/StringUtil/tables/linux_extension_errors.h
A libc/src/__support/libc_errno.h
A libc/src/__support/math/CMakeLists.txt
A libc/src/__support/math/exp_float_constants.h
A libc/src/__support/math/expf.h
M libc/src/__support/threads/linux/thread.cpp
A libc/src/__support/wchar/CMakeLists.txt
A libc/src/__support/wchar/character_converter.cpp
A libc/src/__support/wchar/character_converter.h
A libc/src/__support/wchar/mbstate.h
A libc/src/__support/wchar/utf_ret.h
M libc/src/dirent/closedir.cpp
M libc/src/dirent/opendir.cpp
M libc/src/dirent/readdir.cpp
M libc/src/errno/CMakeLists.txt
M libc/src/errno/libc_errno.cpp
R libc/src/errno/libc_errno.h
M libc/src/fcntl/linux/CMakeLists.txt
M libc/src/fcntl/linux/creat.cpp
M libc/src/fcntl/linux/fcntl.cpp
M libc/src/fcntl/linux/open.cpp
M libc/src/fcntl/linux/openat.cpp
M libc/src/inttypes/strtoimax.cpp
M libc/src/inttypes/strtoumax.cpp
M libc/src/math/generic/CMakeLists.txt
M libc/src/math/generic/exp10m1f.cpp
M libc/src/math/generic/exp2m1f.cpp
M libc/src/math/generic/expf.cpp
M libc/src/math/generic/nan.cpp
M libc/src/math/generic/nanf.cpp
M libc/src/math/generic/nanf128.cpp
M libc/src/math/generic/nanf16.cpp
M libc/src/math/generic/nanl.cpp
M libc/src/poll/linux/poll.cpp
M libc/src/pthread/pthread_atfork.cpp
M libc/src/pthread/pthread_attr_setdetachstate.cpp
M libc/src/pthread/pthread_attr_setguardsize.cpp
M libc/src/pthread/pthread_attr_setstack.cpp
M libc/src/pthread/pthread_attr_setstacksize.cpp
M libc/src/pthread/pthread_condattr_setclock.cpp
M libc/src/pthread/pthread_condattr_setpshared.cpp
M libc/src/pthread/pthread_create.cpp
M libc/src/pthread/pthread_key_create.cpp
M libc/src/pthread/pthread_key_delete.cpp
M libc/src/pthread/pthread_mutexattr_setpshared.cpp
M libc/src/pthread/pthread_mutexattr_setrobust.cpp
M libc/src/pthread/pthread_mutexattr_settype.cpp
M libc/src/pthread/pthread_rwlock_timedrdlock.cpp
M libc/src/pthread/pthread_rwlock_trywrlock.cpp
M libc/src/pthread/pthread_rwlock_unlock.cpp
M libc/src/pthread/pthread_rwlockattr_setkind_np.cpp
M libc/src/pthread/pthread_rwlockattr_setpshared.cpp
M libc/src/pthread/pthread_setspecific.cpp
M libc/src/sched/linux/sched_get_priority_max.cpp
M libc/src/sched/linux/sched_get_priority_min.cpp
M libc/src/sched/linux/sched_getaffinity.cpp
M libc/src/sched/linux/sched_getparam.cpp
M libc/src/sched/linux/sched_getscheduler.cpp
M libc/src/sched/linux/sched_rr_get_interval.cpp
M libc/src/sched/linux/sched_setaffinity.cpp
M libc/src/sched/linux/sched_setparam.cpp
M libc/src/sched/linux/sched_setscheduler.cpp
M libc/src/sched/linux/sched_yield.cpp
M libc/src/search/hcreate.cpp
M libc/src/search/hcreate_r.cpp
M libc/src/search/hdestroy_r.cpp
M libc/src/search/hsearch.cpp
M libc/src/search/hsearch_r.cpp
M libc/src/signal/linux/kill.cpp
M libc/src/signal/linux/sigaction.cpp
M libc/src/signal/linux/sigaddset.cpp
M libc/src/signal/linux/sigaltstack.cpp
M libc/src/signal/linux/sigdelset.cpp
M libc/src/signal/linux/sigemptyset.cpp
M libc/src/signal/linux/sigfillset.cpp
M libc/src/signal/linux/sigprocmask.cpp
M libc/src/spawn/posix_spawn_file_actions_addclose.cpp
M libc/src/spawn/posix_spawn_file_actions_adddup2.cpp
M libc/src/spawn/posix_spawn_file_actions_addopen.cpp
M libc/src/spawn/posix_spawn_file_actions_destroy.cpp
M libc/src/stdio/CMakeLists.txt
M libc/src/stdio/fopencookie.cpp
M libc/src/stdio/generic/CMakeLists.txt
M libc/src/stdio/generic/fclose.cpp
M libc/src/stdio/generic/fflush.cpp
M libc/src/stdio/generic/fgetc.cpp
M libc/src/stdio/generic/fgetc_unlocked.cpp
M libc/src/stdio/generic/fgets.cpp
M libc/src/stdio/generic/fopen.cpp
M libc/src/stdio/generic/fputc.cpp
M libc/src/stdio/generic/fputs.cpp
M libc/src/stdio/generic/fread.cpp
M libc/src/stdio/generic/fread_unlocked.cpp
M libc/src/stdio/generic/fseek.cpp
M libc/src/stdio/generic/fseeko.cpp
M libc/src/stdio/generic/ftell.cpp
M libc/src/stdio/generic/ftello.cpp
M libc/src/stdio/generic/fwrite.cpp
M libc/src/stdio/generic/fwrite_unlocked.cpp
M libc/src/stdio/generic/getc.cpp
M libc/src/stdio/generic/getc_unlocked.cpp
M libc/src/stdio/generic/getchar.cpp
M libc/src/stdio/generic/getchar_unlocked.cpp
A libc/src/stdio/generic/perror.cpp
M libc/src/stdio/generic/putc.cpp
M libc/src/stdio/generic/putchar.cpp
M libc/src/stdio/generic/puts.cpp
M libc/src/stdio/gpu/fprintf.cpp
M libc/src/stdio/gpu/printf.cpp
M libc/src/stdio/linux/fdopen.cpp
M libc/src/stdio/linux/remove.cpp
M libc/src/stdio/linux/rename.cpp
A libc/src/stdio/perror.h
M libc/src/stdio/printf_core/parser.h
M libc/src/stdio/setbuf.cpp
M libc/src/stdio/setvbuf.cpp
M libc/src/stdlib/atof.cpp
M libc/src/stdlib/atoi.cpp
M libc/src/stdlib/atol.cpp
M libc/src/stdlib/atoll.cpp
M libc/src/stdlib/strtod.cpp
M libc/src/stdlib/strtod_l.cpp
M libc/src/stdlib/strtof.cpp
M libc/src/stdlib/strtof_l.cpp
M libc/src/stdlib/strtol.cpp
M libc/src/stdlib/strtol_l.cpp
M libc/src/stdlib/strtold.cpp
M libc/src/stdlib/strtold_l.cpp
M libc/src/stdlib/strtoll.cpp
M libc/src/stdlib/strtoll_l.cpp
M libc/src/stdlib/strtoul.cpp
M libc/src/stdlib/strtoul_l.cpp
M libc/src/stdlib/strtoull.cpp
M libc/src/stdlib/strtoull_l.cpp
M libc/src/string/CMakeLists.txt
M libc/src/string/stpcpy.cpp
M libc/src/string/strcat.cpp
M libc/src/string/strdup.cpp
M libc/src/string/string_utils.h
M libc/src/string/strncat.cpp
M libc/src/sys/CMakeLists.txt
M libc/src/sys/auxv/linux/getauxval.cpp
M libc/src/sys/epoll/linux/epoll_create.cpp
M libc/src/sys/epoll/linux/epoll_create1.cpp
M libc/src/sys/epoll/linux/epoll_ctl.cpp
M libc/src/sys/epoll/linux/epoll_pwait.cpp
M libc/src/sys/epoll/linux/epoll_pwait2.cpp
M libc/src/sys/epoll/linux/epoll_wait.cpp
A libc/src/sys/ioctl/CMakeLists.txt
A libc/src/sys/ioctl/ioctl.h
A libc/src/sys/ioctl/linux/CMakeLists.txt
A libc/src/sys/ioctl/linux/ioctl.cpp
M libc/src/sys/mman/linux/madvise.cpp
M libc/src/sys/mman/linux/mincore.cpp
M libc/src/sys/mman/linux/mlock.cpp
M libc/src/sys/mman/linux/mlock2.cpp
M libc/src/sys/mman/linux/mlockall.cpp
M libc/src/sys/mman/linux/mmap.cpp
M libc/src/sys/mman/linux/mprotect.cpp
M libc/src/sys/mman/linux/mremap.cpp
M libc/src/sys/mman/linux/msync.cpp
M libc/src/sys/mman/linux/munlock.cpp
M libc/src/sys/mman/linux/munlockall.cpp
M libc/src/sys/mman/linux/munmap.cpp
M libc/src/sys/mman/linux/remap_file_pages.cpp
M libc/src/sys/mman/linux/shm_common.h
M libc/src/sys/mman/linux/shm_open.cpp
M libc/src/sys/mman/linux/shm_unlink.cpp
M libc/src/sys/prctl/linux/prctl.cpp
M libc/src/sys/random/linux/getrandom.cpp
M libc/src/sys/resource/linux/getrlimit.cpp
M libc/src/sys/resource/linux/setrlimit.cpp
M libc/src/sys/select/linux/select.cpp
M libc/src/sys/sendfile/linux/sendfile.cpp
M libc/src/sys/socket/linux/bind.cpp
M libc/src/sys/socket/linux/recv.cpp
M libc/src/sys/socket/linux/recvfrom.cpp
M libc/src/sys/socket/linux/recvmsg.cpp
M libc/src/sys/socket/linux/send.cpp
M libc/src/sys/socket/linux/sendmsg.cpp
M libc/src/sys/socket/linux/sendto.cpp
M libc/src/sys/socket/linux/socket.cpp
M libc/src/sys/socket/linux/socketpair.cpp
M libc/src/sys/stat/linux/chmod.cpp
M libc/src/sys/stat/linux/fchmod.cpp
M libc/src/sys/stat/linux/fchmodat.cpp
M libc/src/sys/stat/linux/fstat.cpp
M libc/src/sys/stat/linux/lstat.cpp
M libc/src/sys/stat/linux/mkdir.cpp
M libc/src/sys/stat/linux/mkdirat.cpp
M libc/src/sys/stat/linux/stat.cpp
M libc/src/sys/statvfs/linux/statfs_utils.h
M libc/src/sys/time/linux/getitimer.cpp
M libc/src/sys/time/linux/setitimer.cpp
M libc/src/sys/time/linux/utimes.cpp
M libc/src/sys/uio/linux/readv.cpp
M libc/src/sys/uio/linux/writev.cpp
M libc/src/sys/utsname/linux/uname.cpp
M libc/src/sys/wait/wait4Impl.h
M libc/src/termios/linux/cfsetispeed.cpp
M libc/src/termios/linux/cfsetospeed.cpp
M libc/src/termios/linux/tcdrain.cpp
M libc/src/termios/linux/tcflow.cpp
M libc/src/termios/linux/tcflush.cpp
M libc/src/termios/linux/tcgetattr.cpp
M libc/src/termios/linux/tcgetsid.cpp
M libc/src/termios/linux/tcsendbreak.cpp
M libc/src/termios/linux/tcsetattr.cpp
M libc/src/threads/thrd_create.cpp
M libc/src/time/linux/clock.cpp
M libc/src/time/linux/clock_gettime.cpp
M libc/src/time/linux/gettimeofday.cpp
M libc/src/time/linux/nanosleep.cpp
M libc/src/time/linux/timespec_get.cpp
M libc/src/time/time.cpp
M libc/src/time/time_utils.h
M libc/src/time/windows/clock_getres.cpp
M libc/src/unistd/linux/access.cpp
M libc/src/unistd/linux/chdir.cpp
M libc/src/unistd/linux/close.cpp
M libc/src/unistd/linux/dup.cpp
M libc/src/unistd/linux/dup2.cpp
M libc/src/unistd/linux/dup3.cpp
M libc/src/unistd/linux/execv.cpp
M libc/src/unistd/linux/execve.cpp
M libc/src/unistd/linux/fchdir.cpp
M libc/src/unistd/linux/fork.cpp
M libc/src/unistd/linux/fsync.cpp
M libc/src/unistd/linux/ftruncate.cpp
M libc/src/unistd/linux/getcwd.cpp
M libc/src/unistd/linux/getentropy.cpp
M libc/src/unistd/linux/getsid.cpp
M libc/src/unistd/linux/isatty.cpp
M libc/src/unistd/linux/link.cpp
M libc/src/unistd/linux/linkat.cpp
M libc/src/unistd/linux/lseek.cpp
M libc/src/unistd/linux/pathconf.cpp
M libc/src/unistd/linux/pathconf_utils.cpp
M libc/src/unistd/linux/pipe.cpp
M libc/src/unistd/linux/pipe2.cpp
M libc/src/unistd/linux/pread.cpp
M libc/src/unistd/linux/pwrite.cpp
M libc/src/unistd/linux/read.cpp
M libc/src/unistd/linux/readlink.cpp
M libc/src/unistd/linux/readlinkat.cpp
M libc/src/unistd/linux/rmdir.cpp
M libc/src/unistd/linux/symlink.cpp
M libc/src/unistd/linux/symlinkat.cpp
M libc/src/unistd/linux/syscall.cpp
M libc/src/unistd/linux/sysconf.cpp
M libc/src/unistd/linux/truncate.cpp
M libc/src/unistd/linux/unlink.cpp
M libc/src/unistd/linux/unlinkat.cpp
M libc/src/unistd/linux/write.cpp
M libc/src/unistd/windows/getentropy.cpp
M libc/src/wchar/CMakeLists.txt
M libc/src/wchar/wcscpy.cpp
M libc/src/wchar/wcsncpy.cpp
M libc/src/wchar/wmemcpy.cpp
A libc/src/wchar/wmemmove.cpp
A libc/src/wchar/wmemmove.h
M libc/src/wchar/wmempcpy.cpp
M libc/test/IntegrationTest/test.h
M libc/test/UnitTest/CMakeLists.txt
M libc/test/UnitTest/ErrnoCheckingTest.h
M libc/test/UnitTest/ErrnoSetterMatcher.h
M libc/test/UnitTest/FPMatcher.h
M libc/test/UnitTest/Test.h
M libc/test/integration/src/pthread/pthread_create_test.cpp
M libc/test/integration/src/pthread/pthread_join_test.cpp
M libc/test/integration/src/pthread/pthread_name_test.cpp
M libc/test/integration/src/unistd/getcwd_test.cpp
M libc/test/integration/startup/linux/tls_test.cpp
M libc/test/src/__support/CMakeLists.txt
M libc/test/src/__support/str_to_double_test.cpp
M libc/test/src/__support/str_to_float_test.cpp
M libc/test/src/__support/str_to_fp_test.h
M libc/test/src/__support/str_to_integer_test.cpp
M libc/test/src/dirent/dirent_test.cpp
M libc/test/src/errno/errno_test.cpp
M libc/test/src/fcntl/creat_test.cpp
M libc/test/src/fcntl/fcntl_test.cpp
M libc/test/src/fcntl/openat_test.cpp
M libc/test/src/math/RoundToIntegerTest.h
M libc/test/src/math/acosf_test.cpp
M libc/test/src/math/acoshf16_test.cpp
M libc/test/src/math/acoshf_test.cpp
M libc/test/src/math/asin_test.cpp
M libc/test/src/math/asinf_test.cpp
M libc/test/src/math/asinhf_test.cpp
M libc/test/src/math/atan2f_test.cpp
M libc/test/src/math/atan_test.cpp
M libc/test/src/math/atanf_test.cpp
M libc/test/src/math/atanhf_test.cpp
M libc/test/src/math/cosf_test.cpp
M libc/test/src/math/coshf_test.cpp
M libc/test/src/math/cospif_test.cpp
M libc/test/src/math/exp10_test.cpp
M libc/test/src/math/exp10f_test.cpp
M libc/test/src/math/exp10m1f_test.cpp
M libc/test/src/math/exp2_test.cpp
M libc/test/src/math/exp2f_test.cpp
M libc/test/src/math/exp2m1f_test.cpp
M libc/test/src/math/exp_test.cpp
M libc/test/src/math/expf_test.cpp
M libc/test/src/math/expm1_test.cpp
M libc/test/src/math/expm1f_test.cpp
M libc/test/src/math/log10_test.cpp
M libc/test/src/math/log1p_test.cpp
M libc/test/src/math/log1pf_test.cpp
M libc/test/src/math/log2_test.cpp
M libc/test/src/math/log2f_test.cpp
M libc/test/src/math/log_test.cpp
M libc/test/src/math/powf_test.cpp
M libc/test/src/math/sin_test.cpp
M libc/test/src/math/sincosf_test.cpp
M libc/test/src/math/sinf_test.cpp
M libc/test/src/math/sinhf_test.cpp
M libc/test/src/math/sinpif_test.cpp
M libc/test/src/math/smoke/FModTest.h
M libc/test/src/math/smoke/RoundToIntegerTest.h
M libc/test/src/math/smoke/acos_test.cpp
M libc/test/src/math/smoke/acosf16_test.cpp
M libc/test/src/math/smoke/acosf_test.cpp
M libc/test/src/math/smoke/acoshf16_test.cpp
M libc/test/src/math/smoke/acoshf_test.cpp
M libc/test/src/math/smoke/acospif16_test.cpp
M libc/test/src/math/smoke/asinf16_test.cpp
M libc/test/src/math/smoke/asinf_test.cpp
M libc/test/src/math/smoke/asinhf16_test.cpp
M libc/test/src/math/smoke/asinhf_test.cpp
M libc/test/src/math/smoke/atan2f_test.cpp
M libc/test/src/math/smoke/atanf16_test.cpp
M libc/test/src/math/smoke/atanf_test.cpp
M libc/test/src/math/smoke/atanhf16_test.cpp
M libc/test/src/math/smoke/atanhf_test.cpp
M libc/test/src/math/smoke/cosf16_test.cpp
M libc/test/src/math/smoke/cosf_test.cpp
M libc/test/src/math/smoke/coshf16_test.cpp
M libc/test/src/math/smoke/coshf_test.cpp
M libc/test/src/math/smoke/cospif16_test.cpp
M libc/test/src/math/smoke/cospif_test.cpp
M libc/test/src/math/smoke/exp10_test.cpp
M libc/test/src/math/smoke/exp10f16_test.cpp
M libc/test/src/math/smoke/exp10f_test.cpp
M libc/test/src/math/smoke/exp10m1f16_test.cpp
M libc/test/src/math/smoke/exp10m1f_test.cpp
M libc/test/src/math/smoke/exp2_test.cpp
M libc/test/src/math/smoke/exp2f16_test.cpp
M libc/test/src/math/smoke/exp2f_test.cpp
M libc/test/src/math/smoke/exp2m1f16_test.cpp
M libc/test/src/math/smoke/exp2m1f_test.cpp
M libc/test/src/math/smoke/exp_test.cpp
M libc/test/src/math/smoke/expf16_test.cpp
M libc/test/src/math/smoke/expf_test.cpp
M libc/test/src/math/smoke/expm1_test.cpp
M libc/test/src/math/smoke/expm1f16_test.cpp
M libc/test/src/math/smoke/expm1f_test.cpp
M libc/test/src/math/smoke/log10_test.cpp
M libc/test/src/math/smoke/log10f16_test.cpp
M libc/test/src/math/smoke/log1p_test.cpp
M libc/test/src/math/smoke/log1pf_test.cpp
M libc/test/src/math/smoke/log2_test.cpp
M libc/test/src/math/smoke/log2f16_test.cpp
M libc/test/src/math/smoke/log2f_test.cpp
M libc/test/src/math/smoke/log_test.cpp
M libc/test/src/math/smoke/logf16_test.cpp
M libc/test/src/math/smoke/sincosf_test.cpp
M libc/test/src/math/smoke/sinf16_test.cpp
M libc/test/src/math/smoke/sinf_test.cpp
M libc/test/src/math/smoke/sinhf16_test.cpp
M libc/test/src/math/smoke/sinhf_test.cpp
M libc/test/src/math/smoke/sinpif16_test.cpp
M libc/test/src/math/smoke/sinpif_test.cpp
M libc/test/src/math/smoke/tanf16_test.cpp
M libc/test/src/math/smoke/tanf_test.cpp
M libc/test/src/math/smoke/tanhf16_test.cpp
M libc/test/src/math/smoke/tanhf_test.cpp
M libc/test/src/math/smoke/tanpif16_test.cpp
M libc/test/src/math/tanf_test.cpp
M libc/test/src/math/tanhf_test.cpp
M libc/test/src/poll/poll_test.cpp
M libc/test/src/sched/affinity_test.cpp
M libc/test/src/sched/cpu_count_test.cpp
M libc/test/src/sched/get_priority_test.cpp
M libc/test/src/sched/param_and_scheduler_test.cpp
M libc/test/src/sched/sched_rr_get_interval_test.cpp
M libc/test/src/sched/yield_test.cpp
M libc/test/src/signal/sigaltstack_test.cpp
M libc/test/src/signal/signal_test.cpp
M libc/test/src/signal/sigprocmask_test.cpp
M libc/test/src/spawn/posix_spawn_file_actions_test.cpp
M libc/test/src/stdio/CMakeLists.txt
M libc/test/src/stdio/fdopen_test.cpp
M libc/test/src/stdio/fgetc_test.cpp
M libc/test/src/stdio/fgetc_unlocked_test.cpp
M libc/test/src/stdio/fgets_test.cpp
M libc/test/src/stdio/fileop_test.cpp
M libc/test/src/stdio/fopencookie_test.cpp
A libc/test/src/stdio/perror_test.cpp
M libc/test/src/stdio/printf_core/converter_test.cpp
M libc/test/src/stdio/remove_test.cpp
M libc/test/src/stdio/rename_test.cpp
M libc/test/src/stdio/setvbuf_test.cpp
M libc/test/src/stdio/sprintf_test.cpp
M libc/test/src/stdio/unlocked_fileop_test.cpp
M libc/test/src/stdlib/CMakeLists.txt
M libc/test/src/stdlib/StrtolTest.h
M libc/test/src/stdlib/atof_test.cpp
M libc/test/src/stdlib/strtod_test.cpp
M libc/test/src/stdlib/strtof_test.cpp
M libc/test/src/stdlib/strtoint32_test.cpp
M libc/test/src/stdlib/strtoint64_test.cpp
M libc/test/src/stdlib/strtold_test.cpp
M libc/test/src/string/CMakeLists.txt
M libc/test/src/string/strdup_test.cpp
M libc/test/src/sys/CMakeLists.txt
A libc/test/src/sys/ioctl/CMakeLists.txt
A libc/test/src/sys/ioctl/linux/CMakeLists.txt
A libc/test/src/sys/ioctl/linux/ioctl_test.cpp
M libc/test/src/sys/mman/linux/mlock_test.cpp
M libc/test/src/sys/statvfs/linux/fstatvfs_test.cpp
M libc/test/src/sys/statvfs/linux/statvfs_test.cpp
M libc/test/src/sys/time/setitimer_test.cpp
M libc/test/src/termios/termios_test.cpp
M libc/test/src/time/asctime_r_test.cpp
M libc/test/src/time/asctime_test.cpp
M libc/test/src/time/ctime_r_test.cpp
M libc/test/src/time/ctime_test.cpp
M libc/test/src/time/gmtime_test.cpp
M libc/test/src/time/nanosleep_test.cpp
M libc/test/src/wchar/CMakeLists.txt
A libc/test/src/wchar/wmemmove_test.cpp
M libcxx/cmake/caches/AndroidNDK.cmake
M libcxx/docs/ABIGuarantees.rst
M libcxx/docs/FeatureTestMacroTable.rst
M libcxx/docs/ReleaseNotes/21.rst
M libcxx/docs/index.rst
M libcxx/include/CMakeLists.txt
M libcxx/include/__bit/bit_ceil.h
M libcxx/include/__bit/bit_floor.h
M libcxx/include/__bit/bit_log2.h
M libcxx/include/__bit/bit_width.h
M libcxx/include/__bit/countl.h
M libcxx/include/__bit/countr.h
M libcxx/include/__bit/has_single_bit.h
M libcxx/include/__bit/popcount.h
M libcxx/include/__bit/rotate.h
M libcxx/include/__concepts/arithmetic.h
M libcxx/include/__format/format_arg_store.h
M libcxx/include/__functional/function.h
M libcxx/include/__mdspan/extents.h
M libcxx/include/__memory/allocation_guard.h
M libcxx/include/__memory/pointer_traits.h
M libcxx/include/__numeric/saturation_arithmetic.h
A libcxx/include/__type_traits/integer_traits.h
M libcxx/include/__type_traits/is_integral.h
R libcxx/include/__type_traits/is_signed_integer.h
R libcxx/include/__type_traits/is_unsigned_integer.h
M libcxx/include/__utility/cmp.h
M libcxx/include/bitset
M libcxx/include/forward_list
M libcxx/include/module.modulemap.in
M libcxx/include/version
M libcxx/src/experimental/time_zone.cpp
M libcxx/src/hash.cpp
R libcxx/test/configs/llvm-libc++-android-ndk.cfg.in
A libcxx/test/configs/llvm-libc++-android.cfg.in
M libcxx/test/libcxx/concepts/concepts.arithmetic/__libcpp_integer.compile.pass.cpp
M libcxx/test/libcxx/concepts/concepts.arithmetic/__libcpp_signed_integer.compile.pass.cpp
M libcxx/test/libcxx/concepts/concepts.arithmetic/__libcpp_unsigned_integer.compile.pass.cpp
A libcxx/test/libcxx/containers/container.adaptors/flat.set/scary.compile.pass.cpp
M libcxx/test/std/algorithms/alg.nonmodifying/alg.contains/ranges.contains.pass.cpp
M libcxx/test/std/concepts/concepts.compare/concept.equalitycomparable/equality_comparable.compile.pass.cpp
M libcxx/test/std/concepts/concepts.compare/concept.equalitycomparable/equality_comparable_with.compile.pass.cpp
M libcxx/test/std/concepts/concepts.compare/concepts.totallyordered/totally_ordered.compile.pass.cpp
M libcxx/test/std/concepts/concepts.compare/concepts.totallyordered/totally_ordered_with.compile.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/compare.three_way.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/empty.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.access/front.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.cons/alloc.compile.fail.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.cons/alloc.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.cons/assign_copy.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.cons/assign_init.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.cons/assign_move.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.cons/assign_op_init.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.cons/assign_range.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.cons/assign_size_value.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.cons/copy.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.cons/copy_alloc.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.cons/default.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.cons/from_range.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.cons/init.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.cons/init_alloc.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.cons/move.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.cons/move_alloc.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.cons/range.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.cons/range_alloc.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.cons/size.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.cons/size_value.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.cons/size_value_alloc.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.erasure/erase.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.erasure/erase_if.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.iter/before_begin.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.iter/iterators.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.modifiers/assign_range.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.modifiers/clear.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.modifiers/emplace_after.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.modifiers/emplace_front.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.modifiers/erase_after_many.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.modifiers/erase_after_one.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.modifiers/insert_after_const.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.modifiers/insert_after_init.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.modifiers/insert_after_range.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.modifiers/insert_after_rv.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.modifiers/insert_after_size_value.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.modifiers/insert_range_after.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.modifiers/pop_front.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.modifiers/prepend_range.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.modifiers/push_front_const.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.modifiers/push_front_exception_safety.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.modifiers/push_front_rv.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.modifiers/resize_size.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.modifiers/resize_size_value.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.ops/merge_lvalue.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.ops/merge_lvalue_pred.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.ops/merge_rvalue.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.ops/merge_rvalue_pred.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.ops/remove.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.ops/remove_if.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.ops/reverse.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.ops/splice_after_flist.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.ops/splice_after_one.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.ops/splice_after_range.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.ops/unique.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.ops/unique_pred.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.spec/equal.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.spec/member_swap.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.spec/non_member_swap.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.spec/relational.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/forwardlist.spec/swap_noexcept.compile.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/get_allocator.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/incomplete.pass.cpp
M libcxx/test/std/containers/sequences/forwardlist/max_size.pass.cpp
M libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.array/new.size.except.pass.cpp
M libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.array/new.size.pass.cpp
M libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.array/new.size_align.except.pass.cpp
M libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.array/new.size_align.pass.cpp
M libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.single/new.size.except.pass.cpp
M libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.single/new.size.pass.cpp
M libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.single/new.size_align.except.pass.cpp
M libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.single/new.size_align.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/forward_list.version.compile.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/version.version.compile.pass.cpp
M libcxx/test/std/numerics/rand/rand.dist/rand.dist.samp/rand.dist.samp.discrete/ctor_func.pass.cpp
M libcxx/test/std/numerics/rand/rand.dist/rand.dist.samp/rand.dist.samp.discrete/param_ctor_func.pass.cpp
M libcxx/test/std/ranges/range.adaptors/range.lazy.split/general.pass.cpp
M libcxx/test/std/utilities/expected/expected.expected/monadic/transform.pass.cpp
M libcxx/test/std/utilities/expected/expected.expected/monadic/transform_error.pass.cpp
M libcxx/test/std/utilities/expected/expected.void/monadic/transform_error.pass.cpp
M libcxx/test/std/utilities/format/format.formatter/format.formatter.spec/formatter.char_array.pass.cpp
M libcxx/test/std/utilities/meta/meta.rel/is_virtual_base_of.pass.cpp
R libcxx/test/std/utilities/meta/meta.unary/dependent_return_type.compile.pass.cpp
A libcxx/test/std/utilities/meta/meta.unary/dependent_return_type.pass.cpp
M libcxx/test/std/utilities/meta/meta.unary/meta.unary.prop/is_implicit_lifetime.pass.cpp
M libcxx/test/std/utilities/optional/optional.specalg/make_optional_explicit.pass.cpp
M libcxx/test/std/utilities/optional/optional.specalg/make_optional_explicit_initializer_list.pass.cpp
M libcxx/test/std/utilities/template.bitset/bitset.cons/char_ptr_ctor.pass.cpp
M libcxx/test/std/utilities/tuple/tuple.tuple/tuple.cnstr/PR31384.pass.cpp
M libcxx/test/support/counting_predicates.h
M libcxx/utils/gdb/libcxx/printers.py
M libcxx/utils/generate_feature_test_macro_components.py
M libcxxabi/test/catch_member_function_pointer_02.pass.cpp
R libcxxabi/test/configs/llvm-libc++abi-android-ndk.cfg.in
A libcxxabi/test/configs/llvm-libc++abi-android.cfg.in
M libunwind/cmake/config-ix.cmake
M libunwind/src/CMakeLists.txt
M libunwind/src/UnwindLevel1.c
M lld/COFF/Writer.cpp
M lld/ELF/Arch/AArch64.cpp
M lld/ELF/Config.h
M lld/ELF/Driver.cpp
M lld/ELF/InputFiles.cpp
M lld/ELF/InputFiles.h
M lld/ELF/Relocations.cpp
M lld/ELF/Symbols.cpp
M lld/ELF/SyntheticSections.cpp
M lld/ELF/Writer.cpp
M lld/MachO/UnwindInfoSection.cpp
M lld/MinGW/Driver.cpp
M lld/MinGW/Options.td
M lld/docs/ReleaseNotes.rst
M lld/docs/ld.lld.1
A lld/test/COFF/lto-late-arm.ll
M lld/test/COFF/pdata-arm64ec.test
M lld/test/ELF/aarch64-feature-pauth.s
M lld/test/ELF/driver.test
R lld/test/ELF/weak-undef-got-pie.s
A lld/test/ELF/weak-undef-got-plt.s
M lld/test/ELF/weak-undef-hidden.s
M lld/test/ELF/weak-undef-rw.s
R lld/test/ELF/weak-undef.s
M lld/test/ELF/x86-64-section-layout.s
M lld/test/MinGW/lib.test
M lldb/cmake/modules/AddLLDB.cmake
M lldb/cmake/modules/LLDBFramework.cmake
M lldb/include/lldb/DataFormatters/TypeSynthetic.h
A lldb/include/lldb/Host/JSONTransport.h
M lldb/include/lldb/Symbol/Variable.h
M lldb/include/lldb/ValueObject/DILAST.h
M lldb/include/lldb/ValueObject/DILEval.h
M lldb/include/lldb/ValueObject/DILLexer.h
A lldb/scripts/convert-lldb-header-to-rpc-header.py
A lldb/scripts/framework-header-fix.py
M lldb/source/Commands/CommandObjectMemory.cpp
M lldb/source/DataFormatters/TypeSynthetic.cpp
M lldb/source/Host/CMakeLists.txt
A lldb/source/Host/common/JSONTransport.cpp
M lldb/source/Plugins/Language/CPlusPlus/Coroutines.cpp
M lldb/source/Plugins/Language/CPlusPlus/Coroutines.h
M lldb/source/Plugins/Language/ObjC/CMakeLists.txt
M lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerCommon.cpp
M lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugInfoEntry.cpp
M lldb/source/Symbol/Variable.cpp
M lldb/source/Target/Target.cpp
M lldb/source/ValueObject/DILAST.cpp
M lldb/source/ValueObject/DILEval.cpp
M lldb/source/ValueObject/DILLexer.cpp
M lldb/source/ValueObject/DILParser.cpp
M lldb/test/API/api/multiple-debuggers/TestMultipleDebuggers.py
M lldb/test/API/api/multiple-debuggers/multi-process-driver.cpp
M lldb/test/API/commands/frame/var-dil/basics/ArraySubscript/TestFrameVarDILArraySubscript.py
A lldb/test/API/commands/frame/var-dil/basics/BitFieldExtraction/Makefile
A lldb/test/API/commands/frame/var-dil/basics/BitFieldExtraction/TestFrameVarDILBitFieldExtraction.py
A lldb/test/API/commands/frame/var-dil/basics/BitFieldExtraction/main.cpp
M lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic/coroutine_handle/TestCoroutineHandle.py
M lldb/test/API/functionalities/memory/find/TestMemoryFind.py
M lldb/test/API/functionalities/memory/find/main.cpp
A lldb/test/Shell/RPC/Scripts/TestConvertScript/CheckLLDBDefines.test
A lldb/test/Shell/RPC/Scripts/TestConvertScript/CheckLLDBEnumerations.test
A lldb/test/Shell/RPC/Scripts/TestConvertScript/CheckLLDBTypes.test
A lldb/test/Shell/RPC/Scripts/TestConvertScript/CheckSBDefines.test
A lldb/test/Shell/RPC/Scripts/TestConvertScript/Inputs/SBDefines.h
A lldb/test/Shell/RPC/Scripts/TestConvertScript/Inputs/lldb-defines.h
A lldb/test/Shell/RPC/Scripts/TestConvertScript/Inputs/lldb-enumerations.h
A lldb/test/Shell/RPC/Scripts/TestConvertScript/Inputs/lldb-types.h
A lldb/test/Shell/Scripts/Inputs/Main/SBAddress.h
A lldb/test/Shell/Scripts/Inputs/RPC/RPCSBAddress.h
A lldb/test/Shell/Scripts/TestFrameworkFixScript.test
A lldb/test/Shell/Scripts/TestFrameworkFixUnifdef.test
A lldb/test/Shell/Scripts/TestRPCFrameworkFixScript.test
M lldb/tools/debugserver/source/RNBRemote.cpp
M lldb/tools/lldb-dap/DAP.cpp
M lldb/tools/lldb-dap/Transport.cpp
M lldb/tools/lldb-dap/Transport.h
M lldb/unittests/DAP/CMakeLists.txt
M lldb/unittests/DAP/DAPTest.cpp
M lldb/unittests/DAP/TestBase.cpp
M lldb/unittests/DAP/TestBase.h
R lldb/unittests/DAP/TransportTest.cpp
M lldb/unittests/Host/CMakeLists.txt
A lldb/unittests/Host/JSONTransportTest.cpp
A lldb/unittests/TestingSupport/Host/PipeTestUtilities.h
M llvm/CMakeLists.txt
M llvm/cmake/config-ix.cmake
M llvm/cmake/modules/HandleLLVMOptions.cmake
M llvm/docs/AMDGPUDwarfExtensionsForHeterogeneousDebugging.rst
M llvm/docs/AMDGPUUsage.rst
M llvm/docs/CMake.rst
M llvm/docs/CommandGuide/index.rst
M llvm/docs/CommandGuide/llvm-cov.rst
A llvm/docs/CommandGuide/llvm-test-mustache-spec.rst
M llvm/docs/LangRef.rst
M llvm/docs/NVPTXUsage.rst
M llvm/include/llvm/Analysis/AliasAnalysis.h
M llvm/include/llvm/Analysis/CaptureTracking.h
M llvm/include/llvm/Analysis/IR2Vec.h
M llvm/include/llvm/Analysis/ValueTracking.h
M llvm/include/llvm/Analysis/VectorUtils.h
M llvm/include/llvm/CodeGen/GlobalISel/LegalizationArtifactCombiner.h
M llvm/include/llvm/CodeGen/RegisterClassInfo.h
M llvm/include/llvm/CodeGen/TargetLowering.h
M llvm/include/llvm/CodeGen/TargetRegisterInfo.h
M llvm/include/llvm/Config/llvm-config.h.cmake
M llvm/include/llvm/Frontend/Driver/CodeGenOptions.h
M llvm/include/llvm/IR/BasicBlock.h
M llvm/include/llvm/IR/DIBuilder.h
M llvm/include/llvm/IR/DebugInfoMetadata.h
M llvm/include/llvm/IR/DebugLoc.h
M llvm/include/llvm/IR/DebugProgramInstruction.h
M llvm/include/llvm/IR/Function.h
M llvm/include/llvm/IR/IRBuilder.h
M llvm/include/llvm/IR/Instruction.h
M llvm/include/llvm/IR/Intrinsics.td
M llvm/include/llvm/IR/IntrinsicsNVVM.td
M llvm/include/llvm/IR/IntrinsicsPowerPC.td
M llvm/include/llvm/IR/IntrinsicsSPIRV.td
M llvm/include/llvm/IR/Mangler.h
M llvm/include/llvm/IR/Module.h
M llvm/include/llvm/IR/NVVMIntrinsicUtils.h
M llvm/include/llvm/IR/PassManagerImpl.h
R llvm/include/llvm/IR/VectorBuilder.h
M llvm/include/llvm/MC/MCAsmInfo.h
M llvm/include/llvm/MC/MCExpr.h
M llvm/include/llvm/ProfileData/Coverage/CoverageMapping.h
M llvm/include/llvm/SandboxIR/BasicBlock.h
M llvm/include/llvm/SandboxIR/Constant.h
M llvm/include/llvm/SandboxIR/Context.h
M llvm/include/llvm/SandboxIR/Function.h
M llvm/include/llvm/SandboxIR/Instruction.h
M llvm/include/llvm/SandboxIR/Module.h
M llvm/include/llvm/SandboxIR/PassManager.h
M llvm/include/llvm/SandboxIR/Region.h
M llvm/include/llvm/SandboxIR/Tracker.h
M llvm/include/llvm/SandboxIR/Type.h
M llvm/include/llvm/SandboxIR/Use.h
M llvm/include/llvm/SandboxIR/User.h
M llvm/include/llvm/SandboxIR/Value.h
M llvm/include/llvm/Support/AutoConvert.h
M llvm/include/llvm/Support/Compiler.h
M llvm/include/llvm/Target/Target.td
M llvm/include/llvm/TargetParser/AArch64TargetParser.h
M llvm/include/llvm/TargetParser/ARMTargetParser.h
M llvm/include/llvm/TargetParser/ARMTargetParserCommon.h
M llvm/include/llvm/TargetParser/CSKYTargetParser.h
M llvm/include/llvm/TargetParser/Host.h
M llvm/include/llvm/TargetParser/LoongArchTargetParser.h
M llvm/include/llvm/TargetParser/PPCTargetParser.h
M llvm/include/llvm/TargetParser/RISCVISAInfo.h
M llvm/include/llvm/TargetParser/RISCVTargetParser.h
M llvm/include/llvm/TargetParser/SubtargetFeature.h
M llvm/include/llvm/TargetParser/TargetParser.h
M llvm/include/llvm/TargetParser/Triple.h
M llvm/include/llvm/TargetParser/X86TargetParser.h
M llvm/include/llvm/TextAPI/Architecture.h
M llvm/include/llvm/TextAPI/ArchitectureSet.h
M llvm/include/llvm/TextAPI/DylibReader.h
M llvm/include/llvm/TextAPI/InterfaceFile.h
M llvm/include/llvm/TextAPI/PackedVersion.h
M llvm/include/llvm/TextAPI/Platform.h
M llvm/include/llvm/TextAPI/Record.h
M llvm/include/llvm/TextAPI/RecordVisitor.h
M llvm/include/llvm/TextAPI/RecordsSlice.h
M llvm/include/llvm/TextAPI/Symbol.h
M llvm/include/llvm/TextAPI/SymbolSet.h
M llvm/include/llvm/TextAPI/Target.h
M llvm/include/llvm/TextAPI/TextAPIError.h
M llvm/include/llvm/TextAPI/TextAPIReader.h
M llvm/include/llvm/TextAPI/TextAPIWriter.h
M llvm/include/llvm/TextAPI/Utils.h
M llvm/include/llvm/Transforms/IPO/FunctionImport.h
M llvm/include/llvm/Transforms/Utils/LoopUtils.h
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/SeedCollector.h
M llvm/lib/Analysis/BasicAliasAnalysis.cpp
M llvm/lib/Analysis/CaptureTracking.cpp
M llvm/lib/Analysis/ConstantFolding.cpp
M llvm/lib/Analysis/IR2Vec.cpp
M llvm/lib/Analysis/VectorUtils.cpp
M llvm/lib/AsmParser/LLParser.cpp
M llvm/lib/Bitcode/Reader/BitcodeReader.cpp
M llvm/lib/Bitcode/Writer/BitcodeWriterPass.cpp
M llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
M llvm/lib/CodeGen/AsmPrinter/CodeViewDebug.cpp
M llvm/lib/CodeGen/AsmPrinter/CodeViewDebug.h
M llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
M llvm/lib/CodeGen/BranchFolding.cpp
M llvm/lib/CodeGen/BreakFalseDeps.cpp
M llvm/lib/CodeGen/CodeGenPrepare.cpp
M llvm/lib/CodeGen/GlobalISel/CSEMIRBuilder.cpp
M llvm/lib/CodeGen/GlobalISel/GISelValueTracking.cpp
M llvm/lib/CodeGen/GlobalISel/LoadStoreOpt.cpp
M llvm/lib/CodeGen/MIRPrinter.cpp
M llvm/lib/CodeGen/MachineBasicBlock.cpp
M llvm/lib/CodeGen/MachineSink.cpp
M llvm/lib/CodeGen/RegisterClassInfo.cpp
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
M llvm/lib/CodeGen/SelectionDAG/FastISel.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp
M llvm/lib/DWARFLinker/Parallel/OutputSections.h
M llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldImpl.h
M llvm/lib/Frontend/Driver/CMakeLists.txt
M llvm/lib/Frontend/Driver/CodeGenOptions.cpp
M llvm/lib/IR/AsmWriter.cpp
M llvm/lib/IR/Attributes.cpp
M llvm/lib/IR/AutoUpgrade.cpp
M llvm/lib/IR/BasicBlock.cpp
M llvm/lib/IR/CMakeLists.txt
M llvm/lib/IR/Core.cpp
M llvm/lib/IR/DIBuilder.cpp
M llvm/lib/IR/DebugInfo.cpp
M llvm/lib/IR/DebugLoc.cpp
M llvm/lib/IR/Function.cpp
M llvm/lib/IR/IRBuilder.cpp
M llvm/lib/IR/IRPrintingPasses.cpp
M llvm/lib/IR/Instruction.cpp
M llvm/lib/IR/LLVMContextImpl.h
M llvm/lib/IR/LegacyPassManager.cpp
M llvm/lib/IR/Module.cpp
M llvm/lib/IR/RuntimeLibcalls.cpp
R llvm/lib/IR/VectorBuilder.cpp
M llvm/lib/IR/Verifier.cpp
M llvm/lib/IRPrinter/IRPrintingPasses.cpp
M llvm/lib/LTO/LTO.cpp
M llvm/lib/Linker/IRMover.cpp
M llvm/lib/MC/MCAsmInfo.cpp
M llvm/lib/MC/MCAsmStreamer.cpp
M llvm/lib/MC/MCExpr.cpp
M llvm/lib/MC/MCObjectStreamer.cpp
M llvm/lib/MC/MCStreamer.cpp
M llvm/lib/ProfileData/Coverage/CoverageMapping.cpp
M llvm/lib/ProfileData/MemProfRadixTree.cpp
M llvm/lib/SandboxIR/Constant.cpp
M llvm/lib/Support/AutoConvert.cpp
M llvm/lib/Support/InitLLVM.cpp
M llvm/lib/Support/MemoryBuffer.cpp
M llvm/lib/Support/Unix/Path.inc
M llvm/lib/Support/Unix/Program.inc
M llvm/lib/Support/raw_ostream.cpp
M llvm/lib/TableGen/Record.cpp
M llvm/lib/Target/AArch64/AArch64CallingConvention.td
M llvm/lib/Target/AArch64/AArch64CollectLOH.cpp
M llvm/lib/Target/AArch64/AArch64Combine.td
M llvm/lib/Target/AArch64/AArch64FrameLowering.cpp
M llvm/lib/Target/AArch64/AArch64ISelDAGToDAG.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
M llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.cpp
M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp
M llvm/lib/Target/AMDGPU/AMDGPULowerBufferFatPointers.cpp
M llvm/lib/Target/AMDGPU/AMDGPUMCResourceInfo.cpp
M llvm/lib/Target/AMDGPU/AMDGPUMCResourceInfo.h
M llvm/lib/Target/AMDGPU/AMDGPUPreloadKernelArguments.cpp
M llvm/lib/Target/AMDGPU/AMDGPUPromoteAlloca.cpp
M llvm/lib/Target/AMDGPU/AMDGPUResourceUsageAnalysis.cpp
M llvm/lib/Target/AMDGPU/AMDGPURewriteOutArguments.cpp
M llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
M llvm/lib/Target/AMDGPU/GCNSchedStrategy.cpp
M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCAsmInfo.cpp
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
M llvm/lib/Target/AMDGPU/SIISelLowering.h
M llvm/lib/Target/AMDGPU/SIInstructions.td
M llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.h
M llvm/lib/Target/AMDGPU/SIRegisterInfo.cpp
M llvm/lib/Target/AMDGPU/SIRegisterInfo.h
M llvm/lib/Target/ARM/ARMISelLowering.cpp
M llvm/lib/Target/BPF/BPFPreserveStaticOffset.cpp
M llvm/lib/Target/BPF/MCTargetDesc/BPFMCCodeEmitter.cpp
M llvm/lib/Target/DirectX/DXILFlattenArrays.cpp
M llvm/lib/Target/Hexagon/HexagonConstExtenders.cpp
M llvm/lib/Target/Hexagon/MCTargetDesc/HexagonMCAsmInfo.cpp
M llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
M llvm/lib/Target/LoongArch/LoongArchISelLowering.h
M llvm/lib/Target/MSP430/MSP430ISelLowering.cpp
M llvm/lib/Target/NVPTX/MCTargetDesc/NVPTXInstPrinter.cpp
M llvm/lib/Target/NVPTX/MCTargetDesc/NVPTXInstPrinter.h
M llvm/lib/Target/NVPTX/NVPTXISelDAGToDAG.cpp
M llvm/lib/Target/NVPTX/NVPTXISelDAGToDAG.h
M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
M llvm/lib/Target/NVPTX/NVPTXISelLowering.h
M llvm/lib/Target/NVPTX/NVPTXInstrInfo.td
M llvm/lib/Target/NVPTX/NVPTXIntrinsics.td
M llvm/lib/Target/NVPTX/NVPTXReplaceImageHandles.cpp
M llvm/lib/Target/NVPTX/NVPTXSubtarget.h
M llvm/lib/Target/PowerPC/MCTargetDesc/PPCMCAsmInfo.cpp
M llvm/lib/Target/PowerPC/PPCISelLowering.cpp
M llvm/lib/Target/PowerPC/PPCISelLowering.h
M llvm/lib/Target/PowerPC/PPCInstr64Bit.td
M llvm/lib/Target/PowerPC/PPCInstrInfo.td
M llvm/lib/Target/PowerPC/PPCInstrP10.td
M llvm/lib/Target/PowerPC/PPCRegisterInfo.cpp
M llvm/lib/Target/PowerPC/PPCRegisterInfo.h
M llvm/lib/Target/RISCV/RISCVAsmPrinter.cpp
M llvm/lib/Target/RISCV/RISCVCallingConv.cpp
M llvm/lib/Target/RISCV/RISCVFeatures.td
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/lib/Target/RISCV/RISCVISelLowering.h
M llvm/lib/Target/RISCV/RISCVInsertVSETVLI.cpp
M llvm/lib/Target/RISCV/RISCVInstrInfo.cpp
M llvm/lib/Target/RISCV/RISCVInstrInfo.h
M llvm/lib/Target/RISCV/RISCVInstrInfo.td
M llvm/lib/Target/RISCV/RISCVInstrInfoVPseudos.td
M llvm/lib/Target/RISCV/RISCVInstrInfoXTHead.td
M llvm/lib/Target/RISCV/RISCVInstrInfoXqci.td
M llvm/lib/Target/RISCV/RISCVInstrPredicates.td
M llvm/lib/Target/RISCV/RISCVProcessors.td
M llvm/lib/Target/RISCV/RISCVRegisterInfo.td
M llvm/lib/Target/RISCV/RISCVSubtarget.h
M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
M llvm/lib/Target/RISCV/RISCVVectorPeephole.cpp
M llvm/lib/Target/SPIRV/MCTargetDesc/SPIRVBaseInfo.cpp
M llvm/lib/Target/SPIRV/MCTargetDesc/SPIRVBaseInfo.h
M llvm/lib/Target/SPIRV/SPIRVAsmPrinter.cpp
M llvm/lib/Target/SPIRV/SPIRVCallLowering.cpp
M llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.cpp
M llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.h
M llvm/lib/Target/SPIRV/SPIRVInstrInfo.td
M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
M llvm/lib/Target/SPIRV/SPIRVModuleAnalysis.cpp
M llvm/lib/Target/SPIRV/SPIRVSymbolicOperands.td
M llvm/lib/Target/SPIRV/SPIRVUtils.cpp
M llvm/lib/Target/SPIRV/SPIRVUtils.h
M llvm/lib/Target/Sparc/AsmParser/SparcAsmParser.cpp
M llvm/lib/Target/Sparc/MCTargetDesc/SparcInstPrinter.cpp
M llvm/lib/Target/Sparc/MCTargetDesc/SparcMCAsmInfo.cpp
M llvm/lib/Target/Sparc/MCTargetDesc/SparcMCAsmInfo.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/SparcTargetObjectFile.cpp
M llvm/lib/Target/SystemZ/MCTargetDesc/SystemZMCAsmInfo.cpp
M llvm/lib/Target/VE/MCTargetDesc/VEInstPrinter.cpp
M llvm/lib/Target/VE/MCTargetDesc/VEMCAsmInfo.cpp
M llvm/lib/Target/VE/MCTargetDesc/VEMCAsmInfo.h
M llvm/lib/Target/VE/MCTargetDesc/VEMCExpr.cpp
M llvm/lib/Target/VE/MCTargetDesc/VEMCExpr.h
M llvm/lib/Target/WebAssembly/WebAssemblyAddMissingPrototypes.cpp
M llvm/lib/Target/X86/CMakeLists.txt
M llvm/lib/Target/X86/MCTargetDesc/X86InstComments.cpp
M llvm/lib/Target/X86/X86.h
M llvm/lib/Target/X86/X86CompressEVEX.cpp
M llvm/lib/Target/X86/X86FixupInstTuning.cpp
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/lib/Target/X86/X86IndirectBranchTracking.cpp
M llvm/lib/Target/X86/X86InstrInfo.cpp
M llvm/lib/Target/X86/X86PadShortFunction.cpp
M llvm/lib/Target/X86/X86RegisterInfo.td
M llvm/lib/Target/X86/X86TargetMachine.cpp
M llvm/lib/Target/X86/X86TargetTransformInfo.cpp
R llvm/lib/Target/X86/X86WinFixupBufferSecurityCheck.cpp
M llvm/lib/TargetParser/Host.cpp
M llvm/lib/TargetParser/RISCVTargetParser.cpp
M llvm/lib/TargetParser/Triple.cpp
M llvm/lib/Transforms/Coroutines/CoroSplit.cpp
M llvm/lib/Transforms/IPO/ArgumentPromotion.cpp
M llvm/lib/Transforms/IPO/Attributor.cpp
M llvm/lib/Transforms/IPO/DeadArgumentElimination.cpp
M llvm/lib/Transforms/IPO/ExpandVariadics.cpp
M llvm/lib/Transforms/IPO/GlobalOpt.cpp
M llvm/lib/Transforms/IPO/IROutliner.cpp
M llvm/lib/Transforms/IPO/MemProfContextDisambiguation.cpp
M llvm/lib/Transforms/IPO/MergeFunctions.cpp
M llvm/lib/Transforms/IPO/ThinLTOBitcodeWriter.cpp
M llvm/lib/Transforms/IPO/WholeProgramDevirt.cpp
M llvm/lib/Transforms/InstCombine/InstCombineAddSub.cpp
M llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
M llvm/lib/Transforms/InstCombine/InstCombineInternal.h
M llvm/lib/Transforms/InstCombine/InstCombineLoadStoreAlloca.cpp
M llvm/lib/Transforms/InstCombine/InstCombinePHI.cpp
M llvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
M llvm/lib/Transforms/Instrumentation/DataFlowSanitizer.cpp
M llvm/lib/Transforms/Instrumentation/MemorySanitizer.cpp
M llvm/lib/Transforms/Scalar/ConstantHoisting.cpp
M llvm/lib/Transforms/Scalar/CorrelatedValuePropagation.cpp
M llvm/lib/Transforms/Scalar/DeadStoreElimination.cpp
M llvm/lib/Transforms/Scalar/GVN.cpp
M llvm/lib/Transforms/Scalar/IndVarSimplify.cpp
M llvm/lib/Transforms/Scalar/JumpThreading.cpp
M llvm/lib/Transforms/Scalar/LICM.cpp
M llvm/lib/Transforms/Scalar/LoopLoadElimination.cpp
M llvm/lib/Transforms/Scalar/LowerMatrixIntrinsics.cpp
M llvm/lib/Transforms/Scalar/MemCpyOptimizer.cpp
M llvm/lib/Transforms/Scalar/SROA.cpp
M llvm/lib/Transforms/Scalar/ScalarizeMaskedMemIntrin.cpp
M llvm/lib/Transforms/Scalar/SimpleLoopUnswitch.cpp
M llvm/lib/Transforms/Scalar/SimplifyCFGPass.cpp
M llvm/lib/Transforms/Scalar/TailRecursionElimination.cpp
M llvm/lib/Transforms/Utils/BasicBlockUtils.cpp
M llvm/lib/Transforms/Utils/CloneFunction.cpp
M llvm/lib/Transforms/Utils/CloneModule.cpp
M llvm/lib/Transforms/Utils/CodeExtractor.cpp
M llvm/lib/Transforms/Utils/Evaluator.cpp
M llvm/lib/Transforms/Utils/InlineFunction.cpp
M llvm/lib/Transforms/Utils/Local.cpp
M llvm/lib/Transforms/Utils/LoopRotationUtils.cpp
M llvm/lib/Transforms/Utils/LoopUtils.cpp
M llvm/lib/Transforms/Utils/SCCPSolver.cpp
M llvm/lib/Transforms/Utils/SSAUpdater.cpp
M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
M llvm/lib/Transforms/Vectorize/LoopVectorizationPlanner.h
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/lib/Transforms/Vectorize/VPlan.cpp
M llvm/lib/Transforms/Vectorize/VPlan.h
M llvm/lib/Transforms/Vectorize/VPlanPatternMatch.h
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
M llvm/lib/Transforms/Vectorize/VPlanUnroll.cpp
M llvm/lib/Transforms/Vectorize/VPlanVerifier.cpp
M llvm/test/Analysis/BasicAA/captures.ll
M llvm/test/Analysis/BasicAA/gep-decomposition-limit.ll
M llvm/test/Analysis/CostModel/AArch64/div.ll
M llvm/test/Analysis/CostModel/AArch64/rem.ll
M llvm/test/Analysis/CostModel/AArch64/sve-div.ll
M llvm/test/Analysis/CostModel/AArch64/sve-rem.ll
M llvm/test/Analysis/CostModel/RISCV/rvv-shuffle.ll
M llvm/test/Analysis/CostModel/RISCV/shuffle-reverse.ll
M llvm/test/Analysis/KernelInfo/openmp/amdgpu.ll
M llvm/test/Analysis/LoopAccessAnalysis/underlying-objects-2.ll
M llvm/test/Analysis/ScopedNoAliasAA/alias-scope-merging.ll
M llvm/test/Assembler/auto_upgrade_nvvm_intrinsics.ll
M llvm/test/Assembler/drop-debug-info-nonzero-alloca.ll
M llvm/test/CodeGen/AArch64/GlobalISel/irtranslator-stack-protector-windows.ll
M llvm/test/CodeGen/AArch64/aarch64-sme2-asm.ll
M llvm/test/CodeGen/AArch64/arm64ec-alias.ll
M llvm/test/CodeGen/AArch64/arm64ec-hybrid-patchable.ll
M llvm/test/CodeGen/AArch64/arm64ec-symbols.ll
M llvm/test/CodeGen/AArch64/arm64ec-varargs.ll
M llvm/test/CodeGen/AArch64/cmp-to-cmn.ll
M llvm/test/CodeGen/AArch64/ehcontguard.ll
M llvm/test/CodeGen/AArch64/global-merge-1.ll
M llvm/test/CodeGen/AArch64/global-merge-2.ll
M llvm/test/CodeGen/AArch64/global-merge-3.ll
M llvm/test/CodeGen/AArch64/global-merge-hidden-minsize.ll
M llvm/test/CodeGen/AArch64/ifunc-asm.ll
M llvm/test/CodeGen/AArch64/loh-adrp-add-ldr-clobber.mir
M llvm/test/CodeGen/AArch64/neon-scalarize-histogram.ll
M llvm/test/CodeGen/AArch64/nest-register.ll
M llvm/test/CodeGen/AArch64/seh-finally.ll
M llvm/test/CodeGen/AArch64/stackguard-internal.ll
M llvm/test/CodeGen/AArch64/statepoint-call-lowering.ll
M llvm/test/CodeGen/AArch64/sve-fixed-length-partial-reduce.ll
M llvm/test/CodeGen/AArch64/sve-vector-deinterleave.ll
M llvm/test/CodeGen/AArch64/sve-vector-interleave.ll
M llvm/test/CodeGen/AArch64/trampoline.ll
M llvm/test/CodeGen/AArch64/vec-combine-compare-to-bitmask.ll
M llvm/test/CodeGen/AArch64/win64cc-x18.ll
M llvm/test/CodeGen/AArch64/xar.ll
M llvm/test/CodeGen/AArch64/zero-call-used-regs.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/extractelement.ll
A llvm/test/CodeGen/AMDGPU/GlobalISel/knownbits-ptrtoint.mir
M llvm/test/CodeGen/AMDGPU/amdgpu-no-agprs-violations.ll
M llvm/test/CodeGen/AMDGPU/amdhsa-kernarg-preload-num-sgprs.ll
M llvm/test/CodeGen/AMDGPU/amdpal-callable.ll
M llvm/test/CodeGen/AMDGPU/amdpal-elf.ll
M llvm/test/CodeGen/AMDGPU/attr-amdgpu-flat-work-group-size.ll
M llvm/test/CodeGen/AMDGPU/attr-amdgpu-waves-per-eu.ll
M llvm/test/CodeGen/AMDGPU/call-alias-register-usage-agpr.ll
M llvm/test/CodeGen/AMDGPU/call-alias-register-usage0.ll
M llvm/test/CodeGen/AMDGPU/call-alias-register-usage1.ll
M llvm/test/CodeGen/AMDGPU/call-alias-register-usage2.ll
M llvm/test/CodeGen/AMDGPU/call-alias-register-usage3.ll
M llvm/test/CodeGen/AMDGPU/call-graph-register-usage.ll
M llvm/test/CodeGen/AMDGPU/coalescer_remat.ll
M llvm/test/CodeGen/AMDGPU/code-object-v3.ll
M llvm/test/CodeGen/AMDGPU/elf-notes.ll
M llvm/test/CodeGen/AMDGPU/flat-scratch-reg.ll
M llvm/test/CodeGen/AMDGPU/function-resource-usage.ll
M llvm/test/CodeGen/AMDGPU/hsa-metadata-kernel-code-props.ll
M llvm/test/CodeGen/AMDGPU/hsa.ll
R llvm/test/CodeGen/AMDGPU/init-whole-wave-vgpr-count-large.ll
R llvm/test/CodeGen/AMDGPU/init-whole-wave-vgpr-count-leaf.ll
R llvm/test/CodeGen/AMDGPU/init-whole-wave-vgpr-count-use-inactive.ll
R llvm/test/CodeGen/AMDGPU/init-whole-wave-vgpr-count.ll
M llvm/test/CodeGen/AMDGPU/ipra.ll
M llvm/test/CodeGen/AMDGPU/mad_64_32.ll
M llvm/test/CodeGen/AMDGPU/mcexpr-knownbits-assign-crash-gh-issue-110930.ll
M llvm/test/CodeGen/AMDGPU/multi-call-resource-usage-mcexpr.ll
M llvm/test/CodeGen/AMDGPU/pal-metadata-3.0-callable.ll
A llvm/test/CodeGen/AMDGPU/promote-alloca-structs.ll
M llvm/test/CodeGen/AMDGPU/ps-shader-arg-count.ll
A llvm/test/CodeGen/AMDGPU/ptradd-sdag.ll
M llvm/test/CodeGen/AMDGPU/recursive-resource-usage-mcexpr.ll
M llvm/test/CodeGen/AMDGPU/register-count-comments.ll
M llvm/test/CodeGen/AMDGPU/resource-optimization-remarks.ll
M llvm/test/CodeGen/AMDGPU/schedule-amdgpu-tracker-physreg.ll
M llvm/test/CodeGen/AMDGPU/schedule-amdgpu-trackers.ll
M llvm/test/CodeGen/AMDGPU/schedule-regpressure-limit2.ll
M llvm/test/CodeGen/AMDGPU/srl64_reduce.ll
M llvm/test/CodeGen/AMDGPU/stack-realign-kernel.ll
M llvm/test/CodeGen/AMDGPU/tid-kd-xnack-any.ll
M llvm/test/CodeGen/AMDGPU/tid-kd-xnack-off.ll
M llvm/test/CodeGen/AMDGPU/tid-kd-xnack-on.ll
M llvm/test/CodeGen/AMDGPU/unnamed-function-resource-info.ll
M llvm/test/CodeGen/AMDGPU/vgpr-agpr-limit-gfx90a.ll
R llvm/test/CodeGen/AMDGPU/vgpr-count-compute.ll
R llvm/test/CodeGen/AMDGPU/vgpr-count-graphics.ll
M llvm/test/CodeGen/ARM/alias_store.ll
M llvm/test/CodeGen/ARM/aliases.ll
M llvm/test/CodeGen/ARM/global-merge-dllexport.ll
M llvm/test/CodeGen/ARM/global-merge-external-2.ll
M llvm/test/CodeGen/ARM/global-merge-external.ll
M llvm/test/CodeGen/AVR/global-aliases.ll
A llvm/test/CodeGen/BPF/warn-cmp.ll
M llvm/test/CodeGen/DirectX/flatten-array.ll
M llvm/test/CodeGen/DirectX/flatten-bug-117273.ll
M llvm/test/CodeGen/DirectX/llc-vector-load-scalarize.ll
M llvm/test/CodeGen/DirectX/scalar-bug-117273.ll
M llvm/test/CodeGen/Generic/selection-dag-determinism.ll
M llvm/test/CodeGen/LoongArch/lasx/xvmskcond.ll
M llvm/test/CodeGen/LoongArch/lsx/vmskcond.ll
A llvm/test/CodeGen/MSP430/fcmp.ll
M llvm/test/CodeGen/Mips/hf16call32_body.ll
M llvm/test/CodeGen/Mips/mips16ex.ll
A llvm/test/CodeGen/NVPTX/cp-async-bulk-tensor-g2s-1cta.ll
A llvm/test/CodeGen/NVPTX/cp-async-bulk-tensor-g2s-2cta.ll
A llvm/test/CodeGen/NVPTX/cp-async-bulk-tensor-g2s-invalid.ll
M llvm/test/CodeGen/NVPTX/fast-math.ll
M llvm/test/CodeGen/NVPTX/prmt.ll
M llvm/test/CodeGen/NVPTX/sqrt-approx.ll
M llvm/test/CodeGen/PowerPC/PR35812-neg-cmpxchg.ll
M llvm/test/CodeGen/PowerPC/all-atomics.ll
M llvm/test/CodeGen/PowerPC/asm-printer-topological-order.ll
M llvm/test/CodeGen/PowerPC/atomic-2.ll
M llvm/test/CodeGen/PowerPC/atomic-compare-exchange-weak.ll
M llvm/test/CodeGen/PowerPC/atomic-float.ll
M llvm/test/CodeGen/PowerPC/atomicrmw-cond-sub-clamp.ll
M llvm/test/CodeGen/PowerPC/atomicrmw-uinc-udec-wrap.ll
M llvm/test/CodeGen/PowerPC/atomics-regression.ll
M llvm/test/CodeGen/PowerPC/atomics.ll
M llvm/test/CodeGen/PowerPC/data-align.ll
M llvm/test/CodeGen/PowerPC/loop-comment.ll
A llvm/test/CodeGen/PowerPC/mtvsrbmi.ll
A llvm/test/CodeGen/PowerPC/xxeval-vselect-x-or.ll
M llvm/test/CodeGen/RISCV/features-info.ll
A llvm/test/CodeGen/RISCV/fpenv-xlen.ll
M llvm/test/CodeGen/RISCV/frm-write-in-loop.ll
M llvm/test/CodeGen/RISCV/memcmp-optsize.ll
M llvm/test/CodeGen/RISCV/memcmp.ll
M llvm/test/CodeGen/RISCV/nest-register.ll
M llvm/test/CodeGen/RISCV/rvv/combine-reduce-add-to-vcpop.ll
M llvm/test/CodeGen/RISCV/rvv/vector-interleave.ll
M llvm/test/CodeGen/RISCV/rvv/vleff-vlseg2ff-output.ll
M llvm/test/CodeGen/RISCV/rvv/vleff.ll
M llvm/test/CodeGen/RISCV/rvv/vlsegff-rv32-dead.ll
M llvm/test/CodeGen/RISCV/rvv/vlsegff-rv64-dead.ll
M llvm/test/CodeGen/RISCV/rvv/vmv.v.v-peephole.ll
M llvm/test/CodeGen/RISCV/rvv/vmv.v.v-peephole.mir
M llvm/test/CodeGen/RISCV/short-forward-branch-opt.ll
M llvm/test/CodeGen/RISCV/xqcibm-extract.ll
A llvm/test/CodeGen/RISCV/zicond-opts.ll
M llvm/test/CodeGen/SPIRV/ExecutionMode_Fragment.ll
M llvm/test/CodeGen/SPIRV/const-nested-vecs.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_function_pointers/fun-ptr-addrcast.ll
M llvm/test/CodeGen/SPIRV/hlsl-resources/BufferLoad.ll
M llvm/test/CodeGen/SPIRV/hlsl-resources/BufferLoadStore.ll
M llvm/test/CodeGen/SPIRV/hlsl-resources/BufferStore.ll
M llvm/test/CodeGen/SPIRV/hlsl-resources/Packed.ll
M llvm/test/CodeGen/SPIRV/hlsl-resources/ScalarResourceType.ll
M llvm/test/CodeGen/SPIRV/hlsl-resources/StorageImageDynIdx.ll
M llvm/test/CodeGen/SPIRV/hlsl-resources/StorageImageNonUniformIdx.ll
M llvm/test/CodeGen/SPIRV/hlsl-resources/StructuredBuffer.ll
M llvm/test/CodeGen/SPIRV/hlsl-resources/UnknownBufferLoad.ll
M llvm/test/CodeGen/SPIRV/hlsl-resources/UnknownBufferStore.ll
M llvm/test/CodeGen/SPIRV/hlsl-resources/spirv.layout.type.ll
M llvm/test/CodeGen/SPIRV/opencl/basic/progvar_prog_scope_init.ll
M llvm/test/CodeGen/SPIRV/opt-gepoperator-of-gvar.ll
M llvm/test/CodeGen/SPIRV/pointers/PtrCast-in-OpSpecConstantOp.ll
M llvm/test/CodeGen/SPIRV/pointers/global-ptrtoint.ll
M llvm/test/CodeGen/SPIRV/pointers/irtrans-added-int-const-32-64.ll
M llvm/test/CodeGen/SPIRV/pointers/resource-addrspacecast-2.ll
M llvm/test/CodeGen/SPIRV/pointers/resource-addrspacecast.ll
M llvm/test/CodeGen/SPIRV/spirv-explicit-layout.ll
M llvm/test/CodeGen/WebAssembly/aliases.ll
M llvm/test/CodeGen/WinCFGuard/cfguard-mingw.ll
M llvm/test/CodeGen/WinCFGuard/cfguard.ll
M llvm/test/CodeGen/X86/2007-09-06-ExtWeakAliasee.ll
M llvm/test/CodeGen/X86/2009-08-12-badswitch.ll
M llvm/test/CodeGen/X86/2010-05-26-DotDebugLoc.ll
M llvm/test/CodeGen/X86/2012-01-12-extract-sv.ll
M llvm/test/CodeGen/X86/alias-gep.ll
M llvm/test/CodeGen/X86/aliases.ll
M llvm/test/CodeGen/X86/any_extend_vector_inreg_of_broadcast.ll
M llvm/test/CodeGen/X86/any_extend_vector_inreg_of_broadcast_from_memory.ll
M llvm/test/CodeGen/X86/avgfloors.ll
M llvm/test/CodeGen/X86/avx-cvt.ll
M llvm/test/CodeGen/X86/avx-insertelt.ll
M llvm/test/CodeGen/X86/avx-intrinsics-x86-upgrade.ll
M llvm/test/CodeGen/X86/avx10_2_512bf16-arith.ll
M llvm/test/CodeGen/X86/avx10_2bf16-arith.ll
M llvm/test/CodeGen/X86/avx512-cvt.ll
M llvm/test/CodeGen/X86/avx512-intrinsics-fast-isel.ll
M llvm/test/CodeGen/X86/avx512-intrinsics-upgrade.ll
M llvm/test/CodeGen/X86/avx512-intrinsics.ll
M llvm/test/CodeGen/X86/avx512-logic.ll
M llvm/test/CodeGen/X86/avx512-regcall-NoMask.ll
M llvm/test/CodeGen/X86/avx512copy-intrinsics.ll
M llvm/test/CodeGen/X86/avx512fp16-arith.ll
M llvm/test/CodeGen/X86/avx512fp16-cvt.ll
M llvm/test/CodeGen/X86/avx512fp16-novl.ll
M llvm/test/CodeGen/X86/avx512vl-logic.ll
M llvm/test/CodeGen/X86/break-false-dep.ll
M llvm/test/CodeGen/X86/bsf.ll
M llvm/test/CodeGen/X86/bsr.ll
M llvm/test/CodeGen/X86/build-vector-512.ll
M llvm/test/CodeGen/X86/buildvec-extract.ll
A llvm/test/CodeGen/X86/callbr-asm-endbr.ll
M llvm/test/CodeGen/X86/canonicalize-vars-f16-type.ll
M llvm/test/CodeGen/X86/catchret-empty-fallthrough.ll
M llvm/test/CodeGen/X86/coalesce_commute_movsd.ll
M llvm/test/CodeGen/X86/coalescer-commute1.ll
M llvm/test/CodeGen/X86/coff-alias-type.ll
M llvm/test/CodeGen/X86/coff-comdat.ll
M llvm/test/CodeGen/X86/coff-feat00.ll
M llvm/test/CodeGen/X86/combine-and.ll
M llvm/test/CodeGen/X86/combine-bitselect.ll
M llvm/test/CodeGen/X86/combine-mask-with-shuffle.ll
M llvm/test/CodeGen/X86/combine-or-shuffle.ll
M llvm/test/CodeGen/X86/commute-blend-sse41.ll
M llvm/test/CodeGen/X86/dllexport-x86_64.ll
M llvm/test/CodeGen/X86/dllexport.ll
M llvm/test/CodeGen/X86/dpbusd_i4.ll
M llvm/test/CodeGen/X86/ehcontguard.ll
M llvm/test/CodeGen/X86/fast-isel-fptrunc-fpext.ll
M llvm/test/CodeGen/X86/fast-isel-int-float-conversion-x86-64.ll
M llvm/test/CodeGen/X86/fast-isel-int-float-conversion.ll
M llvm/test/CodeGen/X86/fast-isel-uint-float-conversion-x86-64.ll
M llvm/test/CodeGen/X86/fast-isel-uint-float-conversion.ll
M llvm/test/CodeGen/X86/fastcall-correct-mangling.ll
M llvm/test/CodeGen/X86/fcmp-logic.ll
A llvm/test/CodeGen/X86/fixup-blend.ll
M llvm/test/CodeGen/X86/fminimumnum-fmaximumnum.ll
M llvm/test/CodeGen/X86/fmsubadd-combine.ll
M llvm/test/CodeGen/X86/fold-int-pow2-with-fmul-or-fdiv.ll
M llvm/test/CodeGen/X86/fold-load-unops.ll
M llvm/test/CodeGen/X86/fp-intrinsics.ll
M llvm/test/CodeGen/X86/fp-round.ll
M llvm/test/CodeGen/X86/fp-strict-scalar-fp16.ll
M llvm/test/CodeGen/X86/fp-strict-scalar-inttofp-fp16.ll
M llvm/test/CodeGen/X86/fp-strict-scalar-inttofp.ll
M llvm/test/CodeGen/X86/fp-strict-scalar-round-fp16.ll
M llvm/test/CodeGen/X86/ftrunc.ll
M llvm/test/CodeGen/X86/gfni-funnel-shifts.ll
M llvm/test/CodeGen/X86/gfni-shifts.ll
M llvm/test/CodeGen/X86/half-constrained.ll
M llvm/test/CodeGen/X86/half-darwin.ll
M llvm/test/CodeGen/X86/half.ll
M llvm/test/CodeGen/X86/horizontal-sum.ll
M llvm/test/CodeGen/X86/ifunc-asm.ll
M llvm/test/CodeGen/X86/insertelement-zero.ll
M llvm/test/CodeGen/X86/isel-int-to-fp.ll
M llvm/test/CodeGen/X86/lea-opt-memop-check-1.ll
M llvm/test/CodeGen/X86/linux-preemption.ll
M llvm/test/CodeGen/X86/localescape.ll
M llvm/test/CodeGen/X86/masked_expandload.ll
M llvm/test/CodeGen/X86/masked_gather.ll
M llvm/test/CodeGen/X86/masked_gather_scatter.ll
M llvm/test/CodeGen/X86/masked_load.ll
M llvm/test/CodeGen/X86/midpoint-int-vec-128.ll
M llvm/test/CodeGen/X86/midpoint-int-vec-256.ll
M llvm/test/CodeGen/X86/min-legal-vector-width.ll
M llvm/test/CodeGen/X86/opt-pipeline.ll
M llvm/test/CodeGen/X86/pmul.ll
M llvm/test/CodeGen/X86/pr132844.ll
M llvm/test/CodeGen/X86/pr22019.ll
M llvm/test/CodeGen/X86/pr34080.ll
M llvm/test/CodeGen/X86/pr37879.ll
M llvm/test/CodeGen/X86/pr38803.ll
M llvm/test/CodeGen/X86/pr40090.ll
M llvm/test/CodeGen/X86/pr40730.ll
M llvm/test/CodeGen/X86/psubus.ll
M llvm/test/CodeGen/X86/rounding-ops.ll
M llvm/test/CodeGen/X86/sadd_sat_vec.ll
M llvm/test/CodeGen/X86/scalar-int-to-fp.ll
M llvm/test/CodeGen/X86/scalarize-fp.ll
M llvm/test/CodeGen/X86/seh-catch-all-win32.ll
M llvm/test/CodeGen/X86/seh-catchpad.ll
M llvm/test/CodeGen/X86/seh-finally.ll
M llvm/test/CodeGen/X86/seh-no-invokes.ll
M llvm/test/CodeGen/X86/seh-stack-realign.ll
M llvm/test/CodeGen/X86/select-narrow-int-to-fp.ll
M llvm/test/CodeGen/X86/split-extend-vector-inreg.ll
M llvm/test/CodeGen/X86/srem-seteq-vec-nonsplat.ll
M llvm/test/CodeGen/X86/sse-cvttp2si.ll
M llvm/test/CodeGen/X86/sse-insertelt-from-mem.ll
M llvm/test/CodeGen/X86/sse-insertelt.ll
M llvm/test/CodeGen/X86/sse-intrinsics-fast-isel.ll
M llvm/test/CodeGen/X86/sse-scalar-fp-arith.ll
M llvm/test/CodeGen/X86/sse2-intrinsics-fast-isel.ll
M llvm/test/CodeGen/X86/sse2-intrinsics-x86-upgrade.ll
M llvm/test/CodeGen/X86/sse2.ll
M llvm/test/CodeGen/X86/sse41-intrinsics-fast-isel.ll
M llvm/test/CodeGen/X86/sse41-intrinsics-x86-upgrade.ll
M llvm/test/CodeGen/X86/sse41.ll
M llvm/test/CodeGen/X86/ssub_sat_vec.ll
M llvm/test/CodeGen/X86/stack-folding-fp-avx1.ll
A llvm/test/CodeGen/X86/stack-protector-msvc-oz.ll
M llvm/test/CodeGen/X86/stack-protector-msvc.ll
M llvm/test/CodeGen/X86/tailcall-cgp-dup.ll
M llvm/test/CodeGen/X86/tailcc-ssp.ll
M llvm/test/CodeGen/X86/usub_sat_vec.ll
M llvm/test/CodeGen/X86/vec-strict-128-fp16.ll
M llvm/test/CodeGen/X86/vec-strict-fptoint-128-fp16.ll
M llvm/test/CodeGen/X86/vec-strict-inttofp-128.ll
M llvm/test/CodeGen/X86/vec-strict-inttofp-256.ll
M llvm/test/CodeGen/X86/vec-strict-inttofp-512.ll
M llvm/test/CodeGen/X86/vec_extract-avx.ll
M llvm/test/CodeGen/X86/vec_floor.ll
M llvm/test/CodeGen/X86/vec_int_to_fp.ll
M llvm/test/CodeGen/X86/vec_ss_load_fold.ll
M llvm/test/CodeGen/X86/vector-blend.ll
M llvm/test/CodeGen/X86/vector-constrained-fp-intrinsics.ll
M llvm/test/CodeGen/X86/vector-fshl-128.ll
M llvm/test/CodeGen/X86/vector-fshl-256.ll
M llvm/test/CodeGen/X86/vector-fshl-512.ll
M llvm/test/CodeGen/X86/vector-fshl-rot-128.ll
M llvm/test/CodeGen/X86/vector-fshl-rot-256.ll
M llvm/test/CodeGen/X86/vector-fshl-rot-512.ll
M llvm/test/CodeGen/X86/vector-fshr-128.ll
M llvm/test/CodeGen/X86/vector-fshr-256.ll
M llvm/test/CodeGen/X86/vector-fshr-512.ll
M llvm/test/CodeGen/X86/vector-fshr-rot-128.ll
M llvm/test/CodeGen/X86/vector-fshr-rot-256.ll
M llvm/test/CodeGen/X86/vector-fshr-rot-512.ll
M llvm/test/CodeGen/X86/vector-half-conversions.ll
M llvm/test/CodeGen/X86/vector-idiv-sdiv-512.ll
M llvm/test/CodeGen/X86/vector-idiv-udiv-512.ll
M llvm/test/CodeGen/X86/vector-interleaved-load-i32-stride-4.ll
M llvm/test/CodeGen/X86/vector-interleaved-load-i32-stride-5.ll
M llvm/test/CodeGen/X86/vector-interleaved-load-i8-stride-7.ll
M llvm/test/CodeGen/X86/vector-interleaved-store-i16-stride-5.ll
M llvm/test/CodeGen/X86/vector-interleaved-store-i16-stride-7.ll
M llvm/test/CodeGen/X86/vector-interleaved-store-i16-stride-8.ll
M llvm/test/CodeGen/X86/vector-interleaved-store-i32-stride-5.ll
M llvm/test/CodeGen/X86/vector-interleaved-store-i32-stride-7.ll
M llvm/test/CodeGen/X86/vector-interleaved-store-i8-stride-5.ll
M llvm/test/CodeGen/X86/vector-interleaved-store-i8-stride-6.ll
M llvm/test/CodeGen/X86/vector-interleaved-store-i8-stride-7.ll
M llvm/test/CodeGen/X86/vector-interleaved-store-i8-stride-8.ll
M llvm/test/CodeGen/X86/vector-mul.ll
M llvm/test/CodeGen/X86/vector-pcmp.ll
M llvm/test/CodeGen/X86/vector-rotate-128.ll
M llvm/test/CodeGen/X86/vector-rotate-256.ll
M llvm/test/CodeGen/X86/vector-rotate-512.ll
M llvm/test/CodeGen/X86/vector-shift-ashr-128.ll
M llvm/test/CodeGen/X86/vector-shift-ashr-256.ll
M llvm/test/CodeGen/X86/vector-shift-ashr-512.ll
M llvm/test/CodeGen/X86/vector-shift-ashr-sub128.ll
M llvm/test/CodeGen/X86/vector-shift-shl-256.ll
M llvm/test/CodeGen/X86/vector-shift-shl-512.ll
M llvm/test/CodeGen/X86/vector-shuffle-128-v2.ll
M llvm/test/CodeGen/X86/vector-shuffle-128-v4.ll
M llvm/test/CodeGen/X86/vector-shuffle-256-v4.ll
M llvm/test/CodeGen/X86/vector-shuffle-256-v8.ll
M llvm/test/CodeGen/X86/vector-shuffle-avx512.ll
M llvm/test/CodeGen/X86/vector-shuffle-combining-avx2.ll
M llvm/test/CodeGen/X86/vector-shuffle-combining-avx512f.ll
M llvm/test/CodeGen/X86/vector-shuffle-combining-ssse3.ll
M llvm/test/CodeGen/X86/vector-shuffle-combining-xop.ll
M llvm/test/CodeGen/X86/vector-shuffle-concatenation.ll
M llvm/test/CodeGen/X86/vector-zmov.ll
M llvm/test/CodeGen/X86/vselect-2.ll
M llvm/test/CodeGen/X86/vselect-pcmp.ll
M llvm/test/CodeGen/X86/vselect.ll
M llvm/test/CodeGen/X86/windows-seh-EHa-TryInFinally.ll
M llvm/test/CodeGen/X86/zero_extend_vector_inreg_of_broadcast.ll
M llvm/test/CodeGen/X86/zero_extend_vector_inreg_of_broadcast_from_memory.ll
M llvm/test/CodeGen/XCore/globals.ll
M llvm/test/CodeGen/XCore/linkage.ll
M llvm/test/DebugInfo/COFF/dwarf-headers.ll
A llvm/test/DebugInfo/COFF/emission-kind-no-codeview.ll
M llvm/test/DebugInfo/COFF/emission-kind-no-debug.ll
M llvm/test/DebugInfo/COFF/fission-cu.ll
M llvm/test/DebugInfo/COFF/fission-sections.ll
M llvm/test/DebugInfo/COFF/fpo-stack-protect.ll
A llvm/test/DebugInfo/COFF/uefi-nodebug.ll
M llvm/test/DebugInfo/Generic/assignment-tracking/parse-and-verify/verify.ll
M llvm/test/DebugInfo/Generic/directives-only.ll
M llvm/test/DebugInfo/Generic/sroa-extract-bits.ll
M llvm/test/DebugInfo/X86/dbg-value-range.ll
M llvm/test/DebugInfo/X86/stmt-list-multiple-compile-units.ll
M llvm/test/Instrumentation/MemorySanitizer/X86/avx2-intrinsics-x86.ll
M llvm/test/Instrumentation/MemorySanitizer/X86/avx512-intrinsics-upgrade.ll
M llvm/test/Instrumentation/MemorySanitizer/X86/avx512-intrinsics.ll
A llvm/test/Instrumentation/MemorySanitizer/X86/avx512vl-intrinsics.ll
A llvm/test/Instrumentation/MemorySanitizer/X86/x86-vpermi2.ll
M llvm/test/Instrumentation/MemorySanitizer/i386/avx2-intrinsics-i386.ll
A llvm/test/Instrumentation/MemorySanitizer/partial-poison.ll
M llvm/test/Instrumentation/ThreadSanitizer/atomic-non-integer.ll
M llvm/test/MC/AArch64/basic-a64-instructions.s
M llvm/test/MC/AMDGPU/gfx11_asm_vop1.s
M llvm/test/MC/AMDGPU/gfx11_asm_vop1_t16_err.s
M llvm/test/MC/AsmParser/assignment.s
M llvm/test/MC/AsmParser/directive_include.s
M llvm/test/MC/AsmParser/directive_set.s
M llvm/test/MC/AsmParser/include.ll
M llvm/test/MC/AsmParser/labels.s
M llvm/test/MC/AsmParser/macro-arg-darwin.s
M llvm/test/MC/AsmParser/motorola_integers.s
M llvm/test/MC/Mips/cpsetup.s
M llvm/test/TableGen/true-false.td
A llvm/test/ThinLTO/X86/Inputs/devirt_single_hybrid_foo_tcl.ll
M llvm/test/ThinLTO/X86/devirt_single_hybrid.ll
M llvm/test/Transforms/AtomicExpand/PowerPC/atomicrmw-fp.ll
M llvm/test/Transforms/Coroutines/coro-debug-dbg.values-not_used_in_frame.ll
M llvm/test/Transforms/Coroutines/coro-debug-dbg.values.ll
M llvm/test/Transforms/Coroutines/coro-debug-frame-variable.ll
M llvm/test/Transforms/Coroutines/coro-debug.ll
M llvm/test/Transforms/GVN/captures.ll
A llvm/test/Transforms/GVN/opt-remark-assert-constant-uselistorder.ll
A llvm/test/Transforms/GlobalOpt/global-constructor-complex-constants.ll
M llvm/test/Transforms/IROutliner/outlining-debug-statements.ll
M llvm/test/Transforms/Inline/inline-noalias-unidentify-object.ll
M llvm/test/Transforms/InstCombine/abs-1.ll
M llvm/test/Transforms/InstCombine/canonicalize-const-to-bop.ll
M llvm/test/Transforms/InstCombine/fma.ll
M llvm/test/Transforms/InstCombine/fneg.ll
M llvm/test/Transforms/InstCombine/fsub.ll
M llvm/test/Transforms/InstCombine/minmax-intrinsics.ll
M llvm/test/Transforms/InstCombine/narrow-switch.ll
M llvm/test/Transforms/InstCombine/or-bitmask.ll
M llvm/test/Transforms/InstCombine/powi.ll
M llvm/test/Transforms/InstCombine/scmp.ll
A llvm/test/Transforms/InstCombine/select-to-cmp.ll
M llvm/test/Transforms/InstCombine/sqrt.ll
M llvm/test/Transforms/InstCombine/sub-gep.ll
A llvm/test/Transforms/InstCombine/vp-reverse.ll
M llvm/test/Transforms/InstSimplify/ConstProp/atan-intrinsic.ll
A llvm/test/Transforms/InstSimplify/ConstProp/vector-calls.ll
M llvm/test/Transforms/InstSimplify/fp-undef-poison.ll
A llvm/test/Transforms/InstSimplify/vp-reverse.ll
M llvm/test/Transforms/LICM/call-hoisting.ll
M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-dot-product-epilogue.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-interleaved-accesses.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-interleaved-masked-accesses.ll
M llvm/test/Transforms/LoopVectorize/AArch64/vector-loop-backedge-elimination-epilogue.ll
M llvm/test/Transforms/LoopVectorize/RISCV/interleaved-accesses.ll
M llvm/test/Transforms/LoopVectorize/RISCV/riscv-vector-reverse.ll
M llvm/test/Transforms/LoopVectorize/check-prof-info.ll
A llvm/test/Transforms/LoopVectorize/single-scalar-cast-minbw.ll
M llvm/test/Transforms/LoopVectorize/vplan-printing-reductions.ll
A llvm/test/Transforms/LowerMatrixIntrinsics/select.ll
M llvm/test/Transforms/MemCpyOpt/callslot_badaa.ll
M llvm/test/Transforms/MemCpyOpt/memset-memcpy-oversized.ll
M llvm/test/Transforms/MemCpyOpt/memset-memcpy-to-2x-memset.ll
M llvm/test/Transforms/MemCpyOpt/mixed-sizes.ll
M llvm/test/Transforms/MemCpyOpt/variable-sized-memset-memcpy.ll
M llvm/test/Transforms/ObjCARC/code-motion.ll
M llvm/test/Transforms/SLPVectorizer/AMDGPU/add_sub_sat-inseltpoison.ll
M llvm/test/Transforms/SLPVectorizer/AMDGPU/add_sub_sat.ll
A llvm/test/Transforms/SLPVectorizer/AMDGPU/external-shuffle.ll
M llvm/test/Transforms/SLPVectorizer/X86/alternate-calls-inseltpoison.ll
M llvm/test/Transforms/SLPVectorizer/X86/alternate-calls.ll
A llvm/test/Transforms/SROA/scalable-vectors-with-known-vscale.ll
M llvm/test/Transforms/SROA/scalable-vectors.ll
A llvm/test/Verifier/RemoveDI/invalid-dbg-declare-operands.ll
A llvm/test/Verifier/dbg-declare-invalid-debug-loc.ll
M llvm/test/Verifier/diexpression-entry-value-llvm-ir.ll
M llvm/test/Verifier/llvm.dbg.declare-address.ll
M llvm/test/Verifier/llvm.dbg.declare-expression.ll
M llvm/test/Verifier/llvm.dbg.declare-variable.ll
M llvm/test/Verifier/llvm.dbg.intrinsic-dbg-attachment.ll
M llvm/test/Verifier/llvm.dbg.value-expression.ll
M llvm/test/Verifier/llvm.dbg.value-value.ll
M llvm/test/Verifier/llvm.dbg.value-variable.ll
A llvm/test/tools/llvm-cov/showLineExecutionCounts-lcov-baseline.test
A llvm/test/tools/llvm-lto2/print-guid.test
M llvm/test/tools/llvm-remarkutil/convert.test
M llvm/tools/llvm-as/llvm-as.cpp
M llvm/tools/llvm-cov/CodeCoverage.cpp
M llvm/tools/llvm-dis/llvm-dis.cpp
M llvm/tools/llvm-link/llvm-link.cpp
M llvm/tools/llvm-lto2/llvm-lto2.cpp
M llvm/tools/llvm-pdbutil/llvm-pdbutil.cpp
M llvm/tools/llvm-remarkutil/RemarkConvert.cpp
M llvm/tools/sancov/sancov.cpp
M llvm/unittests/ADT/DAGDeltaAlgorithmTest.cpp
M llvm/unittests/ADT/DeltaAlgorithmTest.cpp
M llvm/unittests/Analysis/IR2VecTest.cpp
M llvm/unittests/CodeGen/GlobalISel/KnownFPClassTest.cpp
M llvm/unittests/IR/CMakeLists.txt
M llvm/unittests/IR/DebugInfoTest.cpp
M llvm/unittests/IR/IRBuilderTest.cpp
R llvm/unittests/IR/VectorBuilderTest.cpp
M llvm/unittests/ProfileData/CoverageMappingTest.cpp
M llvm/unittests/ProfileData/DataAccessProfTest.cpp
M llvm/utils/TableGen/AsmMatcherEmitter.cpp
M llvm/utils/TableGen/Common/CodeGenRegisters.cpp
M llvm/utils/TableGen/RegisterInfoEmitter.cpp
M llvm/utils/gn/secondary/compiler-rt/test/BUILD.gn
M llvm/utils/gn/secondary/libcxx/include/BUILD.gn
M llvm/utils/gn/secondary/lldb/source/Host/BUILD.gn
M llvm/utils/gn/secondary/llvm/include/llvm/Config/BUILD.gn
M llvm/utils/gn/secondary/llvm/lib/IR/BUILD.gn
M llvm/utils/gn/secondary/llvm/lib/Target/X86/BUILD.gn
M llvm/utils/gn/secondary/llvm/unittests/IR/BUILD.gn
M llvm/utils/lldbDataFormatters.py
A llvm/utils/llvm-test-mustache-spec/CMakeLists.txt
A llvm/utils/llvm-test-mustache-spec/llvm-test-mustache-spec.cpp
M mlir/include/mlir/Conversion/LLVMCommon/Pattern.h
M mlir/include/mlir/Dialect/AMDGPU/IR/AMDGPU.td
M mlir/include/mlir/Dialect/AMX/Transforms.h
M mlir/include/mlir/Dialect/Async/IR/AsyncOps.td
M mlir/include/mlir/Dialect/LLVMIR/ROCDLDialect.h
M mlir/include/mlir/Dialect/OpenACC/OpenACC.h
M mlir/include/mlir/Dialect/OpenACC/OpenACCOps.td
M mlir/include/mlir/Dialect/OpenMP/OpenMPOps.td
M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVBase.td
M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVCastOps.td
M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVGLOps.td
M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVImageOps.td
M mlir/include/mlir/Dialect/Tosa/Utils/ConversionUtils.h
M mlir/include/mlir/Dialect/Transform/IR/CMakeLists.txt
M mlir/include/mlir/Dialect/Transform/IR/TransformAttrs.h
M mlir/include/mlir/Dialect/Transform/IR/TransformAttrs.td
M mlir/include/mlir/Dialect/Transform/IR/TransformDialect.td
M mlir/include/mlir/Dialect/Transform/IR/TransformOps.td
M mlir/include/mlir/Dialect/Utils/ReshapeOpsUtils.h
M mlir/include/mlir/Dialect/XeGPU/Utils/XeGPUUtils.h
M mlir/include/mlir/ExecutionEngine/MemRefUtils.h
M mlir/include/mlir/InitAllExtensions.h
M mlir/include/mlir/Target/SPIRV/SPIRVBinaryUtils.h
M mlir/lib/Conversion/AMDGPUToROCDL/AMDGPUToROCDL.cpp
M mlir/lib/Conversion/MathToSPIRV/MathToSPIRV.cpp
M mlir/lib/Dialect/AMDGPU/IR/AMDGPUDialect.cpp
M mlir/lib/Dialect/AMX/Transforms/LegalizeForLLVMExport.cpp
M mlir/lib/Dialect/Linalg/Transforms/ElementwiseOpFusion.cpp
M mlir/lib/Dialect/Linalg/Transforms/WinogradConv2D.cpp
M mlir/lib/Dialect/OpenACC/IR/OpenACC.cpp
M mlir/lib/Dialect/SPIRV/IR/ImageOps.cpp
M mlir/lib/Dialect/SPIRV/IR/SPIRVDialect.cpp
M mlir/lib/Dialect/SPIRV/IR/SPIRVTypes.cpp
M mlir/lib/Dialect/SPIRV/Transforms/SPIRVConversion.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/SparseVectorization.cpp
M mlir/lib/Dialect/Tosa/Transforms/TosaValidation.cpp
M mlir/lib/Dialect/Tosa/Utils/ConversionUtils.cpp
M mlir/lib/Dialect/Transform/IR/TransformDialect.cpp
M mlir/lib/Dialect/Transform/IR/TransformOps.cpp
M mlir/lib/Dialect/Utils/ReshapeOpsUtils.cpp
M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
M mlir/lib/Dialect/Vector/Transforms/VectorDistribute.cpp
M mlir/lib/Dialect/X86Vector/Transforms/LegalizeForLLVMExport.cpp
M mlir/lib/Dialect/XeGPU/Transforms/XeGPUWgToSgDistribute.cpp
M mlir/lib/Dialect/XeGPU/Utils/XeGPUUtils.cpp
M mlir/lib/IR/AsmPrinter.cpp
M mlir/lib/IR/SymbolTable.cpp
M mlir/lib/Target/LLVMIR/ConvertFromLLVMIR.cpp
M mlir/lib/Target/LLVMIR/ConvertToLLVMIR.cpp
M mlir/lib/Target/LLVMIR/ModuleTranslation.cpp
M mlir/lib/Target/SPIRV/Deserialization/Deserializer.cpp
M mlir/lib/Target/SPIRV/SPIRVBinaryUtils.cpp
M mlir/lib/Target/SPIRV/Serialization/Serializer.cpp
M mlir/lib/Transforms/Utils/CFGToSCF.cpp
M mlir/python/mlir/dialects/transform/__init__.py
M mlir/test/Conversion/AMDGPUToROCDL/load_lds.mlir
A mlir/test/Conversion/AMDGPUToROCDL/packed-ext.mlir
A mlir/test/Conversion/AMDGPUToROCDL/packed-trunc.mlir
M mlir/test/Conversion/ConvertToSPIRV/func-signature-vector-unroll.mlir
M mlir/test/Conversion/FuncToSPIRV/types-to-spirv.mlir
M mlir/test/Conversion/MathToSPIRV/math-to-gl-spirv.mlir
M mlir/test/Conversion/MathToSPIRV/math-to-opencl-spirv.mlir
M mlir/test/Dialect/AMDGPU/ops.mlir
M mlir/test/Dialect/Bufferization/side-effects.mlir
M mlir/test/Dialect/Linalg/fusion-elementwise-ops.mlir
M mlir/test/Dialect/Linalg/simplify-pack-unpack.mlir
M mlir/test/Dialect/Linalg/transform-winograd-conv2d.mlir
M mlir/test/Dialect/OpenACC/canonicalize.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/SPIRV/IR/arithmetic-ops.mlir
M mlir/test/Dialect/SPIRV/IR/atomic-ops.mlir
M mlir/test/Dialect/SPIRV/IR/cast-ops.mlir
M mlir/test/Dialect/SPIRV/IR/composite-ops.mlir
M mlir/test/Dialect/SPIRV/IR/gl-ops.mlir
M mlir/test/Dialect/SPIRV/IR/image-ops.mlir
M mlir/test/Dialect/SPIRV/IR/logical-ops.mlir
M mlir/test/Dialect/SPIRV/IR/memory-ops.mlir
M mlir/test/Dialect/SPIRV/IR/non-uniform-ops.mlir
M mlir/test/Dialect/SPIRV/IR/types.mlir
M mlir/test/Dialect/SPIRV/Transforms/vce-deduction.mlir
M mlir/test/Dialect/SparseTensor/minipipeline_vector.mlir
M mlir/test/Dialect/SparseTensor/sparse_vector.mlir
M mlir/test/Dialect/SparseTensor/sparse_vector_chain.mlir
M mlir/test/Dialect/SparseTensor/vectorize_reduction.mlir
M mlir/test/Dialect/Tensor/canonicalize.mlir
M mlir/test/Dialect/Tosa/invalid.mlir
M mlir/test/Dialect/Transform/test-pass-application.mlir
M mlir/test/Dialect/Vector/canonicalize.mlir
A mlir/test/Dialect/Vector/side-effects.mlir
M mlir/test/Dialect/Vector/vector-warp-distribute.mlir
M mlir/test/Dialect/XeGPU/xegpu-wg-to-sg-rr.mlir
M mlir/test/Dialect/XeGPU/xegpu-wg-to-sg.mlir
M mlir/test/IR/test-side-effects.mlir
M mlir/test/Integration/Dialect/Linalg/CPU/test-padtensor.mlir
M mlir/test/Target/LLVMIR/amx.mlir
M mlir/test/Target/SPIRV/cast-ops.mlir
M mlir/test/Target/SPIRV/gl-ops.mlir
M mlir/test/Target/SPIRV/image-ops.mlir
M mlir/test/Target/SPIRV/logical-ops.mlir
M mlir/test/lib/Dialect/Linalg/TestLinalgTransforms.cpp
M mlir/test/lib/IR/TestSideEffects.cpp
M mlir/test/python/dialects/transform.py
M mlir/unittests/Dialect/Utils/CMakeLists.txt
A mlir/unittests/Dialect/Utils/ReshapeOpsUtilsTest.cpp
M mlir/utils/generate-test-checks.py
M offload/liboffload/API/Common.td
M offload/liboffload/API/Kernel.td
M offload/liboffload/src/OffloadImpl.cpp
M offload/libomptarget/PluginManager.cpp
M offload/plugins-nextgen/amdgpu/src/rtl.cpp
M offload/plugins-nextgen/common/include/PluginInterface.h
M offload/plugins-nextgen/common/src/PluginInterface.cpp
M offload/plugins-nextgen/cuda/src/rtl.cpp
M offload/plugins-nextgen/host/src/rtl.cpp
M offload/test/mapping/declare_mapper_nested_default_mappers_array.cpp
M offload/test/offloading/gpupgo/pgo_atomic_teams.c
M offload/test/offloading/gpupgo/pgo_atomic_threads.c
M offload/unittests/OffloadAPI/kernel/olLaunchKernel.cpp
M openmp/runtime/src/include/omp_lib.F90.var
M openmp/runtime/src/include/ompx.h.var
A openmp/runtime/test/worksharing/for/omp_for_private_reduction.cpp
M openmp/tools/archer/ompt-tsan.cpp
M polly/lib/Support/RegisterPasses.cpp
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
M utils/bazel/llvm-project-overlay/libc/test/UnitTest/BUILD.bazel
M utils/bazel/llvm-project-overlay/libc/test/libc_test_rules.bzl
M utils/bazel/llvm-project-overlay/libc/test/src/stdio/BUILD.bazel
M utils/bazel/llvm-project-overlay/libc/test/src/stdlib/BUILD.bazel
M utils/bazel/llvm-project-overlay/llvm/BUILD.bazel
M utils/bazel/llvm-project-overlay/llvm/include/llvm/Config/llvm-config.h
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
M utils/bazel/llvm-project-overlay/mlir/tblgen.bzl
M utils/bazel/llvm_configs/llvm-config.h.cmake
Log Message:
-----------
Merge branch 'main' into users/el-ev/populate-simplify-demanded-bits
Compare: https://github.com/llvm/llvm-project/compare/b247c4707de9...e17d8d0fafa7
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