[all-commits] [llvm/llvm-project] c2cb49: [mlir][remarks] Add support for Attributes in Rema...
Matthias Springer via All-commits
all-commits at lists.llvm.org
Sun Dec 7 15:20:08 PST 2025
Branch: refs/heads/users/arichardson/spr/main.tablegen-slightly-improve-error-location-for-a-fatal-error
Home: https://github.com/llvm/llvm-project
Commit: c2cb493824251432184cd9dfafb09fcfbcce6d28
https://github.com/llvm/llvm-project/commit/c2cb493824251432184cd9dfafb09fcfbcce6d28
Author: Razvan Lupusoru <razvan.lupusoru at gmail.com>
Date: 2025-12-05 (Fri, 05 Dec 2025)
Changed paths:
M mlir/include/mlir/IR/Remarks.h
M mlir/lib/IR/Remarks.cpp
M mlir/unittests/IR/RemarkTest.cpp
Log Message:
-----------
[mlir][remarks] Add support for Attributes in Remark Args (#170882)
Extend Remark::Arg to optionally store the original Attribute when
constructed from one. This allows custom remark streamers to access the
underlying attribute for type-specific handling, rather than being
limited to the string representation.
For example, a streamer processing an ArrayAttr argument can iterate
over its elements, or a streamer can check the specific attribute type
to apply custom formatting.
Changes:
- Add std::optional<Attribute> member to Remark::Arg
- Update Arg(StringRef, Attribute) constructor to store the attribute
- Add hasAttribute() and getAttribute() accessors
- Add unit test for Arg with ArrayAttr
Commit: 85e7860319844308372ef7eea22ba88295989f5f
https://github.com/llvm/llvm-project/commit/85e7860319844308372ef7eea22ba88295989f5f
Author: nvptm <pmathew at nvidia.com>
Date: 2025-12-05 (Fri, 05 Dec 2025)
Changed paths:
M mlir/include/mlir/Dialect/OpenACC/OpenACCUtils.h
M mlir/lib/Dialect/OpenACC/Transforms/ACCImplicitData.cpp
M mlir/lib/Dialect/OpenACC/Utils/OpenACCUtils.cpp
M mlir/unittests/Dialect/OpenACC/OpenACCUtilsTest.cpp
Log Message:
-----------
[mlir][acc] Make getDominatingDataClauses an OpenACC utility (#170549)
Moving getDominatingDataClauses to OpenACCUtils allows reuse.
Commit: 35c664d7ea25fd95e67b88c4a2d2f336690f1286
https://github.com/llvm/llvm-project/commit/35c664d7ea25fd95e67b88c4a2d2f336690f1286
Author: jimingham <jingham at apple.com>
Date: 2025-12-05 (Fri, 05 Dec 2025)
Changed paths:
M lldb/source/Commands/CommandObjectBreakpoint.cpp
Log Message:
-----------
Move checking m_dummy_target to after raw-plus-option parsing. (#170888)
CommandObjectBreakpointAddPattern is a raw command. I was adjusting the
patch for changes to handle the dummy target changes done while the
patch was in review, and I copied the lines to the beginning of the
DoExecute, but in the case of raw commands, you have to do the option
parsing by hand, and this was before the parsing was done so the state
wasn't determined yet.
Commit: 4bc783be2dab2b0b2b3010158891e44a2b4ee991
https://github.com/llvm/llvm-project/commit/4bc783be2dab2b0b2b3010158891e44a2b4ee991
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2025-12-05 (Fri, 05 Dec 2025)
Changed paths:
M compiler-rt/test/asan/TestCases/Posix/deep_call_stack.cpp
Log Message:
-----------
[ASan] Disable test that sets call stack on Darwin (#170786)
This test fails with the internal shell as we implement ulimit with a
python wrapper. This python wrapper fails on recent versions of MacOS to
set the stack size limit lower, or even to the current values. More
discussion is in https://github.com/python/cpython/issues/78783 towards
the bottom (it seems like a new issue should be opened).
It does not seem like we lose significant test coverage by disabling
this on MacOS as the test running on Linux should catch any major
regressions. We can also simply reenable once the issue is fixed
(although writing a simple c program with calls setrlimit directly also
fails in the smae manner).
Commit: b360a782ca5da938d5e4f7c791508932a0bfc328
https://github.com/llvm/llvm-project/commit/b360a782ca5da938d5e4f7c791508932a0bfc328
Author: Akash Banerjee <akash.banerjee at amd.com>
Date: 2025-12-05 (Fri, 05 Dec 2025)
Changed paths:
M flang/lib/Lower/OpenMP/ClauseProcessor.cpp
M flang/lib/Lower/OpenMP/ClauseProcessor.h
M flang/lib/Lower/OpenMP/OpenMP.cpp
M flang/test/Integration/OpenMP/map-types-and-sizes.f90
M flang/test/Lower/OpenMP/target.f90
M mlir/include/mlir/Dialect/OpenMP/OpenMPEnums.td
M mlir/lib/Dialect/OpenMP/IR/OpenMPDialect.cpp
M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
M mlir/test/Target/LLVMIR/omptarget-llvm.mlir
M mlir/test/Target/LLVMIR/openmp-todo.mlir
A offload/test/offloading/fortran/target-is-device-ptr.f90
Log Message:
-----------
Reland "[Flang][OpenMP] Add lowering support for is_device_ptr clause (#169331)" (#170851)
Add support for OpenMP is_device_ptr clause for target directives.
[MLIR][OpenMP] Add OpenMPToLLVMIRTranslation support for is_device_ptr
#169367 This PR adds support for the OpenMP is_device_ptr clause in the
MLIR to LLVM IR translation for target regions. The is_device_ptr clause
allows device pointers (allocated via OpenMP runtime APIs) to be used
directly in target regions without implicit mapping.
Commit: 82f7d3c7660c9edb871858e066a78b504a74404b
https://github.com/llvm/llvm-project/commit/82f7d3c7660c9edb871858e066a78b504a74404b
Author: Peter Rong <peterrong96 at gmail.com>
Date: 2025-12-05 (Fri, 05 Dec 2025)
Changed paths:
M llvm/include/llvm/IR/Module.h
M llvm/tools/llvm-ir2vec/llvm-ir2vec.cpp
M llvm/unittests/IR/ModuleTest.cpp
Log Message:
-----------
[RFC] [IR] Modules can make filtered range to iterate function definitions only (#167972)
We often wish to iterate over all function definitions in a module for
transformations.
Such API doesn't exists yet, so what people normally used is to iterate
over all functions and skip the declarations:
```cpp
for (auto& F: M) {
if (F.isDeclaration()) continue;
}
```
A regex search of the following pattern shows 100+ hits inside llvm, let
along other patterns, e.g. collect all definitions in a module into a
worklist.
```
for \(.*F.*\).*\n.*if \(F.isDeclaration\(\)\).*\n.*continue;
```
This pattern is verbose and hard to review in a long loop.
As an alternative, this patch provides a new API that iterates over
definitions only.
Tests:
1. Added unit test
2. Touching @svkeerthy 's tool (also to show the cleanness of the new
API).
Note: `function_definitions` seems a bit long, I'm open to suggestions
to other names.
Commit: 26f511626611c2b4ae1410b736158ea82c57c8ce
https://github.com/llvm/llvm-project/commit/26f511626611c2b4ae1410b736158ea82c57c8ce
Author: David Green <david.green at arm.com>
Date: 2025-12-05 (Fri, 05 Dec 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64.h
A llvm/lib/Target/AArch64/AArch64RedundantCondBranchPass.cpp
M llvm/lib/Target/AArch64/AArch64TargetMachine.cpp
M llvm/lib/Target/AArch64/CMakeLists.txt
M llvm/test/CodeGen/AArch64/O3-pipeline.ll
M llvm/test/CodeGen/AArch64/arm64-rev.ll
M llvm/test/CodeGen/AArch64/arm64-shrink-wrapping.ll
M llvm/test/CodeGen/AArch64/block-placement-optimize-branches.ll
M llvm/test/CodeGen/AArch64/cbz_wzr.mir
M llvm/test/CodeGen/AArch64/pr164181.ll
M llvm/test/CodeGen/AArch64/pr166870.ll
M llvm/test/CodeGen/AArch64/tbz-tbnz.ll
M llvm/test/tools/UpdateTestChecks/update_llc_test_checks/Inputs/aarch64_generated_funcs.ll.generated.expected
M llvm/test/tools/UpdateTestChecks/update_llc_test_checks/Inputs/aarch64_generated_funcs.ll.nogenerated.expected
Log Message:
-----------
[AArch64] Optimize CBZ wzr and friends. (#161508)
In certain situations, especially with zero phi operands propagated after tail
duplications, we can end up with CBZ/CBNZ/TBZ/TBNZ with a zero register. It
can can be introduced late in the pipeline.
This patch adds a basic pass to fold them away to either a direct branch or
removing the instruction entirely. It runs quite late n the pipeline, so doesnt
fit into any of the existing passes. It only needs to look at the terminators
to each BB, so the new pass should have a limited in compile-time impact.
Commit: 74f49a240edff4570189b139dc19a22b86ce54b7
https://github.com/llvm/llvm-project/commit/74f49a240edff4570189b139dc19a22b86ce54b7
Author: Ebin Jose <ebin371 at gmail.com>
Date: 2025-12-05 (Fri, 05 Dec 2025)
Changed paths:
M clang/lib/CodeGen/CGBuiltin.cpp
M clang/test/CodeGen/builtins.c
Log Message:
-----------
[clang codegen] Fix __builtin_bswapg with bool operand (#169285)
Prevents assertion in CGBuiltin for i1 - returns identity. Created test
file for the same.
Fixes #168690.
Commit: fb6513130de7578c847aaaf6c278809b6c2476c3
https://github.com/llvm/llvm-project/commit/fb6513130de7578c847aaaf6c278809b6c2476c3
Author: happyCoder92 <wiktorg at google.com>
Date: 2025-12-05 (Fri, 05 Dec 2025)
Changed paths:
M compiler-rt/include/sanitizer/asan_interface.h
M compiler-rt/lib/asan/asan_fake_stack.cpp
M compiler-rt/lib/asan/asan_interface.inc
M compiler-rt/lib/asan/asan_thread.cpp
M compiler-rt/lib/asan/asan_thread.h
M compiler-rt/lib/asan_abi/asan_abi.cpp
M compiler-rt/lib/asan_abi/asan_abi.h
M compiler-rt/lib/asan_abi/asan_abi_shim.cpp
A compiler-rt/test/asan/TestCases/suppress_fake_stack.cpp
A compiler-rt/test/asan/TestCases/suppress_fake_stack_force_disabled.cpp
Log Message:
-----------
Add API to temporalily suppress usage of ASAN's fake stack (#160135)
Intended use-case is for threads that use (or switch to) stack with
special properties e.g. backed by MADV_DONTDUMP memory.
---------
Co-authored-by: Vitaly Buka <vitalybuka at google.com>
Commit: a5c751e3253f09567cef180edee60cc19cc5e366
https://github.com/llvm/llvm-project/commit/a5c751e3253f09567cef180edee60cc19cc5e366
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2025-12-05 (Fri, 05 Dec 2025)
Changed paths:
M llvm/utils/gn/secondary/llvm/lib/Target/AArch64/BUILD.gn
Log Message:
-----------
[gn build] Port 26f511626611
Commit: a5b02e1fbdaccd366dc0b36e64af06c8af7be040
https://github.com/llvm/llvm-project/commit/a5b02e1fbdaccd366dc0b36e64af06c8af7be040
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-12-05 (Fri, 05 Dec 2025)
Changed paths:
M llvm/test/CodeGen/X86/merge-consecutive-loads-128.ll
Log Message:
-----------
[X86] Add EltsFromConsecutiveLoads test for infinite loop if we match reverse(vzload(ptr)) patterns (#170889)
This was fixed by #170852 - previously we're get stuck in a loop:
shuffle(movq(p),undef,1,0) -> bulid_vector(0, p[0]) -> shuffle(movq(p),1,0) .....
Commit: 190b8d0b4f19e1c3d68c5d153ec7be71a9969192
https://github.com/llvm/llvm-project/commit/190b8d0b4f19e1c3d68c5d153ec7be71a9969192
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2025-12-05 (Fri, 05 Dec 2025)
Changed paths:
M clang/lib/Driver/ToolChains/Darwin.cpp
A clang/test/Driver/Inputs/basic_darwin_toolchain/usr/lib/libc++.dylib
A clang/test/Driver/Inputs/basic_darwin_toolchain/usr/lib/libc++experimental.a
A clang/test/Driver/Inputs/basic_darwin_toolchain_static/usr/bin/.keep
A clang/test/Driver/Inputs/basic_darwin_toolchain_static/usr/include/c++/v1/.keep
A clang/test/Driver/Inputs/basic_darwin_toolchain_static/usr/lib/libc++.a
A clang/test/Driver/Inputs/basic_darwin_toolchain_static/usr/lib/libc++experimental.a
M clang/test/Driver/darwin-header-search-libcxx.cpp
A clang/test/Driver/darwin-link-libcxx.cpp
M clang/test/Driver/experimental-library-flag.cpp
M compiler-rt/cmake/config-ix.cmake
Log Message:
-----------
[clang][Darwin] Prefer the toolchain-provided libc++.dylib if there is one (#170303)
When libc++ is bootstrapped with clang, the resulting clang uses the just-built libc++
headers from <install>/bin/../include/c++/v1. However, before this patch, clang would
still use the system-provided libc++.dylib (usually in the Apple SDK) because it would
fail to add the corresponding linker flag to find the just-built libc++. After this
patch, Clang will instead link against the toolchain provided `libc++.dylib` in
`<install>/lib` if it exists, which will result in programs being linked against
corresponding libc++ headers and dylib.
Fixes #77653
rdar://107060541
Commit: 67bd96661fa06248583b74989c713162e85998fd
https://github.com/llvm/llvm-project/commit/67bd96661fa06248583b74989c713162e85998fd
Author: Erich Keane <ekeane at nvidia.com>
Date: 2025-12-05 (Fri, 05 Dec 2025)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenDeclOpenACC.cpp
M clang/lib/CIR/CodeGen/CIRGenOpenACCClause.cpp
M clang/lib/CIR/CodeGen/CIRGenOpenACCHelpers.h
A clang/test/CIR/CodeGenOpenACC/routine-device_type.cpp
Log Message:
-----------
[OpenACC][CIR] Implement 'device_type' lowering for Routine (#170893)
The 'device_type' clause modifies how the clauses that are legal after
it (seq, worker, vector, gang, bind) work. Previous patches were aware
of how that was going to happen, thanks to experience with doing the
same work on other constructs/clauses, so this is mostly just a repeat
of those.
Tests for the first 4 and interactions with them are included, but
'bind' is not yet implemented, so its device_type tests will be added
when it is lowered.
Commit: 2d98a366b79e9cc657a3cf0ee3203f046eab457a
https://github.com/llvm/llvm-project/commit/2d98a366b79e9cc657a3cf0ee3203f046eab457a
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-12-05 (Fri, 05 Dec 2025)
Changed paths:
M llvm/lib/Transforms/Utils/LoopPeel.cpp
Log Message:
-----------
[LoopPeel] Fix typo Derefencebale -> Dereferenceable. NFC (#170791)
Co-authored-by: Nikita Popov <github at npopov.com>
Commit: 665bc49c138a48075c54fe377d49481ad65f1135
https://github.com/llvm/llvm-project/commit/665bc49c138a48075c54fe377d49481ad65f1135
Author: Jin Huang <jinhuang1102 at gmail.com>
Date: 2025-12-05 (Fri, 05 Dec 2025)
Changed paths:
M llvm/utils/profcheck-xfail.txt
Log Message:
-----------
[profcheck] Remove test cases fixed in #168161 from xfail list. (#170787)
The expected failed test cases
```
Transforms/ExpandVariadics/expand-va-intrinsic-split-linkage.ll
Transforms/ExpandVariadics/expand-va-intrinsic-split-simple.ll
Transforms/ExpandVariadics/intrinsics.ll
```
have been fixed by https://github.com/llvm/llvm-project/pull/168161.
Co-authored-by: Jin Huang <jingold at google.com>
Commit: 3de977cdde85847b89f443ad13a0d591e87e8871
https://github.com/llvm/llvm-project/commit/3de977cdde85847b89f443ad13a0d591e87e8871
Author: Amr Hesham <amr96 at programmer.net>
Date: 2025-12-05 (Fri, 05 Dec 2025)
Changed paths:
M clang/include/clang/CIR/Dialect/IR/CIROps.td
M clang/test/CIR/IR/try-catch.cir
Log Message:
-----------
[CIR] Add structured ResumeOp (#170042)
Add SCF Resume op to be used before the CFG flattening pass
Issue https://github.com/llvm/llvm-project/issues/154992
Commit: db4e6e6911b0cb3b26c377859beaf3a9d5c162cb
https://github.com/llvm/llvm-project/commit/db4e6e6911b0cb3b26c377859beaf3a9d5c162cb
Author: Vijay Kandiah <vkandiah at nvidia.com>
Date: 2025-12-05 (Fri, 05 Dec 2025)
Changed paths:
M mlir/test/Examples/NVGPU/lit.local.cfg
Log Message:
-----------
[NVGPU] Disable nvdsl lit tests if python bindings not enabled (#170898)
A recent change https://github.com/llvm/llvm-project/pull/167321 enabled
nvdsl examples to be run by default. These examples require MLIR python
bindings to be enabled, and this PR makes sure they're skipped if
`config.enable_bindings_python` is not enabled.
Commit: 11056c3fc35ed6fa04b7127db289cf42fd7e0bb5
https://github.com/llvm/llvm-project/commit/11056c3fc35ed6fa04b7127db289cf42fd7e0bb5
Author: Martin Storsjö <martin at martin.st>
Date: 2025-12-05 (Fri, 05 Dec 2025)
Changed paths:
M llvm/test/MC/AArch64/seh-large-func.s
M llvm/test/MC/AArch64/seh-optimize.s
M llvm/test/MC/AArch64/seh-packed-unwind.s
Log Message:
-----------
[AArch64] [test] Make unwind info tests actually use the right instructions
This makes them match the expected decoding of the unwind info
opcodes, avoiding mismatch indications from "dumpbin -unwindinfo".
This is a follow up to 458035027c80e984bf5862140aed20d5e50dd22a;
these cases were missed in that commit.
Commit: 35203a6a86c79b75b94a5f48b38ab75e90b3f40a
https://github.com/llvm/llvm-project/commit/35203a6a86c79b75b94a5f48b38ab75e90b3f40a
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2025-12-05 (Fri, 05 Dec 2025)
Changed paths:
M compiler-rt/lib/asan_abi/asan_abi.h
M compiler-rt/lib/asan_abi/asan_abi_shim.cpp
Log Message:
-----------
[ASan] Do not return from void functions in asan_abi_shim.cpp (#170897)
This was causing compilation failures on MacOS.
Commit: 94984d5cdbceafa786e26a9dc1f70167e574d945
https://github.com/llvm/llvm-project/commit/94984d5cdbceafa786e26a9dc1f70167e574d945
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2025-12-05 (Fri, 05 Dec 2025)
Changed paths:
M compiler-rt/test/lit.common.cfg.py
Log Message:
-----------
Reapply "[compiler-rt] Default to Lit's Internal Shell (#168232)"
This reverts commit c90fb56b41cfaaee448700f6b068c830d8d0b5bd.
The failures identified in the revert commit have noe been fixed:
1. 4bc783be2dab2b0b2b3010158891e44a2b4ee991
2. 126462035a1eb7adeb97f6beac48b6bddac65d09
3. d7307f458cd3522470859ce0cee8d47d37a70670
Commit: 97c4f367b81022ce8bb7cf21b0682842c59b5d59
https://github.com/llvm/llvm-project/commit/97c4f367b81022ce8bb7cf21b0682842c59b5d59
Author: Maksim Panchenko <maks at fb.com>
Date: 2025-12-05 (Fri, 05 Dec 2025)
Changed paths:
M bolt/include/bolt/Core/BinaryContext.h
M bolt/lib/Core/BinaryContext.cpp
Log Message:
-----------
[BOLT] Fix comments for interprocedural branches. NFC (#170745)
Commit: 5e4974fbd330733ceaabba988b632cd8906e892a
https://github.com/llvm/llvm-project/commit/5e4974fbd330733ceaabba988b632cd8906e892a
Author: google-yfyang <yfyang at google.com>
Date: 2025-12-05 (Fri, 05 Dec 2025)
Changed paths:
M clang-tools-extra/test/clang-tidy/infrastructure/empty-database.cpp
M clang-tools-extra/test/clang-tidy/infrastructure/invalid-database.cpp
Log Message:
-----------
[clang-tidy][NFC] Add checks to tests that have no checks specified. (#170895)
#157306 removes some default checks and this breaks a few tests where no
checks were explicitly specified.
Commit: ad1edc9cbcc9ac4e86931da3e676a7b7caef1be3
https://github.com/llvm/llvm-project/commit/ad1edc9cbcc9ac4e86931da3e676a7b7caef1be3
Author: Krzysztof Drewniak <Krzysztof.Drewniak at amd.com>
Date: 2025-12-05 (Fri, 05 Dec 2025)
Changed paths:
M mlir/lib/Analysis/DataFlow/IntegerRangeAnalysis.cpp
M mlir/test/Interfaces/InferIntRangeInterface/infer-int-range-test-ops.mlir
Log Message:
-----------
[mlir][IntegerRangeAnalysis] Handle multi-dimensional loops (#170765)
Since LoopLikeInterface has (for some time) been extended to handle
multiple induction variables (and thus lower and upper bounds), handle
those bounds one at a time.
Commit: f57f338313c19ff94959203ea98e96e4ec895c51
https://github.com/llvm/llvm-project/commit/f57f338313c19ff94959203ea98e96e4ec895c51
Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
Date: 2025-12-05 (Fri, 05 Dec 2025)
Changed paths:
M flang/include/flang/Lower/CUDA.h
M flang/include/flang/Optimizer/Dialect/CUF/CUFOps.td
M flang/lib/Lower/Allocatable.cpp
M flang/lib/Lower/CUDA.cpp
M flang/lib/Optimizer/Transforms/CUDA/CUFAllocationConversion.cpp
M flang/test/Fir/CUDA/cuda-allocate.fir
M flang/test/Lower/CUDA/cuda-allocatable.cuf
Log Message:
-----------
[flang][cuda] Add double descriptor information in allocate/deallocate operations (#170901)
After https://github.com/llvm/llvm-project/pull/169740, the allocate and
deallocate cuf operation can be converted later. Update the way to
recognize double descriptor case by adding this information directly on
the operation itself.
Commit: c5bdc21ff7996d2db8b133ff36f4de0ca569f98d
https://github.com/llvm/llvm-project/commit/c5bdc21ff7996d2db8b133ff36f4de0ca569f98d
Author: Rahul Joshi <rjoshi at nvidia.com>
Date: 2025-12-05 (Fri, 05 Dec 2025)
Changed paths:
M llvm/include/llvm/IR/DebugLoc.h
M llvm/lib/IR/DebugLoc.cpp
Log Message:
-----------
[NFC][LLVM] Minor code cleanup in DebugLoc (#170757)
Remove indentation of code in llvm namespace in header file. Remove {}
around single statement if in .cpp file.
Commit: 6b51e26d39fa6ed5cf4a204921701e8168b39099
https://github.com/llvm/llvm-project/commit/6b51e26d39fa6ed5cf4a204921701e8168b39099
Author: Alex Langford <alangford at apple.com>
Date: 2025-12-05 (Fri, 05 Dec 2025)
Changed paths:
M lldb/include/lldb/Host/FileAction.h
M lldb/source/Host/common/FileAction.cpp
M lldb/source/Host/macosx/objcxx/Host.mm
M lldb/source/Host/posix/ProcessLauncherPosixFork.cpp
M lldb/source/Target/Target.cpp
Log Message:
-----------
[lldb][NFCI] Remove FileAction::GetPath (#170764)
This method puts strings into the ConstString pool and vends them as
llvm::StringRefs. Most of the uses only require a `std::string` or a
`const char *`. This can be achieved without wasting memory.
Commit: 5dfd9c4f841fb183580b02b5d252e630eeda3c5e
https://github.com/llvm/llvm-project/commit/5dfd9c4f841fb183580b02b5d252e630eeda3c5e
Author: Erick Ochoa Lopez <erick.ochoalopez at amd.com>
Date: 2025-12-05 (Fri, 05 Dec 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
M mlir/test/Conversion/AMDGPUToROCDL/gfx1250.mlir
A mlir/test/Dialect/AMDGPU/amdgpu-make-dma-descriptor-fold.mlir
M mlir/test/Dialect/AMDGPU/invalid.mlir
M mlir/test/Dialect/AMDGPU/ops.mlir
Log Message:
-----------
[mlir][amdgpu] Add lowering for make_dma_descriptor (#169955)
* Adds initial lowering for make_dma_descriptor supporting tensors of
rank 2.
* Adds folders for make_dma_descriptor allowing statically known
operands to be folded into attributes.
* Add AllElementTypesMatch<["lds", "global"]> to make_dma_base.
* Rename pad to pad_amount
* Rename pad_every to pad_interval
Commit: 29fa151a077221ee8a28fa49a746a91893741b2b
https://github.com/llvm/llvm-project/commit/29fa151a077221ee8a28fa49a746a91893741b2b
Author: Kazu Hirata <kazu at google.com>
Date: 2025-12-05 (Fri, 05 Dec 2025)
Changed paths:
M mlir/lib/Conversion/AMDGPUToROCDL/AMDGPUToROCDL.cpp
Log Message:
-----------
[mlir] Fix a warning
This patch fixes:
mlir/lib/Conversion/AMDGPUToROCDL/AMDGPUToROCDL.cpp:2666:10: error:
unused variable 'v4i32' [-Werror,-Wunused-variable]
Commit: bb17dfa7d149be7a051fe9687af4093d968fb52b
https://github.com/llvm/llvm-project/commit/bb17dfa7d149be7a051fe9687af4093d968fb52b
Author: Quinn Dawkins <quinn.dawkins at gmail.com>
Date: 2025-12-05 (Fri, 05 Dec 2025)
Changed paths:
M mlir/include/mlir/Transforms/RegionUtils.h
M mlir/lib/Dialect/Bufferization/Transforms/EmptyTensorElimination.cpp
M mlir/lib/Transforms/Utils/RegionUtils.cpp
M mlir/test/Dialect/Bufferization/Transforms/one-shot-bufferize-empty-tensor-elimination.mlir
M mlir/test/Transforms/move-operation-deps.mlir
M mlir/test/lib/Transforms/TestTransformsOps.td
Log Message:
-----------
[mlir][bufferization] Enable moving dependent values in eliminate-empty-tensors (#169718)
Currently empty tensor elimination by constructing a SubsetExtractionOp
to match a SubsetInsertionOp at the end of a DPS chain will fail if any
operands required by the insertion op don't dominate the insertion point
for the extraction op.
This change improves the transformation by attempting to move all pure
producers of required operands to the insertion point of the extraction
op. In the process this improves a number of tests for empty tensor
elimination.
Commit: 5daad5bf45b3c7280f7b06979fb580f70e2c4fd0
https://github.com/llvm/llvm-project/commit/5daad5bf45b3c7280f7b06979fb580f70e2c4fd0
Author: Paul Kirth <paulkirth at google.com>
Date: 2025-12-05 (Fri, 05 Dec 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Basic/CodeGenOptions.def
M clang/include/clang/Options/Options.td
M clang/lib/CodeGen/CGCall.cpp
A clang/test/CodeGen/lifetime-call-temp.c
A clang/test/CodeGen/lifetime-invoke-c.c
A clang/test/CodeGenCXX/aggregate-lifetime-invoke.cpp
A clang/test/CodeGenCXX/amdgcn-call-with-aggarg.cc
M clang/test/CodeGenCXX/stack-reuse-miscompile.cpp
M clang/test/CodeGenCoroutines/pr59181.cpp
Log Message:
-----------
[clang] Limit lifetimes of temporaries to the full expression (#170517)
We have several issues describing suboptimal stack usage related to the
lifetimes of temporary objects, such as #68747, #43598, and #109204.
Previously, https://reviews.llvm.org/D74094 tried to address this. In
that review, a few issues were brought up, particularly a concern about
the lifetimes of the temporaries needing to be extended to end of the
full expression. While there are arguably more optimal lifetime bounds
we could enforce, for now we can conservatively make them extend to the
end of the full expression, and later refine the optimization to use
tighter bounds (or perhaps a better mechanism in the middle end?).
Fixes #68747
Co-authored-by: Nick Desaulniers <nick.desaulniers at gmail.com>
Co-authored-by: Erik Pilkington <erik.pilkington at gmail.com>
---------
Co-authored-by: Nick Desaulniers <nick.desaulniers at gmail.com>
Co-authored-by: Erik Pilkington <erik.pilkington at gmail.com>
Commit: acb97429762cfc980a20a9ecbadbf73e28319a86
https://github.com/llvm/llvm-project/commit/acb97429762cfc980a20a9ecbadbf73e28319a86
Author: Kazu Hirata <kazu at google.com>
Date: 2025-12-05 (Fri, 05 Dec 2025)
Changed paths:
M lldb/source/Commands/CommandObjectBreakpoint.cpp
Log Message:
-----------
[lldb] Fix a warning
This patch fixes:
lldb/source/Commands/CommandObjectBreakpoint.cpp:1266:21: error:
unused variable 'expr' [-Werror,-Wunused-variable]
Commit: 03c37160a1735c12e4acbac70a593ff3e68d5ad7
https://github.com/llvm/llvm-project/commit/03c37160a1735c12e4acbac70a593ff3e68d5ad7
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2025-12-05 (Fri, 05 Dec 2025)
Changed paths:
M flang/include/flang/Parser/parse-tree.h
M flang/lib/Semantics/canonicalize-do.cpp
M flang/lib/Semantics/check-omp-loop.cpp
M flang/test/Parser/OpenMP/atomic-label-do.f90
M flang/test/Parser/OpenMP/cross-label-do.f90
M flang/test/Semantics/OpenMP/loop-association.f90
Log Message:
-----------
[flang][OpenMP] Reject END DO on construct that crosses label-DO (#169714)
In a label-DO construct where two or more loops share the same
teminator, an OpenMP construct must enclose all the loops if an
end-directive is present. E.g.
```
do 100 i = 1,10
!$omp do
do 100 j = 1,10
100 continue
!$omp end do ! Error, but ok if this line is removed
```
Fixes https://github.com/llvm/llvm-project/issues/169536.
Commit: 7470d721c65d7924c5e1743ec73aa44fa858717c
https://github.com/llvm/llvm-project/commit/7470d721c65d7924c5e1743ec73aa44fa858717c
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-12-05 (Fri, 05 Dec 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64Subtarget.cpp
M llvm/lib/Target/AArch64/AArch64Subtarget.h
M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
M llvm/test/Transforms/LoopUnroll/AArch64/apple-unrolling.ll
Log Message:
-----------
[AArch64] Add isAppleMLike helper to check for M cores and aligned CPUs. (#170553)
Add a new isAppleMLike helper, that returns true if the core is part of
the Apple M core family or Apple A14 or later. Used to apply cost
decisions consistently to those groups of cores.
The function is now a single place to update when new cores are added.
It also makes sure we apply unrolling decisions for newer Apple cores to
Apple A17.
PR: https://github.com/llvm/llvm-project/pull/170553
Commit: 9dc9c1445df88f86f18e9ff6aefc25f4e983441e
https://github.com/llvm/llvm-project/commit/9dc9c1445df88f86f18e9ff6aefc25f4e983441e
Author: Krzysztof Drewniak <Krzysztof.Drewniak at amd.com>
Date: 2025-12-05 (Fri, 05 Dec 2025)
Changed paths:
M .github/CODEOWNERS
Log Message:
-----------
[NFC] Become CODEOWNER of AMDGPULowerBufferFatPointers (#167953)
Commit: 93d64a5c4d912e8898d1e7c7e5a95f6f44f7e983
https://github.com/llvm/llvm-project/commit/93d64a5c4d912e8898d1e7c7e5a95f6f44f7e983
Author: Alex Voicu <alexandru.voicu at amd.com>
Date: 2025-12-05 (Fri, 05 Dec 2025)
Changed paths:
M llvm/docs/SPIRVUsage.rst
M llvm/lib/Target/SPIRV/SPIRVCommandLine.cpp
M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
M llvm/lib/Target/SPIRV/SPIRVLegalizerInfo.cpp
M llvm/lib/Target/SPIRV/SPIRVModuleAnalysis.cpp
M llvm/lib/Target/SPIRV/SPIRVSymbolicOperands.td
A llvm/test/CodeGen/SPIRV/extensions/SPV_NV_shader_atomic_fp16_vector/atomicrmw_faddfsub_vec_float16.ll
A llvm/test/CodeGen/SPIRV/extensions/SPV_NV_shader_atomic_fp16_vector/atomicrmw_fminfmax_vec_float16.ll
Log Message:
-----------
[SPIRV] Add `<2 x half>` and `<4 x half>` atomics via `SPV_NV_shader_atomic_fp16_vector` (#170213)
This adds support for the `SPV_NV_shader_atomic_fp16_vector` extension,
and then uses it to enable lowering of atomic add, sub, min and max on 2
and 4 component vectors of FP16, which are rather common options in ML
workloads. Even though `bfloat16` also works in practice, we do not
enable it since it's not specified in the extension (which might need
updating / promoting to KHR at least). A `TODO` is also inserted in
`SPIRVModuleAnalysis.cpp' regarding the need to upgrade its ample usage
of `report_fatal_error`; I have a WiP patch for that, but it still needs
a bit of baking. Finally, a paired patch will be necessary in the
Translator, as it's not aware of the extension either - I'll update this
review to reference the PR once I create it.
Commit: ecf492761e5385b6d94c8c87c62d2dbf9c565add
https://github.com/llvm/llvm-project/commit/ecf492761e5385b6d94c8c87c62d2dbf9c565add
Author: Alex Langford <alangford at apple.com>
Date: 2025-12-05 (Fri, 05 Dec 2025)
Changed paths:
M lldb/source/Host/windows/ProcessLauncherWindows.cpp
Log Message:
-----------
[lldb] Fix Windows build after 6b51e26d39fa (#170917)
Commit: bad1a88963f35ec57d27be4450a9c7074ec095d7
https://github.com/llvm/llvm-project/commit/bad1a88963f35ec57d27be4450a9c7074ec095d7
Author: Kewen Meng <Kewen.Meng at amd.com>
Date: 2025-12-05 (Fri, 05 Dec 2025)
Changed paths:
M clang/test/Driver/darwin-link-libcxx.cpp
Log Message:
-----------
[clang] Temporarily disable Darwin test for linking against libc++ on non-darwin systems (#170912)
Disable the test added in #170303, which breaks bots that don't use ld
as their linker. This is a temporary and narrow disablement of the test
until we can make it more general again, to get the bots green.
Co-authored-by: Louis Dionne <ldionne.2 at gmail.com>
Commit: 22a2c27a0aa0d3aa5d4222f6e766646166450543
https://github.com/llvm/llvm-project/commit/22a2c27a0aa0d3aa5d4222f6e766646166450543
Author: Nicolai Hähnle <nicolai.haehnle at amd.com>
Date: 2025-12-05 (Fri, 05 Dec 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUPromoteAlloca.cpp
Log Message:
-----------
AMDGPU/PromoteAlloca: Simplify how deferred loads work (#170510)
The second pass of promotion to vector can be quite simple. Reflect that
simplicity in the code for better maintainability.
Commit: f558c30146e51d5ef72bf3d4b3f0e86ca19e4b99
https://github.com/llvm/llvm-project/commit/f558c30146e51d5ef72bf3d4b3f0e86ca19e4b99
Author: Nicolai Hähnle <nicolai.haehnle at amd.com>
Date: 2025-12-05 (Fri, 05 Dec 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUPromoteAlloca.cpp
M llvm/test/CodeGen/AMDGPU/promote-alloca-multidim.ll
M llvm/test/CodeGen/AMDGPU/promote-alloca-negative-index.ll
M llvm/test/CodeGen/AMDGPU/promote-alloca-vector-to-vector.ll
Log Message:
-----------
AMDGPU/PromoteAlloca: Always use i32 for indexing (#170511)
Create more canonical code that may even lead to slightly better
codegen.
Commit: 4c59219fc9901016506486e7943b30fdf269f286
https://github.com/llvm/llvm-project/commit/4c59219fc9901016506486e7943b30fdf269f286
Author: lntue <lntue at google.com>
Date: 2025-12-05 (Fri, 05 Dec 2025)
Changed paths:
M libc/cmake/modules/LLVMLibCCompileOptionRules.cmake
M libc/config/config.json
M libc/docs/configure.rst
M libc/include/llvm-libc-macros/fenv-macros.h
M libc/src/__support/CPP/bit.h
M libc/src/__support/FPUtil/CMakeLists.txt
M libc/src/__support/FPUtil/FEnvImpl.h
M libc/src/__support/FPUtil/x86_64/FEnvImpl.h
A libc/src/__support/FPUtil/x86_64/fenv_mxcsr_utils.h
A libc/src/__support/FPUtil/x86_64/fenv_x86_common.h
A libc/src/__support/FPUtil/x86_64/fenv_x87_only.h
A libc/src/__support/FPUtil/x86_64/fenv_x87_utils.h
M libc/src/__support/macros/properties/compiler.h
M libc/test/UnitTest/FEnvSafeTest.cpp
M libc/test/src/fenv/enabled_exceptions_test.cpp
M libc/test/src/fenv/feholdexcept_test.cpp
M libc/test/src/fenv/getenv_and_setenv_test.cpp
M libc/test/src/math/FModTest.h
M libc/test/src/math/smoke/FModTest.h
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
Log Message:
-----------
[libc][fenv] Refactor x86 fenv implementations to make it work for various fenv_t. (#165015)
Commit: b464d772e5a262565ec65dd125be3036e42d2b9d
https://github.com/llvm/llvm-project/commit/b464d772e5a262565ec65dd125be3036e42d2b9d
Author: Petr Penzin <ppenzin at oss.tenstorrent.com>
Date: 2025-12-05 (Fri, 05 Dec 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVSchedSiFive7.td
M llvm/lib/Target/RISCV/RISCVSchedTTAscalonD8.td
M llvm/lib/Target/RISCV/RISCVScheduleV.td
Log Message:
-----------
[RISCV] LMUL lists for indexed and strided loads (#169756)
Create additional lists representing valid LMULs for strided and indexed
load of particular element sizes.
Commit: a1eff73a8ef24729ee1d0f0fd639fb79403c3686
https://github.com/llvm/llvm-project/commit/a1eff73a8ef24729ee1d0f0fd639fb79403c3686
Author: Sterling-Augustine <saugustine at google.com>
Date: 2025-12-05 (Fri, 05 Dec 2025)
Changed paths:
M libc/src/string/string_length.h
Log Message:
-----------
Include inline_strlen.h on aarch64 only if the target has vector instrucions (#170892)
Commit: b78fd58d22c38b8b199760ebaa93dbd42509ab7e
https://github.com/llvm/llvm-project/commit/b78fd58d22c38b8b199760ebaa93dbd42509ab7e
Author: Tarun Prabhu <tarun at lanl.gov>
Date: 2025-12-05 (Fri, 05 Dec 2025)
Changed paths:
M flang/test/Semantics/OpenACC/acc-atomic-validity.f90
M flang/test/Semantics/OpenACC/acc-default-none-function.f90
M flang/test/Semantics/OpenACC/acc-error.f90
M flang/test/Semantics/OpenACC/acc-parallel.f90
M flang/test/Semantics/OpenACC/acc-reduction-validity.f90
M flang/test/Semantics/allocate14.f90
M flang/test/Semantics/bindings01.f90
M flang/test/Semantics/collectives05.f90
M flang/test/Semantics/data03.f90
M flang/test/Semantics/doconcurrent01.f90
M flang/test/Semantics/doconcurrent05.f90
M flang/test/Semantics/doconcurrent06.f90
M flang/test/Semantics/doconcurrent08.f90
M flang/test/Semantics/dosemantics05.f90
M flang/test/Semantics/dosemantics08.f90
M flang/test/Semantics/dosemantics09.f90
M flang/test/Semantics/dosemantics11.f90
M flang/test/Semantics/dosemantics12.f90
M flang/test/Semantics/etime.f90
M flang/test/Semantics/getcwd.f90
M flang/test/Semantics/getdefinition05.f90
M flang/test/Semantics/io11.f90
M flang/test/Semantics/kinds02.f90
Log Message:
-----------
[flang][NFC] Strip trailing whitespace from tests (11 of 14)
Only some fortran source files in flang/test/Semantics have been
modified. The remaining files will be cleaned up in subsequent commits.
Commit: d8e52c0360b718adccb731dbd8310c9340eee10f
https://github.com/llvm/llvm-project/commit/d8e52c0360b718adccb731dbd8310c9340eee10f
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-12-05 (Fri, 05 Dec 2025)
Changed paths:
M llvm/test/Transforms/LoopVectorize/vplan-printing.ll
Log Message:
-----------
[VPlan] Use strict whitespace checks for VPlan printing test.
Use --strict-whitespace for vplan-printing.ll to catch stray
whitespaces. The test updates show a few places where we currently emit
those.
Commit: de86696dba5ae5da02b3de7df5b8aaa8e1371893
https://github.com/llvm/llvm-project/commit/de86696dba5ae5da02b3de7df5b8aaa8e1371893
Author: Nicolai Hähnle <nicolai.haehnle at amd.com>
Date: 2025-12-05 (Fri, 05 Dec 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUPromoteAlloca.cpp
M llvm/test/CodeGen/AMDGPU/promote-alloca-multidim.ll
M llvm/test/CodeGen/AMDGPU/promote-alloca-negative-index.ll
M llvm/test/CodeGen/AMDGPU/promote-alloca-vector-to-vector.ll
Log Message:
-----------
Revert "AMDGPU/PromoteAlloca: Always use i32 for indexing (#170511)"
This reverts commit f558c30146e51d5ef72bf3d4b3f0e86ca19e4b99.
Failure on clang-hip-vega20: https://lab.llvm.org/buildbot/#/builders/123/builds/31779
Commit: 0e0ec4c348670864e18224dc99dd615c0d7e72f8
https://github.com/llvm/llvm-project/commit/0e0ec4c348670864e18224dc99dd615c0d7e72f8
Author: Nicolai Hähnle <nicolai.haehnle at amd.com>
Date: 2025-12-05 (Fri, 05 Dec 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUPromoteAlloca.cpp
Log Message:
-----------
Revert "AMDGPU/PromoteAlloca: Simplify how deferred loads work (#170510)"
This reverts commit 22a2c27a0aa0d3aa5d4222f6e766646166450543.
Failure on clang-hip-vega20: https://lab.llvm.org/buildbot/#/builders/123/builds/31779
Commit: 58c8f5768102751ce932b597563aaa4a3b7fa430
https://github.com/llvm/llvm-project/commit/58c8f5768102751ce932b597563aaa4a3b7fa430
Author: Eli Friedman <efriedma at qti.qualcomm.com>
Date: 2025-12-05 (Fri, 05 Dec 2025)
Changed paths:
M compiler-rt/CMakeLists.txt
Log Message:
-----------
[compiler-rt] Add CMake flag for AArch64 Linux with 39-bit VA. (#167028)
Sanitizers currently assume AArch64 Linux has 48-bit VA. Followup
patches will add checks for this flag to asan and hwasan.
Commit: 7982688b69c75ff40f34184438d3ef7e905ff006
https://github.com/llvm/llvm-project/commit/7982688b69c75ff40f34184438d3ef7e905ff006
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2025-12-05 (Fri, 05 Dec 2025)
Changed paths:
M compiler-rt/test/profile/Linux/instrprof-debug-info-correlate-debuginfod.c
Log Message:
-----------
[Profile] Fix debuginfod test with internal shell
The recent relanding of the internal shell broke one of the debuginfod
tests as it is not tested by any upstream buildbot due to the use of
curl. Rewriting the test to not use subshells is pretty simple.
Commit: a55221da6047dace6ec7f24967ce0113429d093f
https://github.com/llvm/llvm-project/commit/a55221da6047dace6ec7f24967ce0113429d093f
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2025-12-05 (Fri, 05 Dec 2025)
Changed paths:
M clang/lib/Driver/ToolChains/Darwin.cpp
R clang/test/Driver/Inputs/basic_darwin_toolchain/usr/lib/libc++.dylib
R clang/test/Driver/Inputs/basic_darwin_toolchain/usr/lib/libc++experimental.a
R clang/test/Driver/Inputs/basic_darwin_toolchain_static/usr/bin/.keep
R clang/test/Driver/Inputs/basic_darwin_toolchain_static/usr/include/c++/v1/.keep
R clang/test/Driver/Inputs/basic_darwin_toolchain_static/usr/lib/libc++.a
R clang/test/Driver/Inputs/basic_darwin_toolchain_static/usr/lib/libc++experimental.a
M clang/test/Driver/darwin-header-search-libcxx.cpp
R clang/test/Driver/darwin-link-libcxx.cpp
M clang/test/Driver/experimental-library-flag.cpp
M compiler-rt/cmake/config-ix.cmake
Log Message:
-----------
[clang] Revert changes to prefer the toolchain-provided libc++.dylib
This patch reverts the change that made clang prefer the toolchain
libc++.dylib when there is one (#170303), and the subsequent test
workaround we landed to fix bots (#170912).
We are seeing some failure on macOS LLDB bots that need to be
investigated, and that will require more time than I can spare
before the end of today.
This reverts commits bad1a88963 and 190b8d0b.
Commit: 7afeea414d57300399bf917eaba7efe1fd821bae
https://github.com/llvm/llvm-project/commit/7afeea414d57300399bf917eaba7efe1fd821bae
Author: Eli Friedman <efriedma at qti.qualcomm.com>
Date: 2025-12-05 (Fri, 05 Dec 2025)
Changed paths:
M llvm/test/CodeGen/AArch64/wineh-pac.ll
Log Message:
-----------
Autogenerate llvm/test/CodeGen/AArch64/wineh-pac.ll (#170925)
Using custom CHECK lines doesn't really help here.
Commit: 0cb237d69e16a8c5d234a5c5ab1b1ebcf6f94cd3
https://github.com/llvm/llvm-project/commit/0cb237d69e16a8c5d234a5c5ab1b1ebcf6f94cd3
Author: Hendrik Hübner <117831077+HendrikHuebner at users.noreply.github.com>
Date: 2025-12-05 (Fri, 05 Dec 2025)
Changed paths:
M clang/include/clang/CIR/Dialect/IR/CIROps.td
M clang/lib/CIR/CodeGen/CIRGenBuiltin.cpp
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
A clang/test/CIR/CodeGen/atomic-thread-fence.c
Log Message:
-----------
[CIR] Add AtomicFenceOp and signal/thread fence builtins and required helpers (#168346)
This PR adds the AtomicFenceOp and signal/thread fence builtins.
Commit: 27bf5fdcc69364f991756e978d184f2dbee04a19
https://github.com/llvm/llvm-project/commit/27bf5fdcc69364f991756e978d184f2dbee04a19
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-12-05 (Fri, 05 Dec 2025)
Changed paths:
M llvm/include/llvm/CodeGen/SelectionDAG.h
M llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
M llvm/lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
Log Message:
-----------
DAG: Add overload of getExternalSymbol using RTLIB::LibcallImpl (#170587)
Commit: 7ba71012ee89229b86ab12cd31f0e69744131555
https://github.com/llvm/llvm-project/commit/7ba71012ee89229b86ab12cd31f0e69744131555
Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
Date: 2025-12-05 (Fri, 05 Dec 2025)
Changed paths:
M flang/include/flang/Optimizer/Dialect/CUF/CUFOps.td
M flang/lib/Lower/Allocatable.cpp
M flang/lib/Optimizer/Transforms/CUDA/CUFAllocationConversion.cpp
M flang/test/Fir/CUDA/cuda-allocate.fir
M flang/test/Lower/CUDA/cuda-allocatable.cuf
Log Message:
-----------
[flang][cuda] Add pointer attribute to allocate/deallocate ops (#170937)
Similar for the double descriptor information added in
https://github.com/llvm/llvm-project/pull/170901, we need to carry over
the pointer information until the op can be converted. The correct
detection would fail if the op is converted late.
Commit: 2e2fe683af53884ce1f371dc8162db22a0ebbbe8
https://github.com/llvm/llvm-project/commit/2e2fe683af53884ce1f371dc8162db22a0ebbbe8
Author: Naveen Seth Hanig <naveen.hanig at outlook.com>
Date: 2025-12-05 (Fri, 05 Dec 2025)
Changed paths:
M clang/include/clang/DependencyScanning/DependencyScanningWorker.h
M clang/include/clang/Tooling/DependencyScanningTool.h
M clang/lib/DependencyScanning/DependencyScannerImpl.cpp
M clang/lib/DependencyScanning/DependencyScanningWorker.cpp
M clang/lib/Tooling/DependencyScanningTool.cpp
Log Message:
-----------
[clang][DependencyScanning] Use ArrayRef in function signatures over const std::vector& (NFC) (#170941)
This updates the dependency-scanning tooling to consistently use
`ArrayRef<std::string>` rather than `const std::vector<std::string>&` in
function signatures.
This is done to help break PR #169964 into smaller, more manageable
pieces.
Commit: 8d57635c59cbe535258dc3b7c69daf6b68b9e2a2
https://github.com/llvm/llvm-project/commit/8d57635c59cbe535258dc3b7c69daf6b68b9e2a2
Author: John Harrison <harjohn at google.com>
Date: 2025-12-05 (Fri, 05 Dec 2025)
Changed paths:
M lldb/tools/lldb-dap/DAP.cpp
M lldb/tools/lldb-dap/DAP.h
M lldb/tools/lldb-dap/DAPLog.cpp
M lldb/tools/lldb-dap/DAPLog.h
M lldb/tools/lldb-dap/DAPSessionManager.cpp
M lldb/tools/lldb-dap/EventHelper.cpp
M lldb/tools/lldb-dap/EventHelper.h
M lldb/tools/lldb-dap/Transport.cpp
M lldb/tools/lldb-dap/Transport.h
M lldb/tools/lldb-dap/tool/lldb-dap.cpp
M lldb/unittests/DAP/CMakeLists.txt
A lldb/unittests/DAP/DAPLogTest.cpp
M lldb/unittests/DAP/TestBase.cpp
M lldb/unittests/DAP/TestBase.h
Log Message:
-----------
[lldb-dap] Improving logging support and formatting. (#170731)
Adjusting logs in a few ways:
* The `DAP_LOG` and `DAP_LOG_ERROR` macros now include the file/line of
the log statement.
* Added support for creating a log with a prefix. This simplifies how we
create logs for the `lldb_dap::DAP` instance and `lldb_dap::Transport`
instance, allowing us to not have to pass the client name around as
much.
* Updated logging usage to take the `lldb_dap::Log` as a reference but
it now defaults to `llvm::raw_null_stream` if not configured. This
ensures more uniform access to the logger, even if its not written
anywhere.
The logs now look like:
```
1764896564.038788080 (stdio) --> {"command":"initialize","arguments":{...},"type":"request","seq":1}
1764896564.039064884 DAP.cpp:1007 (stdio) queued (command=initialize seq=1)
1764896564.039768934 (stdio) <-- {"body":{...},"command":"initialize","request_seq":1,"seq":1,"success":true,"type":"response"}
```
Commit: 113b2d7f0778cec0eb1b5d5813301ffb1ed67b59
https://github.com/llvm/llvm-project/commit/113b2d7f0778cec0eb1b5d5813301ffb1ed67b59
Author: Teresa Johnson <tejohnson at google.com>
Date: 2025-12-05 (Fri, 05 Dec 2025)
Changed paths:
M llvm/lib/Transforms/Instrumentation/MemProfUse.cpp
M llvm/test/Transforms/PGOProfile/memprof-dump-matched-alloc-site.ll
M llvm/test/Transforms/PGOProfile/memprof-dump-matched-call-sites.ll
Log Message:
-----------
[MemProf] Add remarks for matched allocs and calls (#170379)
The new remarks are somewhat equivalent to the -memprof-print-match-info
messages, however, are not deduplicated across the module so will be
generally more verbose.
Commit: 96c733e0dbc1d1426ec2ea23898e23ff9851fde0
https://github.com/llvm/llvm-project/commit/96c733e0dbc1d1426ec2ea23898e23ff9851fde0
Author: Med Ismail Bennani <ismail at bennani.ma>
Date: 2025-12-05 (Fri, 05 Dec 2025)
Changed paths:
M lldb/include/lldb/Target/StackID.h
M lldb/source/Core/CoreProperties.td
M lldb/source/Core/FormatEntity.cpp
M lldb/source/Plugins/Process/scripted/ScriptedFrame.cpp
M lldb/source/Plugins/Process/scripted/ScriptedFrame.h
M lldb/source/Target/StackFrame.cpp
M lldb/source/Target/StackFrameList.cpp
M lldb/test/API/functionalities/scripted_frame_provider/TestScriptedFrameProvider.py
A lldb/test/API/functionalities/scripted_frame_provider/python_helper.py
M lldb/test/API/functionalities/scripted_frame_provider/test_frame_providers.py
M lldb/test/API/functionalities/scripted_process/dummy_scripted_process.py
Log Message:
-----------
[lldb] Add support for PC-less scripted frames (#170805)
Scripted frames that materialize Python functions or other non-native
code are PC-less by design, meaning they don't have valid program
counter values. Previously, these frames would display invalid addresses
(`0xffffffffffffffff`) in backtrace output.
This patch updates `FormatEntity` to detect and suppress invalid address
display for PC-less frames, adds fallback to frame methods when symbol
context is unavailable, and modifies `StackFrame::GetSymbolContext` to
skip PC-based symbol resolution for invalid addresses.
The changes enable PC-less frames to display cleanly with proper
function names, file paths, and line numbers, and allow for source
display of foreign sources (like Python). Includes comprehensive test
coverage demonstrating frames pointing to Python source files.
Signed-off-by: Med Ismail Bennani <ismail at bennani.ma>
Commit: dedcf88569c4b45b1ab78d05304045326336de0c
https://github.com/llvm/llvm-project/commit/dedcf88569c4b45b1ab78d05304045326336de0c
Author: Andy Kaylor <akaylor at nvidia.com>
Date: 2025-12-05 (Fri, 05 Dec 2025)
Changed paths:
M clang/include/clang/CIR/Dialect/Builder/CIRBaseBuilder.h
M clang/include/clang/CIR/MissingFeatures.h
M clang/lib/CIR/CodeGen/CIRGenDecl.cpp
M clang/test/CIR/CodeGen/nrvo.cpp
Log Message:
-----------
[CIR] Implement NRVO variable cleanup (#170774)
This implements the cleanup handling for C++ NRVO variables. Because
exception handling is still incomplete, this doesn't behave any
differently with exceptions enabled yet, but the NRVO-specific code for
that case is trivial.
Commit: ce2518f59d9bc67553f05536ac9bb200827c36da
https://github.com/llvm/llvm-project/commit/ce2518f59d9bc67553f05536ac9bb200827c36da
Author: Jin Huang <jinhuang1102 at gmail.com>
Date: 2025-12-05 (Fri, 05 Dec 2025)
Changed paths:
M llvm/lib/Analysis/AliasAnalysis.cpp
R llvm/test/Transforms/DeadStoreElimination/atomic-todo.ll
M llvm/test/Transforms/DeadStoreElimination/atomic.ll
Log Message:
-----------
[AA] Improve precision for monotonic atomic load/store operations (#158169)
Refines `getModRefInfo` for `Monotonic` and `Unordered` atomic
operations to perform a full alias evaluation instead of conservatively
returning `ModRef`.
This allows AA to return more precise results (e.g., `NoModRef`),
unblocking optimizations in passes like DSE/PRE when the pointers are
proven not to alias.
LIT testing:
1. Fixed the `XFAIL` test `@test9` in `DSE/atomic-todo.ll`, where the
improved AA now allows DSE to correctly remove a dead store.
2. Added test `@test9a` to the same file to ensure DSE is still blocked
when pointers may alias.
3. I am also reviewing tests in GVN/PRE to see where this change may be
beneficial. While all existing tests pass, I will update this PR with
any new GVN test cases in a follow-up commit.
---------
Co-authored-by: Jin Huang <jingold at google.com>
Commit: 762a171b3d6f6eb64dc5a844fcb25caa4ece7d00
https://github.com/llvm/llvm-project/commit/762a171b3d6f6eb64dc5a844fcb25caa4ece7d00
Author: Andres-Salamanca <andrealebarbaritos at gmail.com>
Date: 2025-12-05 (Fri, 05 Dec 2025)
Changed paths:
M clang/include/clang/CIR/Dialect/IR/CIROps.td
M clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
M clang/lib/CIR/CodeGen/CIRGenFunction.cpp
M clang/lib/CIR/CodeGen/CIRGenFunction.h
M clang/lib/CIR/CodeGen/CIRGenModule.cpp
M clang/lib/CIR/CodeGen/CIRGenModule.h
M clang/lib/CIR/CodeGen/CIRGenStmt.cpp
M clang/lib/CIR/Dialect/IR/CIRDialect.cpp
M clang/lib/CIR/Dialect/Transforms/CIRCanonicalize.cpp
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
M clang/test/CIR/CodeGen/label-values.c
A clang/test/CIR/IR/indirect-br.cir
Log Message:
-----------
[CIR] Upstream support for cir.indirectbr (#169967)
This PR upstreams support for the `cir.indirectBr` operation, which is
used to implement GCC’s labels-as-values `indirect goto`.
To ensure correct lowering, we introduce precise bookkeeping to
associate each `block_address` operation with its corresponding `label`
op. This is required because a `block_address` may be emitted before the
`label` it refers to. In such cases, the reference is deferred and later
resolved by `resolveBlockAddresses`, which guarantees that all
`indirectBr` successors are emitted in the correct and fully resolved
order.
Commit: ee77c58e5b592379db7f50031fb41c15ba72118b
https://github.com/llvm/llvm-project/commit/ee77c58e5b592379db7f50031fb41c15ba72118b
Author: Nicolai Hähnle <nicolai.haehnle at amd.com>
Date: 2025-12-06 (Sat, 06 Dec 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUPromoteAlloca.cpp
A llvm/test/CodeGen/AMDGPU/promote-alloca-cfg.ll
Log Message:
-----------
Reland "AMDGPU/PromoteAlloca: Simplify how deferred loads work (#170510)" (#170955)
The second pass of promotion to vector can be quite simple. Reflect that
simplicity in the code for better maintainability.
v2:
- don't put placeholders into the SSAUpdater, and add a test that shows
the problem
Commit: 6d8714b52375b3b7a7f269cd1ec4cc73baece38b
https://github.com/llvm/llvm-project/commit/6d8714b52375b3b7a7f269cd1ec4cc73baece38b
Author: Andy Kaylor <akaylor at nvidia.com>
Date: 2025-12-05 (Fri, 05 Dec 2025)
Changed paths:
A clang/docs/ClangIRCodeDuplication.rst
M clang/docs/index.rst
Log Message:
-----------
[Clang][CIR][Doc] Document CIR code duplication plans (#166457)
This adds a document describing known problems with code duplication in
the CIR codegen implementation, strategies to mitigate the risks caused
by that code duplication, and a general long-term plan for minimizing
the problem.
Commit: b1ee4d08be7b53eb4676df5833127adbb778a487
https://github.com/llvm/llvm-project/commit/b1ee4d08be7b53eb4676df5833127adbb778a487
Author: Sudharsan Veeravalli <svs at qti.qualcomm.com>
Date: 2025-12-06 (Sat, 06 Dec 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVMergeBaseOffset.cpp
Log Message:
-----------
[RISCV] Refactor some code in RISCVMergeBaseOffset.NFC (#170839)
Commit: e546d0f5d4179ac95e464ea968f7759e61aea8a3
https://github.com/llvm/llvm-project/commit/e546d0f5d4179ac95e464ea968f7759e61aea8a3
Author: Sudharsan Veeravalli <svs at qti.qualcomm.com>
Date: 2025-12-06 (Sat, 06 Dec 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
A llvm/test/Analysis/CostModel/RISCV/fshl_fshr.ll
Log Message:
-----------
[RISCV][TTI] Add cost model for ROTL/ROTR (#170824)
A funnel shift with the same first two operands is a rotate. When
`Zbb/Zbkb` is enabled we can use the `ROL(W)/ROR(I)(W)` instruction to
represent this. Add cost model support for this.
Similar to https://github.com/llvm/llvm-project/pull/169335 for AArch64.
Commit: 472fd70ace5d8522452b98e803e11676cad8753f
https://github.com/llvm/llvm-project/commit/472fd70ace5d8522452b98e803e11676cad8753f
Author: mitchell <mitchell.xu2 at gmail.com>
Date: 2025-12-06 (Sat, 06 Dec 2025)
Changed paths:
M llvm/utils/git/code-lint-helper.py
Log Message:
-----------
[Github][CI] Introduce `LintHelper` class in `code-lint-helper.py` (#168827)
This commit introduces a new `LintHelper` class to
`llvm/utils/git/code-lint-helper.py`, which lays the groundwork for
integrating additional linters (`doc8`) into Github Action workflow.
---------
Co-authored-by: EugeneZelenko <eugene.zelenko at gmail.com>
Commit: 72d5fe5ec4d400b1e9444d78f2022f486aa19af1
https://github.com/llvm/llvm-project/commit/72d5fe5ec4d400b1e9444d78f2022f486aa19af1
Author: Katya Romanova <56653669+romanova-ekaterina at users.noreply.github.com>
Date: 2025-12-05 (Fri, 05 Dec 2025)
Changed paths:
M clang/lib/Headers/cpuid.h
Log Message:
-----------
[clang] [doc] Added documentation to intrinsics in cpuid.h (#170507)
Added doxygen comments to 4 intrinsincs in cpuid.h
Commit: 90e3ac6c55e61f0cc9ec9921dfa9d85b8a582a5d
https://github.com/llvm/llvm-project/commit/90e3ac6c55e61f0cc9ec9921dfa9d85b8a582a5d
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2025-12-06 (Sat, 06 Dec 2025)
Changed paths:
M llvm/docs/ReleaseNotes.md
M llvm/include/llvm-c/Core.h
M llvm/include/llvm/IR/Instructions.h
M llvm/include/llvm/IR/User.h
M llvm/lib/Bitcode/Writer/ValueEnumerator.cpp
M llvm/lib/CodeGen/TypePromotion.cpp
M llvm/lib/IR/Core.cpp
M llvm/lib/IR/Instructions.cpp
M llvm/lib/IR/User.cpp
M llvm/lib/IR/Verifier.cpp
M llvm/lib/Target/SPIRV/SPIRVEmitIntrinsics.cpp
M llvm/unittests/IR/InstructionsTest.cpp
M llvm/unittests/IR/VerifierTest.cpp
Log Message:
-----------
Revert "[IR] Don't store switch case values as operands" (#170962)
Reverts llvm/llvm-project#166842
Breaks Mips LLVM tests, and LLD on bots.
See llvm/llvm-project#166842
Commit: b889df39d61ba4ca003473749ee620fab87895b0
https://github.com/llvm/llvm-project/commit/b889df39d61ba4ca003473749ee620fab87895b0
Author: Teresa Johnson <tejohnson at google.com>
Date: 2025-12-05 (Fri, 05 Dec 2025)
Changed paths:
M llvm/lib/Transforms/Instrumentation/MemProfUse.cpp
M llvm/test/Transforms/PGOProfile/memprof-dump-matched-alloc-site.ll
Log Message:
-----------
[MemProf] Add option to print function GUIDs during matching (#170946)
For debugging, add -memprof-print-function-guids option that will cause
memprof matching to emit the computed function GUID for every function
definition in the module to stderr. This is helpful because the profile
only contains the function GUID and not the names.
Commit: 9e9e64af48bce45c8f569e02d568ec58a855aadb
https://github.com/llvm/llvm-project/commit/9e9e64af48bce45c8f569e02d568ec58a855aadb
Author: Sairudra More <sairudra60 at gmail.com>
Date: 2025-12-06 (Sat, 06 Dec 2025)
Changed paths:
M clang/lib/CodeGen/CGOpenMPRuntime.cpp
M clang/test/OpenMP/target_defaultmap_codegen_01.cpp
A clang/test/OpenMP/target_firstprivate_pointer_codegen.cpp
M clang/test/OpenMP/target_map_codegen_26.cpp
Log Message:
-----------
[OpenMP] Fix defaultmap(firstprivate:pointer) handling (#169622)
This fixes a bug where pointers from defaultmap(firstprivate:pointer)
were incorrectly treated as firstprivate literals, causing
OMP_MAP_LITERAL to be set. This prevented the runtime from performing
device address lookup.
Realted PR https://github.com/llvm/llvm-project/pull/167879
Co-authored-by: Sairudra More <moresair at pe31.hpc.amslabs.hpecorp.net>
Commit: 75aa7bdf45fc810bbf5efd3d029948857ded4de5
https://github.com/llvm/llvm-project/commit/75aa7bdf45fc810bbf5efd3d029948857ded4de5
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2025-12-06 (Sat, 06 Dec 2025)
Changed paths:
M compiler-rt/test/asan/TestCases/scariness_score_test.cpp
Log Message:
-----------
[ASan] Disable another test on Darwin due to ulimit stack issues
Similar to #170786.
Commit: 8fe38c4c9c71c7a86ecdba476ee5bae4c02c0dfe
https://github.com/llvm/llvm-project/commit/8fe38c4c9c71c7a86ecdba476ee5bae4c02c0dfe
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2025-12-06 (Sat, 06 Dec 2025)
Changed paths:
M clang/lib/AST/ByteCode/Descriptor.cpp
M clang/lib/AST/ByteCode/Descriptor.h
M clang/lib/AST/ByteCode/Disasm.cpp
M clang/lib/AST/ByteCode/EvaluationResult.cpp
M clang/lib/AST/ByteCode/Interp.cpp
M clang/lib/AST/ByteCode/Interp.h
M clang/lib/AST/ByteCode/InterpBuiltin.cpp
M clang/lib/AST/ByteCode/InterpBuiltinBitCast.cpp
M clang/lib/AST/ByteCode/InterpBuiltinBitCast.h
M clang/lib/AST/ByteCode/Pointer.cpp
M clang/lib/AST/ByteCode/Pointer.h
M clang/test/AST/ByteCode/const-eval.c
Log Message:
-----------
[clang][bytecode] Allocate InitMaps via Program/InterpState allocators (#170272)
Save them as a pointer intead of using a shared_ptr. This we we can use
the pointer integer value to differentiate the "no initmap yet" and "all
values initialzed" cases.
This regresses one test case in const-eval.c, but as it turns out, that
only worked coincidentally before.
Commit: 5fc8e87fe20d41654d8efc6bc93f7503b3bfdd36
https://github.com/llvm/llvm-project/commit/5fc8e87fe20d41654d8efc6bc93f7503b3bfdd36
Author: Nishant Patel <nishant.b.patel at intel.com>
Date: 2025-12-05 (Fri, 05 Dec 2025)
Changed paths:
M mlir/include/mlir/Dialect/XeGPU/IR/XeGPUOps.td
M mlir/lib/Conversion/VectorToXeGPU/VectorToXeGPU.cpp
M mlir/lib/Dialect/XeGPU/IR/XeGPUOps.cpp
M mlir/lib/Dialect/XeGPU/TransformOps/XeGPUTransformOps.cpp
M mlir/lib/Dialect/XeGPU/Transforms/XeGPUOptimizeBlockLoads.cpp
M mlir/lib/Dialect/XeGPU/Transforms/XeGPUUnroll.cpp
M mlir/lib/Dialect/XeGPU/Transforms/XeGPUWgToSgDistribute.cpp
M mlir/test/Dialect/XeGPU/xegpu-wg-to-sg-unify-ops.mlir
Log Message:
-----------
[MLIR][XeGPU] Retain anchor op layouts for XeGPU nD ops (#170934)
This PR adds support to retain the anchor op layouts (after dropping
what's not required) for xegpu nD ops during workgroup to subgroup &
unroll transformation
Commit: fa2eabd7706d2f47064c980b456d3a255e9ea3f3
https://github.com/llvm/llvm-project/commit/fa2eabd7706d2f47064c980b456d3a255e9ea3f3
Author: Kunqiu Chen <camsyn at foxmail.com>
Date: 2025-12-06 (Sat, 06 Dec 2025)
Changed paths:
M clang/test/Headers/__clang_hip_math.hip
M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
M llvm/test/Transforms/SimplifyCFG/hoist-common-code.ll
Log Message:
-----------
[SimplifyCFG] Hoist common code for switch multi-case destinations (#165700)
Previously, hoistCommonCodeFromSuccessors did not support hoisting
common code for multi-case destinations of `switch`.
However, if all the predecessors of a given Succ are the same (i.e.,
multi-case destination), it is safe to hoist the common code from Succ
to Pred, which is what this PR does.
See discussion
https://github.com/llvm/llvm-project/pull/165570#discussion_r2473290327.
Alive2 proof: https://alive2.llvm.org/ce/z/cYuczq
Optimization Impact:
https://github.com/dtcxzyw/llvm-opt-benchmark/pull/3003
Commit: 979462c876c96c3023c0b5e42c8eda88323fd745
https://github.com/llvm/llvm-project/commit/979462c876c96c3023c0b5e42c8eda88323fd745
Author: Jay Foad <jay.foad at amd.com>
Date: 2025-12-06 (Sat, 06 Dec 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUInstCombineIntrinsic.cpp
M llvm/lib/Target/AMDGPU/AMDGPUSearchableTables.td
M llvm/lib/Target/AMDGPU/CMakeLists.txt
R llvm/lib/Target/AMDGPU/InstCombineTables.td
M llvm/utils/gn/secondary/llvm/lib/Target/AMDGPU/BUILD.gn
Log Message:
-----------
[AMDGPU] Eliminate InstCombineTables.td. NFC. (#170857)
This also eliminates the generated file InstCombineTables.inc which was
99% identical to the existing AMDGPUGenSearchableTables.inc.
Commit: 9dc8caef09d9d0b631639e54de097b4603b9c369
https://github.com/llvm/llvm-project/commit/9dc8caef09d9d0b631639e54de097b4603b9c369
Author: Benjamin Kramer <benny.kra at googlemail.com>
Date: 2025-12-06 (Sat, 06 Dec 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/llvm/BUILD.bazel
Log Message:
-----------
[bazel] Port 979462c876c96c3023c0b5e42c8eda88323fd745
Commit: dda048665317077d677cea0a15894be4d021b9c7
https://github.com/llvm/llvm-project/commit/dda048665317077d677cea0a15894be4d021b9c7
Author: Alexander Root <32245479+rootjalex at users.noreply.github.com>
Date: 2025-12-06 (Sat, 06 Dec 2025)
Changed paths:
M mlir/docs/LangRef.md
Log Message:
-----------
[MLIR] Update broken link in LangRef.md (#170938)
Noticed the link was dead when reading the docs. According to the
wayback machine, it was a link to "Revisiting Out-of-SSA Translation for
Correctness, Code Quality, and Efficiency" by Boissinot et al., so
providing a more permanent link.
Commit: af27159e17b91cc5f49c2b6ed24f3d422312d6ec
https://github.com/llvm/llvm-project/commit/af27159e17b91cc5f49c2b6ed24f3d422312d6ec
Author: Baranov Victor <bar.victor.2002 at gmail.com>
Date: 2025-12-06 (Sat, 06 Dec 2025)
Changed paths:
M clang-tools-extra/test/clang-tidy/infrastructure/alphabetical-order.test
Log Message:
-----------
[clang-tidy] Show correct diff instructions when check_alphabetical_order.py fails (#170971)
Before the change, when given such incorrect ordering:
```
:doc:`modernize-use-designated-initializers <modernize/use-designated-initializers>`, "Yes"
:doc:`modernize-use-equals-default <modernize/use-equals-default>`, "Yes"
:doc:`modernize-use-emplace <modernize/use-emplace>`, "Yes"
:doc:`modernize-use-equals-delete <modernize/use-equals-delete>`, "Yes"
:doc:`modernize-use-integer-sign-comparison <modernize/use-integer-sign-comparison>`, "Yes"
```
Script output suggested removing `modernize-use-equals-default` line
that came after `modernize-use-emplace` but in my actual file, we can
see that current ordering is different (same as 2nd part of the diff):
```
# | :doc:`modernize-use-constraints <modernize/use-constraints>`, "Yes"
# | :doc:`modernize-use-default-member-init <modernize/use-default-member-init>`, "Yes"
# | :doc:`modernize-use-designated-initializers <modernize/use-designated-initializers>`, "Yes"
# | :doc:`modernize-use-emplace <modernize/use-emplace>`, "Yes"
# | - :doc:`modernize-use-equals-default <modernize/use-equals-default>`, "Yes"
# | :doc:`modernize-use-equals-delete <modernize/use-equals-delete>`, "Yes"
# | :doc:`modernize-use-integer-sign-comparison <modernize/use-integer-sign-comparison>`, "Yes"
# | :doc:`modernize-use-nodiscard <modernize/use-nodiscard>`, "Yes"
# | --- 316,323 ----
# | :doc:`modernize-use-constraints <modernize/use-constraints>`, "Yes"
# | :doc:`modernize-use-default-member-init <modernize/use-default-member-init>`, "Yes"
# | :doc:`modernize-use-designated-initializers <modernize/use-designated-initializers>`, "Yes"
# | + :doc:`modernize-use-equals-default <modernize/use-equals-default>`, "Yes"
# | :doc:`modernize-use-emplace <modernize/use-emplace>`, "Yes"
# | :doc:`modernize-use-equals-delete <modernize/use-equals-delete>`, "Yes"
```
We need to invert the diff, so the user can correctly follow its
recommendations.
Commit: 830ef4e4e2d0f181ed1cfacbc3daacb2555ff9e4
https://github.com/llvm/llvm-project/commit/830ef4e4e2d0f181ed1cfacbc3daacb2555ff9e4
Author: Michael Kruse <llvm-project at meinersbur.de>
Date: 2025-12-06 (Sat, 06 Dec 2025)
Changed paths:
M openmp/CMakeLists.txt
A openmp/cmake/modules/LibompCheckFortranFlag.cmake
A openmp/cmake/modules/LibompHandleFlags.cmake
A openmp/cmake/modules/LibompUtils.cmake
A openmp/module/CMakeLists.txt
A openmp/module/omp_lib.F90.var
A openmp/module/omp_lib.h.var
M openmp/runtime/CMakeLists.txt
R openmp/runtime/cmake/LibompCheckFortranFlag.cmake
M openmp/runtime/cmake/LibompExports.cmake
R openmp/runtime/cmake/LibompHandleFlags.cmake
R openmp/runtime/cmake/LibompUtils.cmake
M openmp/runtime/cmake/config-ix.cmake
M openmp/runtime/src/CMakeLists.txt
R openmp/runtime/src/include/omp_lib.F90.var
R openmp/runtime/src/include/omp_lib.h.var
Log Message:
-----------
[openmp][NFCI] Move .mod code out of runtimes subdir (#169909)
Extracted out of #169638. The motivation is that we want to build
Fortran module files for device triples (amdgpu-amd-amdhsa and
nvptx64-nvidia-cuda) as well, but the runtimes/ directory is only
included for host devices.
This PR itself should not change anything, including that omp_lib.mod is
only built on host devices triple. Some dependencies used for building
omp_lib.mod are hoisted out of runtimes/ as well. IMHO they all make
sense to hoist, e.g. LIBOMP_VERSION_MAJOR/LIBOMP_VERSION_MINOR should be
usable in the entire OpenMP subproject.
Commit: 404a9032c78f85241c952a97d1d363b9ae865cc1
https://github.com/llvm/llvm-project/commit/404a9032c78f85241c952a97d1d363b9ae865cc1
Author: Baranov Victor <bar.victor.2002 at gmail.com>
Date: 2025-12-06 (Sat, 06 Dec 2025)
Changed paths:
M clang-tools-extra/clang-tidy/tool/check_alphabetical_order.py
M clang-tools-extra/clang-tidy/tool/check_alphabetical_order_test.py
Log Message:
-----------
[clang-tidy] Show descriptive error message when check_alphabetical_order.py fails (#170975)
Now we give clearer instructions on how to interpret the output of the
script to fix issues it reported
Commit: 6d38c876478dac4a42f9d6e37692348deabf6a25
https://github.com/llvm/llvm-project/commit/6d38c876478dac4a42f9d6e37692348deabf6a25
Author: Martin Storsjö <martin at martin.st>
Date: 2025-12-06 (Sat, 06 Dec 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Basic/CodeGenOptions.def
M clang/include/clang/Options/Options.td
M clang/lib/CodeGen/CGCall.cpp
R clang/test/CodeGen/lifetime-call-temp.c
R clang/test/CodeGen/lifetime-invoke-c.c
R clang/test/CodeGenCXX/aggregate-lifetime-invoke.cpp
R clang/test/CodeGenCXX/amdgcn-call-with-aggarg.cc
M clang/test/CodeGenCXX/stack-reuse-miscompile.cpp
M clang/test/CodeGenCoroutines/pr59181.cpp
Log Message:
-----------
Revert "[clang] Limit lifetimes of temporaries to the full expression (#170517)"
This reverts commit 5daad5bf45b3c7280f7b06979fb580f70e2c4fd0.
That commit caused broken compilation for some cases, see
https://github.com/llvm/llvm-project/pull/170517#issuecomment-3620079591.
Commit: ba836dc5ede411f90a8f5ba1f706983db8caf4e7
https://github.com/llvm/llvm-project/commit/ba836dc5ede411f90a8f5ba1f706983db8caf4e7
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-12-06 (Sat, 06 Dec 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
M llvm/test/Transforms/LoopVectorize/vplan-printing.ll
Log Message:
-----------
[VPlan] Remove stray space before ops when printing vector-ptr (NFC)
Commit: 9031544772dc3a39c27feccf845a43ec38925bc0
https://github.com/llvm/llvm-project/commit/9031544772dc3a39c27feccf845a43ec38925bc0
Author: Hristo Hristov <hghristov.rmm at gmail.com>
Date: 2025-12-06 (Sat, 06 Dec 2025)
Changed paths:
M libcxx/include/__bit_reference
M libcxx/include/bitset
A libcxx/test/libcxx/utilities/template.bitset/nodiscard.verify.cpp
Log Message:
-----------
[libc++][bitset] Applied `[[nodiscard]]` (#170623)
`[[nodiscard]]` should be applied to functions where discarding the
return value is most likely a correctness issue.
- https://libcxx.llvm.org/CodingGuidelines.html
- https://wg21.link/bitset
Commit: 6bb786398efdbc496edd517e682caeaaefd46f6e
https://github.com/llvm/llvm-project/commit/6bb786398efdbc496edd517e682caeaaefd46f6e
Author: Amr Hesham <amr96 at programmer.net>
Date: 2025-12-06 (Sat, 06 Dec 2025)
Changed paths:
M clang/include/clang/CIR/Dialect/IR/CIROps.td
A clang/test/CIR/IR/catch-param.cir
Log Message:
-----------
[CIR] Add structured CatchParamOp (#165110)
Upstream, the structured CatchParamOp as a prerequisite for implementing
exception handlers
Issue https://github.com/llvm/llvm-project/issues/154992
Commit: ddd770d97b2c4a071d4cd9cb471ed9a397e0135c
https://github.com/llvm/llvm-project/commit/ddd770d97b2c4a071d4cd9cb471ed9a397e0135c
Author: Hristo Hristov <hghristov.rmm at gmail.com>
Date: 2025-12-06 (Sat, 06 Dec 2025)
Changed paths:
M libcxx/include/__exception/exception.h
M libcxx/include/__exception/nested_exception.h
M libcxx/include/__exception/operations.h
M libcxx/include/__system_error/error_category.h
M libcxx/include/__system_error/error_code.h
M libcxx/include/__system_error/error_condition.h
M libcxx/include/__system_error/system_error.h
M libcxx/include/stdexcept
A libcxx/test/libcxx/diagnostics/syserr/nodiscard.verify.cpp
M libcxx/test/libcxx/language.support/nodiscard.verify.cpp
Log Message:
-----------
[libc++] Applied `[[nodiscard]]` to `<exception>`, `<stdexcept>` and `<system_error>` (#170837)
[[nodiscard]] should be applied to functions where discarding the return
value is most likely a correctness issue.
- https://libcxx.llvm.org/CodingGuidelines.html
Commit: 0cd523e55244db709987b619a7a9a2add94869fc
https://github.com/llvm/llvm-project/commit/0cd523e55244db709987b619a7a9a2add94869fc
Author: Dark Steve <Prasoon.Mishra at amd.com>
Date: 2025-12-06 (Sat, 06 Dec 2025)
Changed paths:
M llvm/lib/CodeGen/PHIElimination.cpp
A llvm/test/CodeGen/AMDGPU/phi-elim-mli-available.mir
Log Message:
-----------
[PHIElimination] Declare MachineLoopInfo dependency for Legacy PM (#169693)
PHIElimination uses MachineLoopInfo for loop-exiting critical edge
splitting but wasn't declaring this dependency via addUsedIfAvailable()
in getAnalysisUsage(). Without this declaration, the pass manager does
not make MachineLoopInfo accessible to PHIElimination, causing
getAnalysisIfAvailable() to return nullptr.
Without MachineLoopInfo, the loop-exiting edge optimization doesn't
fire, resulting in fewer critical edge splits and potentially suboptimal
code placement.
This patch adds:
- MachineLoopInfo as an optional dependency
- A test that verifies the optimization fires when MLI is accessible
Commit: 0e5fd438f407712b220510a2fd2e094d3b49d43e
https://github.com/llvm/llvm-project/commit/0e5fd438f407712b220510a2fd2e094d3b49d43e
Author: Baranov Victor <bar.victor.2002 at gmail.com>
Date: 2025-12-06 (Sat, 06 Dec 2025)
Changed paths:
M clang-tools-extra/clang-tidy/.clang-tidy
M clang-tools-extra/clang-tidy/bugprone/UnsafeFunctionsCheck.cpp
M clang-tools-extra/clang-tidy/utils/UseRangesCheck.cpp
Log Message:
-----------
[clang-tidy][NFC] Add a few cppcoreguidelines checks to codebase (#170977)
Commit: a805147ac1ba123916de182babb0831fbb148756
https://github.com/llvm/llvm-project/commit/a805147ac1ba123916de182babb0831fbb148756
Author: Baranov Victor <bar.victor.2002 at gmail.com>
Date: 2025-12-06 (Sat, 06 Dec 2025)
Changed paths:
M clang-tools-extra/clang-tidy/NoLintDirectiveHandler.cpp
M clang-tools-extra/clang-tidy/bugprone/ChainedComparisonCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/DanglingHandleCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/NonZeroEnumToBoolConversionCheck.cpp
M clang-tools-extra/clang-tidy/llvm/UseNewMLIROpBuilderCheck.cpp
M clang-tools-extra/clang-tidy/modernize/MakeSmartPtrCheck.cpp
M clang-tools-extra/clang-tidy/readability/RedundantInlineSpecifierCheck.cpp
M clang-tools-extra/clang-tidy/readability/RedundantStringInitCheck.cpp
M clang-tools-extra/clang-tidy/utils/LexerUtils.cpp
M clang-tools-extra/clang-tidy/utils/TransformerClangTidyCheck.cpp
Log Message:
-----------
[clang-tidy][NFC] Remove unused headers (flagged by misc-include-cleaner) (#170982)
But `misc-include-cleaner` still has reasonable amount of FP in
codebase, so we can't enable it clang-tidy.
Commit: ff05da6042f0fba9fca6c6c18d0337ccf499b60d
https://github.com/llvm/llvm-project/commit/ff05da6042f0fba9fca6c6c18d0337ccf499b60d
Author: Baranov Victor <bar.victor.2002 at gmail.com>
Date: 2025-12-06 (Sat, 06 Dec 2025)
Changed paths:
M clang-tools-extra/clang-tidy/.clang-tidy
M clang-tools-extra/clang-tidy/ClangTidyDiagnosticConsumer.cpp
M clang-tools-extra/clang-tidy/altera/StructPackAlignCheck.cpp
M clang-tools-extra/clang-tidy/altera/UnrollLoopsCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/SuspiciousMissingCommaCheck.cpp
M clang-tools-extra/clang-tidy/misc/ConfusableIdentifierCheck.cpp
M clang-tools-extra/clang-tidy/misc/MisleadingBidirectionalCheck.cpp
M clang-tools-extra/clang-tidy/misc/MisleadingIdentifierCheck.cpp
M clang-tools-extra/clang-tidy/openmp/UseDefaultNoneCheck.cpp
M clang-tools-extra/clang-tidy/readability/FunctionCognitiveComplexityCheck.cpp
Log Message:
-----------
[clang-tidy][NFC] Add google-readability-casting check to codebase (#170980)
Commit: 8dee997a8558b460b82b23fb43b197d68258baac
https://github.com/llvm/llvm-project/commit/8dee997a8558b460b82b23fb43b197d68258baac
Author: Nicolai Hähnle <nicolai.haehnle at amd.com>
Date: 2025-12-06 (Sat, 06 Dec 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUPromoteAlloca.cpp
M llvm/test/CodeGen/AMDGPU/promote-alloca-multidim.ll
M llvm/test/CodeGen/AMDGPU/promote-alloca-negative-index.ll
M llvm/test/CodeGen/AMDGPU/promote-alloca-vector-to-vector.ll
Log Message:
-----------
Reland "AMDGPU/PromoteAlloca: Always use i32 for indexing (#170511)" (#170956)
Create more canonical code that may even lead to slightly better
codegen.
Commit: 4930e94011f6c62231de880273821d453dae0f14
https://github.com/llvm/llvm-project/commit/4930e94011f6c62231de880273821d453dae0f14
Author: owenca <owenpiano at gmail.com>
Date: 2025-12-06 (Sat, 06 Dec 2025)
Changed paths:
M clang/lib/Format/UnwrappedLineParser.cpp
M clang/unittests/Format/TokenAnnotatorTest.cpp
Log Message:
-----------
[clang-format] Fix a regression in annotating star before lambda (#170969)
Fixes #170573
Commit: 49a7772be5bfc86a64103a08a190133f7e4ea823
https://github.com/llvm/llvm-project/commit/49a7772be5bfc86a64103a08a190133f7e4ea823
Author: Philip Reames <preames at rivosinc.com>
Date: 2025-12-06 (Sat, 06 Dec 2025)
Changed paths:
M llvm/include/llvm/CodeGen/MachineFrameInfo.h
M llvm/include/llvm/CodeGen/TargetFrameLowering.h
M llvm/lib/CodeGen/PrologEpilogInserter.cpp
M llvm/lib/Target/AArch64/AArch64FrameLowering.cpp
M llvm/lib/Target/AArch64/AArch64FrameLowering.h
M llvm/lib/Target/AMDGPU/SIFrameLowering.cpp
M llvm/lib/Target/AMDGPU/SIFrameLowering.h
M llvm/lib/Target/RISCV/RISCVFrameLowering.cpp
M llvm/lib/Target/RISCV/RISCVFrameLowering.h
Log Message:
-----------
[CodeGen] Replace (Min,Max)CSFrameIndex with flag on frame object [NFCI] (#170905)
This removes the tracking of the MinCSFrameIndex, and MaxCSFrameIndex markers, simplifying the target API. This brings the tracking for callee save spill slots in line with how we handle other properties of stack locations.
A couple notes:
1) This requires doing scans of the entire object range, but we have other such instances in the code already, so I doubt this will matter in practice.
2) This removes the requirement that callee saved spill slots be contiguous in the frame index identified space.
I marked this as NFCI because if prior code violated the contiguous range assumption - I can't find a case where we did - then this change might adjust frame layout in some edge cases.
The motivation for this is mostly code readability, but I might use this as a primitive for something in an upcoming patch series around shrink wrapping. Haven't decided yet.
Commit: 02482f42739e5b16035f4169923cb6abe0bb9698
https://github.com/llvm/llvm-project/commit/02482f42739e5b16035f4169923cb6abe0bb9698
Author: Maksim Panchenko <maks at fb.com>
Date: 2025-12-06 (Sat, 06 Dec 2025)
Changed paths:
M bolt/include/bolt/Core/BinaryFunction.h
M bolt/lib/Core/BinaryFunction.cpp
M bolt/test/X86/unclaimed-jt-entries.s
M bolt/test/runtime/X86/unclaimed-jt-entries.s
Log Message:
-----------
[BOLT] Properly validate relocations against internals of a function (#167451)
Validation of data relocations targeting internals of a function was
happening based on offsets inside a function. As a result, if multiple
relocations were targeting the same offset, and one of the relocations
was verified, e.g. as belonging to a jump table, then all relocations
targeting the offset would be considered verified and valid.
Now that we are tracking relocations pointing inside every function, we
can do a better validation based on the location of the relocation.
E.g., if a relocation belongs to a jump table only that relocation will
be accounted for and other relocations pointing to the same address will
be evaluated independently.
Commit: 315c904e3e1c00ea1ec7f0757e4c538ec2513624
https://github.com/llvm/llvm-project/commit/315c904e3e1c00ea1ec7f0757e4c538ec2513624
Author: Victor Chernyakin <chernyakin.victor.j at outlook.com>
Date: 2025-12-06 (Sat, 06 Dec 2025)
Changed paths:
M clang/include/clang/AST/IgnoreExpr.h
Log Message:
-----------
[clang][NFC] Simplify implementation of `IgnoreExprNodes` (#164193)
Using a fold instead of template recursion.
Commit: 0dff5b5824f2fb958039da7f55b501127476a7c3
https://github.com/llvm/llvm-project/commit/0dff5b5824f2fb958039da7f55b501127476a7c3
Author: Feng Zou <feng.zou at intel.com>
Date: 2025-12-07 (Sun, 07 Dec 2025)
Changed paths:
M llvm/lib/Target/X86/X86CompressEVEX.cpp
M llvm/test/CodeGen/X86/apx/compress-evex.mir
M llvm/test/TableGen/x86-instr-mapping.inc
M llvm/utils/TableGen/X86InstrMappingEmitter.cpp
M llvm/utils/TableGen/X86ManualInstrMapping.def
Log Message:
-----------
[X86][APX] Compress setzucc with memory operand to setcc (#170842)
setzucc with memory operand is same as setcc but the later is shorter.
Commit: 3b355b26bf4e8d5706a0a920698c1611357479f4
https://github.com/llvm/llvm-project/commit/3b355b26bf4e8d5706a0a920698c1611357479f4
Author: Jacques Pienaar <jpienaar at google.com>
Date: 2025-12-07 (Sun, 07 Dec 2025)
Changed paths:
M mlir/tools/mlir-tblgen/PassGen.cpp
Log Message:
-----------
[mlir] Remove deprecated GEN_PASS_CLASSES. (#166904)
This was marked as deprecated in 2022, but as comment. Switch to error
to make visible and stop generating. Will remove the error message in
follow up, just felt this was easier for folks to understand compilation
errors. The change required to new form is rather minimal.
Commit: bdb918e10a0856080b697ca7fce13263b6b63867
https://github.com/llvm/llvm-project/commit/bdb918e10a0856080b697ca7fce13263b6b63867
Author: Matthias Springer <me at m-sp.org>
Date: 2025-12-07 (Sun, 07 Dec 2025)
Changed paths:
M mlir/lib/Conversion/ArithToAPFloat/ArithToAPFloat.cpp
M mlir/test/Conversion/ArithToApfloat/arith-to-apfloat.mlir
Log Message:
-----------
[mlir][arith] `arith-to-apfloat`: Bail on unsupported bitwidth (#170994)
Bitwidths greater than 64 are not supported by `arith-to-apfloat`.
Commit: a1ba1fa5788c4cc0e72b7af6a555eb046510e86c
https://github.com/llvm/llvm-project/commit/a1ba1fa5788c4cc0e72b7af6a555eb046510e86c
Author: Gil Rapaport <gil.rapaport at mobileye.com>
Date: 2025-12-07 (Sun, 07 Dec 2025)
Changed paths:
M mlir/lib/Target/Cpp/TranslateToCpp.cpp
Log Message:
-----------
[mlir][emitc] Simplify inlining logic (NFCI) (#169978)
This change makes inlining logic in the translator simpler and more
consistent by
(a) Extending the inlining concept to include CExpression ops, which by
definition are inlined if and only if they reside within an
ExpressionOp.
(b) Concentraing all inlining decisions in `shouldBeInlined()` to make
sure that ops get the same decision when queried as operations and
as operands.
Commit: fb0400fe1f1f9e83f3148db8ce2c72ab5bc6728e
https://github.com/llvm/llvm-project/commit/fb0400fe1f1f9e83f3148db8ce2c72ab5bc6728e
Author: Gil Rapaport <gil.rapaport at mobileye.com>
Date: 2025-12-07 (Sun, 07 Dec 2025)
Changed paths:
M mlir/lib/Target/Cpp/TranslateToCpp.cpp
M mlir/test/Target/Cpp/common-cpp.mlir
Log Message:
-----------
[mlir][emitc] Fix bug in dereference translation (#171028)
The op was not added to `hasDeferredEmission()` when introduced by
f17abc280c70, causing incorrect translation.
Commit: 73a13839d3ec4dab9330b3909890105efad9b3bd
https://github.com/llvm/llvm-project/commit/73a13839d3ec4dab9330b3909890105efad9b3bd
Author: Hui <hui.xie1990 at gmail.com>
Date: 2025-12-07 (Sun, 07 Dec 2025)
Changed paths:
M libcxx/docs/ABIGuarantees.rst
M libcxx/docs/ReleaseNotes/22.rst
M libcxx/include/__atomic/atomic.h
M libcxx/include/__atomic/atomic_flag.h
M libcxx/include/__atomic/atomic_ref.h
M libcxx/include/__atomic/atomic_sync.h
M libcxx/include/__atomic/contention_t.h
M libcxx/include/__configuration/abi.h
M libcxx/include/__configuration/availability.h
M libcxx/lib/abi/CHANGELOG.TXT
M libcxx/lib/abi/arm64-apple-darwin.libcxxabi.v1.stable.exceptions.nonew.abilist
M libcxx/lib/abi/i686-linux-android21.libcxxabi.v1.stable.exceptions.nonew.abilist
M libcxx/lib/abi/powerpc-ibm-aix.libcxxabi.v1.stable.exceptions.nonew.abilist
M libcxx/lib/abi/powerpc64-ibm-aix.libcxxabi.v1.stable.exceptions.nonew.abilist
M libcxx/lib/abi/x86_64-linux-android21.libcxxabi.v1.stable.exceptions.nonew.abilist
M libcxx/lib/abi/x86_64-unknown-freebsd.libcxxabi.v1.stable.exceptions.nonew.abilist
M libcxx/lib/abi/x86_64-unknown-linux-gnu.libcxxabi.v1.stable.exceptions.nonew.abilist
M libcxx/lib/abi/x86_64-unknown-linux-gnu.libcxxabi.v1.stable.noexceptions.nonew.abilist
M libcxx/src/atomic.cpp
M libcxx/test/libcxx/atomics/atomics.syn/wait.issue_85107.pass.cpp
A libcxx/test/std/atomics/atomics.types.operations/atomics.types.operations.wait/lost_wakeup.pass.cpp
Log Message:
-----------
[libc++] Allows any types of size 4 and 8 to use native platform ulock_wait (#161086)
This is to address #146145
The issue before was that, for `std::atomic::wait/notify`, we only
support `uint64_t` to go through the native `ulock_wait` directly. Any
other types will go through the global contention table's `atomic`,
increasing the chances of spurious wakeup. This PR tries to allow any
types that are of size 4 or 8 to directly go to the `ulock_wait`.
This PR is just proof of concept. If we like this idea, I can go further
to update the Linux/FreeBSD branch and add ABI macros so the existing
behaviours are reserved under the stable ABI
Here are some benchmark results
```
Benchmark Time CPU Time Old Time New CPU Old CPU New
----------------------------------------------------------------------------------------------------------------------------------------------------
BM_stop_token_single_thread_reg_unreg_callback/1024 -0.1113 -0.1165 51519 45785 51397 45408
BM_stop_token_single_thread_reg_unreg_callback/4096 -0.2727 -0.1447 249685 181608 211865 181203
BM_stop_token_single_thread_reg_unreg_callback/65536 -0.1241 -0.1237 3308930 2898396 3300986 2892608
BM_stop_token_single_thread_reg_unreg_callback/262144 +0.0335 -0.1920 13237682 13681632 13208849 10673254
OVERALL_GEOMEAN -0.1254 -0.1447 0 0 0 0
```
```
Benchmark Time CPU Time Old Time New CPU Old CPU New
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------
BM_1_atomic_1_waiter_1_notifier<KeepNotifying, NumHighPrioTasks<0>>/65536 -0.3344 -0.2424 5960741 3967212 5232250 3964085
BM_1_atomic_1_waiter_1_notifier<KeepNotifying, NumHighPrioTasks<0>>/131072 -0.1474 -0.1475 9144356 7796745 9137547 7790193
BM_1_atomic_1_waiter_1_notifier<KeepNotifying, NumHighPrioTasks<0>>/262144 -0.1336 -0.1340 18333441 15883805 18323711 15868500
OVERALL_GEOMEAN -0.2107 -0.1761 0 0 0 0
```
```
Benchmark Time CPU Time Old Time New CPU Old CPU New
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
BM_1_atomic_multi_waiter_1_notifier<KeepNotifying, NumWaitingThreads<2>, NumHighPrioTasks<0>>/16384 +0.2321 -0.0081 836618 1030772 833197 826476
BM_1_atomic_multi_waiter_1_notifier<KeepNotifying, NumWaitingThreads<2>, NumHighPrioTasks<0>>/32768 -0.3034 -0.1329 2182721 1520569 1747211 1515028
BM_1_atomic_multi_waiter_1_notifier<KeepNotifying, NumWaitingThreads<2>, NumHighPrioTasks<0>>/65536 -0.0924 -0.0924 3389098 3075897 3378486 3066448
BM_1_atomic_multi_waiter_1_notifier<KeepNotifying, NumWaitingThreads<8>, NumHighPrioTasks<0>>/4096 +0.0464 +0.0474 664233 695080 657736 688892
BM_1_atomic_multi_waiter_1_notifier<KeepNotifying, NumWaitingThreads<8>, NumHighPrioTasks<0>>/8192 -0.0279 -0.0267 1336041 1298794 1324270 1288953
BM_1_atomic_multi_waiter_1_notifier<KeepNotifying, NumWaitingThreads<8>, NumHighPrioTasks<0>>/16384 +0.0270 +0.0304 2543004 2611786 2517471 2593975
BM_1_atomic_multi_waiter_1_notifier<KeepNotifying, NumWaitingThreads<32>, NumHighPrioTasks<0>>/1024 +0.0423 +0.0941 473621 493657 325604 356245
BM_1_atomic_multi_waiter_1_notifier<KeepNotifying, NumWaitingThreads<32>, NumHighPrioTasks<0>>/2048 +0.0420 +0.0675 906266 944349 636253 679169
BM_1_atomic_multi_waiter_1_notifier<KeepNotifying, NumWaitingThreads<32>, NumHighPrioTasks<0>>/4096 +0.0359 +0.0378 1761584 1824783 1015092 1053439
OVERALL_GEOMEAN -0.0097 -0.0007 0 0 0 0
```
```
Benchmark Time CPU Time Old Time New CPU Old CPU New
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
BM_N_atomics_N_waiter_N_notifier<KeepNotifying, NumberOfAtomics<2>, NumHighPrioTasks<0>>/4096 -0.0990 -0.1001 371100 334370 369984 332955
BM_N_atomics_N_waiter_N_notifier<KeepNotifying, NumberOfAtomics<2>, NumHighPrioTasks<0>>/8192 -0.0305 -0.0314 698228 676908 696418 674585
BM_N_atomics_N_waiter_N_notifier<KeepNotifying, NumberOfAtomics<2>, NumHighPrioTasks<0>>/16384 -0.0258 -0.0268 1383530 1347894 1380665 1343680
BM_N_atomics_N_waiter_N_notifier<KeepNotifying, NumberOfAtomics<8>, NumHighPrioTasks<0>>/1024 +0.0465 +0.4702 937821 981388 472087 694082
BM_N_atomics_N_waiter_N_notifier<KeepNotifying, NumberOfAtomics<8>, NumHighPrioTasks<0>>/2048 +0.1596 +0.9140 1704819 1976899 616419 1179852
BM_N_atomics_N_waiter_N_notifier<KeepNotifying, NumberOfAtomics<8>, NumHighPrioTasks<0>>/4096 -0.1018 -0.2316 3793976 3407609 1912209 1469331
BM_N_atomics_N_waiter_N_notifier<KeepNotifying, NumberOfAtomics<32>, NumHighPrioTasks<0>>/256 +0.0395 +0.5818 30102662 31292982 174650 276270
BM_N_atomics_N_waiter_N_notifier<KeepNotifying, NumberOfAtomics<32>, NumHighPrioTasks<0>>/512 -0.0065 +1.2860 33079634 32863968 162150 370680
BM_N_atomics_N_waiter_N_notifier<KeepNotifying, NumberOfAtomics<32>, NumHighPrioTasks<0>>/1024 -0.0325 +0.4683 36581740 35392385 282320 414520
OVERALL_GEOMEAN -0.0084 +0.2878 0 0 0 0
```
---------
Co-authored-by: Louis Dionne <ldionne.2 at gmail.com>
Commit: 1226a6d8c34ca007c4192e6039866a65b98b2625
https://github.com/llvm/llvm-project/commit/1226a6d8c34ca007c4192e6039866a65b98b2625
Author: mitchell <mitchell.xu2 at gmail.com>
Date: 2025-12-07 (Sun, 07 Dec 2025)
Changed paths:
M clang-tools-extra/test/clang-tidy/infrastructure/Inputs/param/parameters.txt
Log Message:
-----------
[clang-tidy] Fix fragile test in `read-parameters-from-file` (#171033)
[CommandLine.cpp](https://github.com/llvm/llvm-project/blob/fb0400fe1f1f9e83f3148db8ce2c72ab5bc6728e/llvm/lib/Support/CommandLine.cpp#L940)
treats single quote as literal characters on Windows, so the argument is
parsed as a check named `' -*,llvm-namespace-comment '`, which matches
no existing checks, so no checks are enabled via the command line.
Previously, the test passed because it fell back to the root
`.clang-tidy` configuration which enables `llvm-*`.
Commit: 9e7ce77573b2fad126a367475cbe807c10826691
https://github.com/llvm/llvm-project/commit/9e7ce77573b2fad126a367475cbe807c10826691
Author: Hassnaa Hamdi <hassnaa.hamdi at arm.com>
Date: 2025-12-07 (Sun, 07 Dec 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/docs/UsersManual.rst
M clang/include/clang/Basic/CodeGenOptions.def
M clang/include/clang/Options/Options.td
M clang/lib/CodeGen/BackendUtil.cpp
M clang/lib/CodeGen/CGClass.cpp
M clang/lib/CodeGen/CGVTables.cpp
M clang/lib/CodeGen/ItaniumCXXABI.cpp
M clang/lib/Driver/ToolChains/Clang.cpp
A clang/test/CodeGenCXX/speculative-devirt-metadata.cpp
M clang/test/Driver/clang_f_opts.c
M llvm/include/llvm/Passes/PassBuilder.h
M llvm/include/llvm/Transforms/IPO/WholeProgramDevirt.h
M llvm/lib/Passes/PassBuilderPipelines.cpp
M llvm/lib/Transforms/IPO/WholeProgramDevirt.cpp
A llvm/test/Transforms/PhaseOrdering/speculative-devirt-then-inliner.ll
A llvm/test/Transforms/WholeProgramDevirt/devirt-metadata.ll
Log Message:
-----------
[Clang]: Support opt-in speculative devirtualization (#159685)
This patch adds Clang support for speculative devirtualization and
integrates the related pass into the pass pipeline.
It's building on the LLVM backend implementation from PR #159048.
Speculative devirtualization transforms an indirect call (the virtual
function) to a guarded direct call.
It is guarded by a comparison of the virtual function pointer to the
expected target.
This optimization is still safe without LTO because it doesn't do direct
calls, it's conditional according to the function ptr.
This optimization:
- Opt-in: Disabled by default, enabled via `-fdevirtualize-speculatively`
- Works in non-LTO mode
- Handles publicly-visible objects.
- Uses guarded devirtualization with fallback to indirect calls when the
speculation is incorrect.
For this C++ example:
```
class Base {
public:
__attribute__((noinline))
virtual void virtual_function1() { asm volatile("NOP"); }
virtual void virtual_function2() { asm volatile("NOP"); }
};
class Derived : public Base {
public:
void virtual_function2() override { asm volatile("NOP"); }
};
__attribute__((noinline))
void foo(Base *BV) {
BV->virtual_function1();
}
void bar() {
Base *b = new Derived();
foo(b);
}
```
Here is the IR without enabling speculative devirtualization:
```
define dso_local void @_Z3fooP4Base(ptr noundef %BV) local_unnamed_addr #0 {
entry:
%vtable = load ptr, ptr %BV, align 8, !tbaa !6
%0 = load ptr, ptr %vtable, align 8
tail call void %0(ptr noundef nonnull align 8 dereferenceable(8) %BV)
ret void
}
```
IR after enabling speculative devirtualization:
```
define dso_local void @_Z3fooP4Base(ptr noundef %BV) local_unnamed_addr #0 {
entry:
%vtable = load ptr, ptr %BV, align 8, !tbaa !12
%0 = load ptr, ptr %vtable, align 8
%1 = icmp eq ptr %0, @_ZN4Base17virtual_function1Ev
br i1 %1, label %if.true.direct_targ, label %if.false.orig_indirect, !prof !15
if.true.direct_targ: ; preds = %entry
tail call void @_ZN4Base17virtual_function1Ev(ptr noundef nonnull align 8 dereferenceable(8) %BV)
br label %if.end.icp
if.false.orig_indirect: ; preds = %entry
tail call void %0(ptr noundef nonnull align 8 dereferenceable(8) %BV)
br label %if.end.icp
if.end.icp: ; preds = %if.false.orig_indirect, %if.true.direct_targ
ret void
}
```
Commit: 3fc741923643040cc17ef9562983994e73c74efb
https://github.com/llvm/llvm-project/commit/3fc741923643040cc17ef9562983994e73c74efb
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-12-07 (Sun, 07 Dec 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/VPlan.h
M llvm/lib/Transforms/Vectorize/VPlanAnalysis.cpp
M llvm/lib/Transforms/Vectorize/VPlanConstruction.cpp
M llvm/lib/Transforms/Vectorize/VPlanPatternMatch.h
M llvm/lib/Transforms/Vectorize/VPlanPredicator.cpp
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/lib/Transforms/Vectorize/VPlanUnroll.cpp
M llvm/test/Transforms/LoopVectorize/first-order-recurrence-chains-vplan.ll
M llvm/test/Transforms/LoopVectorize/interleave-and-scalarize-only.ll
M llvm/test/Transforms/LoopVectorize/vplan-printing-reductions.ll
M llvm/test/Transforms/LoopVectorize/vplan-printing.ll
M llvm/unittests/Transforms/Vectorize/VPlanVerifierTest.cpp
Log Message:
-----------
[VPlan] Replace ExtractLast(Elem|LanePerPart) with ExtractLast(Lane/Part) (#164124)
Replace ExtractLastElement and ExtractLastLanePerPart with more generic
and specific ExtractLastLane and ExtractLastPart, which model distinct
parts of extracting across parts and lanes. ExtractLastElement ==
ExtractLastLane(ExtractLastPart) and ExtractLastLanePerPart ==
ExtractLastLane, the latter clarifying the name of the opcode. A new
m_ExtractLastElement matcher is provided for convenience.
The patch should be NFC modulo printing changes.
PR: https://github.com/llvm/llvm-project/pull/164124
Commit: 11fd760e3a13b5c519e49abc7c9e3b684a94e6f8
https://github.com/llvm/llvm-project/commit/11fd760e3a13b5c519e49abc7c9e3b684a94e6f8
Author: Tianqi Chen <tqchen at users.noreply.github.com>
Date: 2025-12-07 (Sun, 07 Dec 2025)
Changed paths:
M mlir/include/mlir-c/ExecutionEngine.h
M mlir/lib/Bindings/Python/ExecutionEngineModule.cpp
M mlir/lib/CAPI/ExecutionEngine/ExecutionEngine.cpp
M mlir/test/CAPI/execution_engine.c
M mlir/test/CAPI/global_constructors.c
M mlir/test/python/execution_engine.py
Log Message:
-----------
[MLIR][ExecutionEngine] Enable PIC option (#170995)
This PR enables the MLIR execution engine to dump object file as PIC
code, which is needed when the object file is later bundled into a dynamic
shared library.
---------
Co-authored-by: Mehdi Amini <joker.eph at gmail.com>
Commit: 68fea00dfb736656ded58e1017733019b9664d88
https://github.com/llvm/llvm-project/commit/68fea00dfb736656ded58e1017733019b9664d88
Author: Alex Voicu <alexandru.voicu at amd.com>
Date: 2025-12-07 (Sun, 07 Dec 2025)
Changed paths:
M clang/lib/CodeGen/Targets/SPIR.cpp
M clang/test/CodeGenCUDA/amdgpu-kernel-arg-pointer-type.cu
M clang/test/CodeGenCUDA/kernel-args.cu
A clang/test/CodeGenHIP/amdgcnspirv-uses-amdgpu-abi.cpp
M llvm/lib/Target/SPIRV/SPIRVCallLowering.cpp
A llvm/test/CodeGen/SPIRV/pointers/ptr-argument-byref-amdgcnspirv.ll
Log Message:
-----------
[SPIRV] Use AMDGPU ABI for AMDGCN flavoured SPIRV (#169865)
At the moment AMDGCN flavoured SPIRV uses the SPIRV ABI with some tweaks
revolving around passing aggregates as direct. This is problematic in
multiple ways:
- it leads to divergence from code compiled for a concrete target, which
makes it difficult to debug;
- it incurs a run time cost, when dealing with larger aggregates;
- it incurs a compile time cost, when dealing with larger aggregates.
This patch switches over AMDGCN flavoured SPIRV to implement the AMDGPU
ABI (except for dealing with variadic functions, which will be added in
the future). One additional complication (and the primary motivation
behind the current less than ideal state of affairs) stems from `byref`,
which AMDGPU uses, not being expressible in SPIR-V. We deal with this by
CodeGen-ing for `byref`, lowering it to the `FuncParamAttr ByVal` in
SPIR-V, and restoring it when doing reverse translation from AMDGCN
flavoured SPIR-V.
Commit: 7bfdaa51f155432346e507d8ce389802c92eb530
https://github.com/llvm/llvm-project/commit/7bfdaa51f155432346e507d8ce389802c92eb530
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2025-12-07 (Sun, 07 Dec 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlanPredicator.cpp
Log Message:
-----------
[VPlan] Fix unused variable warning
llvm-project/llvm/lib/Transforms/Vectorize/VPlanPredicator.cpp:312:19: warning: unused variable 'EB' [-Wunused-variable]
312 | VPBasicBlock *EB = Plan.getExitBlocks().front();
| ^~
This showed up in a non-assertions build.
Commit: 5dbd049662001535a475cdb7d290dfb63a0515fc
https://github.com/llvm/llvm-project/commit/5dbd049662001535a475cdb7d290dfb63a0515fc
Author: Matthias Springer <me at m-sp.org>
Date: 2025-12-07 (Sun, 07 Dec 2025)
Changed paths:
M mlir/include/mlir/Conversion/Passes.td
M mlir/lib/Conversion/ArithToAPFloat/ArithToAPFloat.cpp
M mlir/lib/Conversion/ArithToAPFloat/CMakeLists.txt
M mlir/test/Conversion/ArithToApfloat/arith-to-apfloat.mlir
A mlir/test/Integration/Dialect/Arith/CPU/test-apfloat-emulation-vector.mlir
Log Message:
-----------
[mlir][arith] `arith-to-apfloat`: Add vector support (#171024)
Add support for vectorized operations such as `arith.addf ... :
vector<4xf4E2M1FN>`. The computation is scalarized: scalar operands are
extracted with `vector.to_elements`, multiple scalar computations are
performed and the result is inserted back into a vector with
`vector.from_elements`.
Commit: ffc55815ef3208a3802513c33ac66a122d2fb680
https://github.com/llvm/llvm-project/commit/ffc55815ef3208a3802513c33ac66a122d2fb680
Author: Alex Voicu <alexandru.voicu at amd.com>
Date: 2025-12-07 (Sun, 07 Dec 2025)
Changed paths:
M llvm/lib/Target/SPIRV/SPIRVCallLowering.cpp
M llvm/lib/Target/SPIRV/SPIRVEmitIntrinsics.cpp
M llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.h
M llvm/lib/Target/SPIRV/SPIRVPreLegalizer.cpp
M llvm/lib/Target/SPIRV/SPIRVPrepareFunctions.cpp
M llvm/lib/Target/SPIRV/SPIRVUtils.cpp
M llvm/lib/Target/SPIRV/SPIRVUtils.h
A llvm/test/CodeGen/SPIRV/pointers/fun-with-aggregate-arg-in-const-init.ll
Log Message:
-----------
[SPIRV] Add support for pointers to functions with aggregate args/returns as global variables / constant initialisers (#169595)
This patch does two things:
1. it extends the aggregate arg / ret replacement transform to work on
indirect calls / pointers to function. It is somewhat spread out as
retrieving the original function type is needed in a few places. In
general, we should rethink / rework the entire infrastructure around
aggregate arg/ret handling, using an opaque target specific type rather
than i32;
2. it enables global variables of pointer to function type, and, more
specifically, global variables of a aggregate type (arrays / structures)
with pointer to function elements.
This also exposes some issues in how we handle pointers to function and
lowering indirect function calls, primarily around not using the program
address space. These will be handled in a subsequent patch as they'll
require somewhat more intrusive surgery, possibly involving modifying
the data layout.
Commit: 359cac491195af10e7481f5a322be689ba01a267
https://github.com/llvm/llvm-project/commit/359cac491195af10e7481f5a322be689ba01a267
Author: Victor Chernyakin <chernyakin.victor.j at outlook.com>
Date: 2025-12-07 (Sun, 07 Dec 2025)
Changed paths:
M clang-tools-extra/clang-tidy/fuchsia/MultipleInheritanceCheck.cpp
M clang-tools-extra/clang-tidy/fuchsia/MultipleInheritanceCheck.h
M clang-tools-extra/docs/ReleaseNotes.rst
M clang-tools-extra/test/clang-tidy/checkers/fuchsia/multiple-inheritance.cpp
Log Message:
-----------
[clang-tidy] Don't cache classes by name in `fuchsia-multiple-inheritance` (#171016)
Context: for every class, this check needs to compute whether that class
is an interface (i.e. only has pure virtual methods). This is expensive,
so the check caches the computation. But it caches by class name, which
is problematic, because the same name can refer to different classes at
different scopes. Here's for example a false negative it causes:
https://godbolt.org/z/bMGc5sYqh. This PR changes it to cache by
`CXXRecordDecl *` instead.
Commit: 8378a6fa4f5c83298fb0b5e240bb7f254f7b1137
https://github.com/llvm/llvm-project/commit/8378a6fa4f5c83298fb0b5e240bb7f254f7b1137
Author: Matthias Springer <me at m-sp.org>
Date: 2025-12-07 (Sun, 07 Dec 2025)
Changed paths:
M mlir/test/Integration/Dialect/Arith/CPU/test-apfloat-emulation-vector.mlir
Log Message:
-----------
[mlir][arith] Fix build after #171024 (#171057)
Fix build after #171024.
Commit: 8dfb67dd903b73594ba276c0e9274101ab2abdfc
https://github.com/llvm/llvm-project/commit/8dfb67dd903b73594ba276c0e9274101ab2abdfc
Author: Matthias Springer <me at m-sp.org>
Date: 2025-12-07 (Sun, 07 Dec 2025)
Changed paths:
M .github/CODEOWNERS
M bolt/include/bolt/Core/BinaryContext.h
M bolt/include/bolt/Core/BinaryFunction.h
M bolt/lib/Core/BinaryContext.cpp
M bolt/lib/Core/BinaryFunction.cpp
M bolt/test/X86/unclaimed-jt-entries.s
M bolt/test/runtime/X86/unclaimed-jt-entries.s
M clang-tools-extra/clang-tidy/.clang-tidy
M clang-tools-extra/clang-tidy/ClangTidyDiagnosticConsumer.cpp
M clang-tools-extra/clang-tidy/NoLintDirectiveHandler.cpp
M clang-tools-extra/clang-tidy/altera/StructPackAlignCheck.cpp
M clang-tools-extra/clang-tidy/altera/UnrollLoopsCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/ChainedComparisonCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/DanglingHandleCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/NonZeroEnumToBoolConversionCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/SuspiciousMissingCommaCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/UnsafeFunctionsCheck.cpp
M clang-tools-extra/clang-tidy/fuchsia/MultipleInheritanceCheck.cpp
M clang-tools-extra/clang-tidy/fuchsia/MultipleInheritanceCheck.h
M clang-tools-extra/clang-tidy/llvm/UseNewMLIROpBuilderCheck.cpp
M clang-tools-extra/clang-tidy/misc/ConfusableIdentifierCheck.cpp
M clang-tools-extra/clang-tidy/misc/MisleadingBidirectionalCheck.cpp
M clang-tools-extra/clang-tidy/misc/MisleadingIdentifierCheck.cpp
M clang-tools-extra/clang-tidy/modernize/MakeSmartPtrCheck.cpp
M clang-tools-extra/clang-tidy/openmp/UseDefaultNoneCheck.cpp
M clang-tools-extra/clang-tidy/readability/FunctionCognitiveComplexityCheck.cpp
M clang-tools-extra/clang-tidy/readability/RedundantInlineSpecifierCheck.cpp
M clang-tools-extra/clang-tidy/readability/RedundantStringInitCheck.cpp
M clang-tools-extra/clang-tidy/tool/check_alphabetical_order.py
M clang-tools-extra/clang-tidy/tool/check_alphabetical_order_test.py
M clang-tools-extra/clang-tidy/utils/LexerUtils.cpp
M clang-tools-extra/clang-tidy/utils/TransformerClangTidyCheck.cpp
M clang-tools-extra/clang-tidy/utils/UseRangesCheck.cpp
M clang-tools-extra/docs/ReleaseNotes.rst
M clang-tools-extra/test/clang-tidy/checkers/fuchsia/multiple-inheritance.cpp
M clang-tools-extra/test/clang-tidy/infrastructure/Inputs/param/parameters.txt
M clang-tools-extra/test/clang-tidy/infrastructure/alphabetical-order.test
M clang-tools-extra/test/clang-tidy/infrastructure/empty-database.cpp
M clang-tools-extra/test/clang-tidy/infrastructure/invalid-database.cpp
A clang/docs/ClangIRCodeDuplication.rst
M clang/docs/ReleaseNotes.rst
M clang/docs/UsersManual.rst
M clang/docs/index.rst
M clang/include/clang/AST/IgnoreExpr.h
M clang/include/clang/Basic/CodeGenOptions.def
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/DependencyScanning/DependencyScanningWorker.h
M clang/include/clang/Options/Options.td
M clang/include/clang/Tooling/DependencyScanningTool.h
M clang/lib/AST/ByteCode/Descriptor.cpp
M clang/lib/AST/ByteCode/Descriptor.h
M clang/lib/AST/ByteCode/Disasm.cpp
M clang/lib/AST/ByteCode/EvaluationResult.cpp
M clang/lib/AST/ByteCode/Interp.cpp
M clang/lib/AST/ByteCode/Interp.h
M clang/lib/AST/ByteCode/InterpBuiltin.cpp
M clang/lib/AST/ByteCode/InterpBuiltinBitCast.cpp
M clang/lib/AST/ByteCode/InterpBuiltinBitCast.h
M clang/lib/AST/ByteCode/Pointer.cpp
M clang/lib/AST/ByteCode/Pointer.h
M clang/lib/CIR/CodeGen/CIRGenBuiltin.cpp
M clang/lib/CIR/CodeGen/CIRGenDecl.cpp
M clang/lib/CIR/CodeGen/CIRGenDeclOpenACC.cpp
M clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
M clang/lib/CIR/CodeGen/CIRGenFunction.cpp
M clang/lib/CIR/CodeGen/CIRGenFunction.h
M clang/lib/CIR/CodeGen/CIRGenModule.cpp
M clang/lib/CIR/CodeGen/CIRGenModule.h
M clang/lib/CIR/CodeGen/CIRGenOpenACCClause.cpp
M clang/lib/CIR/CodeGen/CIRGenOpenACCHelpers.h
M clang/lib/CIR/CodeGen/CIRGenStmt.cpp
M clang/lib/CIR/Dialect/IR/CIRDialect.cpp
M clang/lib/CIR/Dialect/Transforms/CIRCanonicalize.cpp
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
M clang/lib/CodeGen/BackendUtil.cpp
M clang/lib/CodeGen/CGBuiltin.cpp
M clang/lib/CodeGen/CGClass.cpp
M clang/lib/CodeGen/CGOpenMPRuntime.cpp
M clang/lib/CodeGen/CGVTables.cpp
M clang/lib/CodeGen/ItaniumCXXABI.cpp
M clang/lib/CodeGen/Targets/SPIR.cpp
M clang/lib/DependencyScanning/DependencyScannerImpl.cpp
M clang/lib/DependencyScanning/DependencyScanningWorker.cpp
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/lib/Format/UnwrappedLineParser.cpp
M clang/lib/Headers/cpuid.h
M clang/lib/Tooling/DependencyScanningTool.cpp
M clang/test/AST/ByteCode/const-eval.c
A clang/test/CIR/CodeGen/atomic-thread-fence.c
M clang/test/CIR/CodeGen/label-values.c
M clang/test/CIR/CodeGen/nrvo.cpp
A clang/test/CIR/CodeGenOpenACC/routine-device_type.cpp
A clang/test/CIR/IR/catch-param.cir
A clang/test/CIR/IR/indirect-br.cir
M clang/test/CIR/IR/try-catch.cir
M clang/test/CodeGen/builtins.c
M clang/test/CodeGenCUDA/amdgpu-kernel-arg-pointer-type.cu
M clang/test/CodeGenCUDA/kernel-args.cu
A clang/test/CodeGenCXX/speculative-devirt-metadata.cpp
A clang/test/CodeGenHIP/amdgcnspirv-uses-amdgpu-abi.cpp
M clang/test/Driver/clang_f_opts.c
M clang/test/Headers/__clang_hip_math.hip
M clang/test/OpenMP/target_defaultmap_codegen_01.cpp
A clang/test/OpenMP/target_firstprivate_pointer_codegen.cpp
M clang/test/OpenMP/target_map_codegen_26.cpp
M clang/unittests/Format/TokenAnnotatorTest.cpp
M compiler-rt/CMakeLists.txt
M compiler-rt/include/sanitizer/asan_interface.h
M compiler-rt/lib/asan/asan_fake_stack.cpp
M compiler-rt/lib/asan/asan_interface.inc
M compiler-rt/lib/asan/asan_thread.cpp
M compiler-rt/lib/asan/asan_thread.h
M compiler-rt/lib/asan_abi/asan_abi.cpp
M compiler-rt/lib/asan_abi/asan_abi.h
M compiler-rt/lib/asan_abi/asan_abi_shim.cpp
M compiler-rt/test/asan/TestCases/Posix/deep_call_stack.cpp
M compiler-rt/test/asan/TestCases/scariness_score_test.cpp
A compiler-rt/test/asan/TestCases/suppress_fake_stack.cpp
A compiler-rt/test/asan/TestCases/suppress_fake_stack_force_disabled.cpp
M compiler-rt/test/lit.common.cfg.py
M compiler-rt/test/profile/Linux/instrprof-debug-info-correlate-debuginfod.c
M flang/include/flang/Lower/CUDA.h
M flang/include/flang/Optimizer/Dialect/CUF/CUFOps.td
M flang/include/flang/Parser/parse-tree.h
M flang/lib/Lower/Allocatable.cpp
M flang/lib/Lower/CUDA.cpp
M flang/lib/Lower/OpenMP/ClauseProcessor.cpp
M flang/lib/Lower/OpenMP/ClauseProcessor.h
M flang/lib/Lower/OpenMP/OpenMP.cpp
M flang/lib/Optimizer/Transforms/CUDA/CUFAllocationConversion.cpp
M flang/lib/Semantics/canonicalize-do.cpp
M flang/lib/Semantics/check-omp-loop.cpp
M flang/test/Fir/CUDA/cuda-allocate.fir
M flang/test/Integration/OpenMP/map-types-and-sizes.f90
M flang/test/Lower/CUDA/cuda-allocatable.cuf
M flang/test/Lower/OpenMP/target.f90
M flang/test/Parser/OpenMP/atomic-label-do.f90
M flang/test/Parser/OpenMP/cross-label-do.f90
M flang/test/Semantics/OpenACC/acc-atomic-validity.f90
M flang/test/Semantics/OpenACC/acc-default-none-function.f90
M flang/test/Semantics/OpenACC/acc-error.f90
M flang/test/Semantics/OpenACC/acc-parallel.f90
M flang/test/Semantics/OpenACC/acc-reduction-validity.f90
M flang/test/Semantics/OpenMP/loop-association.f90
M flang/test/Semantics/allocate14.f90
M flang/test/Semantics/bindings01.f90
M flang/test/Semantics/collectives05.f90
M flang/test/Semantics/data03.f90
M flang/test/Semantics/doconcurrent01.f90
M flang/test/Semantics/doconcurrent05.f90
M flang/test/Semantics/doconcurrent06.f90
M flang/test/Semantics/doconcurrent08.f90
M flang/test/Semantics/dosemantics05.f90
M flang/test/Semantics/dosemantics08.f90
M flang/test/Semantics/dosemantics09.f90
M flang/test/Semantics/dosemantics11.f90
M flang/test/Semantics/dosemantics12.f90
M flang/test/Semantics/etime.f90
M flang/test/Semantics/getcwd.f90
M flang/test/Semantics/getdefinition05.f90
M flang/test/Semantics/io11.f90
M flang/test/Semantics/kinds02.f90
M libc/cmake/modules/LLVMLibCCompileOptionRules.cmake
M libc/config/config.json
M libc/docs/configure.rst
M libc/include/llvm-libc-macros/fenv-macros.h
M libc/src/__support/CPP/bit.h
M libc/src/__support/FPUtil/CMakeLists.txt
M libc/src/__support/FPUtil/FEnvImpl.h
M libc/src/__support/FPUtil/x86_64/FEnvImpl.h
A libc/src/__support/FPUtil/x86_64/fenv_mxcsr_utils.h
A libc/src/__support/FPUtil/x86_64/fenv_x86_common.h
A libc/src/__support/FPUtil/x86_64/fenv_x87_only.h
A libc/src/__support/FPUtil/x86_64/fenv_x87_utils.h
M libc/src/__support/macros/properties/compiler.h
M libc/src/string/string_length.h
M libc/test/UnitTest/FEnvSafeTest.cpp
M libc/test/src/fenv/enabled_exceptions_test.cpp
M libc/test/src/fenv/feholdexcept_test.cpp
M libc/test/src/fenv/getenv_and_setenv_test.cpp
M libc/test/src/math/FModTest.h
M libc/test/src/math/smoke/FModTest.h
M libcxx/docs/ABIGuarantees.rst
M libcxx/docs/ReleaseNotes/22.rst
M libcxx/include/__atomic/atomic.h
M libcxx/include/__atomic/atomic_flag.h
M libcxx/include/__atomic/atomic_ref.h
M libcxx/include/__atomic/atomic_sync.h
M libcxx/include/__atomic/contention_t.h
M libcxx/include/__bit_reference
M libcxx/include/__configuration/abi.h
M libcxx/include/__configuration/availability.h
M libcxx/include/__exception/exception.h
M libcxx/include/__exception/nested_exception.h
M libcxx/include/__exception/operations.h
M libcxx/include/__system_error/error_category.h
M libcxx/include/__system_error/error_code.h
M libcxx/include/__system_error/error_condition.h
M libcxx/include/__system_error/system_error.h
M libcxx/include/bitset
M libcxx/include/stdexcept
M libcxx/lib/abi/CHANGELOG.TXT
M libcxx/lib/abi/arm64-apple-darwin.libcxxabi.v1.stable.exceptions.nonew.abilist
M libcxx/lib/abi/i686-linux-android21.libcxxabi.v1.stable.exceptions.nonew.abilist
M libcxx/lib/abi/powerpc-ibm-aix.libcxxabi.v1.stable.exceptions.nonew.abilist
M libcxx/lib/abi/powerpc64-ibm-aix.libcxxabi.v1.stable.exceptions.nonew.abilist
M libcxx/lib/abi/x86_64-linux-android21.libcxxabi.v1.stable.exceptions.nonew.abilist
M libcxx/lib/abi/x86_64-unknown-freebsd.libcxxabi.v1.stable.exceptions.nonew.abilist
M libcxx/lib/abi/x86_64-unknown-linux-gnu.libcxxabi.v1.stable.exceptions.nonew.abilist
M libcxx/lib/abi/x86_64-unknown-linux-gnu.libcxxabi.v1.stable.noexceptions.nonew.abilist
M libcxx/src/atomic.cpp
M libcxx/test/libcxx/atomics/atomics.syn/wait.issue_85107.pass.cpp
A libcxx/test/libcxx/diagnostics/syserr/nodiscard.verify.cpp
M libcxx/test/libcxx/language.support/nodiscard.verify.cpp
A libcxx/test/libcxx/utilities/template.bitset/nodiscard.verify.cpp
A libcxx/test/std/atomics/atomics.types.operations/atomics.types.operations.wait/lost_wakeup.pass.cpp
M lldb/include/lldb/Host/FileAction.h
M lldb/include/lldb/Target/StackID.h
M lldb/source/Commands/CommandObjectBreakpoint.cpp
M lldb/source/Core/CoreProperties.td
M lldb/source/Core/FormatEntity.cpp
M lldb/source/Host/common/FileAction.cpp
M lldb/source/Host/macosx/objcxx/Host.mm
M lldb/source/Host/posix/ProcessLauncherPosixFork.cpp
M lldb/source/Host/windows/ProcessLauncherWindows.cpp
M lldb/source/Plugins/Process/scripted/ScriptedFrame.cpp
M lldb/source/Plugins/Process/scripted/ScriptedFrame.h
M lldb/source/Target/StackFrame.cpp
M lldb/source/Target/StackFrameList.cpp
M lldb/source/Target/Target.cpp
M lldb/test/API/functionalities/scripted_frame_provider/TestScriptedFrameProvider.py
A lldb/test/API/functionalities/scripted_frame_provider/python_helper.py
M lldb/test/API/functionalities/scripted_frame_provider/test_frame_providers.py
M lldb/test/API/functionalities/scripted_process/dummy_scripted_process.py
M lldb/tools/lldb-dap/DAP.cpp
M lldb/tools/lldb-dap/DAP.h
M lldb/tools/lldb-dap/DAPLog.cpp
M lldb/tools/lldb-dap/DAPLog.h
M lldb/tools/lldb-dap/DAPSessionManager.cpp
M lldb/tools/lldb-dap/EventHelper.cpp
M lldb/tools/lldb-dap/EventHelper.h
M lldb/tools/lldb-dap/Transport.cpp
M lldb/tools/lldb-dap/Transport.h
M lldb/tools/lldb-dap/tool/lldb-dap.cpp
M lldb/unittests/DAP/CMakeLists.txt
A lldb/unittests/DAP/DAPLogTest.cpp
M lldb/unittests/DAP/TestBase.cpp
M lldb/unittests/DAP/TestBase.h
M llvm/docs/ReleaseNotes.md
M llvm/docs/SPIRVUsage.rst
M llvm/include/llvm-c/Core.h
M llvm/include/llvm/CodeGen/MachineFrameInfo.h
M llvm/include/llvm/CodeGen/SelectionDAG.h
M llvm/include/llvm/CodeGen/TargetFrameLowering.h
M llvm/include/llvm/IR/DebugLoc.h
M llvm/include/llvm/IR/Instructions.h
M llvm/include/llvm/IR/Module.h
M llvm/include/llvm/IR/User.h
M llvm/include/llvm/Passes/PassBuilder.h
M llvm/include/llvm/Transforms/IPO/WholeProgramDevirt.h
M llvm/lib/Analysis/AliasAnalysis.cpp
M llvm/lib/Bitcode/Writer/ValueEnumerator.cpp
M llvm/lib/CodeGen/PHIElimination.cpp
M llvm/lib/CodeGen/PrologEpilogInserter.cpp
M llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
M llvm/lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
M llvm/lib/CodeGen/TypePromotion.cpp
M llvm/lib/IR/Core.cpp
M llvm/lib/IR/DebugLoc.cpp
M llvm/lib/IR/Instructions.cpp
M llvm/lib/IR/User.cpp
M llvm/lib/IR/Verifier.cpp
M llvm/lib/Passes/PassBuilderPipelines.cpp
M llvm/lib/Target/AArch64/AArch64.h
M llvm/lib/Target/AArch64/AArch64FrameLowering.cpp
M llvm/lib/Target/AArch64/AArch64FrameLowering.h
A llvm/lib/Target/AArch64/AArch64RedundantCondBranchPass.cpp
M llvm/lib/Target/AArch64/AArch64Subtarget.cpp
M llvm/lib/Target/AArch64/AArch64Subtarget.h
M llvm/lib/Target/AArch64/AArch64TargetMachine.cpp
M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
M llvm/lib/Target/AArch64/CMakeLists.txt
M llvm/lib/Target/AMDGPU/AMDGPUInstCombineIntrinsic.cpp
M llvm/lib/Target/AMDGPU/AMDGPUPromoteAlloca.cpp
M llvm/lib/Target/AMDGPU/AMDGPUSearchableTables.td
M llvm/lib/Target/AMDGPU/CMakeLists.txt
R llvm/lib/Target/AMDGPU/InstCombineTables.td
M llvm/lib/Target/AMDGPU/SIFrameLowering.cpp
M llvm/lib/Target/AMDGPU/SIFrameLowering.h
M llvm/lib/Target/RISCV/RISCVFrameLowering.cpp
M llvm/lib/Target/RISCV/RISCVFrameLowering.h
M llvm/lib/Target/RISCV/RISCVMergeBaseOffset.cpp
M llvm/lib/Target/RISCV/RISCVSchedSiFive7.td
M llvm/lib/Target/RISCV/RISCVSchedTTAscalonD8.td
M llvm/lib/Target/RISCV/RISCVScheduleV.td
M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
M llvm/lib/Target/SPIRV/SPIRVCallLowering.cpp
M llvm/lib/Target/SPIRV/SPIRVCommandLine.cpp
M llvm/lib/Target/SPIRV/SPIRVEmitIntrinsics.cpp
M llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.h
M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
M llvm/lib/Target/SPIRV/SPIRVLegalizerInfo.cpp
M llvm/lib/Target/SPIRV/SPIRVModuleAnalysis.cpp
M llvm/lib/Target/SPIRV/SPIRVPreLegalizer.cpp
M llvm/lib/Target/SPIRV/SPIRVPrepareFunctions.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/X86/X86CompressEVEX.cpp
M llvm/lib/Transforms/IPO/WholeProgramDevirt.cpp
M llvm/lib/Transforms/Instrumentation/MemProfUse.cpp
M llvm/lib/Transforms/Utils/LoopPeel.cpp
M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/VPlan.h
M llvm/lib/Transforms/Vectorize/VPlanAnalysis.cpp
M llvm/lib/Transforms/Vectorize/VPlanConstruction.cpp
M llvm/lib/Transforms/Vectorize/VPlanPatternMatch.h
M llvm/lib/Transforms/Vectorize/VPlanPredicator.cpp
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/lib/Transforms/Vectorize/VPlanUnroll.cpp
A llvm/test/Analysis/CostModel/RISCV/fshl_fshr.ll
M llvm/test/CodeGen/AArch64/O3-pipeline.ll
M llvm/test/CodeGen/AArch64/arm64-rev.ll
M llvm/test/CodeGen/AArch64/arm64-shrink-wrapping.ll
M llvm/test/CodeGen/AArch64/block-placement-optimize-branches.ll
M llvm/test/CodeGen/AArch64/cbz_wzr.mir
M llvm/test/CodeGen/AArch64/pr164181.ll
M llvm/test/CodeGen/AArch64/pr166870.ll
M llvm/test/CodeGen/AArch64/tbz-tbnz.ll
M llvm/test/CodeGen/AArch64/wineh-pac.ll
A llvm/test/CodeGen/AMDGPU/phi-elim-mli-available.mir
A llvm/test/CodeGen/AMDGPU/promote-alloca-cfg.ll
M llvm/test/CodeGen/AMDGPU/promote-alloca-multidim.ll
M llvm/test/CodeGen/AMDGPU/promote-alloca-negative-index.ll
M llvm/test/CodeGen/AMDGPU/promote-alloca-vector-to-vector.ll
A llvm/test/CodeGen/SPIRV/extensions/SPV_NV_shader_atomic_fp16_vector/atomicrmw_faddfsub_vec_float16.ll
A llvm/test/CodeGen/SPIRV/extensions/SPV_NV_shader_atomic_fp16_vector/atomicrmw_fminfmax_vec_float16.ll
A llvm/test/CodeGen/SPIRV/pointers/fun-with-aggregate-arg-in-const-init.ll
A llvm/test/CodeGen/SPIRV/pointers/ptr-argument-byref-amdgcnspirv.ll
M llvm/test/CodeGen/X86/apx/compress-evex.mir
M llvm/test/CodeGen/X86/merge-consecutive-loads-128.ll
M llvm/test/MC/AArch64/seh-large-func.s
M llvm/test/MC/AArch64/seh-optimize.s
M llvm/test/MC/AArch64/seh-packed-unwind.s
M llvm/test/TableGen/x86-instr-mapping.inc
R llvm/test/Transforms/DeadStoreElimination/atomic-todo.ll
M llvm/test/Transforms/DeadStoreElimination/atomic.ll
M llvm/test/Transforms/LoopUnroll/AArch64/apple-unrolling.ll
M llvm/test/Transforms/LoopVectorize/first-order-recurrence-chains-vplan.ll
M llvm/test/Transforms/LoopVectorize/interleave-and-scalarize-only.ll
M llvm/test/Transforms/LoopVectorize/vplan-printing-reductions.ll
M llvm/test/Transforms/LoopVectorize/vplan-printing.ll
M llvm/test/Transforms/PGOProfile/memprof-dump-matched-alloc-site.ll
M llvm/test/Transforms/PGOProfile/memprof-dump-matched-call-sites.ll
A llvm/test/Transforms/PhaseOrdering/speculative-devirt-then-inliner.ll
M llvm/test/Transforms/SimplifyCFG/hoist-common-code.ll
A llvm/test/Transforms/WholeProgramDevirt/devirt-metadata.ll
M llvm/test/tools/UpdateTestChecks/update_llc_test_checks/Inputs/aarch64_generated_funcs.ll.generated.expected
M llvm/test/tools/UpdateTestChecks/update_llc_test_checks/Inputs/aarch64_generated_funcs.ll.nogenerated.expected
M llvm/tools/llvm-ir2vec/llvm-ir2vec.cpp
M llvm/unittests/IR/InstructionsTest.cpp
M llvm/unittests/IR/ModuleTest.cpp
M llvm/unittests/IR/VerifierTest.cpp
M llvm/unittests/Transforms/Vectorize/VPlanVerifierTest.cpp
M llvm/utils/TableGen/X86InstrMappingEmitter.cpp
M llvm/utils/TableGen/X86ManualInstrMapping.def
M llvm/utils/git/code-lint-helper.py
M llvm/utils/gn/secondary/llvm/lib/Target/AArch64/BUILD.gn
M llvm/utils/gn/secondary/llvm/lib/Target/AMDGPU/BUILD.gn
M llvm/utils/profcheck-xfail.txt
M mlir/docs/LangRef.md
M mlir/include/mlir-c/ExecutionEngine.h
M mlir/include/mlir/Conversion/Passes.td
M mlir/include/mlir/Dialect/AMDGPU/IR/AMDGPU.td
M mlir/include/mlir/Dialect/OpenACC/OpenACCUtils.h
M mlir/include/mlir/Dialect/OpenMP/OpenMPEnums.td
M mlir/include/mlir/Dialect/XeGPU/IR/XeGPUOps.td
M mlir/include/mlir/IR/Remarks.h
M mlir/include/mlir/Transforms/RegionUtils.h
M mlir/lib/Analysis/DataFlow/IntegerRangeAnalysis.cpp
M mlir/lib/Bindings/Python/ExecutionEngineModule.cpp
M mlir/lib/CAPI/ExecutionEngine/ExecutionEngine.cpp
M mlir/lib/Conversion/AMDGPUToROCDL/AMDGPUToROCDL.cpp
M mlir/lib/Conversion/ArithToAPFloat/ArithToAPFloat.cpp
M mlir/lib/Conversion/ArithToAPFloat/CMakeLists.txt
M mlir/lib/Conversion/VectorToXeGPU/VectorToXeGPU.cpp
M mlir/lib/Dialect/AMDGPU/IR/AMDGPUDialect.cpp
M mlir/lib/Dialect/Bufferization/Transforms/EmptyTensorElimination.cpp
M mlir/lib/Dialect/OpenACC/Transforms/ACCImplicitData.cpp
M mlir/lib/Dialect/OpenACC/Utils/OpenACCUtils.cpp
M mlir/lib/Dialect/OpenMP/IR/OpenMPDialect.cpp
M mlir/lib/Dialect/XeGPU/IR/XeGPUOps.cpp
M mlir/lib/Dialect/XeGPU/TransformOps/XeGPUTransformOps.cpp
M mlir/lib/Dialect/XeGPU/Transforms/XeGPUOptimizeBlockLoads.cpp
M mlir/lib/Dialect/XeGPU/Transforms/XeGPUUnroll.cpp
M mlir/lib/Dialect/XeGPU/Transforms/XeGPUWgToSgDistribute.cpp
M mlir/lib/IR/Remarks.cpp
M mlir/lib/Target/Cpp/TranslateToCpp.cpp
M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
M mlir/lib/Transforms/Utils/RegionUtils.cpp
M mlir/test/CAPI/execution_engine.c
M mlir/test/CAPI/global_constructors.c
M mlir/test/Conversion/AMDGPUToROCDL/gfx1250.mlir
M mlir/test/Conversion/ArithToApfloat/arith-to-apfloat.mlir
A mlir/test/Dialect/AMDGPU/amdgpu-make-dma-descriptor-fold.mlir
M mlir/test/Dialect/AMDGPU/invalid.mlir
M mlir/test/Dialect/AMDGPU/ops.mlir
M mlir/test/Dialect/Bufferization/Transforms/one-shot-bufferize-empty-tensor-elimination.mlir
M mlir/test/Dialect/XeGPU/xegpu-wg-to-sg-unify-ops.mlir
M mlir/test/Examples/NVGPU/lit.local.cfg
A mlir/test/Integration/Dialect/Arith/CPU/test-apfloat-emulation-vector.mlir
M mlir/test/Interfaces/InferIntRangeInterface/infer-int-range-test-ops.mlir
M mlir/test/Target/Cpp/common-cpp.mlir
M mlir/test/Target/LLVMIR/omptarget-llvm.mlir
M mlir/test/Target/LLVMIR/openmp-todo.mlir
M mlir/test/Transforms/move-operation-deps.mlir
M mlir/test/lib/Transforms/TestTransformsOps.td
M mlir/test/python/execution_engine.py
M mlir/tools/mlir-tblgen/PassGen.cpp
M mlir/unittests/Dialect/OpenACC/OpenACCUtilsTest.cpp
M mlir/unittests/IR/RemarkTest.cpp
A offload/test/offloading/fortran/target-is-device-ptr.f90
M openmp/CMakeLists.txt
A openmp/cmake/modules/LibompCheckFortranFlag.cmake
A openmp/cmake/modules/LibompHandleFlags.cmake
A openmp/cmake/modules/LibompUtils.cmake
A openmp/module/CMakeLists.txt
A openmp/module/omp_lib.F90.var
A openmp/module/omp_lib.h.var
M openmp/runtime/CMakeLists.txt
R openmp/runtime/cmake/LibompCheckFortranFlag.cmake
M openmp/runtime/cmake/LibompExports.cmake
R openmp/runtime/cmake/LibompHandleFlags.cmake
R openmp/runtime/cmake/LibompUtils.cmake
M openmp/runtime/cmake/config-ix.cmake
M openmp/runtime/src/CMakeLists.txt
R openmp/runtime/src/include/omp_lib.F90.var
R openmp/runtime/src/include/omp_lib.h.var
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
M utils/bazel/llvm-project-overlay/llvm/BUILD.bazel
Log Message:
-----------
[𝘀𝗽𝗿] changes introduced through rebase
Created using spr 1.3.8-beta.1
[skip ci]
Compare: https://github.com/llvm/llvm-project/compare/b6da362cdca2...8dfb67dd903b
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