[all-commits] [llvm/llvm-project] 6421bd: [lldb-dap] Creating protocol types for setExceptio...
Aiden Grossman via All-commits
all-commits at lists.llvm.org
Fri Jun 20 10:39:20 PDT 2025
Branch: refs/heads/users/boomanaiden154/ci-test-all-projects-when-ci-scripts-change
Home: https://github.com/llvm/llvm-project
Commit: 6421bd94eabdb71975c75e2c1621a095b3d8b6ad
https://github.com/llvm/llvm-project/commit/6421bd94eabdb71975c75e2c1621a095b3d8b6ad
Author: John Harrison <harjohn at google.com>
Date: 2025-06-16 (Mon, 16 Jun 2025)
Changed paths:
M lldb/packages/Python/lldbsuite/test/tools/lldb-dap/dap_server.py
M lldb/test/API/tools/lldb-dap/breakpoint/TestDAP_setExceptionBreakpoints.py
M lldb/test/API/tools/lldb-dap/exception/objc/Makefile
M lldb/test/API/tools/lldb-dap/exception/objc/TestDAP_exception_objc.py
M lldb/test/API/tools/lldb-dap/exception/objc/main.m
M lldb/tools/lldb-dap/DAP.cpp
M lldb/tools/lldb-dap/DAP.h
M lldb/tools/lldb-dap/ExceptionBreakpoint.cpp
M lldb/tools/lldb-dap/ExceptionBreakpoint.h
M lldb/tools/lldb-dap/Handler/InitializeRequestHandler.cpp
M lldb/tools/lldb-dap/Handler/RequestHandler.h
M lldb/tools/lldb-dap/Handler/SetExceptionBreakpointsRequestHandler.cpp
M lldb/tools/lldb-dap/JSONUtils.cpp
M lldb/tools/lldb-dap/JSONUtils.h
M lldb/tools/lldb-dap/Protocol/ProtocolRequests.cpp
M lldb/tools/lldb-dap/Protocol/ProtocolRequests.h
M lldb/tools/lldb-dap/Protocol/ProtocolTypes.cpp
M lldb/tools/lldb-dap/Protocol/ProtocolTypes.h
M lldb/tools/lldb-dap/ProtocolUtils.cpp
M lldb/tools/lldb-dap/ProtocolUtils.h
M lldb/unittests/DAP/ProtocolTypesTest.cpp
Log Message:
-----------
[lldb-dap] Creating protocol types for setExceptionBreakpoints. (#144153)
This adds new types for setExceptionBreakpoints and adds support for
`supportsExceptionFilterOptions`, which allows exception breakpoints to
set a condition.
While testing this, I noticed that obj-c exception catch breakpoints may
not be working correctly in lldb-dap.
Commit: 97bfb936af4077e8cb6c75664231f27a9989d563
https://github.com/llvm/llvm-project/commit/97bfb936af4077e8cb6c75664231f27a9989d563
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M llvm/include/llvm/CodeGen/TargetLowering.h
M llvm/include/llvm/IR/RuntimeLibcalls.h
M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
M llvm/lib/IR/RuntimeLibcalls.cpp
M llvm/lib/Target/ARM/ARMISelLowering.cpp
Log Message:
-----------
DAG: Move soft float predicate management into RuntimeLibcalls (#142905)
Work towards making RuntimeLibcalls the centralized location for
all libcall information. This requires changing the encoding from
tracking the ISD::CondCode to using CmpInst::Predicate.
Commit: 1ffd9f553ccba27c0def5f38e7928af8f3976bac
https://github.com/llvm/llvm-project/commit/1ffd9f553ccba27c0def5f38e7928af8f3976bac
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M llvm/include/llvm/IR/RuntimeLibcalls.h
M llvm/lib/IR/RuntimeLibcalls.cpp
Log Message:
-----------
RuntimeLibcalls: Cleanup sincos predicate functions (#143081)
The darwinHasSinCos wasn't actually used for sincos, only the stret
variant. Rename this to reflect that, and introduce a new one for
enabling sincos.
Commit: 9bd234a4330c6882f23ebf1f7861c5ec97e74d95
https://github.com/llvm/llvm-project/commit/9bd234a4330c6882f23ebf1f7861c5ec97e74d95
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M llvm/lib/IR/RuntimeLibcalls.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
Log Message:
-----------
AArch64: Move outline atomic libcalls configuration (#144374)
This de-conditionalizes the setting of the libcall names
on outlineAtomics() && !hasLSE(). The existence of the
libcall is a module level property, which cannot depend on the
subtarget so this is fine. It's better if the initial list of
calls has more entries than will be used than to have missing
ones. There aren't any alternative names set, so this is also
fine.
Currently RuntimeLibcallsInfo conflates the existence of the calls
with the lowering usage decision, so this suboptimally will report
the libcall name on subtargets that should not use the calls. This
doesn't matter in this case though, as the atomic lowering actions
are already separately controlled and aren't based on decisions on
libcall availability. We could be paranoid and clear the names in
TargetLowering.
Also fixes not catching all aarch64 triples in the RuntimeLibcallsInfo
construction; the previous check missed aarch64_be.
Commit: 24631e5440eed3093dfb52e7a631504b71845923
https://github.com/llvm/llvm-project/commit/24631e5440eed3093dfb52e7a631504b71845923
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M llvm/lib/IR/RuntimeLibcalls.cpp
M llvm/test/CodeGen/AArch64/arm64ec-builtins.ll
Log Message:
-----------
AArch64: Fix outline atomic libcall names for arm64ec (#144378)
Add a missing # prefix to each libcall name
Commit: 6e8cf9c63f643768a1d54a9ce2a73a570429c4bc
https://github.com/llvm/llvm-project/commit/6e8cf9c63f643768a1d54a9ce2a73a570429c4bc
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M llvm/test/CodeGen/AArch64/arm64ec-builtins.ll
Log Message:
-----------
AArch64: Add arm64ec libcall tests for __arm_sc_* functions (#144356)
Commit: d4e2c0b359ea90236fd1b62791a04fb845f5d9f3
https://github.com/llvm/llvm-project/commit/d4e2c0b359ea90236fd1b62791a04fb845f5d9f3
Author: Bryan Chan <bryan.chan at huawei.com>
Date: 2025-06-16 (Mon, 16 Jun 2025)
Changed paths:
M clang/include/clang/Driver/Options.td
M clang/lib/Driver/ToolChains/Fuchsia.cpp
M clang/lib/Driver/ToolChains/Gnu.cpp
M clang/test/Driver/android-link.cpp
Log Message:
-----------
[Driver] Add options to control workaround for Cortex-A53 Erratum 843419 (#143915)
Implement the -mfix-cortex-a53-843419 and -mno-fix-cortex-a53-843419 options,
which have been introduced to GCC to allow the user to control the workaround
for the erratum. If the option is enabled (which is the default, unchanged by
this patch), Clang passes --fix-cortex-a53-843419 to the linker when it cannot
ensure that the target is not a Cortex A53, otherwise it doesn't.
See https://gcc.gnu.org/onlinedocs/gcc/AArch64-Options.html#index-mfix-cortex-a53-843419
for information on the GCC options.
Commit: 8b1528fad99a18d2e094968f1341efb3048a23da
https://github.com/llvm/llvm-project/commit/8b1528fad99a18d2e094968f1341efb3048a23da
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M llvm/include/llvm/IR/RuntimeLibcalls.h
M llvm/lib/IR/RuntimeLibcalls.cpp
Log Message:
-----------
RuntimeLibcalls: Use array initializers for default values (#143082)
Commit: f626620e33ba2c76ba226ecaeb09c320b60aa4d9
https://github.com/llvm/llvm-project/commit/f626620e33ba2c76ba226ecaeb09c320b60aa4d9
Author: Rahul Joshi <rjoshi at nvidia.com>
Date: 2025-06-16 (Mon, 16 Jun 2025)
Changed paths:
M llvm/utils/TableGen/Common/CodeGenInstruction.cpp
M llvm/utils/TableGen/Common/CodeGenInstruction.h
Log Message:
-----------
[LLVM][TableGen] Use `StringRef` for CodeGenInstruction::AsmString (#144440)
Commit: 2e3d212e40bc6fca9fbe53978a87c901eb19a01d
https://github.com/llvm/llvm-project/commit/2e3d212e40bc6fca9fbe53978a87c901eb19a01d
Author: Jinyang He <hejinyang at loongson.cn>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchAsmBackend.cpp
M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchAsmBackend.h
M llvm/test/MC/LoongArch/Misc/cfi-advance.s
M llvm/test/MC/LoongArch/Relocations/fde-reloc.s
M llvm/test/MC/LoongArch/Relocations/sub-expr.s
Log Message:
-----------
[LoongArch] Allow difference across sections (#141722)
For SecA != SecB but SecB is current section, fallback for pcrel{64,32}
relocations. For linker relaxation being disabled and SecA == SecB,
return directly for avoid record relocations. In other cases, record
relocations which also allows across sections.
Commit: ab7aaaca93a0670e96a454136bb9cf13bb1ae372
https://github.com/llvm/llvm-project/commit/ab7aaaca93a0670e96a454136bb9cf13bb1ae372
Author: Slava Zakharin <szakharin at nvidia.com>
Date: 2025-06-16 (Mon, 16 Jun 2025)
Changed paths:
M flang/test/Semantics/modfile75.F90
Log Message:
-----------
[flang][tests] Remove stale module files to fix buildbots.
Commit: 9093bc7eff33b002d7f16d4d62ff1af2a5a993f8
https://github.com/llvm/llvm-project/commit/9093bc7eff33b002d7f16d4d62ff1af2a5a993f8
Author: Jim Lin <jim at andestech.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
A llvm/test/tools/llvm-exegesis/RISCV/unsupported-opcode.test
M llvm/tools/llvm-exegesis/lib/Target.cpp
Log Message:
-----------
[llvm-exegesis] Ignore the instructions for which InstrDesc.getSchedClass() == 0 (#143840)
This allows llvm-exegesis to skip instructions that lack scheduling
information, avoiding invalid benchmarking. e.g. `InstB` in RISC-V.
Commit: 602c3089f749ec3b61b93652ea9eb5947a61bcf2
https://github.com/llvm/llvm-project/commit/602c3089f749ec3b61b93652ea9eb5947a61bcf2
Author: Pengcheng Wang <wangpengcheng.pp at bytedance.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M llvm/include/llvm/TargetParser/SubtargetFeature.h
Log Message:
-----------
[TargetParser] Increase MAX_SUBTARGET_FEATURES to 384 (#144326)
There are 314 features in RISC-V backend, which is about to exceed
the maxinum 320 as there are some ongoing new extensions.
We increase the `MAX_SUBTARGET_FEATURES` to 384 so that we won't
surprise anyone.
Commit: a02afb0def589ec28f8240ff15760e5f241b833c
https://github.com/llvm/llvm-project/commit/a02afb0def589ec28f8240ff15760e5f241b833c
Author: Fangrui Song <i at maskray.me>
Date: 2025-06-16 (Mon, 16 Jun 2025)
Changed paths:
M llvm/lib/Target/AVR/MCTargetDesc/AVRMCAsmInfo.cpp
M llvm/lib/Target/AVR/MCTargetDesc/AVRMCAsmInfo.h
M llvm/lib/Target/AVR/MCTargetDesc/AVRMCExpr.cpp
M llvm/lib/Target/AVR/MCTargetDesc/AVRMCExpr.h
Log Message:
-----------
AVR: Migrate to the new relocation specifier representation
Define printImpl and evaluateAsRelocationImpl within AVRMCAsmInfo.
Commit: 199428e0472c80d9b742d0a3e492ab902005fb6a
https://github.com/llvm/llvm-project/commit/199428e0472c80d9b742d0a3e492ab902005fb6a
Author: Jorge Gorbe Moya <jgorbe at google.com>
Date: 2025-06-16 (Mon, 16 Jun 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/lld/BUILD.bazel
Log Message:
-----------
[bazel][lld] Remove unneeded dependencies. (#144455)
As far as I can tell these are not used in any includes in their
respective targets, and building all of LLD with
```
bazel build --config=generic_clang @llvm-project//lld/...
```
still works.
Commit: 30350afd023c4e9583d5a8bbfd56af7c354923fa
https://github.com/llvm/llvm-project/commit/30350afd023c4e9583d5a8bbfd56af7c354923fa
Author: Fangrui Song <i at maskray.me>
Date: 2025-06-16 (Mon, 16 Jun 2025)
Changed paths:
M llvm/include/llvm/MC/MCAsmInfo.h
M llvm/include/llvm/MC/MCExpr.h
M llvm/lib/MC/MCAsmInfo.cpp
M llvm/lib/MC/MCExpr.cpp
Log Message:
-----------
MCSpecifierExpr: Remove unused virtual functions
... now that all targets using MCSpecifierExpr have migrated to
XXXMCAsmInfo::printExpr/evaluateAsRelocatableImpl.
Commit: 7caeec599998bd8aa01d498574e148e4e9c982db
https://github.com/llvm/llvm-project/commit/7caeec599998bd8aa01d498574e148e4e9c982db
Author: Kareem Ergawy <kareem.ergawy at amd.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M flang/lib/Lower/OpenMP/OpenMP.cpp
Log Message:
-----------
[NFC][flang][OpenMP] Unify `genSectionsOp`'s prototype to match other `genXXXOp` functions (#144013)
Unifies the prototype of `genSectionsOp` to match other ops generators.
Doing so, we are able to call `genSectionsOp` directtly from
`genOMPDispatch` instead of the special handling needed now to pass the
section blocks. This is useful because now we can handle symbol mapping
scopes easier for nested OpenMP directives. See
https://github.com/llvm/llvm-project/pull/143706#issuecomment-2965344723
and the following discussion for more info.
Commit: b5dbf8210a57b986b9802304745f4c5c108cf37b
https://github.com/llvm/llvm-project/commit/b5dbf8210a57b986b9802304745f4c5c108cf37b
Author: Kareem Ergawy <kareem.ergawy at amd.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M flang/lib/Lower/Bridge.cpp
M flang/test/Lower/do_concurrent_delayed_locality.f90
M flang/test/Lower/do_concurrent_local_assoc_entity.f90
M flang/test/Lower/do_concurrent_local_default_init.f90
M flang/test/Lower/loops.f90
M flang/test/Lower/loops3.f90
Log Message:
-----------
[flang] Enable delayed localization by default for `do concurrent` (#144074)
Reintroduces changes from
https://github.com/llvm/llvm-project/issues/143897. A fix for the
reported problem in https://github.com/llvm/llvm-project/issues/143897
is hopefully resolved in
https://github.com/llvm/llvm-project/pull/144027.
This PR aims to make it easier and more self-contained to revert the
switch/flag if we discover any problems with enabling it by default.
Commit: 2dc58e02cbce83784a38b4cc33f83529ad1a7c7e
https://github.com/llvm/llvm-project/commit/2dc58e02cbce83784a38b4cc33f83529ad1a7c7e
Author: Kareem Ergawy <kareem.ergawy at amd.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M flang/lib/Lower/OpenMP/OpenMP.cpp
R flang/test/Lower/OpenMP/Todo/target-parallel-private.f90
R flang/test/Lower/OpenMP/Todo/target-teams-private.f90
A flang/test/Lower/OpenMP/target-parallel-private.f90
A flang/test/Lower/OpenMP/target-teams-private.f90
Log Message:
-----------
[flang][OpenMP] Add symbol table scopes for `teams` and `parallel` (#144015)
Adds symbol map scopes for standalone `teams` and `parallel` constructs.
This is required to properly bind the privatized symbols in both
constructs so that nested constructs can find them.
Resolves https://github.com/llvm/llvm-project/issues/116428.
Commit: 84d879d6999b61cea3f9f200df57653f5a51ee41
https://github.com/llvm/llvm-project/commit/84d879d6999b61cea3f9f200df57653f5a51ee41
Author: Sam Elliott <quic_aelliott at quicinc.com>
Date: 2025-06-16 (Mon, 16 Jun 2025)
Changed paths:
M llvm/include/llvm/BinaryFormat/ELFRelocs/RISCV_nonstandard.def
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVAsmBackend.cpp
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVELFObjectWriter.cpp
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVFixupKinds.h
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCCodeEmitter.cpp
Log Message:
-----------
[RISCV] Rename Relocation QC_E_JUMP_PLT to QC_E_CALL_PLT (#143998)
The semantics and definition of this relocation are unchanged. The new
name reflects that instructions with the relocation should be assumed to
clobber non-callee-saved registers, as with the R_RISCV_CALL_PLT
relocation.
The name was changed in v0.2 of the ABI extensions:
https://github.com/quic/riscv-elf-psabi-quic-extensions/releases/tag/v0.2
Commit: c0ac95181eededc85027d63fe9f97bc742b7a552
https://github.com/llvm/llvm-project/commit/c0ac95181eededc85027d63fe9f97bc742b7a552
Author: Sam Elliott <quic_aelliott at quicinc.com>
Date: 2025-06-16 (Mon, 16 Jun 2025)
Changed paths:
M clang/include/clang/Basic/AttrDocs.td
M clang/test/Driver/print-supported-extensions-riscv.c
M llvm/docs/RISCVUsage.rst
M llvm/lib/Target/RISCV/RISCVFeatures.td
M llvm/test/CodeGen/RISCV/attributes.ll
M llvm/unittests/TargetParser/RISCVISAInfoTest.cpp
Log Message:
-----------
[RISCV] Update Xqci to v0.13.0 (#144398)
Commit: 98c6c371d6dc09454d541474ef65a0e47c4baae6
https://github.com/llvm/llvm-project/commit/98c6c371d6dc09454d541474ef65a0e47c4baae6
Author: Sam Elliott <quic_aelliott at quicinc.com>
Date: 2025-06-16 (Mon, 16 Jun 2025)
Changed paths:
M clang/test/Driver/print-supported-extensions-riscv.c
M llvm/docs/RISCVUsage.rst
M llvm/lib/Target/RISCV/RISCVFeatures.td
M llvm/test/CodeGen/RISCV/attributes.ll
M llvm/unittests/TargetParser/RISCVISAInfoTest.cpp
Log Message:
-----------
[RISCV] Xqccmp v0.3 (#137854)
All the changes for v0.2 and v0.3 are either already implemented, or
irrelevant to the compiler implementation.
Commit: e86740e6003739a41139d94e1643a3207f8fd8f8
https://github.com/llvm/llvm-project/commit/e86740e6003739a41139d94e1643a3207f8fd8f8
Author: no92 <no92 at users.noreply.github.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M clang/lib/Basic/Targets.cpp
M clang/lib/Basic/Targets/OSTargets.h
M clang/lib/Driver/CMakeLists.txt
M clang/lib/Driver/Driver.cpp
M clang/lib/Driver/ToolChains/Gnu.cpp
A clang/lib/Driver/ToolChains/Managarm.cpp
A clang/lib/Driver/ToolChains/Managarm.h
M clang/lib/Lex/InitHeaderSearch.cpp
A clang/test/Driver/Inputs/basic_managarm_tree/lib/aarch64-managarm-mlibc/.keep
A clang/test/Driver/Inputs/basic_managarm_tree/lib/riscv64-managarm-mlibc/.keep
A clang/test/Driver/Inputs/basic_managarm_tree/lib/x86_64-managarm-mlibc/.keep
A clang/test/Driver/Inputs/basic_managarm_tree/lib64/aarch64-managarm-mlibc/.keep
A clang/test/Driver/Inputs/basic_managarm_tree/lib64/riscv64-managarm-mlibc/.keep
A clang/test/Driver/Inputs/basic_managarm_tree/lib64/x86_64-managarm-mlibc/.keep
A clang/test/Driver/Inputs/basic_managarm_tree/usr/include/aarch64-managarm-mlibc/c++/10/.keep
A clang/test/Driver/Inputs/basic_managarm_tree/usr/include/c++/10/.keep
A clang/test/Driver/Inputs/basic_managarm_tree/usr/include/c++/v1/.keep
A clang/test/Driver/Inputs/basic_managarm_tree/usr/include/riscv64-managarm-mlibc/c++/10/.keep
A clang/test/Driver/Inputs/basic_managarm_tree/usr/include/x86_64-managarm-mlibc/c++/10/.keep
A clang/test/Driver/Inputs/basic_managarm_tree/usr/lib/aarch64-managarm-mlibc/.keep
A clang/test/Driver/Inputs/basic_managarm_tree/usr/lib/gcc/aarch64-managarm-mlibc/10/crtbegin.o
A clang/test/Driver/Inputs/basic_managarm_tree/usr/lib/gcc/aarch64-managarm-mlibc/10/crtbeginS.o
A clang/test/Driver/Inputs/basic_managarm_tree/usr/lib/gcc/aarch64-managarm-mlibc/10/crtbeginT.o
A clang/test/Driver/Inputs/basic_managarm_tree/usr/lib/gcc/riscv64-managarm-mlibc/10/crtbegin.o
A clang/test/Driver/Inputs/basic_managarm_tree/usr/lib/gcc/riscv64-managarm-mlibc/10/crtbeginS.o
A clang/test/Driver/Inputs/basic_managarm_tree/usr/lib/gcc/riscv64-managarm-mlibc/10/crtbeginT.o
A clang/test/Driver/Inputs/basic_managarm_tree/usr/lib/gcc/x86_64-managarm-mlibc/10/crtbegin.o
A clang/test/Driver/Inputs/basic_managarm_tree/usr/lib/gcc/x86_64-managarm-mlibc/10/crtbeginS.o
A clang/test/Driver/Inputs/basic_managarm_tree/usr/lib/gcc/x86_64-managarm-mlibc/10/crtbeginT.o
A clang/test/Driver/Inputs/basic_managarm_tree/usr/lib/riscv64-managarm-mlibc/.keep
A clang/test/Driver/Inputs/basic_managarm_tree/usr/lib/x86_64-managarm-mlibc/.keep
A clang/test/Driver/Inputs/basic_managarm_tree/usr/lib64/.keep
A clang/test/Driver/managarm.cpp
M clang/test/Preprocessor/init.c
M clang/test/Preprocessor/predefined-macros-no-warnings.c
Log Message:
-----------
[clang] Add managarm support (#139271)
This PR is part of a series to upstream managarm support, as laid out in
the
[RFC](https://discourse.llvm.org/t/rfc-new-proposed-managarm-support-for-llvm-and-clang-87845/85884/1).
This PR is a follow-up to #87845 and #138854.
Commit: 41b9d28327bf20befe63a683b2a2f90670837b2f
https://github.com/llvm/llvm-project/commit/41b9d28327bf20befe63a683b2a2f90670837b2f
Author: Paschalis Mpeis <paschalis.mpeis at arm.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M bolt/test/lit.local.cfg
Log Message:
-----------
[BOLT][NFC] Using target_triple in lit config (#144078)
Commit: 7e6c1bd3edf4fc19be70587a4ac33a76bab78c02
https://github.com/llvm/llvm-project/commit/7e6c1bd3edf4fc19be70587a4ac33a76bab78c02
Author: Amir Ayupov <aaupov at fb.com>
Date: 2025-06-16 (Mon, 16 Jun 2025)
Changed paths:
M bolt/include/bolt/Profile/DataAggregator.h
M bolt/lib/Profile/DataAggregator.cpp
Log Message:
-----------
[BOLT][NFCI] Simplify DataAggregator using traces (#143289)
Consistently apply traces as defined in #127125 for branch profile
aggregation. This combines branches and fall-through records into one.
With large input binaries/profiles, the speed up in aggregation time
(`-time-aggr`, wall time):
- perf.data, pre-BOLT input: 154.5528s -> 144.0767s
- pre-aggregated data, pre-BOLT input: 15.1026s -> 9.0711s
- pre-aggregated data, BOLTed input: 15.4871s -> 10.0077s
Test Plan: NFC
Commit: 80b79ce432bbe12701fd9fe495ff9feeb5e4b9ca
https://github.com/llvm/llvm-project/commit/80b79ce432bbe12701fd9fe495ff9feeb5e4b9ca
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M llvm/lib/Analysis/ConstantFolding.cpp
M llvm/test/Transforms/InstSimplify/ConstProp/loads.ll
Log Message:
-----------
[ConstantFolding] Handle reading from type padding (#144330)
ReadDataFromGlobal() did not handle reads from the padding of types (in
the sense of type store size != type alloc size, rather than struct
padding).
Return zero in that case.
Fixes https://github.com/llvm/llvm-project/issues/144279.
Commit: bb70023cbfecf7880e4cc89966947ef475e070e9
https://github.com/llvm/llvm-project/commit/bb70023cbfecf7880e4cc89966947ef475e070e9
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M llvm/lib/Analysis/MemoryLocation.cpp
M llvm/test/Transforms/DeadStoreElimination/trivial-dse-calls.ll
Log Message:
-----------
[MemoryLocation][DSE] Allow other read effects in MemoryLocation::getForDest() (#144343)
MemoryLocation::getForDest() returns a (potentially) written location,
while still allowing other reads. Currently, this is limited to
argmemonly functions. However, we can ignore other (non-argmem) read
effects here for the same reason we can ignore argument reads.
Fixes https://github.com/llvm/llvm-project/issues/144300.
Proof: https://alive2.llvm.org/ce/z/LKq_dc
Commit: 632151fbeea972f4aa3c14921eca1e45c07646f3
https://github.com/llvm/llvm-project/commit/632151fbeea972f4aa3c14921eca1e45c07646f3
Author: gaynor-anthropic <gaynor at anthropic.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineAddSub.cpp
M llvm/test/Transforms/InstCombine/add.ll
Log Message:
-----------
InstCombine: improve optimizations for ceiling division with no overflow (#142869)
Fixes #142497.
Alive2: https://alive2.llvm.org/ce/z/CeaHaH
The contents of this pull request were substantially written using
claude-code. I've reviewed to the best of my ability (it's been years
since I did any compilers work).
---------
Co-authored-by: Yingwei Zheng <dtcxzyw at qq.com>
Co-authored-by: Nikita Popov <github at npopov.com>
Commit: c564ebba22ae9af315e08789c628810a3bbcf3df
https://github.com/llvm/llvm-project/commit/c564ebba22ae9af315e08789c628810a3bbcf3df
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
Log Message:
-----------
[X86] combineEXTRACT_SUBVECTOR - move AVX1 ANDNP comment and fold back together. NFC.
These appear to have been split by a merge at some point.
Commit: cb355def9561e2d1d4b363f44dcedf5522f0f8a1
https://github.com/llvm/llvm-project/commit/cb355def9561e2d1d4b363f44dcedf5522f0f8a1
Author: Jack Styles <jack.styles at arm.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M flang/include/flang/Parser/dump-parse-tree.h
M flang/include/flang/Parser/parse-tree.h
M flang/lib/Lower/OpenMP/Clauses.cpp
M flang/lib/Parser/openmp-parsers.cpp
M flang/lib/Semantics/check-omp-structure.cpp
A flang/test/Lower/OpenMP/Todo/omp-clause-indirect.f90
A flang/test/Parser/OpenMP/declare-target-indirect-tree.f90
A flang/test/Semantics/indirect01.f90
A flang/test/Semantics/indirect02.f90
M llvm/include/llvm/Frontend/OpenMP/ClauseT.h
M llvm/include/llvm/Frontend/OpenMP/OMP.td
Log Message:
-----------
[Flang][OpenMP] Add Parsing support for Indirect Clause (#143505)
As part of OpenMP Version 5.1, support for the `indirect` clause was
added for the `declare target` directive. This clause should follow an
`enter` clause, and allows procedure calls to be done indirectly through
OpenMP.
This adds Parsing support for the clause, along with semantics checks.
Currently, lowering for the clause is not supported so a TODO message
will be outputted to the user. It also performs version checking as
`indirect` is only support in OpenMP 5.1 or greater.
See also: #110008
Commit: 90905a638e483dd9040c153785148fcea7c3e412
https://github.com/llvm/llvm-project/commit/90905a638e483dd9040c153785148fcea7c3e412
Author: Dhruv Srivastava <dhruv.srivastava at ibm.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M lldb/source/Plugins/ObjectFile/XCOFF/ObjectFileXCOFF.cpp
A lldb/test/Shell/ObjectFile/XCOFF/symbol-info.yaml
A lldb/test/Shell/ObjectFile/XCOFF/symbol-info32.yaml
Log Message:
-----------
[lldb][AIX] Added XCOFF ParseSymtab handling (#141577)
This PR is in reference to porting LLDB on AIX.
Link to discussions on llvm discourse and github:
1. https://discourse.llvm.org/t/port-lldb-to-ibm-aix/80640
2. https://github.com/llvm/llvm-project/issues/101657
The complete changes for porting are present in this draft PR:
https://github.com/llvm/llvm-project/pull/102601
**Description:**
Adding ParseSymtab logic after creating sections. It is able to handle
both 32 and 64 bit symbols,
without the need to add template logic.
This is an incremental PR on top of my previous couple of XCOFF support
commits.
Commit: 437945b28838c71fb32a76f6433cef8807967f71
https://github.com/llvm/llvm-project/commit/437945b28838c71fb32a76f6433cef8807967f71
Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64FrameLowering.cpp
Log Message:
-----------
[AArch64][SVE] Move incorrectly placed assert (#144318)
This assert is only valid if FPAfterSVECalleeSaves is true, for the
default layout resolving CSR works correctly.
Commit: 85b110e0419af4b1b9a238b6978029e20010e794
https://github.com/llvm/llvm-project/commit/85b110e0419af4b1b9a238b6978029e20010e794
Author: Andrzej Warzyński <andrzej.warzynski at arm.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M mlir/docs/Dialects/Vector.md
Log Message:
-----------
[mlir][vector] Add documentation note on adding new ops (#144308)
This adds a note requesting that additions of new ops to the Vector
dialect go through an RFC process. The goal is to clarify expectations
for contributors.
Note: this documents an existing (though previously unwritten)
convention. See, e.g.:
* https://discourse.llvm.org/t/rfc-adding-vector-to-elements-op-to-the-vector-dialect
* https://discourse.llvm.org/t/rfc-improving-gather-codegen-for-vector-dialect
Commit: e2551c14d0d9180ccaef9d33c524d83e7813a361
https://github.com/llvm/llvm-project/commit/e2551c14d0d9180ccaef9d33c524d83e7813a361
Author: Arseniy Zaostrovnykh <necto.ne at gmail.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M clang/lib/StaticAnalyzer/Checkers/MallocChecker.cpp
M clang/test/Analysis/NewDelete-checker-test.cpp
Log Message:
-----------
[analyzer] Fix a false memory leak reports involving placement new (#144341)
Placement new does not allocate memory, so it should not be reported as
a memory leak. A recent MallocChecker refactor changed inlining of
placement-new calls with manual evaluation by MallocChecker.
https://github.com/llvm/llvm-project/commit/339282d49f5310a2837da45c0ccc19da15675554
This change avoids marking the value returned by placement new as
allocated and hence avoids the false leak reports.
Note that the there are two syntaxes to invoke placement new:
`new (p) int` and an explicit operator call `operator new(sizeof(int), p)`.
The first syntax was already properly handled by the engine.
This change corrects handling of the second syntax.
CPP-6375
Commit: 308b97a5d48583680f56b888165295c62744b9e5
https://github.com/llvm/llvm-project/commit/308b97a5d48583680f56b888165295c62744b9e5
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M llvm/test/Transforms/LICM/funclet.ll
Log Message:
-----------
[LICM] Regenerate test checks (NFC)
Commit: 2c90ebf3a79e25db3e6bcd9b3a66590b5996de4d
https://github.com/llvm/llvm-project/commit/2c90ebf3a79e25db3e6bcd9b3a66590b5996de4d
Author: Abid Qadeer <haqadeer at amd.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
A mlir/test/Target/LLVMIR/omptarget-debug-loop-loc.mlir
Log Message:
-----------
[OMPIRBuilder][debug] Don't drop debug info for loop constructs. (#144393)
In OMPIRBuilder, we have many cases where we don't handle the debug
location correctly while changing the location or insertion point. This
is one of those cases.
Please see the following test program.
```
program main
implicit none
integer i, j
integer array(16384)
!$omp target teams distribute
DO i=1,16384
!$omp parallel do
DO j=1,16384
array(j) = i
ENDDO
!$omp end parallel do
ENDDO
!$omp end target teams distribute
print *, array
end program main
```
When tried to compile with the follownig command
`flang -g -O2 -fopenmp test.f90 -o test --offload-arch=gfx90a`
will fail in the verification with the following errors: `!dbg
attachment points at wrong subprogram for function`
This happens because we were dropping the debug location in the
createCanonicalLoop and the call to the functions like
`__kmpc_distribute_static_4u` get generated without a debug location.
When it gets inlined, the locations inside it are not adjusted as the
call instruction does not have the debug locations
(`llvm/lib/Transforms/Utils/InlineFunction.cpp:fixupLineNumbers`). Later
Verifier finds that the caller have instructions with debug locations
that point to another function and fails.
The fix is simple to not drop the debug location.
Commit: 0f8c72160ec001599ecb29f0fa182c5550f5dd0a
https://github.com/llvm/llvm-project/commit/0f8c72160ec001599ecb29f0fa182c5550f5dd0a
Author: Dmitry Polukhin <34227995+dmpolukhin at users.noreply.github.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M clang/include/clang/Serialization/ASTWriter.h
M clang/lib/Serialization/ASTWriter.cpp
A clang/test/Modules/preferred_name_header_unit.cpp
Log Message:
-----------
[C++20][Modules] Disable preferred_name when writing a C++20 header unit (#144377)
https://reviews.llvm.org/D130331 added workaround for named modules
only. But the same issue happens for headees units. Link issue #56490
Commit: 26d082d330e4d8d1fc3194b4b87ede9332a297f5
https://github.com/llvm/llvm-project/commit/26d082d330e4d8d1fc3194b4b87ede9332a297f5
Author: Dmitry Polukhin <34227995+dmpolukhin at users.noreply.github.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M clang-tools-extra/clang-tidy/performance/UnnecessaryValueParamCheck.cpp
M clang-tools-extra/clang-tidy/performance/UnnecessaryValueParamCheck.h
M clang-tools-extra/docs/ReleaseNotes.rst
M clang-tools-extra/docs/clang-tidy/checks/performance/unnecessary-value-param.rst
A clang-tools-extra/test/clang-tidy/checkers/performance/unnecessary-value-param-coroutine.cpp
Log Message:
-----------
[clang-tidy][performance-unnecessary-value-param] Avoid in coroutines (#140912)
Summary:
Replacing by-value parameters with passing by-reference is not safe for
coroutines because the caller may be executed in parallel with the
callee, which increases the chances of resulting in dangling references
and hard-to-find crashes. See for the reference
[cppcoreguidelines-avoid-reference-coroutine-parameters](https://clang.llvm.org/extra/clang-tidy/checks/cppcoreguidelines/avoid-reference-coroutine-parameters.html).
Test Plan: check-clang-tools
Commit: 5dc632dd56c61fb768424cc8027760490683d00d
https://github.com/llvm/llvm-project/commit/5dc632dd56c61fb768424cc8027760490683d00d
Author: Rolf Morel <rolf.morel at intel.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M mlir/utils/vscode/package-lock.json
M mlir/utils/vscode/package.json
Log Message:
-----------
[MLIR][VSCode] update packages to fix CVE-2022-25883 and CVE-2022-3517 (#144479)
Fixes issue #140869.
Commit: 64bd4858dc2d64311622e793b66094b07ca7bdc5
https://github.com/llvm/llvm-project/commit/64bd4858dc2d64311622e793b66094b07ca7bdc5
Author: Karlo Basioli <k.basioli at gmail.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/llvm/include/llvm/Config/llvm-config.h
Log Message:
-----------
Amend enviroment variables in bazel - change from #144391 (#144484)
Commit: e5ad7f4556ba4f31380153f70a8c6186926764e2
https://github.com/llvm/llvm-project/commit/e5ad7f4556ba4f31380153f70a8c6186926764e2
Author: Jesse Huang <jesse.huang at sifive.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVTargetMachine.cpp
M llvm/test/CodeGen/RISCV/O0-pipeline.ll
M llvm/test/CodeGen/RISCV/O3-pipeline.ll
Log Message:
-----------
[RISCV] Move RISCVIndirectBranchTracking before Branch Relaxation (#139993)
The `RISCVIndirectBranchTracking` pass inserts `lpad` instruction and
could change the basic block alignment, so this should not happen after
the branch relaxation as the adjusted offset is possible to exceed the
branch range.
Commit: 97e17e15957bf6f03923ca46301b32cad507f34b
https://github.com/llvm/llvm-project/commit/97e17e15957bf6f03923ca46301b32cad507f34b
Author: Kareem Ergawy <kareem.ergawy at amd.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M flang/lib/Lower/Bridge.cpp
M flang/test/Lower/do_concurrent_delayed_locality.f90
M flang/test/Lower/do_concurrent_local_assoc_entity.f90
M flang/test/Lower/do_concurrent_local_default_init.f90
M flang/test/Lower/loops.f90
M flang/test/Lower/loops3.f90
Log Message:
-----------
Revert "[flang] Enable delayed localization by default for `do concurrent` (#144074)" (#144476)
This reverts commit b5dbf8210a57b986b9802304745f4c5c108cf37b.
Reverting again due to gfortran failure:
https://lab.llvm.org/buildbot/#/builders/17/builds/8868
Commit: dfd00edbabef8094bec663cca9314a950ec56e0d
https://github.com/llvm/llvm-project/commit/dfd00edbabef8094bec663cca9314a950ec56e0d
Author: Karlo Basioli <k.basioli at gmail.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M utils/bazel/llvm_configs/llvm-config.h.cmake
Log Message:
-----------
Fix for #144391 not fully addressed by #144484 (#144488)
Commit: 277b2b6da70b488e08b0f0eecba2a4cd1dd01129
https://github.com/llvm/llvm-project/commit/277b2b6da70b488e08b0f0eecba2a4cd1dd01129
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
Log Message:
-----------
[X86] combineCastedMaskArithmetic - convert to SDPatternMatch matching. NFC. (#144472)
Commit: aa01e8e9cff9e754b47be57b2f85b962cf1ec9fb
https://github.com/llvm/llvm-project/commit/aa01e8e9cff9e754b47be57b2f85b962cf1ec9fb
Author: Tom Eccles <tom.eccles at arm.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
A mlir/test/Target/LLVMIR/openmp-task-charbox.mlir
Log Message:
-----------
[mlir][OpenMP] Fix broken insertion point for charbox with omp task (#143112)
Fixes #142365
Commit: 00709c306d0a0f60d169ab25f612ed6715e16743
https://github.com/llvm/llvm-project/commit/00709c306d0a0f60d169ab25f612ed6715e16743
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
Log Message:
-----------
AArch64: Fix hardcoding calling convention of sincos_stret (NFC) (#144336)
Commit: 4c8f43440955c93a54b9547421513867bc81788a
https://github.com/llvm/llvm-project/commit/4c8f43440955c93a54b9547421513867bc81788a
Author: Donát Nagy <donat.nagy at ericsson.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M clang/include/clang/StaticAnalyzer/Checkers/Checkers.td
M clang/lib/StaticAnalyzer/Checkers/NullabilityChecker.cpp
M clang/test/Analysis/analyzer-enabled-checkers.c
M clang/test/Analysis/bugfix-124477.m
M clang/test/Analysis/std-c-library-functions-arg-enabled-checkers.c
Log Message:
-----------
[analyzer] Conversion to CheckerFamily: NullabilityChecker (#143735)
This commit converts NullabilityChecker to the new checker family
framework that was introduced in the recent commit
6833076a5d9f5719539a24e900037da5a3979289
This commit removes the dummy checker `nullability.NullabilityBase`
because it was hidden from the users and didn't have any useful role
except for helping the registration of the checker parts in the old
ad-hoc system (which is replaced by the new standardized framework).
Except for the removal of this dummy checker, no functional changes
intended.
Commit: 6f2983765983b9403ae40430da8034d2d1b6e8a4
https://github.com/llvm/llvm-project/commit/6f2983765983b9403ae40430da8034d2d1b6e8a4
Author: Ying Yi <ying.yi at sony.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/docs/UsersManual.rst
M clang/include/clang/Driver/Options.td
M clang/lib/Driver/Driver.cpp
M clang/lib/Driver/ToolChains/Clang.cpp
A clang/test/Driver/ignored-pch.cpp
A clang/test/PCH/Inputs/ignored-pch.h
A clang/test/PCH/ignored-pch.c
Log Message:
-----------
Reland: "[Frontend][PCH]-Add support for ignoring PCH options (-ignore-pch). (#142409)" (#143614)
Visual Studio has an argument to ignore all PCH related switches.
clang-cl has also support option /Y-. Having the same option in clang
would be helpful. This commit is to add support for ignoring PCH options
(-ignore-pch).
The commit includes:
1. Implement -ignore-pch as a Driver option.
2. Add a Driver test and a PCH test.
3. Add a section of -ignore-pch to user manual.
4. Add a release note for the new option '-ignore-pch'.
The change since the original landing:
1. preprocessing-only mode doesn't imply that -include-pch is disabled.
Co-authored-by: Matheus Izvekov <mizvekov at gmail.com>
Commit: 7eda8274fed9a87f25a54616f5009bb68e511b77
https://github.com/llvm/llvm-project/commit/7eda8274fed9a87f25a54616f5009bb68e511b77
Author: Momchil Velikov <momchil.velikov at arm.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
A mlir/test/Integration/Dialect/Vector/CPU/ArmSVE/vector-contract-i8mm.mlir
Log Message:
-----------
[MLIR] Integration tests for lowering vector.contract to SVE FEAT_I8MM (#140573)
Commit: c377ce1216a8ce73c940d2366a7bf223790f43b4
https://github.com/llvm/llvm-project/commit/c377ce1216a8ce73c940d2366a7bf223790f43b4
Author: Mary Kassayova <mary.kassayova at arm.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Driver/Options.td
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/test/Driver/fveclib.c
M llvm/include/llvm/Analysis/VecFuncs.def
M llvm/lib/Analysis/TargetLibraryInfo.cpp
A llvm/test/CodeGen/AArch64/replace-with-veclib-libmvec-scalable.ll
A llvm/test/CodeGen/AArch64/replace-with-veclib-libmvec.ll
M llvm/test/Transforms/LoopVectorize/AArch64/veclib-function-calls.ll
M llvm/test/Transforms/LoopVectorize/AArch64/veclib-intrinsic-calls.ll
M llvm/test/Transforms/Util/add-TLI-mappings.ll
Log Message:
-----------
[AArch64][VecLib] Add libmvec support for AArch64 targets (#143696)
This patch adds support for the `libmvec` vector library on AArch64
targets. Currently, all `libmvec` functions in GLIBC version 2.40 are
supported. The full list of math functions enabled can be found
[here](https://github.com/bminor/glibc/blob/96abd59bf2a11ddd4e7ccaac840ec13c0b62d3ba/sysdeps/aarch64/fpu/Versions)
(up to GLIBC 2.40).
Previously, `libmvec` was only supported on x86_64 targets. Attempts to
use it on AArch64 resulted in the following error from Clang:
`unsupported option 'libmvec' for target 'aarch64'`.
Commit: 465e3ce9f10019db071dc7794ae9ab22f9fc76f7
https://github.com/llvm/llvm-project/commit/465e3ce9f10019db071dc7794ae9ab22f9fc76f7
Author: Paul Walker <paul.walker at arm.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
M llvm/test/CodeGen/AArch64/sve-expand-div.ll
M llvm/test/CodeGen/AArch64/sve-fixed-length-sdiv-pow2.ll
M llvm/test/CodeGen/AArch64/sve-sdiv-pow2.ll
Log Message:
-----------
[LLVM][CodeGen] Lower ConstantInt vectors like shufflevector base splats. (#144395)
ConstantInt vectors utilise DAG.getConstant() when constructing the
initial DAG. This can have the effect of legalising the constant before
the DAG combiner is run, significant altering the generated code. To
mitigate this (hopefully as a temporary measure) we instead try to
construct the DAG in the same way as shufflevector based splats.
Commit: 71f72f4d5d1b820a3e6147289547821332eaf115
https://github.com/llvm/llvm-project/commit/71f72f4d5d1b820a3e6147289547821332eaf115
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
Log Message:
-----------
[DAG] Move foldMaskedMerge before visitAND. NFC.
Reduces diff in #144342
Commit: d3f13a0732c2d937a4c12cb8b1a61992ee5b0d9c
https://github.com/llvm/llvm-project/commit/d3f13a0732c2d937a4c12cb8b1a61992ee5b0d9c
Author: Antonio Frighetto <me at antoniofrighetto.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M llvm/include/llvm/Transforms/Scalar/GVN.h
M llvm/lib/Transforms/Scalar/GVN.cpp
Log Message:
-----------
[GVN] MemorySSA for GVN: embed the memory state in symbolic expressions (#123218)
While migrating towards MemorySSA, account for the memory state modeled
by MemorySSA by hashing it, when computing the symbolic expressions for
the memory operations. Likewise, when phi-translating while walking the
CFG for PRE possibilities, see if the value number of an operand may be
refined with one of the value from the incoming edges of the MemoryPhi
associated to the current phi.
Co-authored-by: Momchil Velikov <momchil.velikov at arm.com>
Commit: ce96fdde54c379fa3893f3f07d8233df9e16b9e2
https://github.com/llvm/llvm-project/commit/ce96fdde54c379fa3893f3f07d8233df9e16b9e2
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M clang/lib/AST/ByteCode/InterpStack.cpp
Log Message:
-----------
[clang][bytecode] Keep the last chunk in InterpStack::clear() (#144487)
We call clear when checking for potential constant expressions, but that
used to free all the chunks. Keep the last one so we don't have to
re-allocate it.
Commit: 576ced56d78b48e658b0a170603388e4802f6311
https://github.com/llvm/llvm-project/commit/576ced56d78b48e658b0a170603388e4802f6311
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M clang/lib/AST/ByteCode/InterpBlock.cpp
Log Message:
-----------
[clang][bytecode] Simplify Block::replacePointer() (#144490)
Try to do less work here instead of a full remove + add.
Commit: 49c6235d1fb3bcecfe37a8e41bec69d6c7dc86ff
https://github.com/llvm/llvm-project/commit/49c6235d1fb3bcecfe37a8e41bec69d6c7dc86ff
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M llvm/test/CodeGen/PowerPC/aix-vector-vararg-fixed-caller.ll
Log Message:
-----------
[PowerPC] Regenerate MIR test checks (NFC)
Commit: 2d336e7c5e821383816a9dca080f713747cc9e1e
https://github.com/llvm/llvm-project/commit/2d336e7c5e821383816a9dca080f713747cc9e1e
Author: Arseniy Zaostrovnykh <necto.ne at gmail.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M clang/lib/StaticAnalyzer/Checkers/DivZeroChecker.cpp
M clang/test/Analysis/taint-generic.c
Log Message:
-----------
[analyzer] Avoid contradicting assumption in tainted div-by-0 error node (#144491)
This patch corrects the state of the error node generated by the
core.DivideZero checker when it detects potential division by zero
involving a tainted denominator.
The checker split in
https://github.com/llvm/llvm-project/pull/106389/commits/91ac5ed10a154410c246d985752c1bbfcf23b105
started to introduce a conflicting assumption about the denominator into
the error node:
Node with the Bug Report "Division by a tainted value, possibly zero"
has an assumption "denominator != 0".
This has been done as a shortcut to continue analysis with the correct
assumption *after* the division - if we proceed, we can only assume the
denominator was not zero. However, this assumption is introduced
one-node too soon, leading to a self-contradictory error node.
In this patch, I make the error node with assumption of zero denominator
fatal, but allow analysis to continue on the second half of the state
split with the assumption of non-zero denominator.
---
CPP-6376
Commit: 990d2540bf0545cc4024c3718069f6d0b42c461b
https://github.com/llvm/llvm-project/commit/990d2540bf0545cc4024c3718069f6d0b42c461b
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
Log Message:
-----------
[X86] isAddSubOrSubAdd - convert to SDPatternMatch matching. NFC. (#144486)
Commit: 875b36a8742437b95f623bab1e0332562c7b4b3f
https://github.com/llvm/llvm-project/commit/875b36a8742437b95f623bab1e0332562c7b4b3f
Author: Oleksandr "Alex" Zinenko <git at ozinenko.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M mlir/lib/Conversion/MemRefToLLVM/MemRefToLLVM.cpp
M mlir/test/Conversion/MemRefToLLVM/memref-to-llvm.mlir
Log Message:
-----------
[mlir] fix MemRefToLLVM lowering of atomic operations (#139045)
We have been confusingly, and arguably incorrectly, lowering `m**imumf`
atomic RMW operations in the MemRef dialect to `fm**` atomic RMW
operations in the LLVM dialect, which have different NaN-propagation
semantics: `m**imumf` propagates NaNs from either operand whereas
`fm**`, which lowers to the `fm**num` intrinsic returns the non-NaN
operand. This also contradicts the lowering of `arith.m**imumf` and
`arith.m**numf` operations.
Change the lowering to match the terminology in arith.
Add tests for these lowerings.
Keep a debug message in case of surprising behavior downstream (the code
may be producing more NaNs now).
Commit: 9700930bd90a099f702332cf86dd898f00840f99
https://github.com/llvm/llvm-project/commit/9700930bd90a099f702332cf86dd898f00840f99
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
Log Message:
-----------
[X86] detectZextAbsDiff - convert to SDPatternMatch matching. NFC. (#144498)
Match the entire ABS(SUB(ZEXT(vXi8),ZEXT(vXi8))) pattern and simplify the logic in combineBasicSADPattern accordingly
Commit: 12611a7fc71376e88aa01e3f0bbc74517f1a1703
https://github.com/llvm/llvm-project/commit/12611a7fc71376e88aa01e3f0bbc74517f1a1703
Author: Denzel-Brian Budii <73462654+chios202 at users.noreply.github.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M mlir/include/mlir/Query/Matcher/Marshallers.h
M mlir/include/mlir/Query/Matcher/MatchFinder.h
M mlir/include/mlir/Query/Matcher/MatchersInternal.h
M mlir/include/mlir/Query/Matcher/SliceMatchers.h
M mlir/include/mlir/Query/Matcher/VariantValue.h
M mlir/lib/Query/Matcher/CMakeLists.txt
A mlir/lib/Query/Matcher/MatchersInternal.cpp
M mlir/lib/Query/Matcher/RegistryManager.cpp
M mlir/lib/Query/Matcher/VariantValue.cpp
M mlir/lib/Query/Query.cpp
A mlir/test/mlir-query/backward-slice-union.mlir
R mlir/test/mlir-query/complex-test.mlir
A mlir/test/mlir-query/forward-slice-by-predicate.mlir
A mlir/test/mlir-query/logical-operator-test.mlir
A mlir/test/mlir-query/slice-function-extraction.mlir
M mlir/tools/mlir-query/mlir-query.cpp
Log Message:
-----------
[mlir] Improve mlir-query by adding matcher combinators (#141423)
Whereas backward-slice matching provides support to limit traversal by
specifying the desired depth level, this pull request introduces support
for limiting traversal with a nested matcher (adding forward-slice
also). It also adds support for variadic operators, including `anyOf`
and `allOf`. Rather than simply stopping traversal when an operation
named foo is encountered, one can now define a matcher that specifies
different exit conditions. Variadic support implementation within
mlir-query is very similar to clang-query.
Commit: 087d83e0c6d94c1ad6a68b089950d05185d0e043
https://github.com/llvm/llvm-project/commit/087d83e0c6d94c1ad6a68b089950d05185d0e043
Author: Gaëtan Bossu <gaetan.bossu at arm.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
Log Message:
-----------
[SLP] vectorizeStores: Name things a bit more clearly (NFC) (#144511)
I believe the new variable names better convey their purpose. However, I
also believe that function is more complex than it needs to be, and this
tiny patch should be seen as a first step towards (maybe) further
refactoring.
The previous names were very generic (Size, Sz, Cnt, StartIdx). This
made it easy to get confused given that the vecotrizeStores() function
is already complex enough.
My hope would be to eventually have a function concise enough to clearly
see what are the different strategies being attempted to vectorise a
group of related store instructions.
Commit: cb011d3199e1160ad2706cb5b1d43692fa4784d8
https://github.com/llvm/llvm-project/commit/cb011d3199e1160ad2706cb5b1d43692fa4784d8
Author: Juan Manuel Martinez Caamaño <jmartinezcaamao at gmail.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M clang/lib/Headers/CMakeLists.txt
A clang/lib/Headers/cuda_wrappers/bits/c++config.h
Log Message:
-----------
[CUDA][HIP] Add a __device__ version of std::__glibcxx_assert_fail() (#136133)
libstdc++ 15 uses the non-constexpr function
std::__glibcxx_assert_fail() to trigger compilation errors when the
__glibcxx_assert(cond) macro is used in a constantly evaluated context.
Compilation fails when using code from the libstdc++ (such as
std::array) on device code, since these assertions invoke a
non-constexpr host function from device code.
This patch proposes a cuda wrapper header "bits/c++config.h" which adds
a __device__ version of std::__glibcxx_assert_fail().
Solves SWDEV-518041
Commit: 3377b56338d93760507e1707ebde48536e28ee1c
https://github.com/llvm/llvm-project/commit/3377b56338d93760507e1707ebde48536e28ee1c
Author: Aaron Ballman <aaron at aaronballman.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M clang/lib/Basic/Targets.cpp
M clang/lib/Basic/Targets/OSTargets.h
M clang/lib/Driver/CMakeLists.txt
M clang/lib/Driver/Driver.cpp
M clang/lib/Driver/ToolChains/Gnu.cpp
R clang/lib/Driver/ToolChains/Managarm.cpp
R clang/lib/Driver/ToolChains/Managarm.h
M clang/lib/Lex/InitHeaderSearch.cpp
R clang/test/Driver/Inputs/basic_managarm_tree/lib/aarch64-managarm-mlibc/.keep
R clang/test/Driver/Inputs/basic_managarm_tree/lib/riscv64-managarm-mlibc/.keep
R clang/test/Driver/Inputs/basic_managarm_tree/lib/x86_64-managarm-mlibc/.keep
R clang/test/Driver/Inputs/basic_managarm_tree/lib64/aarch64-managarm-mlibc/.keep
R clang/test/Driver/Inputs/basic_managarm_tree/lib64/riscv64-managarm-mlibc/.keep
R clang/test/Driver/Inputs/basic_managarm_tree/lib64/x86_64-managarm-mlibc/.keep
R clang/test/Driver/Inputs/basic_managarm_tree/usr/include/aarch64-managarm-mlibc/c++/10/.keep
R clang/test/Driver/Inputs/basic_managarm_tree/usr/include/c++/10/.keep
R clang/test/Driver/Inputs/basic_managarm_tree/usr/include/c++/v1/.keep
R clang/test/Driver/Inputs/basic_managarm_tree/usr/include/riscv64-managarm-mlibc/c++/10/.keep
R clang/test/Driver/Inputs/basic_managarm_tree/usr/include/x86_64-managarm-mlibc/c++/10/.keep
R clang/test/Driver/Inputs/basic_managarm_tree/usr/lib/aarch64-managarm-mlibc/.keep
R clang/test/Driver/Inputs/basic_managarm_tree/usr/lib/gcc/aarch64-managarm-mlibc/10/crtbegin.o
R clang/test/Driver/Inputs/basic_managarm_tree/usr/lib/gcc/aarch64-managarm-mlibc/10/crtbeginS.o
R clang/test/Driver/Inputs/basic_managarm_tree/usr/lib/gcc/aarch64-managarm-mlibc/10/crtbeginT.o
R clang/test/Driver/Inputs/basic_managarm_tree/usr/lib/gcc/riscv64-managarm-mlibc/10/crtbegin.o
R clang/test/Driver/Inputs/basic_managarm_tree/usr/lib/gcc/riscv64-managarm-mlibc/10/crtbeginS.o
R clang/test/Driver/Inputs/basic_managarm_tree/usr/lib/gcc/riscv64-managarm-mlibc/10/crtbeginT.o
R clang/test/Driver/Inputs/basic_managarm_tree/usr/lib/gcc/x86_64-managarm-mlibc/10/crtbegin.o
R clang/test/Driver/Inputs/basic_managarm_tree/usr/lib/gcc/x86_64-managarm-mlibc/10/crtbeginS.o
R clang/test/Driver/Inputs/basic_managarm_tree/usr/lib/gcc/x86_64-managarm-mlibc/10/crtbeginT.o
R clang/test/Driver/Inputs/basic_managarm_tree/usr/lib/riscv64-managarm-mlibc/.keep
R clang/test/Driver/Inputs/basic_managarm_tree/usr/lib/x86_64-managarm-mlibc/.keep
R clang/test/Driver/Inputs/basic_managarm_tree/usr/lib64/.keep
R clang/test/Driver/managarm.cpp
M clang/test/Preprocessor/init.c
M clang/test/Preprocessor/predefined-macros-no-warnings.c
Log Message:
-----------
Revert "[clang] Add managarm support" (#144514)
Reverts llvm/llvm-project#139271
There are multiple failing build bots:
https://lab.llvm.org/buildbot/#/builders/10/builds/7482
https://lab.llvm.org/buildbot/#/builders/11/builds/17473
Commit: 5f841a6284900026929edcbe8d2b98ce813e0bbc
https://github.com/llvm/llvm-project/commit/5f841a6284900026929edcbe8d2b98ce813e0bbc
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M flang/include/flang/Support/OpenMP-features.h
M flang/test/Driver/flang-openmp-version-macro.f90
Log Message:
-----------
[flang][OpenMP] Set _OPENMP macro for version 6.0 (#144410)
Commit: b91936aeffb798b7deb67aff7bc5c84acea5452e
https://github.com/llvm/llvm-project/commit/b91936aeffb798b7deb67aff7bc5c84acea5452e
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
M llvm/test/CodeGen/AMDGPU/llvm.maximum.f16.ll
M llvm/test/CodeGen/AMDGPU/llvm.maximum.f32.ll
M llvm/test/CodeGen/AMDGPU/llvm.minimum.f16.ll
M llvm/test/CodeGen/AMDGPU/llvm.minimum.f32.ll
Log Message:
-----------
AMDGPU: Combine nnan fminimum/fmaximum to fminnum_ieee/fmaxnum_ieee (#142217)
This improves codegen for gfx950, where fminimum/fmaximum are
legal through fminimum3/fmaximum3, so may have an additional
encoding cost.
Commit: b4e39e4ff923334a8a1fdcc6d92b01d3885a01f2
https://github.com/llvm/llvm-project/commit/b4e39e4ff923334a8a1fdcc6d92b01d3885a01f2
Author: Sirraide <aeternalmail at gmail.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M llvm/cmake/config-ix.cmake
M llvm/include/llvm/Config/config.h.cmake
M llvm/lib/Support/Unix/Process.inc
Log Message:
-----------
[LLVM] [Support] Query the terminal width using `ioctl()` (#143514)
On unix systems, we were trying to determine the terminal width using
the `COULMNS` environment variable. Unfortunately, `COLUMNS` is not
exported by all shells and thus not available on some systems.
We were previously using `ioctl()` for this; fall back to doing so if `COLUMNS`
does not exist or does not store a positive integer.
This essentially reverts a3eb3d3d92d037fe3c9deaad87f6fc42fe9ea766 and
parts of https://reviews.llvm.org/D61326.
For more information, see #139499.
Fixes #139499.
Commit: 3451cd5d206f29df5b6ab5c200b7b8b17f3f2e3f
https://github.com/llvm/llvm-project/commit/3451cd5d206f29df5b6ab5c200b7b8b17f3f2e3f
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M llvm/test/CodeGen/PowerPC/aix-vector-vararg-caller.ll
Log Message:
-----------
[PowerPC] Regenerate MIR test checks (NFC)
Commit: 76ea1db1746db254716aafbc992b637cd10c6ea3
https://github.com/llvm/llvm-project/commit/76ea1db1746db254716aafbc992b637cd10c6ea3
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
A llvm/test/CodeGen/PowerPC/aix-cc-byval-mir.ll
M llvm/test/CodeGen/PowerPC/aix-cc-byval.ll
Log Message:
-----------
[PowerPC] Split test into assembly and MIR variants (NFC)
So that both can be generated.
Commit: 977d8a4bcd83797217433709201922b9deb97ae2
https://github.com/llvm/llvm-project/commit/977d8a4bcd83797217433709201922b9deb97ae2
Author: Vincent <llvm at viceroygroup.ca>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Sema/Scope.h
M clang/lib/Sema/SemaExpr.cpp
A clang/test/Sema/gh87867.c
Log Message:
-----------
[clang][Sema] Fixed Compound Literal is not Constant Expression (#143852)
Added a check for a compound literal hiding inside a function.
fixes #87867
Commit: 816ab1af0da1dc833f487933e7d6fb470d844001
https://github.com/llvm/llvm-project/commit/816ab1af0da1dc833f487933e7d6fb470d844001
Author: Rahul Joshi <rjoshi at nvidia.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M llvm/utils/TableGen/DecoderEmitter.cpp
Log Message:
-----------
[NFCI][TableGen][DecoderEmitter] Cull Op handling when possible (#142974)
TryDecode/CheckPredicate/SoftFail MCD ops are not used by many targets.
Track the set of opcodes that were emitted and emit code for handling
TryDecode/CheckPredicate/SoftFail ops when decoding only if there were
emitted. This is purely eliminating dead code in the generated
`decodeInstruction` function.
This results in the following reduction in the size of the Disassembler
.so files with a release x86_64 release build on Linux:
```
Target Old Size New Size % reduction
build/lib/libLLVMAArch64Disassembler.so.21.0git 256656 256656 0.00
build/lib/libLLVMAMDGPUDisassembler.so.21.0git 813000 808168 0.59
build/lib/libLLVMARCDisassembler.so.21.0git 44816 43536 2.86
build/lib/libLLVMARMDisassembler.so.21.0git 281744 278808 1.04
build/lib/libLLVMAVRDisassembler.so.21.0git 36040 34496 4.28
build/lib/libLLVMBPFDisassembler.so.21.0git 26248 23168 11.73
build/lib/libLLVMCSKYDisassembler.so.21.0git 55960 53632 4.16
build/lib/libLLVMHexagonDisassembler.so.21.0git 115952 113416 2.19
build/lib/libLLVMLanaiDisassembler.so.21.0git 24360 21008 13.76
build/lib/libLLVMLoongArchDisassembler.so.21.0git 58584 56168 4.12
build/lib/libLLVMM68kDisassembler.so.21.0git 57264 53880 5.91
build/lib/libLLVMMSP430Disassembler.so.21.0git 28896 28440 1.58
build/lib/libLLVMMipsDisassembler.so.21.0git 123128 120568 2.08
build/lib/libLLVMPowerPCDisassembler.so.21.0git 80656 78096 3.17
build/lib/libLLVMRISCVDisassembler.so.21.0git 154080 150200 2.52
build/lib/libLLVMSparcDisassembler.so.21.0git 42040 39568 5.88
build/lib/libLLVMSystemZDisassembler.so.21.0git 97056 94552 2.58
build/lib/libLLVMVEDisassembler.so.21.0git 83944 81352 3.09
build/lib/libLLVMWebAssemblyDisassembler.so.21.0git 25280 25280 0.00
build/lib/libLLVMX86Disassembler.so.21.0git 2920624 2920624 0.00
build/lib/libLLVMXCoreDisassembler.so.21.0git 48320 44288 8.34
build/lib/libLLVMXtensaDisassembler.so.21.0git 42248 35840 15.17
```
Commit: 9fed480f183d9cfa784228cd77b2c0a642fca697
https://github.com/llvm/llvm-project/commit/9fed480f183d9cfa784228cd77b2c0a642fca697
Author: Amir Ayupov <aaupov at fb.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M bolt/include/bolt/Profile/DataAggregator.h
M bolt/lib/Profile/DataAggregator.cpp
M bolt/test/X86/callcont-fallthru.s
Log Message:
-----------
[BOLT] Explicitly check for returns when extending call continuation profile (#143295)
Call continuation logic relies on assumptions about fall-through origin:
- the branch is external to the function,
- fall-through start is at the beginning of the block,
- the block is not an entry point or a landing pad.
Leverage trace information to explicitly check whether the origin is a
return instruction, and defer to checks above only in case of
DSO-external branch source.
This covers both regular and BAT cases, addressing call continuation
fall-through undercounting in the latter mode, which improves BAT
profile quality metrics. For example, for one large binary:
- CFG discontinuity 21.83% -> 0.00%,
- CFG flow imbalance 10.77%/100.00% -> 3.40%/13.82% (weighted/worst)
- CG flow imbalance 8.49% —> 8.49%.
Depends on #143289.
Test Plan: updated callcont-fallthru.s
Commit: 917bc909673a491fe070fe41c4ad112bcffd4c06
https://github.com/llvm/llvm-project/commit/917bc909673a491fe070fe41c4ad112bcffd4c06
Author: William Moses <gh at wsmoses.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M mlir/include/mlir/Dialect/LLVMIR/LLVMOps.td
Log Message:
-----------
[MLIR][LLVMIR] Mark Funcop as affinescope (#144456)
All functions are conceptually an affine scope.
Commit: de3339063ae5a926ab2ed17651a0e628b9c34fb0
https://github.com/llvm/llvm-project/commit/de3339063ae5a926ab2ed17651a0e628b9c34fb0
Author: Benjamin Kramer <benny.kra at googlemail.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/llvm/config.bzl
M utils/bazel/llvm-project-overlay/llvm/include/llvm/Config/config.h
M utils/bazel/llvm_configs/config.h.cmake
Log Message:
-----------
[bazel] Port b4e39e4ff923334a8a1fdcc6d92b01d3885a01f2
Commit: dc72b91ffedf791a44a1af19b00064a2a3c59ab9
https://github.com/llvm/llvm-project/commit/dc72b91ffedf791a44a1af19b00064a2a3c59ab9
Author: AZero13 <gfunni234 at gmail.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
M llvm/test/Analysis/CostModel/AArch64/cmp.ll
Log Message:
-----------
[AArch64] Report icmp as free if it can be folded into ands (#143286)
Since changing the backend to fold x >= 1 / x < 1 -> x > 0 / x <= 0 and
x <= -1 / x > -1 -> x > 0 / x <= 0, this should be reflected in the
cost.
Commit: 414710c753d87d314529857e15d1ad01a76c6605
https://github.com/llvm/llvm-project/commit/414710c753d87d314529857e15d1ad01a76c6605
Author: Han-Kuan Chen <hankuan.chen at sifive.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
A llvm/test/Transforms/SLPVectorizer/isCommutative.ll
Log Message:
-----------
[SLP] Fix isCommutative to check uses of the original instruction instead of the converted instruction. (#143094)
Commit: 35f6d917206d79ab0e3d382a36ca05ccc13983d5
https://github.com/llvm/llvm-project/commit/35f6d917206d79ab0e3d382a36ca05ccc13983d5
Author: Richard Howell <rmaz at users.noreply.github.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M lld/MachO/DriverUtils.cpp
A lld/test/MachO/reexport-with-symlink.s
Log Message:
-----------
[lld] check cache in loadDylib before real_path (#143595)
Commit: 0a7b0c844c59189ad4f5072b73d7dfdfd78e76b7
https://github.com/llvm/llvm-project/commit/0a7b0c844c59189ad4f5072b73d7dfdfd78e76b7
Author: Michael Buch <michaelbuch12 at gmail.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M lldb/source/Plugins/ExpressionParser/Clang/IRDynamicChecks.cpp
M lldb/source/Plugins/ExpressionParser/Clang/IRDynamicChecks.h
M lldb/test/API/tools/lldb-dap/save-core/TestDAP_save_core.py
Log Message:
-----------
[lldb][Expression] Remove IR pointer checker (#144483)
Currently when jitting expressions, LLDB scans the IR instructions of
the `$__lldb_expr` and will insert a call to a utility function for each
load/store instruction. The purpose of the utility funciton is to
dereference the load/store operand. If that operand was an invalid
pointer the utility function would trap and LLDB asks the IR checker
whether it was responsible for the trap, in which case it prints out an
error message saying the expression dereferenced an invalid pointer.
This is a lot of setup for not much gain. In fact, creating/running this
utility expression shows up as ~2% of the expression evaluation time
(though we cache them for subsequent expressions). And the error message
we get out of it is arguably less useful than if we hadn't instrumented
the IR. It was also untested.
Before:
```
(lldb) expr int a = *returns_invalid_ptr()
error: Execution was interrupted, reason: Attempted to dereference an invalid pointer..
The process has been returned to the state before expression evaluation.
```
After:
```
(lldb) expr int a = *returns_invalid_ptr()
error: Expression execution was interrupted: EXC_BAD_ACCESS (code=1, address=0x5).
The process has been returned to the state before expression evaluation.
```
This patch removes this IR checker.
Commit: 8f797542258f6e682eb251d0851922a1ac08fb44
https://github.com/llvm/llvm-project/commit/8f797542258f6e682eb251d0851922a1ac08fb44
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M llvm/lib/Analysis/ScalarEvolution.cpp
M llvm/test/Transforms/IndVarSimplify/simplify-icmp-operands-order.ll
Log Message:
-----------
[SCEV] Better preserve wrapping info in SimplifyICmpOperands for UGE. (#144404)
Update SimplifyICmpOperands to only try subtracting 1 from RHS first, if
RHS is an op we can fold the subtract directly into. Otherwise try
adding to LHS first, as we can preserve NUW flags.
This improves results in a few cases, including the modified test case
from berkeley-abc and new code to be added in
https://github.com/llvm/llvm-project/pull/128061.
Note that there are more cases where the results can be improved by
better ordering here which I'll try to investigate as follow-up.
PR: https://github.com/llvm/llvm-project/pull/144404
Commit: 0fb198e132eff36281a20698588d815c3c30f991
https://github.com/llvm/llvm-project/commit/0fb198e132eff36281a20698588d815c3c30f991
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/horizontal-sum.ll
Log Message:
-----------
[X86] Remove combineShuffleOfConcatUndef fold (#144524)
We can now let a mixture of combineConcatVectorOps and target shuffle combining handle this instead of creating ISD::CONCAT_VECTORS nodes and hoping they will merge properly.
In the horizontal-sum.ll test changes we were creating a ISD::CONCAT_VECTORS node that was being split shortly after, but not before causing issues with HADD folding due to additional uses.
Commit: 4cfe0d7f4c2c39dd90e27258aa448789f2ba4278
https://github.com/llvm/llvm-project/commit/4cfe0d7f4c2c39dd90e27258aa448789f2ba4278
Author: Kajetan Puchalski <kajetan.puchalski at arm.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M flang/lib/Lower/OpenMP/ClauseProcessor.cpp
A flang/test/Lower/OpenMP/copyprivate5.f90
Log Message:
-----------
[flang][OpenMP] Support using copyprivate with fir.boxchar arguments (#144092)
Implement the lowering for passing a fir.boxchar argument to the
copyprivate clause.
Resolves https://github.com/llvm/llvm-project/issues/142123.
---------
Signed-off-by: Kajetan Puchalski <kajetan.puchalski at arm.com>
Commit: 549bc55cc39bb9fb22df464bcf3b7d4d4a5ff507
https://github.com/llvm/llvm-project/commit/549bc55cc39bb9fb22df464bcf3b7d4d4a5ff507
Author: Davide Grohmann <davide.grohmann at arm.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M mlir/lib/Target/SPIRV/Serialization/Serializer.cpp
M mlir/test/CMakeLists.txt
M mlir/test/Target/SPIRV/constant.mlir
M mlir/test/lit.cfg.py
A mlir/test/lit.local.cfg
M mlir/test/lit.site.cfg.py.in
Log Message:
-----------
[mlir][spirv] Fix int type declaration duplication when serializing (#143108)
At the MLIR level unsigned integer and signless integers are different
types. Indeed when looking up the two types in type definition cache
they do not match.
Hence when translating a SPIR-V module which contains both usign and
signless integers will contain the same type declaration twice
(something like OpTypeInt 32 0) which is not permitted in SPIR-V and
such generated modules fail validation.
This patch solves the problem by mapping unisgned integer types to
singless integer types before looking up in the type definition cache.
---------
Signed-off-by: Davide Grohmann <davide.grohmann at arm.com>
Commit: 7ec103a984ff114d24f26d935fe2292379269b53
https://github.com/llvm/llvm-project/commit/7ec103a984ff114d24f26d935fe2292379269b53
Author: Karlo Basioli <k.basioli at gmail.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/mlir/test/BUILD.bazel
Log Message:
-----------
Port #143108 to bazel (#144538)
Commit: 9eb0020555fc643582b2802abb8c1bc92059c248
https://github.com/llvm/llvm-project/commit/9eb0020555fc643582b2802abb8c1bc92059c248
Author: Jeremy Morse <jeremy.morse at sony.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M llvm/include/llvm/Analysis/IRSimilarityIdentifier.h
M llvm/include/llvm/Analysis/PtrUseVisitor.h
M llvm/include/llvm/IR/InstVisitor.h
M llvm/include/llvm/Transforms/Utils/Local.h
M llvm/lib/Analysis/AliasSetTracker.cpp
M llvm/lib/Analysis/CallGraph.cpp
M llvm/lib/Analysis/DemandedBits.cpp
M llvm/lib/Analysis/Loads.cpp
M llvm/lib/Analysis/MemoryDependenceAnalysis.cpp
M llvm/lib/Analysis/ValueTracking.cpp
M llvm/lib/CodeGen/CodeGenPrepare.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp
M llvm/lib/IR/DebugInfo.cpp
M llvm/lib/Target/AArch64/AArch64StackTagging.cpp
M llvm/lib/Target/Hexagon/HexagonLoopIdiomRecognition.cpp
M llvm/lib/Target/PowerPC/PPCBoolRetToInt.cpp
M llvm/lib/Transforms/AggressiveInstCombine/AggressiveInstCombine.cpp
M llvm/lib/Transforms/IPO/IROutliner.cpp
M llvm/lib/Transforms/IPO/SampleProfileProbe.cpp
M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
M llvm/lib/Transforms/Instrumentation/GCOVProfiling.cpp
M llvm/lib/Transforms/Instrumentation/ThreadSanitizer.cpp
M llvm/lib/Transforms/Scalar/ADCE.cpp
M llvm/lib/Transforms/Scalar/GVN.cpp
M llvm/lib/Transforms/Scalar/GVNHoist.cpp
M llvm/lib/Transforms/Scalar/LICM.cpp
M llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp
M llvm/lib/Transforms/Scalar/LoopUnrollPass.cpp
M llvm/lib/Transforms/Scalar/SpeculativeExecution.cpp
M llvm/lib/Transforms/Scalar/TailRecursionElimination.cpp
M llvm/lib/Transforms/Utils/CodeExtractor.cpp
M llvm/lib/Transforms/Utils/Debugify.cpp
M llvm/lib/Transforms/Utils/Evaluator.cpp
M llvm/lib/Transforms/Utils/InlineFunction.cpp
M llvm/lib/Transforms/Utils/Local.cpp
M llvm/lib/Transforms/Utils/LoopRotationUtils.cpp
M llvm/lib/Transforms/Utils/ScalarEvolutionExpander.cpp
M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
M llvm/lib/Transforms/Vectorize/LoopVectorizationLegality.cpp
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
Log Message:
-----------
[DebugInfo][RemoveDIs] Remove a swathe of debug-intrinsic code (#144389)
Seeing how we can't generate any debug intrinsics any more: delete a
variety of codepaths where they're handled. For the most part these are
plain deletions, in others I've tweaked comments to remain coherent, or
added a type to (what was) type-generic-lambdas.
This isn't all the DbgInfoIntrinsic call sites but it's most of the
simple scenarios.
Co-authored-by: Nikita Popov <github at npopov.com>
Commit: c9a87a50aee3c91f36d33c170d5131bcc370c289
https://github.com/llvm/llvm-project/commit/c9a87a50aee3c91f36d33c170d5131bcc370c289
Author: Jeffrey Byrnes <jeffrey.byrnes at amd.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/test/Transforms/SLPVectorizer/AMDGPU/external-shuffle.ll
M llvm/test/Transforms/SLPVectorizer/X86/extractelement-single-use-many-nodes.ll
M llvm/test/Transforms/SLPVectorizer/X86/vec_list_bias-inseltpoison.ll
Log Message:
-----------
[SLPVectorizer] Use accurate cost for external users of resize shuffles (#137419)
When implementing the vectorization, we potentially need to add shuffles
for external users. In such cases, we may be shuffling a smaller vector
into a larger vector. When this happens `ResizeToVF` will just build a
poison padded identity vector. Then the to build the final shuffle, we
just use the `SK_InsertSubvector` mask.
This is possibly clearer by looking at the included test in
SLPVectorizer/AMDGPU/external-shuffle.ll
In the exit block we have a bunch of shuffles to glue the vectorized
tree match the `InsertElement` users. `TMP25` holds the result of
resizing the v2i16 vectorized sequence to match the `InsertElement` size
v16i16. Then `TMP26` is the final shuffle which replaces the
`InsertElement` sequence. This is just an insertsubvector.
However, when calculating the cost for these shuffles, we aren't
modelling this correctly. `ResizeToVF` will indicate to
`performExtractsShuffleAction` that we cannot use the original mask due
to the resize shuffle. The consequence is that the cost calculation uses
a different shuffle mask than what is ultimately used.
Going back to the included test, we can consider again `TMP26`. Clearly
we can see the shuffle uses a mask {0, 1, 2, 3, 16, 17, poison ..}.
However, we will currently calculate the cost with a mask {0, 1, 2, 3,
20, 21, ...} we have replaced 16 and 17 with 20 and 21 (Index + Vector
Size). Queries like BasicTTImpl::improveShuffleKindFromMask will not
recognize this as an `SK_InsertSubvector` mask, and targets which have
reduced costs for `SK_InsertSubvector` will not accurately calculate the
cost.
Commit: 02b78ff9c639993356ccc72b847128fd1ff7f2ba
https://github.com/llvm/llvm-project/commit/02b78ff9c639993356ccc72b847128fd1ff7f2ba
Author: Andrew Rogers <andrurogerz at gmail.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M llvm/include/llvm/Option/OptSpecifier.h
M llvm/include/llvm/Transforms/IPO.h
M llvm/include/llvm/Transforms/Utils/PromoteMemToReg.h
Log Message:
-----------
[llvm] include Compiler.h in a few headers where it was missed (#144464)
Add missing `#include "llvm/Support/Compiler.h"` in a few LLVM headers
that use the `LLVM_ABI` macro.
Commit: 14286244f1dca9300ead8bf83f049df2ffa97180
https://github.com/llvm/llvm-project/commit/14286244f1dca9300ead8bf83f049df2ffa97180
Author: Jeremy Morse <jeremy.morse at sony.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M llvm/lib/Transforms/IPO/IROutliner.cpp
Log Message:
-----------
Follow up to 9eb0020555, squelch unused variable warning
It turns out that this now-deleted debug-intrinsic code was the only use of
CI.
Commit: 1410e69b641182e942470a90d4a0bb5a2910805f
https://github.com/llvm/llvm-project/commit/1410e69b641182e942470a90d4a0bb5a2910805f
Author: Steven Perron <stevenperron at google.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M llvm/lib/Target/SPIRV/SPIRVBuiltins.td
A llvm/test/CodeGen/SPIRV/constant/spec-constant.ll
Log Message:
-----------
[SPIRV] Allow __spirv_SpecConstant in Vulkan shaders (#143543)
There is a builtin __spirv_SpecConstant that the SPIR-V backend expands
into a specialization constant. However, it is currently only enable for
OpenCL shaders, and not the graphic shaders.
We want to use it for specialization constants coming from HLSL, so we
are enabling it for graphic shaders as well.
Implements https://github.com/llvm/wg-hlsl/pull/287
Fixes https://github.com/llvm/llvm-project/issues/142991
Commit: c80282d333d7248c8a34694ce1bec9a40681c1c5
https://github.com/llvm/llvm-project/commit/c80282d333d7248c8a34694ce1bec9a40681c1c5
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUInstructions.td
M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
M llvm/lib/Target/AMDGPU/AMDGPURegisterBankInfo.cpp
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
M llvm/lib/Target/AMDGPU/SIISelLowering.h
M llvm/lib/Target/AMDGPU/SIInstructions.td
M llvm/test/CodeGen/AMDGPU/fneg-combines.new.ll
M llvm/test/CodeGen/AMDGPU/maximumnum.ll
M llvm/test/CodeGen/AMDGPU/minimumnum.ll
Log Message:
-----------
AMDGPU: Directly select minimumnum/maximumnum with ieee_mode=0 (#141903)
The hardware min/max follow the IR rules with IEEE mode disabled,
so we can avoid the canonicalizes of the input. We lose the quieting
of a signaling nan if both inputs are nans, but we only require that
with strictfp.
Commit: 72fb8ae541dcb6d4ab24283bd91a1fc64a9b7e3b
https://github.com/llvm/llvm-project/commit/72fb8ae541dcb6d4ab24283bd91a1fc64a9b7e3b
Author: Daniil Kovalev <dkovalev at accesssoftek.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M lld/test/ELF/lto/aarch64-pac-got-func.ll
Log Message:
-----------
[lld][test][PAC] Do not rely on concrete offsets in LTO tests (#143358)
When changing codegen (e.g. in #130809), offsets in binaries produced by
LTO tests might change. We do not need to match concrete offset values,
it's enough to ensure that hex values in particular places are
identical.
---------
Co-authored-by: Anatoly Trosinenko <atrosinenko at accesssoftek.com>
Commit: 4ced29b8482e3537da7d27d410bf7947b0666b4c
https://github.com/llvm/llvm-project/commit/4ced29b8482e3537da7d27d410bf7947b0666b4c
Author: Michael Buch <michaelbuch12 at gmail.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M lldb/source/Plugins/ExpressionParser/Clang/IRDynamicChecks.cpp
Log Message:
-----------
[lldb][Expression] Don't create Objective-C IR checker for pure-C++ targets/frames (#144503)
There's no need to create this utility function (and run it) for
targets/frames that aren't Objective-C/Objective-C++.
Commit: a5f5f1209aa122ee295ae0dc0f1ee594ad988ecd
https://github.com/llvm/llvm-project/commit/a5f5f1209aa122ee295ae0dc0f1ee594ad988ecd
Author: Jay Foad <jay.foad at amd.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/VOP3Instructions.td
Log Message:
-----------
[AMDGPU] Use subtarget feature for v_lshl_add_u64 pattern. NFC. (#144544)
Following on from #133723, use the new subtarget feature for the
selection pattern as well as for the instruction definition.
Commit: cd4e3843395329538feb1c29cd582471b482caf7
https://github.com/llvm/llvm-project/commit/cd4e3843395329538feb1c29cd582471b482caf7
Author: Slava Zakharin <szakharin at nvidia.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M flang/test/Semantics/modfile75.F90
Log Message:
-----------
[flang][test] Removed temporary workaround for buildbots.
Commit: cf637b7e3554976419a0d672ad4c252137dc34f3
https://github.com/llvm/llvm-project/commit/cf637b7e3554976419a0d672ad4c252137dc34f3
Author: Tom Eccles <tom.eccles at arm.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M flang/lib/Semantics/resolve-directives.cpp
M flang/test/Semantics/OpenMP/parallel-sections01.f90
A flang/test/Semantics/OpenMP/sections-goto.f90
M flang/test/Semantics/OpenMP/sections02.f90
Log Message:
-----------
[flang][OpenMP] Fix goto within SECTION (#144502)
Previously we didn't push any context for SECTION and they are not
modelled with differing scopes and so goto detection couldn't tell that
GOTOs between two SECTIONs were between constructs rather than just
staying inside of the parent SECTIONS construct.
Fixes #143231
Commit: 0108a5908cab5e418c683ef9b6e1810755344b5e
https://github.com/llvm/llvm-project/commit/0108a5908cab5e418c683ef9b6e1810755344b5e
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/test/Transforms/PhaseOrdering/X86/hadd.ll
M llvm/test/Transforms/PhaseOrdering/X86/hsub.ll
A llvm/test/Transforms/SLPVectorizer/SystemZ/non-power-2-subvector-extract.ll
Log Message:
-----------
[SLP]Fix a crash on an subvector size calculation for non-power-of-2 vector
Patch fixes cost estimation for the extractelements from non-power-of-2
vectors, defined as subvector extracts. In this case the subvector size
might be not adjusted to a whole register size, need to get the minimum
between whole vector size and the actual difference to prevent compiler
crash.
Fixes #143513
Commit: 00139f10c3cd4118de7148635c820bb42843287a
https://github.com/llvm/llvm-project/commit/00139f10c3cd4118de7148635c820bb42843287a
Author: Alex MacLean <amaclean at nvidia.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M llvm/lib/Target/NVPTX/NVPTXISelDAGToDAG.cpp
M llvm/lib/Target/NVPTX/NVPTXISelDAGToDAG.h
M llvm/lib/Target/NVPTX/NVPTXInstrInfo.td
M llvm/lib/Target/NVPTX/NVPTXIntrinsics.td
M llvm/test/CodeGen/NVPTX/bug26185-2.ll
M llvm/test/CodeGen/NVPTX/bug26185.ll
M llvm/test/CodeGen/NVPTX/i1-ext-load.ll
M llvm/test/CodeGen/NVPTX/ldu-ldg.ll
M llvm/test/CodeGen/NVPTX/variadics-backend.ll
Log Message:
-----------
[NVPTX] Cleanup ld/st lowering (#143936)
Commit: eb31c422d0dc816bf285a81bf92690d4d16273ed
https://github.com/llvm/llvm-project/commit/eb31c422d0dc816bf285a81bf92690d4d16273ed
Author: Garvit Gupta <quic_garvgupt at quicinc.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M clang/docs/Toolchain.rst
M clang/include/clang/Basic/DiagnosticDriverKinds.td
M clang/lib/Driver/ToolChains/BareMetal.cpp
M clang/lib/Driver/ToolChains/BareMetal.h
A clang/test/Driver/Inputs/basic_aarch64_gcc_tree/aarch64-none-elf/include/c++/8.2.1/.keep
A clang/test/Driver/Inputs/basic_aarch64_gcc_tree/aarch64-none-elf/lib/.keep
A clang/test/Driver/Inputs/basic_aarch64_gcc_tree/aarch64-none-elf/lib/crt0.o
A clang/test/Driver/Inputs/basic_aarch64_gcc_tree/bin/aarch64-none-elf-ld
A clang/test/Driver/Inputs/basic_aarch64_gcc_tree/lib/gcc/aarch64-none-elf/8.2.1/crtbegin.o
A clang/test/Driver/Inputs/basic_aarch64_gcc_tree/lib/gcc/aarch64-none-elf/8.2.1/crtend.o
A clang/test/Driver/Inputs/basic_aarch64_nogcc_tree/aarch64-none-elf/lib/crt0.o
A clang/test/Driver/Inputs/basic_aarch64_nogcc_tree/aarch64-none-elf/lib/crtbegin.o
A clang/test/Driver/Inputs/basic_aarch64_nogcc_tree/aarch64-none-elf/lib/crtend.o
A clang/test/Driver/Inputs/basic_aarch64_nogcc_tree/bin/aarch64-none-elf-ld
A clang/test/Driver/Inputs/basic_arm_gcc_tree/armv6m-none-eabi/include/c++/8.2.1/.keep
A clang/test/Driver/Inputs/basic_arm_gcc_tree/armv6m-none-eabi/lib/.keep
A clang/test/Driver/Inputs/basic_arm_gcc_tree/armv6m-none-eabi/lib/crt0.o
A clang/test/Driver/Inputs/basic_arm_gcc_tree/bin/armv6m-none-eabi-ld
A clang/test/Driver/Inputs/basic_arm_gcc_tree/lib/gcc/armv6m-none-eabi/8.2.1/crtbegin.o
A clang/test/Driver/Inputs/basic_arm_gcc_tree/lib/gcc/armv6m-none-eabi/8.2.1/crtend.o
A clang/test/Driver/Inputs/basic_arm_nogcc_tree/armv6m-none-eabi/lib/crt0.o
A clang/test/Driver/Inputs/basic_arm_nogcc_tree/armv6m-none-eabi/lib/crtbegin.o
A clang/test/Driver/Inputs/basic_arm_nogcc_tree/armv6m-none-eabi/lib/crtend.o
A clang/test/Driver/Inputs/basic_arm_nogcc_tree/bin/armv6m-none-eabi-ld
A clang/test/Driver/aarch64-gnutools.c
A clang/test/Driver/aarch64-toolchain-extra.c
A clang/test/Driver/aarch64-toolchain.c
A clang/test/Driver/arm-gnutools.c
A clang/test/Driver/arm-toolchain-extra.c
A clang/test/Driver/arm-toolchain.c
M clang/test/Driver/baremetal.cpp
A clang/test/Driver/check-no-multlib-warning.c
Log Message:
-----------
[Driver] Add support for GCC installation detection in Baremetal toolchain (#121829)
This patch introduces enhancements to the Baremetal toolchain to support
GCC toolchain detection.
- If the --gcc-install-dir or --gcc-toolchain options are provided and
point to valid paths, the sysroot is derived from those locations.
- If not, the logic falls back to the existing sysroot inference
mechanism already present in the Baremetal toolchain.
- Support for adding include paths for the libstdc++ library has also
been added.
Additionally, the restriction to always use the integrated assembler has
been removed. With a valid GCC installation, the GNU assembler can now
be used as well.
This patch currently updates and adds tests for the ARM target only.
RISC-V-specific tests will be introduced in a later patch, once the
RISCVToolChain is fully merged into the Baremetal toolchain. At this
stage, there is no way to test the RISC-V target within this PR.
RFC:
https://discourse.llvm.org/t/merging-riscvtoolchain-and-baremetal-toolchains/75524
Commit: e6a41399cb8796e5d18940d49b0151704568321a
https://github.com/llvm/llvm-project/commit/e6a41399cb8796e5d18940d49b0151704568321a
Author: sribee8 <sriya.pratipati at gmail.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M libc/src/__support/wchar/character_converter.cpp
M libc/test/src/__support/CMakeLists.txt
M libc/test/src/__support/wchar/CMakeLists.txt
A libc/test/src/__support/wchar/utf8_to_32_test.cpp
Log Message:
-----------
Reland "[libc] utf8 to 32 CharacterConverter" (#144450)
Reverts llvm/llvm-project#144446
Figured out the issue, so creating a new pull request.
---------
Co-authored-by: Sriya Pratipati <sriyap at google.com>
Commit: 65d590e8d012df9dabbf8b3ec929fd1543c7398a
https://github.com/llvm/llvm-project/commit/65d590e8d012df9dabbf8b3ec929fd1543c7398a
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
Log Message:
-----------
[X86] combineLogicBlendIntoConditionalNegate - convert to SDPatternMatch matching. NFC. (#144536)
Commit: c66be289901b3f035187d391e80e3610d7d6232e
https://github.com/llvm/llvm-project/commit/c66be289901b3f035187d391e80e3610d7d6232e
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M clang/lib/AST/ByteCode/Compiler.cpp
M clang/lib/AST/ByteCode/Compiler.h
M clang/lib/AST/ByteCode/Descriptor.cpp
M clang/lib/AST/ByteCode/Disasm.cpp
M clang/lib/AST/ByteCode/Floating.h
M clang/lib/AST/ByteCode/Integral.h
M clang/lib/AST/ByteCode/IntegralAP.h
M clang/lib/AST/ByteCode/Interp.cpp
M clang/lib/AST/ByteCode/Interp.h
M clang/lib/AST/ByteCode/InterpBuiltin.cpp
M clang/lib/AST/ByteCode/InterpBuiltinBitCast.cpp
M clang/lib/AST/ByteCode/InterpState.h
M clang/lib/AST/ByteCode/Opcodes.td
M clang/lib/AST/ByteCode/PrimType.h
M clang/lib/AST/ByteCode/Program.h
M clang/test/AST/ByteCode/builtin-bit-cast-long-double.cpp
M clang/test/AST/ByteCode/builtin-functions.cpp
Log Message:
-----------
[clang][bytecode] Allocate IntegralAP and Floating types using an allocator (#144246)
Both `APInt` and `APFloat` will heap-allocate memory themselves using
the system allocator when the size of their data exceeds 64 bits.
This is why clang has `APNumericStorage`, which allocates its memory
using an allocator (via `ASTContext`) instead. Calling `getValue()` on
an ast node like that will then create a new `APInt`/`APFloat` , which
will copy the data (in the `APFloat` case, we even copy it twice).
That's sad but whatever.
In the bytecode interpreter, we have a similar problem. Large integers
and floating-point values are placement-new allocated into the
`InterpStack` (or into the bytecode, which is a `vector<std::byte>`).
When we then later interrupt interpretation, we don't run the destructor
for all items on the stack, which means we leak the memory the
`APInt`/`APFloat` (which backs the `IntegralAP`/`Floating` the
interpreter uses).
Fix this by using an approach similar to the one used in the AST. Add an
allocator to `InterpState`, which is used for temporaries and local
values. Those values will be freed at the end of interpretation. For
global variables, we need to promote the values to global lifetime,
which we do via `InitGlobal` and `FinishInitGlobal` ops.
Interestingly, this results in a slight _improvement_ in compile times:
https://llvm-compile-time-tracker.com/compare.php?from=6bfcdda9b1ddf0900f82f7e30cb5e3253a791d50&to=88d1d899127b408f0fb0f385c2c58e6283195049&stat=instructions:u
(but don't ask me why).
Fixes https://github.com/llvm/llvm-project/issues/139012
Commit: 9ec75a50bc48c84c68430f113332769d23481ef5
https://github.com/llvm/llvm-project/commit/9ec75a50bc48c84c68430f113332769d23481ef5
Author: Fangrui Song <i at maskray.me>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M llvm/lib/Target/Mips/AsmParser/MipsAsmParser.cpp
M llvm/lib/Target/Mips/MCTargetDesc/CMakeLists.txt
M llvm/lib/Target/Mips/MCTargetDesc/MipsELFObjectWriter.cpp
M llvm/lib/Target/Mips/MCTargetDesc/MipsMCAsmInfo.cpp
M llvm/lib/Target/Mips/MCTargetDesc/MipsMCAsmInfo.h
M llvm/lib/Target/Mips/MCTargetDesc/MipsMCCodeEmitter.cpp
R llvm/lib/Target/Mips/MCTargetDesc/MipsMCExpr.cpp
R llvm/lib/Target/Mips/MCTargetDesc/MipsMCExpr.h
M llvm/lib/Target/Mips/MCTargetDesc/MipsTargetStreamer.cpp
M llvm/lib/Target/Mips/MipsAsmPrinter.cpp
M llvm/lib/Target/Mips/MipsMCInstLower.cpp
M llvm/lib/Target/Mips/MipsTargetObjectFile.cpp
Log Message:
-----------
MIPS: Replace MipsMCExpr with MCSpecifierExpr
Commit: 382e3fdbb476a5d5771b315daedcd05a15883fbc
https://github.com/llvm/llvm-project/commit/382e3fdbb476a5d5771b315daedcd05a15883fbc
Author: Michael Buch <michaelbuch12 at gmail.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M lldb/source/Plugins/Language/CPlusPlus/LibCxxUnorderedMap.cpp
Log Message:
-----------
[lldb][Formatter] Get element type for unordered_maps from __hash_table::value_type (#144517)
https://github.com/llvm/llvm-project/pull/143501 changes usage of
`__hash_value_type` in libcxx to an empty tag type. This type will no
longer have a definition in DWARF. Currently the LLDB unordered_map
formatter deduces the map's `element_type` by looking at the `__cc_`
member of `__hash_value_type`. But that will no longer work because we
only have its forward declaration. Since what we're really after is the
type that `__hash_value_type` is wrapping, we can just look at the
`__hash_table::value_type` typedef. With
https://github.com/llvm/llvm-project/pull/143501 that will now point to
the `std::pair` element type (which used to be what we got from
`__cc_`).
TBD: need to double-check this works for older layouts. Quick glance at
the code makes me suspicious of cases like `unordered_map<std::pair<int,
int>, int>`
Commit: 4e884dd993e040f7ccd83ecdc3c4570d23a42ee6
https://github.com/llvm/llvm-project/commit/4e884dd993e040f7ccd83ecdc3c4570d23a42ee6
Author: Fangrui Song <i at maskray.me>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M llvm/lib/Target/Sparc/AsmParser/SparcAsmParser.cpp
M llvm/lib/Target/Sparc/MCTargetDesc/SparcELFObjectWriter.cpp
M llvm/lib/Target/Sparc/MCTargetDesc/SparcMCAsmInfo.cpp
M llvm/lib/Target/Sparc/MCTargetDesc/SparcMCAsmInfo.h
M llvm/lib/Target/Sparc/MCTargetDesc/SparcMCCodeEmitter.cpp
M llvm/lib/Target/Sparc/MCTargetDesc/SparcMCExpr.cpp
R llvm/lib/Target/Sparc/MCTargetDesc/SparcMCExpr.h
M llvm/lib/Target/Sparc/SparcAsmPrinter.cpp
M llvm/lib/Target/Sparc/SparcISelLowering.cpp
M llvm/lib/Target/Sparc/SparcTargetObjectFile.cpp
Log Message:
-----------
SPARC: Remove SparcMCExpr.h
Commit: 0c608175c11cf0ce797be7575a7c8d8ebcdecbd8
https://github.com/llvm/llvm-project/commit/0c608175c11cf0ce797be7575a7c8d8ebcdecbd8
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
Log Message:
-----------
[X86] matchLogicBlend - convert to SDPatternMatch matching. NFC. (#144546)
Removes a LOT of commutative matching.
Commit: b14e03d8555043bc35e9c75fff7f52d28950b3ab
https://github.com/llvm/llvm-project/commit/b14e03d8555043bc35e9c75fff7f52d28950b3ab
Author: nerix <nerixdev at outlook.de>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M lldb/source/Plugins/Language/CPlusPlus/CxxStringTypes.cpp
M lldb/source/Plugins/Language/CPlusPlus/CxxStringTypes.h
M lldb/source/Plugins/Language/CPlusPlus/LibCxx.cpp
M lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx/string/TestDataFormatterLibcxxString.py
M lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx/string_view/TestDataFormatterLibcxxStringView.py
Log Message:
-----------
[LLDB] Consolidate C++ string buffer summaries (#144258)
As part of https://github.com/llvm/llvm-project/pull/143177, I moved the
non-libc++ specific formatting of `std::string`s out to `CxxStringTypes`
as MSVC's STL `std::string` can also be thought of a pointer+size pair.
I named this kind of string "string buffer".
This PR picks that change, so the MSVC PR can be smaller.
Unfortunately, libstdc++'s `std::string` does not fit this (it also uses
a different string printer function).
This resolves two FIXMEs in the libc++ tests, where empty u16 and u32
strings didn't have any prefix (u/U).
Commit: 5baf351ba819e1e6bae0250492e85a2862ef406b
https://github.com/llvm/llvm-project/commit/5baf351ba819e1e6bae0250492e85a2862ef406b
Author: yonghong-song <yhs at fb.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M llvm/lib/Target/BPF/AsmParser/BPFAsmParser.cpp
Log Message:
-----------
[BPF] Do not allow gotol in the middle of asm insn (#144545)
Previously I accidentally allowed 'gotol' insn in the middle of asm insn
([1]). But actually 'gotol' is not allowed in the middle of any asm
insn, so remove it from isValidIdInMiddle().
[1] https://github.com/yonghong-song/llvm-project/commit/6c412b6c6faa2dabd8602d35d3f5e796fb1daf80
Commit: 556e69b7f4328a0d7c36c9d7ca0dd8f52f82ad71
https://github.com/llvm/llvm-project/commit/556e69b7f4328a0d7c36c9d7ca0dd8f52f82ad71
Author: Charles Zablit <c_zablit at apple.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M lldb/cmake/modules/FindPythonAndSwig.cmake
M lldb/test/API/lit.cfg.py
M lldb/test/API/lit.site.cfg.py.in
M lldb/test/Shell/lit.cfg.py
Log Message:
-----------
[lldb] make lit use the same Python executable for building and testing (#143756)
When testing LLDB, we want to make sure to use the same Python as the
one we used to build it.
This patch uses the CMake variable `Python3_ROOT_DIR` to add the correct
Python to the `PATH` in LLDB lit tests, in order to ensure of this.
Please see https://github.com/swiftlang/swift/pull/82063 for the
original issue.
This is a continuation of https://github.com/swiftlang/swift/pull/82063.
Commit: 8063bd153c6aca43869d96aee64aeceb9be98ca5
https://github.com/llvm/llvm-project/commit/8063bd153c6aca43869d96aee64aeceb9be98ca5
Author: Nishant Patel <nishant.b.patel at intel.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M mlir/lib/Dialect/XeGPU/Transforms/XeGPUWgToSgDistribute.cpp
A mlir/test/Dialect/XeGPU/xegpu-wg-to-sg-elemwise.mlir
Log Message:
-----------
[MLIR][XeGPU] Add support for elementwise ops in Wg to Sg distribute pass [1/N] (#142797)
This PR adds support for Elementwise operations' (unary & binary)
lowering from Workgroup to Subgroup.
Commit: 01a7a21a4b8070a88e5dcc9753066e38d26faf85
https://github.com/llvm/llvm-project/commit/01a7a21a4b8070a88e5dcc9753066e38d26faf85
Author: Chris B <chris.bieneman at me.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M llvm/cmake/modules/AddLLVM.cmake
Log Message:
-----------
[CMake] Add BINARY_DIR argument for add_lit_testsuites (#144431)
We're doing some slightly odd things with LIT in the offload-test-suite.
Specifically we generate multiple binary directories to configure and
run tests with different configurations from the same source root.
In this configuration the subdirectory targets need to instead point to
the correct generated binary directory and use test filtering to get a
subset of tests.
Commit: 526310e916af2073e30b57b678307ce94df803f3
https://github.com/llvm/llvm-project/commit/526310e916af2073e30b57b678307ce94df803f3
Author: Jon Roelofs <jonathan_roelofs at apple.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M llvm/lib/IR/DiagnosticInfo.cpp
M llvm/test/Transforms/GVN/opt-remarks.ll
Log Message:
-----------
[Remarks] Elaborate on called intrinsics (#143985)
Commit: ec230aa7a7d13c222c0b34b87c3c16937383b4a0
https://github.com/llvm/llvm-project/commit/ec230aa7a7d13c222c0b34b87c3c16937383b4a0
Author: Garvit Gupta <quic_garvgupt at quicinc.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M clang/lib/Driver/ToolChains/BareMetal.cpp
M clang/lib/Driver/ToolChains/BareMetal.h
M clang/test/Driver/aarch64-toolchain-extra.c
M clang/test/Driver/aarch64-toolchain.c
M clang/test/Driver/arm-toolchain-extra.c
M clang/test/Driver/arm-toolchain.c
M clang/test/Driver/baremetal.cpp
M clang/test/Driver/sanitizer-ld.c
Log Message:
-----------
[Driver] Add support for crtbegin.o, crtend.o and libgloss lib to BareMetal toolchain object (#121830)
This patch conditionalise the addition of crt{begin,end}.o object files
along
with addition of -lgloss lib based on whether libc selected is newlib or
llvm
libc. Since there is no way a user can specify which libc it wants to
link
against, currently passing valid GCCInstallation to driver will select
newlib
otherwise it will default to llvm libc.
Moreover, this patch makes gnuld the default linker for baremetal
toolchain
object. User need to pass `-fuse-ld=lld` explicitly to driver to select
lld
This is the 2nd patch in the series of patches of merging RISCVToolchain
into
BareMetal toolchain object.
RFC:
https://discourse.llvm.org/t/merging-riscvtoolchain-and-baremetal-toolchains/75524
Commit: 8513066f2c49457f5d1f63e275403330f854041c
https://github.com/llvm/llvm-project/commit/8513066f2c49457f5d1f63e275403330f854041c
Author: someoneinjd <someoneinjd at outlook.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M clang-tools-extra/clangd/ClangdLSPServer.cpp
M clang-tools-extra/clangd/Protocol.cpp
M clang-tools-extra/clangd/Protocol.h
A clang-tools-extra/clangd/test/positionencoding.test
Log Message:
-----------
[clangd] Implement LSP 3.17 positionEncoding (#142903)
This PR adds support for the `positionEncoding` client capability
introduced in LSP 3.17. Clangd can now negotiate the position encoding
with the client during initialization.
Fix https://github.com/clangd/clangd/issues/1746
Co-authored-by: kadir çetinkaya <kadircetinkaya.06.tr at gmail.com>
Commit: 9dd1c66e8ffba73fead13aaf359e290f6e1d4899
https://github.com/llvm/llvm-project/commit/9dd1c66e8ffba73fead13aaf359e290f6e1d4899
Author: Luke Lau <luke at igalia.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/VPlan.cpp
M llvm/lib/Transforms/Vectorize/VPlan.h
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/lib/Transforms/Vectorize/VPlanTransforms.h
M llvm/test/Transforms/LoopVectorize/AArch64/clamped-trip-count.ll
M llvm/test/Transforms/LoopVectorize/AArch64/conditional-branches-cost.ll
M llvm/test/Transforms/LoopVectorize/AArch64/divs-with-scalable-vfs.ll
M llvm/test/Transforms/LoopVectorize/AArch64/epilog-iv-select-cmp.ll
M llvm/test/Transforms/LoopVectorize/AArch64/optsize_minsize.ll
M llvm/test/Transforms/LoopVectorize/AArch64/simple_early_exit.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-inductions-unusual-types.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-interleaved-accesses.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-interleaved-masked-accesses.ll
M llvm/test/Transforms/LoopVectorize/AArch64/transform-narrow-interleave-to-widen-memory-remove-loop-region.ll
M llvm/test/Transforms/LoopVectorize/ARM/optsize_minsize.ll
M llvm/test/Transforms/LoopVectorize/RISCV/interleaved-masked-access.ll
M llvm/test/Transforms/LoopVectorize/RISCV/mask-index-type.ll
M llvm/test/Transforms/LoopVectorize/RISCV/pr87378-vpinstruction-or-drop-poison-generating-flags.ll
M llvm/test/Transforms/LoopVectorize/RISCV/pr88802.ll
M llvm/test/Transforms/LoopVectorize/RISCV/strided-accesses.ll
M llvm/test/Transforms/LoopVectorize/RISCV/uniform-load-store.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-interleave.ll
M llvm/test/Transforms/LoopVectorize/X86/constant-fold.ll
M llvm/test/Transforms/LoopVectorize/X86/drop-poison-generating-flags.ll
M llvm/test/Transforms/LoopVectorize/X86/induction-costs.ll
M llvm/test/Transforms/LoopVectorize/X86/interleave-cost.ll
M llvm/test/Transforms/LoopVectorize/X86/outer_loop_test1_no_explicit_vect_width.ll
M llvm/test/Transforms/LoopVectorize/X86/scatter_crash.ll
M llvm/test/Transforms/LoopVectorize/epilog-vectorization-any-of-reductions.ll
M llvm/test/Transforms/LoopVectorize/first-order-recurrence.ll
M llvm/test/Transforms/LoopVectorize/load-deref-pred-poison-ub-ops-feeding-pointer.ll
M llvm/test/Transforms/LoopVectorize/pointer-induction.ll
M llvm/test/Transforms/LoopVectorize/reduction-inloop-pred.ll
M llvm/test/Transforms/LoopVectorize/scalable-first-order-recurrence.ll
M llvm/test/Transforms/LoopVectorize/scalable-inductions.ll
M llvm/test/Transforms/LoopVectorize/scalable-iv-outside-user.ll
M llvm/test/Transforms/LoopVectorize/single_early_exit_live_outs.ll
M llvm/test/Transforms/LoopVectorize/uniform-blend.ll
M llvm/test/Transforms/LoopVectorize/vplan-iv-transforms.ll
Log Message:
-----------
[VPlan] Expand VPWidenIntOrFpInductionRecipe into separate recipes (#118638)
The motivation of this PR is to make #115274 easier to implement, and
should allow us to add EVL support by just passing EVL to the VF
operand.
The current difficulty with widening IVs with EVL is that
VPWidenIntOrFpInductionRecipe generates its own backedge value. Since
it's a VPHeaderPHIRecipe the VF operand must be in the preheader, which
means we can't use the EVL since it's defined in the loop body.
The gist in this PR is to take the approach in #114305 and expand
VPWidenIntOrFpInductionRecipe into several recipes for the initial
value, phi and backedge value just before execution. I.e. this example:
```
vector.ph:
Successor(s): vector loop
<x1> vector loop: {
vector.body:
WIDEN-INDUCTION %i = phi %start, %step, %vf
...
EMIT branch-on-count ...
No successors
}
```
gets expanded to:
```
vector.ph:
...
vp<%induction.start> = ...
vp<%induction.increment> = ...
Successor(s): vector loop
<x1> vector loop: {
vector.body:
ir<%i> = WIDEN-PHI vp<%induction.start>, vp<%vec.ind.next>
...
vp<%vec.ind.next> = add ir<%i>, vp<%induction.increment>
EMIT branch-on-count ...
No successors
}
```
This allows us to a value defined in the loop in the backedge value, and
also means we can just reuse the existing backedge fixups in
VPlan::execute without having to specially handle it ourselves.
After this #115274 should just become a matter of setting the VF operand
to EVL (and building the increment step in the loop body, not the
preheader).
Commit: 9e0186d925f0c375a627866c59394f25c22eb3ff
https://github.com/llvm/llvm-project/commit/9e0186d925f0c375a627866c59394f25c22eb3ff
Author: Finn Plummer <finn.c.plum at gmail.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M llvm/include/llvm/Frontend/HLSL/HLSLRootSignature.h
M llvm/include/llvm/Frontend/HLSL/HLSLRootSignatureUtils.h
M llvm/lib/Frontend/HLSL/HLSLRootSignatureUtils.cpp
M llvm/unittests/Frontend/CMakeLists.txt
A llvm/unittests/Frontend/HLSLRootSignatureRangesTest.cpp
Log Message:
-----------
[HLSL][RootSignature] Implement `ResourceRange` as an `IntervalMap` (#140957)
A resource range consists of a closed interval, `[a;b]`, denoting which
shader registers it is bound to.
For instance:
- `CBV(b1)` corresponds to the resource range of `[1;1]`
- `CBV(b0, numDescriptors = 3)` likewise to `[0;2]`
We want to provide an error diagnostic when there is an overlap in the
required registers (an overlap in the resource ranges).
The goal of this pr is to implement a structure to model a set of
resource ranges and provide an api to detect any overlap over a set of
resource ranges.
`ResourceRange` models this by implementing an `IntervalMap` to denote a
mapping from an interval of registers back to a resource range. It
allows for a new `ResourceRange` to be added to the mapping and it will
report if and what the first overlap is.
For the context of how this will be used in validation of a
`RootSignatureDecl` please see the proceeding pull request here:
https://github.com/llvm/llvm-project/pull/140962.
- Implements `ResourceRange` as an `IntervalMap`
- Adds unit testing of the various `insert` scenarios
Note: it was also considered to implement this as an `IntervalTree`,
this would allow reporting of a diagnostic for each overlap that is
encountered, as opposed to just the first. However, error generation of
just reporting the first error is already rather verbose, and adding the
additional diagnostics only made this worse.
Part 1 of https://github.com/llvm/llvm-project/issues/129942
Commit: ed07b54b38c675235b4ce1bfd49e1fff372f6520
https://github.com/llvm/llvm-project/commit/ed07b54b38c675235b4ce1bfd49e1fff372f6520
Author: Morris Hafner <mmha at users.noreply.github.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenCall.cpp
M clang/lib/CIR/CodeGen/CIRGenExpr.cpp
M clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
M clang/lib/CIR/CodeGen/CIRGenStmt.cpp
M clang/lib/CIR/CodeGen/CIRGenValue.h
Log Message:
-----------
[CIR][NFCI] Represent Complex RValues As Single Value (#144519)
This patch removes one mlir::Value in the RValue class that has been
used to represent complex values in classic CG. In CIR we plan on
representing complex as a single value. It also removes some now
unnecessary member functions related to complex handling.
Commit: 3a06e9a710b7cfdbf1c002acc46fa76617e8baf8
https://github.com/llvm/llvm-project/commit/3a06e9a710b7cfdbf1c002acc46fa76617e8baf8
Author: Garvit Gupta <quic_garvgupt at quicinc.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M compiler-rt/lib/builtins/CMakeLists.txt
Log Message:
-----------
Conditionalise the addition of Aarch64 function Multi versioning support on aarch64 target (#143749)
Currently, `ENABLE_BAREMETAL_AARCH64_FMV` is added to builtin defines
for all baremetal targets though it is only needed for aarch64. This
patch fixes this by adding it only for aarch64 target.
Commit: 7ea710fafa5782a274ded2ab6933c63c5c71f2ee
https://github.com/llvm/llvm-project/commit/7ea710fafa5782a274ded2ab6933c63c5c71f2ee
Author: Alexey Samsonov <vonosmas at gmail.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M libc/test/src/stdio/CMakeLists.txt
M libc/test/src/stdio/fdopen_test.cpp
M libc/test/src/stdio/fgetc_test.cpp
M libc/test/src/stdio/fgetc_unlocked_test.cpp
M libc/test/src/stdio/fgets_test.cpp
M libc/test/src/stdio/fileop_test.cpp
M libc/test/src/stdio/fopencookie_test.cpp
M libc/test/src/stdio/remove_test.cpp
M libc/test/src/stdio/rename_test.cpp
M libc/test/src/stdio/setvbuf_test.cpp
M libc/test/src/stdio/unlocked_fileop_test.cpp
M libc/test/src/stdlib/StrtolTest.h
M libc/test/src/stdlib/strtold_test.cpp
Log Message:
-----------
Fix/reapply "[libc] Migrate stdio tests to ErrnoCheckingTest. (#144134)
This reverts commit 92a116c4ef822950f8c57eaa5164c844c73a1f7e with a fix
for fgets test - convert nullptr to fgets return type (char*), since the
matcher is pedantic.
Commit: 4943e746909ddbf8845e7fa397a97b918bf777df
https://github.com/llvm/llvm-project/commit/4943e746909ddbf8845e7fa397a97b918bf777df
Author: Jon Roelofs <jonathan_roelofs at apple.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M llvm/test/CodeGen/RISCV/GlobalISel/irtranslator/fallback.ll
Log Message:
-----------
fixup! [Remarks] Elaborate on called intrinsics (#143985)
Commit: 030b5519ec139757c13a6d6f337e69750ec24d6e
https://github.com/llvm/llvm-project/commit/030b5519ec139757c13a6d6f337e69750ec24d6e
Author: Yijia Gu <yijiagu at google.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
Log Message:
-----------
[mlir][bazel] add missing deps for XeGPUTransforms
Commit: b876b3fa98cffd5b8755398f9a8218f667464d76
https://github.com/llvm/llvm-project/commit/b876b3fa98cffd5b8755398f9a8218f667464d76
Author: vitor1001 <56533861+vitor1001 at users.noreply.github.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M clang/lib/Headers/__clang_cuda_intrinsics.h
Log Message:
-----------
Add missing intrinsics to cuda headers (#143664)
LLVM prevents the sm_32_intrinsics.hpp header from being included with a
#define __SM_32_INTRINSICS_HPP__. It also provides drop-in replacements
of the functions defined in the CUDA header.
One issue is that some intrinsics were added after the replacement was
written, and thus have no replacement, breaking code that calls them
(Raft is one example).
This patch adds the missing intrinsics.
Commit: 0cfc59ff51720ee60a71dd34077fc161886a3701
https://github.com/llvm/llvm-project/commit/0cfc59ff51720ee60a71dd34077fc161886a3701
Author: Yijia Gu <yijiagu at google.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
Log Message:
-----------
[mlir][bazel] remove extra empty space for XeGPUTransforms
Commit: e29bb9a038245320164c5890d1a75843e4a664ef
https://github.com/llvm/llvm-project/commit/e29bb9a038245320164c5890d1a75843e4a664ef
Author: S. VenkataKeerthy <31350914+svkeerthy at users.noreply.github.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M llvm/lib/Analysis/IR2Vec.cpp
Log Message:
-----------
[IR2Vec] Consider only reachable BBs and non-debug instructions (#143476)
Changes to consider BBs that are reachable from the entry block. Similarly we skip debug instruction while computing the embeddings.
(Tracking issue - #141817)
Commit: 31523de4b000ca254259ae3167d28922e1302648
https://github.com/llvm/llvm-project/commit/31523de4b000ca254259ae3167d28922e1302648
Author: Garvit Gupta <quic_garvgupt at quicinc.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M clang/lib/Driver/ToolChains/BareMetal.cpp
M clang/test/Driver/aarch64-toolchain-extra.c
M clang/test/Driver/aarch64-toolchain.c
M clang/test/Driver/arm-toolchain-extra.c
M clang/test/Driver/arm-toolchain.c
M clang/test/Driver/baremetal-multilib.yaml
M clang/test/Driver/baremetal-sysroot.cpp
M clang/test/Driver/baremetal.cpp
Log Message:
-----------
[Driver] Fix link order of BareMetal toolchain object (#132806)
The linker job in BareMetal toolchain object will be used by GNU ld and
lld both.
However, gnuld process the arguments in the order in which they appear
on command
line, whereas there is no such restriction with lld.
The previous order was:
LibraryPaths -> Libraries -> LTOOptions -> LinkerInputs
The new order is:
LibraryPaths -> LTOOptions -> LinkerInputs -> Libraries
LTO options need to be added before adding any linker inputs because
file format
after compile stage during LTO is bitcode which gnuld natively cannot
process.
Hence will need to pass appropriate plugins before adding any bitcode
file on the
command line.
Object files that are getting linked need to be passed before processing
any
libraries so that gnuld can appropriately do symbol resolution for the
symbols
for which no definition is provided through user code.
Similar link order is also followed by other linker jobs for gnuld such
as in
gnutools::Linker in Gnu.cpp
This is the 3rd patch in the series of patches of merging RISCVToolchain
into
BareMetal toolchain object.
RFC:
https://discourse.llvm.org/t/merging-riscvtoolchain-and-baremetal-toolchains/75524
Commit: 2ab9c35ea93f8557827d4cadcceb05e4eed2d30a
https://github.com/llvm/llvm-project/commit/2ab9c35ea93f8557827d4cadcceb05e4eed2d30a
Author: joaosaffran <126493771+joaosaffran at users.noreply.github.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M llvm/include/llvm/BinaryFormat/DXContainer.h
M llvm/include/llvm/BinaryFormat/DXContainerConstants.def
Log Message:
-----------
[DXContainer] Update DXContainer to match D3D12 spec (#143201)
Update the descriptor range flag values in DXContainerConstants.def to
match
the Direct3D12 specification. This changes two aspects:
1. Modify the DESCRIPTOR_RANGE_FLAG macro to use direct values instead
of
bit shifts
2. Update the flag values to use hex notation and match D3D12's
D3D12_DESCRIPTOR_RANGE_FLAGS enumeration:
- DESCRIPTORS_VOLATILE: 0x1
- DATA_VOLATILE: 0x2
- DATA_STATIC_WHILE_SET_AT_EXECUTE: 0x4
- DATA_STATIC: 0x8
- DESCRIPTORS_STATIC_KEEPING_BUFFER_BOUNDS_CHECKS: 0x10000
3. Removed NONE value from ROOT_DESCRIPTOR_FLAG
This ensures better compatibility with the D3D12 API and makes the
values
more explicit in the code.
Requested here:
https://github.com/llvm/llvm-project/pull/138315#discussion_r2132818269
---------
Co-authored-by: joaosaffran <joao.saffran at microsoft.com>
Commit: bb288de4e0e74f235402ff41be60dabcd57e379f
https://github.com/llvm/llvm-project/commit/bb288de4e0e74f235402ff41be60dabcd57e379f
Author: Philip Reames <preames at rivosinc.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M llvm/lib/Transforms/Utils/LoopPeel.cpp
M llvm/test/Transforms/LoopUnroll/peel-last-iteration-minmax.ll
Log Message:
-----------
[LoopPeel] Support last iteration peeling of min/max intrinsics (#143598)
This isn't terribly useful at the moment because of the step=1
restriction but it should be functionally sound. This is mostly just
making sure the codepaths don't diverge as we make other changes.
Commit: 8cd05b88ec623018ca2c68cf2418d2beed026d27
https://github.com/llvm/llvm-project/commit/8cd05b88ec623018ca2c68cf2418d2beed026d27
Author: Finn Plummer <finn.c.plum at gmail.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M clang/include/clang/Parse/Parser.h
M clang/include/clang/Sema/SemaHLSL.h
M clang/lib/Parse/ParseDeclCXX.cpp
M clang/lib/Sema/SemaDecl.cpp
M clang/lib/Sema/SemaHLSL.cpp
Log Message:
-----------
[NFC][HLSL] Move Sema work from `ParseMicrosoftRootSignatureAttributeArgs` (#143184)
This separates semantic analysis from parsing by moving `RootSignatureDecl` creation, scope storage, and lookup logic into
`SemaHLSL`.
For more context see:
https://github.com/llvm/llvm-project/issues/142834.
- Define `ActOnStartRootSignatureDecl` and `ActOnFinishRootSignatureDecl` on `SemaHLSL`
- NFC so no test changes.
Resolves: https://github.com/llvm/llvm-project/issues/142834
---------
Co-authored-by: Aaron Ballman <aaron at aaronballman.com>
Commit: 80f3a28bbe7c2e17fb4b60e974c4157ec7e1eefc
https://github.com/llvm/llvm-project/commit/80f3a28bbe7c2e17fb4b60e974c4157ec7e1eefc
Author: Justin King <jcking at wulver.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M compiler-rt/lib/lsan/lsan_allocator.cpp
M compiler-rt/lib/lsan/lsan_allocator.h
M compiler-rt/lib/lsan/lsan_interceptors.cpp
M compiler-rt/lib/lsan/lsan_malloc_mac.cpp
M compiler-rt/lib/sanitizer_common/sanitizer_malloc_mac.inc
Log Message:
-----------
Revert "lsan: Support free_sized and free_aligned_sized from C23" (#144575)
Reverts llvm/llvm-project#144415
Need to update approach to handle Apple platforms gracefully.
Commit: 391dafd8af9c0309f2ca75621dae1dbae307b428
https://github.com/llvm/llvm-project/commit/391dafd8af9c0309f2ca75621dae1dbae307b428
Author: Philip Reames <preames at rivosinc.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/lib/Target/RISCV/RISCVISelLowering.h
M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
Log Message:
-----------
[RISCV] Consolidate both copies of getLMUL1VT [nfc] (#144568)
Put one copy on RISCVTargetLowering as a static function so that both
locations can use it, and rename the method to getM1VT for slightly
improved readability.
Commit: 1f10c6a277fbc1b1c6ceb7546b001af39feb92ce
https://github.com/llvm/llvm-project/commit/1f10c6a277fbc1b1c6ceb7546b001af39feb92ce
Author: Jon Roelofs <jonathan_roelofs at apple.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M llvm/lib/Transforms/Scalar/LowerMatrixIntrinsics.cpp
Log Message:
-----------
[Matrix] Hoist more IRBuilder<>'s. NFC
Commit: b59d4cf05447fdaf3d3c859e10db0b3c892f6ec6
https://github.com/llvm/llvm-project/commit/b59d4cf05447fdaf3d3c859e10db0b3c892f6ec6
Author: Joshua Batista <jbatista at microsoft.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M llvm/lib/Target/DirectX/DXILPrepare.cpp
M llvm/test/CodeGen/DirectX/llc-vector-load-scalarize.ll
A llvm/test/CodeGen/DirectX/noop_bitcast_global_array_type.ll
Log Message:
-----------
[Reland] Adjust bit cast instruction filter for DXIL Prepare pass (#143783)
Relands https://github.com/llvm/llvm-project/pull/142678, with a new
change to remove an unnecessary gep argument, after a revert was needed
due to unforeseen bugs.
Fixes https://github.com/llvm/llvm-project/issues/139013
Commit: dd65e6e0608c3390752750a0f19bca4409603db9
https://github.com/llvm/llvm-project/commit/dd65e6e0608c3390752750a0f19bca4409603db9
Author: Jan Patrick Lehr <JanPatrick.Lehr at amd.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
A offload/cmake/caches/AMDGPULibcBot.cmake
Log Message:
-----------
[Offload][libc] Add cmake cache AMDGPU buildbot (#144500)
An upcoming libc4GPU buildbot will be using this CMake cache file for
its build configuration.
Commit: 9cb754509608b9d9143fa17f775631bbfcce0848
https://github.com/llvm/llvm-project/commit/9cb754509608b9d9143fa17f775631bbfcce0848
Author: Garvit Gupta <quic_garvgupt at quicinc.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M clang/lib/Driver/ToolChains/BareMetal.cpp
A clang/test/Driver/baremetal-undefined-symbols.c
R clang/test/Driver/riscv-args.c
Log Message:
-----------
[Driver] Add option to force undefined symbols during linking in BareMetal toolchain object. (#132807)
Add support for `-u` option to force defined symbols. This option is
supported by both lld and gnuld.
This is done as a part of the effort to merge RISCVToolchain object into
BareMetal toolchain object.
This is the 4th patch in the series of patches for merging
RISCVToolchain object into BareMetal toolchain object.
RFC:
https://discourse.llvm.org/t/merging-riscvtoolchain-and-baremetal-toolchains/75524
Commit: 57828fec760f086b334ce0cb1c465fc559dcaea4
https://github.com/llvm/llvm-project/commit/57828fec760f086b334ce0cb1c465fc559dcaea4
Author: Timm Bäder <tbaeder at redhat.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M clang/lib/AST/ByteCode/Compiler.cpp
M clang/lib/AST/ByteCode/Compiler.h
M clang/lib/AST/ByteCode/Descriptor.cpp
M clang/lib/AST/ByteCode/Disasm.cpp
M clang/lib/AST/ByteCode/Floating.h
M clang/lib/AST/ByteCode/Integral.h
M clang/lib/AST/ByteCode/IntegralAP.h
M clang/lib/AST/ByteCode/Interp.cpp
M clang/lib/AST/ByteCode/Interp.h
M clang/lib/AST/ByteCode/InterpBuiltin.cpp
M clang/lib/AST/ByteCode/InterpBuiltinBitCast.cpp
M clang/lib/AST/ByteCode/InterpState.h
M clang/lib/AST/ByteCode/Opcodes.td
M clang/lib/AST/ByteCode/PrimType.h
M clang/lib/AST/ByteCode/Program.h
M clang/test/AST/ByteCode/builtin-bit-cast-long-double.cpp
M clang/test/AST/ByteCode/builtin-functions.cpp
Log Message:
-----------
Revert "[clang][bytecode] Allocate IntegralAP and Floating types using an allocator (#144246)"
This reverts commit c66be289901b3f035187d391e80e3610d7d6232e.
This breaks the armv8-quick builder:
https://lab.llvm.org/buildbot/#/builders/154/builds/17549
Commit: 667c7860ef5cc67a94c5233ff1be9c0e113ac514
https://github.com/llvm/llvm-project/commit/667c7860ef5cc67a94c5233ff1be9c0e113ac514
Author: Andy Kaylor <akaylor at nvidia.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenExprConstant.cpp
M clang/test/CIR/CodeGen/string-literals.c
A clang/test/CIR/CodeGen/string-literals.cpp
Log Message:
-----------
[CIR] Handle global string literals as char array initializer (#144384)
This change adds the line of code needed to handle a string literal as
an initializer for a character array.
Commit: b1aa845595c4dc204dfbe0e48481572e936620fc
https://github.com/llvm/llvm-project/commit/b1aa845595c4dc204dfbe0e48481572e936620fc
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M libcxx/include/fstream
Log Message:
-----------
[libc++][NFC] Consistently qualify calls to C functions in <fstream> (#144539)
Commit: 19658d14749876cf0b6633f210c923be3709323b
https://github.com/llvm/llvm-project/commit/19658d14749876cf0b6633f210c923be3709323b
Author: Andrew Rogers <andrurogerz at gmail.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M llvm/include/llvm/Target/CGPassBuilderOption.h
M llvm/include/llvm/Target/TargetLoweringObjectFile.h
M llvm/include/llvm/Target/TargetMachine.h
M llvm/include/llvm/Target/TargetOptions.h
M llvm/lib/Target/AArch64/AArch64AsmPrinter.cpp
M llvm/lib/Target/AArch64/AArch64TargetMachine.cpp
M llvm/lib/Target/AArch64/AsmParser/AArch64AsmParser.cpp
M llvm/lib/Target/AArch64/Disassembler/AArch64Disassembler.cpp
M llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCTargetDesc.cpp
M llvm/lib/Target/AArch64/TargetInfo/AArch64TargetInfo.cpp
M llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.cpp
M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
M llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
M llvm/lib/Target/AMDGPU/Disassembler/AMDGPUDisassembler.cpp
M llvm/lib/Target/AMDGPU/MCA/AMDGPUCustomBehaviour.cpp
M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCTargetDesc.cpp
M llvm/lib/Target/AMDGPU/TargetInfo/AMDGPUTargetInfo.cpp
M llvm/lib/Target/ARM/ARMAsmPrinter.cpp
M llvm/lib/Target/ARM/ARMTargetMachine.cpp
M llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
M llvm/lib/Target/ARM/Disassembler/ARMDisassembler.cpp
M llvm/lib/Target/ARM/MCTargetDesc/ARMMCTargetDesc.cpp
M llvm/lib/Target/ARM/TargetInfo/ARMTargetInfo.cpp
M llvm/lib/Target/AVR/AVRAsmPrinter.cpp
M llvm/lib/Target/AVR/AVRTargetMachine.cpp
M llvm/lib/Target/AVR/AsmParser/AVRAsmParser.cpp
M llvm/lib/Target/AVR/Disassembler/AVRDisassembler.cpp
M llvm/lib/Target/AVR/MCTargetDesc/AVRMCTargetDesc.cpp
M llvm/lib/Target/AVR/TargetInfo/AVRTargetInfo.cpp
M llvm/lib/Target/BPF/AsmParser/BPFAsmParser.cpp
M llvm/lib/Target/BPF/BPFAsmPrinter.cpp
M llvm/lib/Target/BPF/BPFTargetMachine.cpp
M llvm/lib/Target/BPF/Disassembler/BPFDisassembler.cpp
M llvm/lib/Target/BPF/MCTargetDesc/BPFMCTargetDesc.cpp
M llvm/lib/Target/BPF/TargetInfo/BPFTargetInfo.cpp
M llvm/lib/Target/Hexagon/AsmParser/HexagonAsmParser.cpp
M llvm/lib/Target/Hexagon/Disassembler/HexagonDisassembler.cpp
M llvm/lib/Target/Hexagon/HexagonAsmPrinter.cpp
M llvm/lib/Target/Hexagon/HexagonTargetMachine.cpp
M llvm/lib/Target/Hexagon/MCTargetDesc/HexagonMCTargetDesc.cpp
M llvm/lib/Target/Hexagon/TargetInfo/HexagonTargetInfo.cpp
M llvm/lib/Target/Lanai/AsmParser/LanaiAsmParser.cpp
M llvm/lib/Target/Lanai/Disassembler/LanaiDisassembler.cpp
M llvm/lib/Target/Lanai/LanaiAsmPrinter.cpp
M llvm/lib/Target/Lanai/LanaiTargetMachine.cpp
M llvm/lib/Target/Lanai/MCTargetDesc/LanaiMCTargetDesc.cpp
M llvm/lib/Target/Lanai/TargetInfo/LanaiTargetInfo.cpp
M llvm/lib/Target/LoongArch/AsmParser/LoongArchAsmParser.cpp
M llvm/lib/Target/LoongArch/Disassembler/LoongArchDisassembler.cpp
M llvm/lib/Target/LoongArch/LoongArchAsmPrinter.cpp
M llvm/lib/Target/LoongArch/LoongArchTargetMachine.cpp
M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchMCTargetDesc.cpp
M llvm/lib/Target/LoongArch/TargetInfo/LoongArchTargetInfo.cpp
M llvm/lib/Target/MSP430/AsmParser/MSP430AsmParser.cpp
M llvm/lib/Target/MSP430/Disassembler/MSP430Disassembler.cpp
M llvm/lib/Target/MSP430/MCTargetDesc/MSP430MCTargetDesc.cpp
M llvm/lib/Target/MSP430/MSP430AsmPrinter.cpp
M llvm/lib/Target/MSP430/MSP430TargetMachine.cpp
M llvm/lib/Target/MSP430/TargetInfo/MSP430TargetInfo.cpp
M llvm/lib/Target/Mips/AsmParser/MipsAsmParser.cpp
M llvm/lib/Target/Mips/Disassembler/MipsDisassembler.cpp
M llvm/lib/Target/Mips/MCTargetDesc/MipsMCTargetDesc.cpp
M llvm/lib/Target/Mips/MipsAsmPrinter.cpp
M llvm/lib/Target/Mips/MipsTargetMachine.cpp
M llvm/lib/Target/Mips/TargetInfo/MipsTargetInfo.cpp
M llvm/lib/Target/NVPTX/MCTargetDesc/NVPTXMCTargetDesc.cpp
M llvm/lib/Target/NVPTX/NVPTXAsmPrinter.cpp
M llvm/lib/Target/NVPTX/NVPTXTargetMachine.cpp
M llvm/lib/Target/NVPTX/TargetInfo/NVPTXTargetInfo.cpp
M llvm/lib/Target/PowerPC/AsmParser/PPCAsmParser.cpp
M llvm/lib/Target/PowerPC/Disassembler/PPCDisassembler.cpp
M llvm/lib/Target/PowerPC/MCTargetDesc/PPCMCTargetDesc.cpp
M llvm/lib/Target/PowerPC/PPCAsmPrinter.cpp
M llvm/lib/Target/PowerPC/PPCTargetMachine.cpp
M llvm/lib/Target/PowerPC/TargetInfo/PowerPCTargetInfo.cpp
M llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
M llvm/lib/Target/RISCV/Disassembler/RISCVDisassembler.cpp
M llvm/lib/Target/RISCV/MCA/RISCVCustomBehaviour.cpp
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCTargetDesc.cpp
M llvm/lib/Target/RISCV/RISCVAsmPrinter.cpp
M llvm/lib/Target/RISCV/RISCVTargetMachine.cpp
M llvm/lib/Target/RISCV/TargetInfo/RISCVTargetInfo.cpp
M llvm/lib/Target/SPIRV/MCTargetDesc/SPIRVMCTargetDesc.cpp
M llvm/lib/Target/SPIRV/SPIRVAsmPrinter.cpp
M llvm/lib/Target/SPIRV/SPIRVTargetMachine.cpp
M llvm/lib/Target/SPIRV/TargetInfo/SPIRVTargetInfo.cpp
M llvm/lib/Target/Sparc/AsmParser/SparcAsmParser.cpp
M llvm/lib/Target/Sparc/Disassembler/SparcDisassembler.cpp
M llvm/lib/Target/Sparc/MCTargetDesc/SparcMCTargetDesc.cpp
M llvm/lib/Target/Sparc/SparcAsmPrinter.cpp
M llvm/lib/Target/Sparc/SparcTargetMachine.cpp
M llvm/lib/Target/Sparc/TargetInfo/SparcTargetInfo.cpp
M llvm/lib/Target/SystemZ/AsmParser/SystemZAsmParser.cpp
M llvm/lib/Target/SystemZ/Disassembler/SystemZDisassembler.cpp
M llvm/lib/Target/SystemZ/MCTargetDesc/SystemZMCTargetDesc.cpp
M llvm/lib/Target/SystemZ/SystemZAsmPrinter.cpp
M llvm/lib/Target/SystemZ/SystemZTargetMachine.cpp
M llvm/lib/Target/SystemZ/TargetInfo/SystemZTargetInfo.cpp
M llvm/lib/Target/VE/AsmParser/VEAsmParser.cpp
M llvm/lib/Target/VE/Disassembler/VEDisassembler.cpp
M llvm/lib/Target/VE/MCTargetDesc/VEMCTargetDesc.cpp
M llvm/lib/Target/VE/TargetInfo/VETargetInfo.cpp
M llvm/lib/Target/VE/VEAsmPrinter.cpp
M llvm/lib/Target/VE/VETargetMachine.cpp
M llvm/lib/Target/WebAssembly/AsmParser/WebAssemblyAsmParser.cpp
M llvm/lib/Target/WebAssembly/Disassembler/WebAssemblyDisassembler.cpp
M llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyMCTargetDesc.cpp
M llvm/lib/Target/WebAssembly/TargetInfo/WebAssemblyTargetInfo.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyAsmPrinter.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp
M llvm/lib/Target/XCore/Disassembler/XCoreDisassembler.cpp
M llvm/lib/Target/XCore/MCTargetDesc/XCoreMCTargetDesc.cpp
M llvm/lib/Target/XCore/TargetInfo/XCoreTargetInfo.cpp
M llvm/lib/Target/XCore/XCoreAsmPrinter.cpp
M llvm/lib/Target/XCore/XCoreTargetMachine.cpp
M llvm/unittests/Target/AArch64/CMakeLists.txt
M llvm/unittests/Target/LoongArch/CMakeLists.txt
M llvm/unittests/Target/RISCV/CMakeLists.txt
M llvm/unittests/Target/SPIRV/CMakeLists.txt
M llvm/unittests/Target/VE/CMakeLists.txt
M llvm/unittests/Target/WebAssembly/CMakeLists.txt
Log Message:
-----------
[llvm] annotate interfaces in llvm/Target for DLL export (#143615)
## Purpose
This patch is one in a series of code-mods that annotate LLVM’s public
interface for export. This patch annotates the `llvm/Target` library.
These annotations currently have no meaningful impact on the LLVM build;
however, they are a prerequisite to support an LLVM Windows DLL (shared
library) build.
## Background
This effort is tracked in #109483. Additional context is provided in
[this
discourse](https://discourse.llvm.org/t/psa-annotating-llvm-public-interface/85307),
and documentation for `LLVM_ABI` and related annotations is found in the
LLVM repo
[here](https://github.com/llvm/llvm-project/blob/main/llvm/docs/InterfaceExportAnnotations.rst).
A sub-set of these changes were generated automatically using the
[Interface Definition Scanner (IDS)](https://github.com/compnerd/ids)
tool, followed formatting with `git clang-format`.
The bulk of this change is manual additions of `LLVM_ABI` to
`LLVMInitializeX` functions defined in .cpp files under llvm/lib/Target.
Adding `LLVM_ABI` to the function implementation is required here
because they do not `#include "llvm/Support/TargetSelect.h"`, which
contains the declarations for this functions and was already updated
with `LLVM_ABI` in a previous patch. I considered patching these files
with `#include "llvm/Support/TargetSelect.h"` instead, but since
TargetSelect.h is a large file with a bunch of preprocessor x-macro
stuff in it I was concerned it would unnecessarily impact compile times.
In addition, a number of unit tests under llvm/unittests/Target required
additional dependencies to make them build correctly against the LLVM
DLL on Windows using MSVC.
## Validation
Local builds and tests to validate cross-platform compatibility. This
included llvm, clang, and lldb on the following configurations:
- Windows with MSVC
- Windows with Clang
- Linux with GCC
- Linux with Clang
- Darwin with Clang
Commit: 7b7b5a397da1ecb9f767df5a3a3b6076cec109f9
https://github.com/llvm/llvm-project/commit/7b7b5a397da1ecb9f767df5a3a3b6076cec109f9
Author: Stanislav Mekhanoshin <rampitec at users.noreply.github.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/SIInstrInfo.td
M llvm/lib/Target/AMDGPU/VOP1Instructions.td
Log Message:
-----------
[AMDGPU] Remove AsmVOP3OpSel field completely. NFCI. (#144574)
Commit: 8dcf4ba6359578c4d944b75b3f96a1fbd4fb9528
https://github.com/llvm/llvm-project/commit/8dcf4ba6359578c4d944b75b3f96a1fbd4fb9528
Author: Stanislav Mekhanoshin <rampitec at users.noreply.github.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/SIInstrInfo.td
M llvm/lib/Target/AMDGPU/VOP3Instructions.td
Log Message:
-----------
[AMDGPU] Fix getAsmVOP3Base call agruments. (#144572)
https://github.com/llvm/llvm-project/pull/143465 has removed
getAsmVOP3OpSel and uses getAsmVOP3Base instead, but original
call to getAsmVOP3OpSel was using HasSrc*FloatMods and the
call to getAsmVOP3Base uses HasSrc*Mods. This does not play
well with opsel. An opsel instruction has modifiers in dag but
shall not have them in the asm string.
Commit: 73f307a5ca308d356c557734765742c26bf7ed03
https://github.com/llvm/llvm-project/commit/73f307a5ca308d356c557734765742c26bf7ed03
Author: Ashley Coleman <ascoleman at microsoft.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M clang/lib/Sema/SemaHLSL.cpp
M clang/test/CodeGenHLSL/builtins/firstbithigh.hlsl
M clang/test/CodeGenHLSL/builtins/firstbitlow.hlsl
Log Message:
-----------
[HLSL] Use ExtVector for firstbit intrinsics (#142679)
Fixes https://github.com/llvm/llvm-project/issues/142430
firstbit intrinsics were using the wrong vector type which causes some
conversions to fail. This PR switches them to ExtVector which resolves
the issue
Commit: a79186c1ea62bbe0579e0b1eed4ad507966cca41
https://github.com/llvm/llvm-project/commit/a79186c1ea62bbe0579e0b1eed4ad507966cca41
Author: Sam Elliott <quic_aelliott at quicinc.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M clang/test/Driver/aarch64-toolchain.c
M clang/test/Driver/arm-toolchain.c
Log Message:
-----------
[Driver] Fix Arm/AArch64 Link Argument tests (#144582)
The openmp-offload-amdgpu-runtime-2 bot specifies default rtlib of
compiler-rt, but default unwindlib of libgcc. Change the tests to accept
that there may be `"--as-needed" "-lgcc_s" "--no-as-needed"` between
`libclang_rt.builtins.a` and `-lc`.
Relates to #121830
Commit: 7c4b2be983e900663a8d766ea9dc6f03b713e5b0
https://github.com/llvm/llvm-project/commit/7c4b2be983e900663a8d766ea9dc6f03b713e5b0
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M libcxx/include/streambuf
Log Message:
-----------
[libc++][NFC] Refactor basic_streambuf to use public API functions when possible (#144547)
The implementation of std::basic_streambuf used private member variables
to manipulate the get and the put areas. Using public API functions is
equivalent but leads to code that is easier to understand, since the
public API functions are known more widely than our internal member
variables. Using the public API functions removes the need to map the
internal member variables back to get/put area manipulation functions in
one's head.
Finally, it also makes it easier to find subtle issues by instrumenting
accessor functions, which is impossible if the class uses the member
variables directly.
Commit: 9ae4d2e01331ddeb2543f1940a09ef9c76ff5268
https://github.com/llvm/llvm-project/commit/9ae4d2e01331ddeb2543f1940a09ef9c76ff5268
Author: Sirraide <aeternalmail at gmail.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M llvm/lib/Support/Unix/Process.inc
Log Message:
-----------
[LLVM] [Support] Disable `ioctl()` terminal size check on Solaris (#144600)
#143514 broke the `clang-solaris11-sparcv9` bot; from what I can tell
that’s Solaris and according to `SolarisTargetInfo::getOSDefines`, the
macro `__sun__` should be defined on Solaris, so check for that and
don’t try to query the terminal size if it is defined.
Not sure this is the best solution but hopefully it fixes the bot.
Commit: c677a11c8d3223480cfe772e63fa0e7c09c76e2e
https://github.com/llvm/llvm-project/commit/c677a11c8d3223480cfe772e63fa0e7c09c76e2e
Author: David Peixotto <peix at meta.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M lldb/include/lldb/Core/PluginManager.h
M lldb/source/Core/PluginManager.cpp
A lldb/test/API/commands/plugin/TestPlugin.py
M lldb/test/Shell/Commands/command-plugin-list.test
Log Message:
-----------
[lldb] Add support to list/enable/disable remaining plugin types. (#143970)
In #134418 we added support to list/enable/disable `SystemRuntime` and
`InstrumentationRuntime` plugins. We limited it to those two plugin
types to flesh out the idea with a smaller change.
This PR adds support for the remaining plugin types. We now support all
the plugins that can be registered directly with the plugin manager.
Plugins that are added by loading shared objects are still not
supported.
Commit: 908f74a25e01cc88d1dee1af5521d8fb1c21bc51
https://github.com/llvm/llvm-project/commit/908f74a25e01cc88d1dee1af5521d8fb1c21bc51
Author: Andrew Rogers <andrurogerz at gmail.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M llvm/include/llvm/Target/TargetMachine.h
Log Message:
-----------
[llvm] re-order LLVM_ABI and extern on NoKernelInfoEndLTO decl (#144601)
## Overview
Fix compilation error introduced by #143615. Build failure logs
available
[here](https://lab.llvm.org/buildbot/#/builders/195/builds/10573)
## Background
On `extern` variable declarations, `LLVM_ABI` must appear before
`extern` because `LLVM_ABI` currently resolves to
`[[gnu::visibility("default")]]` when building with gcc.
Commit: 49bf8d38d80ce43bd700f27833a7b8c8e7082af8
https://github.com/llvm/llvm-project/commit/49bf8d38d80ce43bd700f27833a7b8c8e7082af8
Author: Arthur Eubanks <aeubanks at google.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M llvm/utils/gn/secondary/llvm/include/llvm/Config/BUILD.gn
Log Message:
-----------
[gn build] Manually port b4e39e4f
Commit: 8d1610afd0db877460d1b3cd43cc4066478846a0
https://github.com/llvm/llvm-project/commit/8d1610afd0db877460d1b3cd43cc4066478846a0
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M libcxx/test/std/input.output/stream.buffers/streambuf/streambuf.protected/streambuf.get.area/setg.assert.pass.cpp
M libcxx/test/std/input.output/stream.buffers/streambuf/streambuf.protected/streambuf.put.area/setp.assert.pass.cpp
Log Message:
-----------
[libc++] Mark two assertion tests as unsupported in C++03 mode
Our assertion checking facility requires at least C++11, so these
tests were failing when run in C++03 mode.
Commit: 3c7df98c7b2a203e49a74b229bbf535c2ef6274b
https://github.com/llvm/llvm-project/commit/3c7df98c7b2a203e49a74b229bbf535c2ef6274b
Author: Piotr Idzik <65706193+vil02 at users.noreply.github.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M clang-tools-extra/docs/clang-tidy/checks/performance/enum-size.rst
Log Message:
-----------
[clang-tidy] Add missing colon in the docs of performance-enum-size (#144525)
There is a syntax error in the provided code example - this PR fixes it.
I did a quick search - I could not find similar _typos_.
Commit: ecfb8fe5c1870091b095ae6ca1ad4cfc7158e619
https://github.com/llvm/llvm-project/commit/ecfb8fe5c1870091b095ae6ca1ad4cfc7158e619
Author: Daniel Thornburgh <dthorn at google.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M clang/docs/Toolchain.rst
M clang/include/clang/Basic/DiagnosticDriverKinds.td
M clang/lib/Driver/ToolChains/BareMetal.cpp
M clang/lib/Driver/ToolChains/BareMetal.h
R clang/test/Driver/Inputs/basic_aarch64_gcc_tree/aarch64-none-elf/include/c++/8.2.1/.keep
R clang/test/Driver/Inputs/basic_aarch64_gcc_tree/aarch64-none-elf/lib/.keep
R clang/test/Driver/Inputs/basic_aarch64_gcc_tree/aarch64-none-elf/lib/crt0.o
R clang/test/Driver/Inputs/basic_aarch64_gcc_tree/bin/aarch64-none-elf-ld
R clang/test/Driver/Inputs/basic_aarch64_gcc_tree/lib/gcc/aarch64-none-elf/8.2.1/crtbegin.o
R clang/test/Driver/Inputs/basic_aarch64_gcc_tree/lib/gcc/aarch64-none-elf/8.2.1/crtend.o
R clang/test/Driver/Inputs/basic_aarch64_nogcc_tree/aarch64-none-elf/lib/crt0.o
R clang/test/Driver/Inputs/basic_aarch64_nogcc_tree/aarch64-none-elf/lib/crtbegin.o
R clang/test/Driver/Inputs/basic_aarch64_nogcc_tree/aarch64-none-elf/lib/crtend.o
R clang/test/Driver/Inputs/basic_aarch64_nogcc_tree/bin/aarch64-none-elf-ld
R clang/test/Driver/Inputs/basic_arm_gcc_tree/armv6m-none-eabi/include/c++/8.2.1/.keep
R clang/test/Driver/Inputs/basic_arm_gcc_tree/armv6m-none-eabi/lib/.keep
R clang/test/Driver/Inputs/basic_arm_gcc_tree/armv6m-none-eabi/lib/crt0.o
R clang/test/Driver/Inputs/basic_arm_gcc_tree/bin/armv6m-none-eabi-ld
R clang/test/Driver/Inputs/basic_arm_gcc_tree/lib/gcc/armv6m-none-eabi/8.2.1/crtbegin.o
R clang/test/Driver/Inputs/basic_arm_gcc_tree/lib/gcc/armv6m-none-eabi/8.2.1/crtend.o
R clang/test/Driver/Inputs/basic_arm_nogcc_tree/armv6m-none-eabi/lib/crt0.o
R clang/test/Driver/Inputs/basic_arm_nogcc_tree/armv6m-none-eabi/lib/crtbegin.o
R clang/test/Driver/Inputs/basic_arm_nogcc_tree/armv6m-none-eabi/lib/crtend.o
R clang/test/Driver/Inputs/basic_arm_nogcc_tree/bin/armv6m-none-eabi-ld
R clang/test/Driver/aarch64-gnutools.c
R clang/test/Driver/aarch64-toolchain-extra.c
R clang/test/Driver/aarch64-toolchain.c
R clang/test/Driver/arm-gnutools.c
R clang/test/Driver/arm-toolchain-extra.c
R clang/test/Driver/arm-toolchain.c
M clang/test/Driver/baremetal-multilib.yaml
M clang/test/Driver/baremetal-sysroot.cpp
R clang/test/Driver/baremetal-undefined-symbols.c
M clang/test/Driver/baremetal.cpp
R clang/test/Driver/check-no-multlib-warning.c
A clang/test/Driver/riscv-args.c
M clang/test/Driver/sanitizer-ld.c
Log Message:
-----------
Revert stack "[Driver] Add support for GCC installation detection in … (#144603)
…Baremetal toolchain (#121829)"
This reverts the following stack of commits, due to them breaking the
Fuchsia toolchain and corresponding LLVM buildbot.
Revert "[Driver] Fix Arm/AArch64 Link Argument tests (#144582)" This
reverts commit a79186c1ea62bbe0579e0b1eed4ad507966cca41.
Revert "[Driver] Add option to force undefined symbols during linking in
BareMetal toolchain object. (#132807)" This reverts commit
9cb754509608b9d9143fa17f775631bbfcce0848.
Revert "[Driver] Fix link order of BareMetal toolchain object (#132806)"
This reverts commit 31523de4b000ca254259ae3167d28922e1302648.
Revert "[Driver] Add support for crtbegin.o, crtend.o and libgloss lib
to BareMetal toolchain object (#121830)" This reverts commit
ec230aa7a7d13c222c0b34b87c3c16937383b4a0.
Revert "[Driver] Add support for GCC installation detection in Baremetal
toolchain (#121829)" This reverts commit
eb31c422d0dc816bf285a81bf92690d4d16273ed.
Commit: a5a0d880736f5dc6a566374bc3b3ca0d86901510
https://github.com/llvm/llvm-project/commit/a5a0d880736f5dc6a566374bc3b3ca0d86901510
Author: Sam Clegg <sbc at chromium.org>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M libcxx/include/__assert
M libcxx/src/verbose_abort.cpp
M libcxx/test/support/check_assertion.h
Log Message:
-----------
[libc++] Remove trailing newline from _LIBCPP_ASSERTION_HANDLER calls (#143573)
This newline was originally added in https://reviews.llvm.org/D142184
but I think updating `__libcpp_verbose_abort` to add newline instead is
more consistent, and works for other callers of `_LIBCPP_VERBOSE_ABORT`.
The `_LIBCPP_ASSERTION_HANDLER` calls through to either
`_LIBCPP_VERBOSE_ABORT` macro or the `__builtin_verbose_trap`. From what
I can tell neither of these function expect a trailing newline (at least
none of the usage of `_LIBCPP_VERBOSE_ABORT` or `__builtin_verbose_trap`
that I can find include a trailing newline except `_LIBCPP_ASSERTION_HANDLER`).
I noticed this discrepancy when working on
https://github.com/emscripten-core/emscripten/pull/24543
Commit: 844e41c2acedd5219d9363e38838abd5146f63c0
https://github.com/llvm/llvm-project/commit/844e41c2acedd5219d9363e38838abd5146f63c0
Author: sribee8 <sriya.pratipati at gmail.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M libc/src/__support/wchar/character_converter.cpp
Log Message:
-----------
[libc] Moved shared constexpr to the top (#144569)
Some conversions shared constexpr so moved to the top.
---------
Co-authored-by: Sriya Pratipati <sriyap at google.com>
Commit: 6fb36db4818abde56e5da47899dcdaacd8293903
https://github.com/llvm/llvm-project/commit/6fb36db4818abde56e5da47899dcdaacd8293903
Author: Joseph Huber <huberjn at outlook.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M clang/tools/clang-linker-wrapper/ClangLinkerWrapper.cpp
Log Message:
-----------
[LinkerWrapper] Fix 'save-temps' when targeting SPIR-V (#144605)
Summary:
The logic here is flawed, it was only intended to apply to the CPU case
where we use the linker passed in on the command line. This was falsely
applying to SPIR-V which caused issues.
Commit: 362b9d78b4ee9107da2b5e90b3764b0f0fa610fe
https://github.com/llvm/llvm-project/commit/362b9d78b4ee9107da2b5e90b3764b0f0fa610fe
Author: John Harrison <harjohn at google.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M lldb/packages/Python/lldbsuite/test/tools/lldb-dap/dap_server.py
M lldb/packages/Python/lldbsuite/test/tools/lldb-dap/lldbdap_testcase.py
M lldb/test/API/tools/lldb-dap/breakpoint/TestDAP_setBreakpoints.py
M lldb/test/API/tools/lldb-dap/cancel/TestDAP_cancel.py
M lldb/test/API/tools/lldb-dap/launch/TestDAP_launch.py
M lldb/test/API/tools/lldb-dap/module/TestDAP_module.py
M lldb/test/API/tools/lldb-dap/output/TestDAP_output.py
Log Message:
-----------
[lldb-dap] Refactoring DebugCommunication to improve test consistency. (#143818)
In DebugCommunication, we currently are using 2 thread to drive
lldb-dap. At the moment, they make an attempt at only synchronizing the
`recv_packets` between the reader thread and the main test thread. Other
stateful properties of the debug session are not guarded by a
locks/mutex.
To mitigate this, I am moving any state updates to the main thread
inside the `_recv_packet` method to ensure that between calls to
`_recv_packet` the state does not change out from under us in a test.
This does mean the precise timing of events has changed slightly as a
result and I've updated the existing tests that fail for me locally with
this new behavior.
I think this should result in overall more predictable behavior, even if
the test is slow due to the host workload or architecture differences.
---------
Co-authored-by: Ebuka Ezike <yerimyah1 at gmail.com>
Commit: 3f33c8482fc0b8dd0d2596262ebd0ed73d41665d
https://github.com/llvm/llvm-project/commit/3f33c8482fc0b8dd0d2596262ebd0ed73d41665d
Author: Eli Friedman <efriedma at quicinc.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
Log Message:
-----------
[clang] Add release note for int->enum conversion change. (#144407)
This seems to be having some practical impact, so we should let people
know.
Commit: f25f2f7de4f8264d89ba3c4dc9daddb10a90c13f
https://github.com/llvm/llvm-project/commit/f25f2f7de4f8264d89ba3c4dc9daddb10a90c13f
Author: Jianhui Li <jian.hui.li at intel.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M mlir/lib/Dialect/XeGPU/Transforms/XeGPUUnroll.cpp
M mlir/test/Dialect/XeGPU/xegpu-unroll-patterns.mlir
M mlir/test/lib/Dialect/XeGPU/TestXeGPUTransforms.cpp
Log Message:
-----------
[MLIR][XeGPU] Extend unrolling support for scatter ops with chunk_size (#144447)
Add support for load/store with chunk_size, which requires special
consideration for the operand blocking since offests and masks are
n-D and tensor are n+1-D. Support operations including create_tdesc,
update_tdesc, load, store, and prefetch.
---------
Co-authored-by: Adam Siemieniuk <adam.siemieniuk at intel.com>
Commit: fd7e46b864229a270726bd1026387740b9113094
https://github.com/llvm/llvm-project/commit/fd7e46b864229a270726bd1026387740b9113094
Author: Daniel Thornburgh <dthorn at google.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M libcxx/include/__assert
M libcxx/src/verbose_abort.cpp
M libcxx/test/support/check_assertion.h
Log Message:
-----------
Revert "[libc++] Remove trailing newline from _LIBCPP_ASSERTION_HANDLER calls" (#144615)
Reverts llvm/llvm-project#143573
Commit: 1cd18bc894b97b282677c1d140688a27ebbec924
https://github.com/llvm/llvm-project/commit/1cd18bc894b97b282677c1d140688a27ebbec924
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
A llvm/test/Analysis/CostModel/AMDGPU/maximumnum.ll
A llvm/test/Analysis/CostModel/AMDGPU/minimumnum.ll
Log Message:
-----------
AMDGPU: Add cost model tests for minimumnum/maximumnum (#141904)
The f16 cases in particular look broken since every vector size
has the same reported cost.
Commit: 87b13ada109643bbf5495727b0bf59a46bd533aa
https://github.com/llvm/llvm-project/commit/87b13ada109643bbf5495727b0bf59a46bd533aa
Author: Finn Plummer <finn.c.plum at gmail.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M llvm/include/llvm/Frontend/HLSL/HLSLRootSignatureUtils.h
M llvm/lib/Frontend/HLSL/HLSLRootSignatureUtils.cpp
M llvm/unittests/Frontend/HLSLRootSignatureDumpTest.cpp
Log Message:
-----------
[HLSL][RootSignature] Implement serialization of remaining Root Elements (#143198)
Implements serialization of the remaining `RootElement`s, namely
`RootDescriptor`s and `StaticSampler`s.
- Adds unit testing for the serialization methods
Resolves https://github.com/llvm/llvm-project/issues/138191
Resolves https://github.com/llvm/llvm-project/issues/138193
Commit: cb63b75e32a415c9bfc298ed7fdcd67e8d9de54c
https://github.com/llvm/llvm-project/commit/cb63b75e32a415c9bfc298ed7fdcd67e8d9de54c
Author: John Harrison <harjohn at google.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M lldb/packages/Python/lldbsuite/test/tools/lldb-dap/dap_server.py
M lldb/packages/Python/lldbsuite/test/tools/lldb-dap/lldbdap_testcase.py
M lldb/test/API/tools/lldb-dap/breakpoint/TestDAP_setBreakpoints.py
M lldb/test/API/tools/lldb-dap/cancel/TestDAP_cancel.py
M lldb/test/API/tools/lldb-dap/launch/TestDAP_launch.py
M lldb/test/API/tools/lldb-dap/module/TestDAP_module.py
M lldb/test/API/tools/lldb-dap/output/TestDAP_output.py
Log Message:
-----------
Revert "[lldb-dap] Refactoring DebugCommunication to improve test consistency. (#143818)
This reverts commit 362b9d78b4ee9107da2b5e90b3764b0f0fa610fe.
Buildbots using python3.10 are running into errors from this change.
Commit: c9b28163888574bcfba0171372ae0dcfb40abbfa
https://github.com/llvm/llvm-project/commit/c9b28163888574bcfba0171372ae0dcfb40abbfa
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.cpp
M llvm/test/Analysis/CostModel/AMDGPU/canonicalize.ll
M llvm/test/Analysis/CostModel/AMDGPU/copysign.ll
M llvm/test/Transforms/SLPVectorizer/AMDGPU/slp-v2f16.ll
Log Message:
-----------
AMDGPU: Fix cost model for 16-bit operations on gfx8 (#141943)
We should only divide the number of pieces to fit the packed instructions
if we actually have pk instructions. This increases the cost of copysign,
but is closer to the current codegen output. It could be much cheaper
than it is now.
Commit: 3800a83160a42f32947b82700e454cc07c600734
https://github.com/llvm/llvm-project/commit/3800a83160a42f32947b82700e454cc07c600734
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.cpp
M llvm/test/Analysis/CostModel/AMDGPU/copysign.ll
Log Message:
-----------
AMDGPU: Reduce cost of f64 copysign (#141944)
The real implementation is 1 real instruction plus a constant
materialize. Call that a 1, it's not a real f64 operation.
Commit: bec9ac2dafe1c9fca975721e9951c5f7f6b1b559
https://github.com/llvm/llvm-project/commit/bec9ac2dafe1c9fca975721e9951c5f7f6b1b559
Author: Slava Zakharin <szakharin at nvidia.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M llvm/lib/Transforms/IPO/FunctionSpecialization.cpp
Log Message:
-----------
[llvm] Lower latency bonus threshold in function specialization. (#143954)
Related to #143219.
Function specialization does not kick in if flang sets `noalias`
attributes on the function arguments of `digits_2`, because PRE
optimizes several `srem` instructions and other memory accesses
from the inner loops causing the latency bonus to be lower than
the current 40% threshold.
While looking at this, I did not really get why we compute the latency
bonus as a ratio of the latency of the "eliminated" instructions
and the code-size of the whole function. It did not make much sense
to me.
I tried computing the total latency as a sum of latencies
of the instructions that belong to non-dead code (including
the instructions that would be executed had they not been
"eliminated" due to the constant propagation). This total
latency should identify the total cost of executing the function
with the given argument being dynamically equal to the tried
constant value. Then the latency bonus would be computed
as the ratio between the latency of the "eliminated" instructions
and the total latency. Unfortunately, this did not given me a good
heuristics either. The bonus was close to 0% on some targets,
and as big as 3-5% on other targets. This does match very well
with the performance gain achieved by function specialization
for exchange2, so it seemd like another artificial heuristic
not better than the current one.
It seems that GCC uses a set of different heuristics for function
specialization, but I am not an expert here and I cannot say
if we can match them in LLVM.
With all that said, I decided to try to lower the threshold
to avoid the regression and be able to re-enable the generally
good change for `noalias` attribute.
With this patch, I was able to reduce the effect of `noalias`,
so that `-force-no-alias=true` is only ~10% slower than
`-force-no-alias=false` code on neoverse-v1 and neoverse-v2.
On neoverse-n1, `-force-no-alias=true` is >2x faster than
`-force-no-alias=false` regardless of this patch.
This threshold has been changed before also due to improved
alias information:
https://github.com/llvm/llvm-project/commit/2fb51fba8ca904a6d3ddf30ae94228ecf9e6a231#diff-066363256b7b4164e66b28a3028b2cb9e405c9136241baa33db76ebd2edb87cd
Please let me know what testing I should run to make sure this change
is safe. As I understand, it may affect the compilation time
performance,
and I will appreciate it if someone points out which benchmarks
need to be checked before merging this.
Commit: af65cb68f553759eac307edda87ff7d8b5fdffa9
https://github.com/llvm/llvm-project/commit/af65cb68f553759eac307edda87ff7d8b5fdffa9
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUInstCombineIntrinsic.cpp
M llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.cpp
M llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.h
Log Message:
-----------
AMDGPU: Move fpenvIEEEMode into TTI (#141945)
Commit: 70343c8d44273c187e3f7fa5e2037fbc41307077
https://github.com/llvm/llvm-project/commit/70343c8d44273c187e3f7fa5e2037fbc41307077
Author: Slava Zakharin <szakharin at nvidia.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M flang/include/flang/Optimizer/Dialect/FIROps.td
M flang/lib/Optimizer/Dialect/FIROps.cpp
M flang/lib/Optimizer/Transforms/ControlFlowConverter.cpp
A flang/test/Fir/cfg-conversion-if.fir
M flang/test/Fir/fir-ops.fir
M flang/test/Fir/invalid.fir
M mlir/include/mlir/Dialect/ControlFlow/IR/ControlFlowOps.td
M mlir/include/mlir/Dialect/LLVMIR/LLVMInterfaces.td
M mlir/include/mlir/Dialect/LLVMIR/LLVMOps.td
M mlir/include/mlir/Interfaces/ControlFlowInterfaces.h
M mlir/include/mlir/Interfaces/ControlFlowInterfaces.td
M mlir/include/mlir/Target/LLVMIR/ModuleTranslation.h
M mlir/lib/Conversion/ControlFlowToLLVM/ControlFlowToLLVM.cpp
M mlir/lib/Dialect/LLVMIR/IR/LLVMDialect.cpp
M mlir/lib/Interfaces/ControlFlowInterfaces.cpp
M mlir/lib/Target/LLVMIR/Dialect/LLVMIR/LLVMIRToLLVMTranslation.cpp
M mlir/lib/Target/LLVMIR/ModuleTranslation.cpp
M mlir/test/Conversion/ControlFlowToLLVM/branch.mlir
M mlir/test/Dialect/ControlFlow/invalid.mlir
M mlir/test/Dialect/ControlFlow/ops.mlir
M mlir/test/Target/LLVMIR/Import/metadata-profiling.ll
M mlir/test/Target/LLVMIR/llvmir-invalid.mlir
M mlir/test/Target/LLVMIR/llvmir.mlir
Log Message:
-----------
[mlir][flang] Added Weighted[Region]BranchOpInterface's. (#142079)
The new interfaces provide getters and setters for the weight
information about the branches of BranchOpInterface and
RegionBranchOpInterface operations.
These interfaces are done the same way as LLVM dialect's
BranchWeightOpInterface.
The plan is to produce this information in Flang, e.g. mark
most probably "cold" code as such and allow LLVM to order
basic blocks accordingly. An example of such a code is
copy loops generated for arrays repacking - we can mark it
as "cold" assuming that the copy will not happen dynamically.
If the copy actually happens the overhead of the copy is probably high
enough so that we may not care about the little overhead
of jumping to the "cold" code and fetching it.
Commit: 54015f36c682aab9024a21a93957312a69c5bc9b
https://github.com/llvm/llvm-project/commit/54015f36c682aab9024a21a93957312a69c5bc9b
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.cpp
M llvm/test/Analysis/CostModel/AMDGPU/maximumnum.ll
M llvm/test/Analysis/CostModel/AMDGPU/minimumnum.ll
M llvm/test/Transforms/SLPVectorizer/AMDGPU/slp-v2f16.ll
Log Message:
-----------
AMDGPU: Cost model for minimumnum/maximumnum (#141946)
Commit: f08474ab1fa984560565e917453a42bc8562a6f9
https://github.com/llvm/llvm-project/commit/f08474ab1fa984560565e917453a42bc8562a6f9
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
A llvm/test/Analysis/CostModel/AMDGPU/special-argument-intrinsics.ll
Log Message:
-----------
AMDGPU: Add baseline cost model tests for special argument intrinsics (#141947)
Commit: f3af1cd08cd456214961af915c17f858c9eef1a5
https://github.com/llvm/llvm-project/commit/f3af1cd08cd456214961af915c17f858c9eef1a5
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/test/CodeGen/RISCV/rvv/extract-subvector.ll
M llvm/test/CodeGen/RISCV/rvv/get_vector_length.ll
M llvm/test/CodeGen/RISCV/rvv/insert-subvector.ll
M llvm/test/CodeGen/RISCV/rvv/legalize-load-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/legalize-store-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/stepvector.ll
M llvm/test/CodeGen/RISCV/rvv/vandn-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/vector-deinterleave-fixed.ll
M llvm/test/CodeGen/RISCV/rvv/vector-deinterleave.ll
M llvm/test/CodeGen/RISCV/rvv/vreductions-fp-sdnode.ll
Log Message:
-----------
[RISCV] Set the exact flag on the SRL created for converting vscale to a read of vlenb. (#144571)
We know that vlenb is a multiple of RVVBytesPerBlock so we aren't
shifting out any non-zero bits.
Commit: a9811340b75baae8e06fb9ab83015a90d61510ee
https://github.com/llvm/llvm-project/commit/a9811340b75baae8e06fb9ab83015a90d61510ee
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.cpp
M llvm/test/Analysis/CostModel/AMDGPU/special-argument-intrinsics.ll
Log Message:
-----------
AMDGPU: Report special input intrinsics as free (#141948)
Commit: 628274dadf92995f4544d6134cba45d327d9eaaa
https://github.com/llvm/llvm-project/commit/628274dadf92995f4544d6134cba45d327d9eaaa
Author: Sterling-Augustine <56981066+Sterling-Augustine at users.noreply.github.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
A llvm/include/llvm/DebugInfo/DWARF/DWARFCFIPrinter.h
M llvm/include/llvm/DebugInfo/DWARF/DWARFCFIProgram.h
M llvm/lib/DebugInfo/DWARF/CMakeLists.txt
A llvm/lib/DebugInfo/DWARF/DWARFCFIPrinter.cpp
M llvm/lib/DebugInfo/DWARF/DWARFCFIProgram.cpp
M llvm/lib/DebugInfo/DWARF/DWARFDebugFrame.cpp
M llvm/tools/llvm-readobj/DwarfCFIEHPrinter.h
Log Message:
-----------
[NFC] Extract Printing portions of DWARFCFIProgram to new files (#143762)
CFIPrograms' most common uses are within debug frames, but it is not
their only use. For example, some assembly writers encode them by hand
into .cfi_escape directives. This PR extracts printing code for them
into its own files, which avoids the need for the main class to depend
on DWARFUnit, sections, and similar.
One in a series of NFC DebugInfo/DWARF refactoring changes to layer it
more cleanly, so that binary CFI parsing can be used from low-level
code, (such as byte strings created via .cfi_escape) without circular
dependencies. The final goal is to make a more limited dwarf library
usable from lower-level code.
More information can be found at
https://discourse.llvm.org/t/rfc-debuginfo-dwarf-refactor-into-to-lower-and-higher-level-libraries/86665
Commit: a871b919ed135b3b50db58ed816d6ddb488d9c5e
https://github.com/llvm/llvm-project/commit/a871b919ed135b3b50db58ed816d6ddb488d9c5e
Author: Arthur Eubanks <aeubanks at google.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M llvm/utils/gn/secondary/llvm/unittests/Frontend/BUILD.gn
Log Message:
-----------
[gn build] Port 9e0186d925f0
Commit: 535291409cc7e4ae571318a38bd3617d7f608002
https://github.com/llvm/llvm-project/commit/535291409cc7e4ae571318a38bd3617d7f608002
Author: Arthur Eubanks <aeubanks at google.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M llvm/utils/gn/secondary/llvm/lib/Target/Mips/MCTargetDesc/BUILD.gn
Log Message:
-----------
[gn build] Port 9ec75a50bc48
Commit: 6652961ae5fee4d81871e4310a9e842c61136c10
https://github.com/llvm/llvm-project/commit/6652961ae5fee4d81871e4310a9e842c61136c10
Author: Arthur Eubanks <aeubanks at google.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M llvm/utils/gn/secondary/lldb/test/BUILD.gn
Log Message:
-----------
[gn build] Manually port 556e69b7
Commit: b164d3613ad9b86a8b951cfc43fadc0edfc7644e
https://github.com/llvm/llvm-project/commit/b164d3613ad9b86a8b951cfc43fadc0edfc7644e
Author: Arthur Eubanks <aeubanks at google.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M llvm/utils/gn/secondary/llvm/lib/DebugInfo/DWARF/BUILD.gn
Log Message:
-----------
[gn build] Port 628274dadf92
Commit: f2d2c99866dfd133e7b9c98b1d4983c6bce33d67
https://github.com/llvm/llvm-project/commit/f2d2c99866dfd133e7b9c98b1d4983c6bce33d67
Author: Eli Friedman <efriedma at quicinc.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M clang/lib/Sema/SemaDecl.cpp
M clang/test/SemaCXX/builtin-is-constant-evaluated.cpp
M clang/test/SemaCXX/class.cpp
M clang/test/SemaCXX/cxx0x-class.cpp
M clang/test/SemaCXX/cxx2a-consteval.cpp
M clang/test/SemaTemplate/instantiate-static-var.cpp
Log Message:
-----------
[clang] Remove separate evaluation step for static class member init. (#142713)
We already evaluate the initializers for all global variables, as
required by the standard. Leverage that evaluation instead of trying to
separately validate static class members.
This has a few benefits:
- Improved diagnostics; we now get notes explaining what failed to
evaluate.
- Improved correctness: is_constant_evaluated is handled correctly.
The behavior follows the proposed resolution for CWG1721.
Fixes #88462. Fixes #99680.
Commit: c21a4c6c43bb6d68dfe52e07a5a391a6167eedf9
https://github.com/llvm/llvm-project/commit/c21a4c6c43bb6d68dfe52e07a5a391a6167eedf9
Author: Andrei Safronov <andrei.safronov at espressif.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M llvm/lib/Target/Xtensa/AsmParser/XtensaAsmParser.cpp
M llvm/lib/Target/Xtensa/Disassembler/XtensaDisassembler.cpp
M llvm/lib/Target/Xtensa/MCTargetDesc/XtensaMCTargetDesc.cpp
M llvm/lib/Target/Xtensa/MCTargetDesc/XtensaMCTargetDesc.h
M llvm/lib/Target/Xtensa/XtensaFeatures.td
M llvm/lib/Target/Xtensa/XtensaInstrInfo.td
M llvm/lib/Target/Xtensa/XtensaRegisterInfo.td
M llvm/lib/Target/Xtensa/XtensaSubtarget.h
A llvm/test/MC/Disassembler/Xtensa/coprocessor.txt
A llvm/test/MC/Disassembler/Xtensa/debug.txt
A llvm/test/MC/Disassembler/Xtensa/exception.txt
A llvm/test/MC/Disassembler/Xtensa/highinterrupts.txt
A llvm/test/MC/Disassembler/Xtensa/interrupt.txt
A llvm/test/MC/Disassembler/Xtensa/prid.txt
A llvm/test/MC/Disassembler/Xtensa/timer.txt
M llvm/test/MC/Xtensa/Core/processor-control.s
A llvm/test/MC/Xtensa/coprocessor.s
A llvm/test/MC/Xtensa/debug-invalid.s
A llvm/test/MC/Xtensa/debug.s
A llvm/test/MC/Xtensa/exception.s
A llvm/test/MC/Xtensa/highinterrupts.s
A llvm/test/MC/Xtensa/interrupt.s
A llvm/test/MC/Xtensa/prid.s
A llvm/test/MC/Xtensa/timer.s
Log Message:
-----------
[Xtensa] Implement Xtensa Interrupt/Exception/Debug Options. (#143820)
Implement Xtensa Interrupt. HighInterrupts, Exception, Debug Options.
Also implement small Xtensa Options like PRID, Coprocessor and Timers.
Commit: 15482c83aa2b05779d7ad947c34835656ab9da1c
https://github.com/llvm/llvm-project/commit/15482c83aa2b05779d7ad947c34835656ab9da1c
Author: Shilei Tian <i at tianshilei.me>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M llvm/lib/Transforms/IPO/ElimAvailExtern.cpp
A llvm/test/Transforms/EliminateAvailableExternally/convert-global-variables-to-local.ll
Log Message:
-----------
[ElimAvailExtern] Add an option to allow to convert global variables in a specified address space to local (#144287)
Currently, the `EliminateAvailableExternallyPass` only converts certain
available externally functions to local if `avail-extern-to-local` is
set or in
contextual profiling mode. For global variables, it only drops their
initializers.
This PR adds an option to allow the pass to convert global variables in
a
specified address space to local. The motivation for this change is to
correctly
support lowering of LDS variables (`__shared__` variables, in more
generic
terminology) when ThinLTO is enabled for AMDGPU.
A `__shared__` variable is lowered to a hidden global variable in a
particular
address space by the frontend, which is roughly same as a `static` local
variable. To properly lower it in the backend, the compiler needs to
check all
its uses. Enabling ThinLTO currently breaks this when a function
containing a
`__shared__` variable is imported from another module. Even though the
global
variable is imported along with its associated function, and the
function is
privatized by the `EliminateAvailableExternallyPass`, the global
variable itself
is not.
It's safe to privatize such global variables, because they're _local_ to
their
associated functions. If the function itself is privatized, its
associated
global variables should also be privatized accordingly.
Commit: 64155a32297f4884875783664ff13bec9ab376f5
https://github.com/llvm/llvm-project/commit/64155a32297f4884875783664ff13bec9ab376f5
Author: Minding <77574923+Minding000 at users.noreply.github.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M llvm/include/llvm-c/ExecutionEngine.h
Log Message:
-----------
Added clarifying comment to 'LLVMLinkInMCJIT' and 'LLVMLinkInInterpreter' (#92467)
Clarify that these functions are no-ops when linking to LLVM as a shared object.
Commit: abbdd1670d8b12dd72ec353b14e256619ff4694b
https://github.com/llvm/llvm-project/commit/abbdd1670d8b12dd72ec353b14e256619ff4694b
Author: Andrew Rogers <andrurogerz at gmail.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M clang/lib/StaticAnalyzer/Core/Z3CrosscheckVisitor.cpp
M llvm/include/llvm/BinaryFormat/Dwarf.h
M llvm/include/llvm/Object/ELF.h
M llvm/lib/BinaryFormat/Dwarf.cpp
Log Message:
-----------
[llvm] minor fixes for clang-cl Windows DLL build (#144386)
## Purpose
This patch makes a minor changes to LLVM and Clang so that LLVM can be
built as a Windows DLL with `clang-cl`. These changes were not required
for building a Windows DLL with MSVC.
## Background
The Windows DLL effort is tracked in #109483. Additional context is
provided in [this
discourse](https://discourse.llvm.org/t/psa-annotating-llvm-public-interface/85307),
and documentation for `LLVM_ABI` and related annotations is found in the
LLVM repo
[here](https://github.com/llvm/llvm-project/blob/main/llvm/docs/InterfaceExportAnnotations.rst).
## Overview
Specific changes made in this patch:
- Remove `constexpr` fields that reference DLL exported symbols. These
symbols cannot be resolved at compile time when building a Windows DLL
using `clang-cl`, so they cannot be `constexpr`. Instead, they are made
`const` and initialized in the implementation file rather than at
declaration in the header.
- Annotate symbols now defined out-of-line with `LLVM_ABI` so they are
exported when building as a shared library.
- Explicitly add default copy assignment operator for `ELFFile` to
resolve a compiler warning.
## Validation
Local builds and tests to validate cross-platform compatibility. This
included llvm, clang, and lldb on the following configurations:
- Windows with MSVC
- Windows with Clang
- Linux with GCC
- Linux with Clang
- Darwin with Clang
Commit: 99e263228f4513c166f20469968b2b646edaaa33
https://github.com/llvm/llvm-project/commit/99e263228f4513c166f20469968b2b646edaaa33
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M .github/new-prs-labeler.yml
Log Message:
-----------
github: Add mips backend to PR autolabeler (#140909)
Commit: 4e090b6e84e33e2a442e3951253ca570f8f842f8
https://github.com/llvm/llvm-project/commit/4e090b6e84e33e2a442e3951253ca570f8f842f8
Author: Jason Molenda <jmolenda at apple.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M lldb/source/Core/DynamicLoader.cpp
Log Message:
-----------
[lldb] Re-insert code to search for a binary by filepath if provided
July 14 2024 I landed a change to update progress reporting when
loading kernel/firmware binaries
https://github.com/llvm/llvm-project/pull/98845
In DynamicLoader::LoadBinaryWithUUIDAndAddress I removed code that
was setting the ModuleSpec to the provided name, if the name provided
is that of a file on disk. With this code missing, if a filepath
name is passed in, this code will fail to find that binary on the local
disk. There's nothing in the PR / intention that would lead to this
change, it was unintentional.
Commit: 86a09f36154fbd264f61ea6462c8cf48b1ff2eb0
https://github.com/llvm/llvm-project/commit/86a09f36154fbd264f61ea6462c8cf48b1ff2eb0
Author: Jianhui Li <jian.hui.li at intel.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M mlir/test/Dialect/XeGPU/invalid.mlir
A mlir/test/Dialect/XeGPU/layout.mlir
M mlir/test/Dialect/XeGPU/ops.mlir
M mlir/test/Dialect/XeGPU/subgroup-map-propagation.mlir
M mlir/test/Dialect/XeGPU/xegpu-blocking.mlir
M mlir/test/Dialect/XeGPU/xegpu-wg-to-sg-rr.mlir
M mlir/test/Dialect/XeGPU/xegpu-wg-to-sg.mlir
Log Message:
-----------
[MLIR][XeGPU] Clean up xegpu op tests (#144592)
Test cleanup:
1) separate layout.mlir from ops.mlir for layout related test
2) remove lane layout for ops working at work item scope.
3) remove redundant test in create_tdesc/update_tdesc/prefetch.
4) remove "test_" from all test function name.
Commit: 0defde8e06338cbe968d55d1d9e8581d55f3ae2b
https://github.com/llvm/llvm-project/commit/0defde8e06338cbe968d55d1d9e8581d55f3ae2b
Author: Harrison Hao <57025411+harrisonGPU at users.noreply.github.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUInstCombineIntrinsic.cpp
M llvm/test/Transforms/InstCombine/AMDGPU/image-d16.ll
Log Message:
-----------
[AMDGPU] Support D16 folding for image.sample with multiple extractelement and fptrunc users (#141758)
Now we only support D16 folding for `image sample` instructions with a
single user: a `fptrunc` to half.
However, we can actually support D16 folding for image.sample
instructions with multiple users,
as long as each user follows the pattern of extractelement followed by
fptrunc to half.
For example:
```
%sample = call <4 x float> @llvm.amdgcn.image.sample
%e0 = extractelement <4 x float> %sample, i32 0
%h0 = fptrunc float %e0 to half
%e1 = extractelement <4 x float> %sample, i32 1
%h1 = fptrunc float %e1 to half
%e2 = extractelement <4 x float> %sample, i32 2
%h2 = fptrunc float %e2 to half
```
This change enables D16 folding for such cases and avoids generating
`v_cvt_f16_f32_e32` instructions.
Commit: 9265b1f0cff74c929214efb64f41183299f31772
https://github.com/llvm/llvm-project/commit/9265b1f0cff74c929214efb64f41183299f31772
Author: Peter Collingbourne <peter at pcc.me.uk>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M llvm/lib/Transforms/IPO/LowerTypeTests.cpp
M llvm/test/Transforms/LowerTypeTests/blockaddress-2.ll
M llvm/test/Transforms/LowerTypeTests/cfi-icall-alias.ll
M llvm/test/Transforms/LowerTypeTests/export-alias.ll
M llvm/test/Transforms/LowerTypeTests/export-icall.ll
M llvm/test/Transforms/LowerTypeTests/function-disjoint.ll
M llvm/test/Transforms/LowerTypeTests/function.ll
M llvm/test/Transforms/LowerTypeTests/icall-branch-funnel.ll
M llvm/test/Transforms/LowerTypeTests/pr37625.ll
M llvm/test/Transforms/LowerTypeTests/section.ll
Log Message:
-----------
LowerTypeTests: Use jump table entry type as value type of jump table alias.
The motivation for this is that it causes the jump table entry's symbol
to have an st_size equal to the jump table entry size, instead of being
equal to the size of the entire jump table, which is incorrect and can
lead to unexpected behavior in binary analysis tools that rely on the
size field such as Bloaty.
Reviewers: fmayer
Reviewed By: fmayer
Pull Request: https://github.com/llvm/llvm-project/pull/144462
Commit: 8ddada41df0488358373cff1d31a47e5ef4961e0
https://github.com/llvm/llvm-project/commit/8ddada41df0488358373cff1d31a47e5ef4961e0
Author: Jim Lin <jim at andestech.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M clang/test/Driver/print-supported-extensions-riscv.c
M clang/test/Preprocessor/riscv-target-features-andes.c
M llvm/docs/RISCVUsage.rst
M llvm/docs/ReleaseNotes.md
M llvm/lib/Target/RISCV/Disassembler/RISCVDisassembler.cpp
M llvm/lib/Target/RISCV/RISCVFeatures.td
M llvm/lib/Target/RISCV/RISCVInstrInfoXAndes.td
M llvm/test/CodeGen/RISCV/attributes.ll
M llvm/test/CodeGen/RISCV/features-info.ll
A llvm/test/MC/RISCV/xandesvbfhcvt-valid.s
M llvm/unittests/TargetParser/RISCVISAInfoTest.cpp
Log Message:
-----------
[RISCV] Add Andes XAndesVBFHCvt (Andes Vector BFLOAT16 Conversion) extension (#144320)
The spec can be found at:
https://github.com/andestech/andes-v5-isa/releases/tag/ast-v5_4_0-release.
This patch only supports assembler. The instructions are similar to
`Zvfbfmin` and the only difference with `Zvfbfmin` is that
`XAndesVBFHCvt` doesn't have mask variant.
Commit: a96a3f1b26baa8e5ee0abbac629f02566b7e9d1c
https://github.com/llvm/llvm-project/commit/a96a3f1b26baa8e5ee0abbac629f02566b7e9d1c
Author: Jacob Lalonde <jalalonde at fb.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M lldb/source/Plugins/Process/minidump/MinidumpParser.cpp
M lldb/source/Plugins/Process/minidump/MinidumpParser.h
Log Message:
-----------
[lldb][Minidump Parser] Implement a range data vector for minidump memory ranges (#136040)
Recently I was debugging a Minidump with a few thousand ranges, and came
across the (now deleted) comment:
```
// I don't have a sense of how frequently this is called or how many memory
// ranges a Minidump typically has, so I'm not sure if searching for the
// appropriate range linearly each time is stupid. Perhaps we should build
// an index for faster lookups.
```
blaming this comment, it's 9 years old! Much overdue for this simple fix
with a range data vector.
I had to add a default constructor to Range in order to implement the
RangeDataVector, but otherwise this just a replacement of look up logic.
Commit: a2ad65661ad560b04952d4d992248d2db3be36c8
https://github.com/llvm/llvm-project/commit/a2ad65661ad560b04952d4d992248d2db3be36c8
Author: Sudharsan Veeravalli <quic_svs at quicinc.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfoXqci.td
A llvm/test/CodeGen/RISCV/xqcibm-cto-clo.ll
Log Message:
-----------
[RISCV] Add patterns for generating QC_CTO and QC_CLO (#144532)
These instructions count leading/trailing ones in the register.
Currently these are only generated when we have `Zbb` enabled (along
with `Xqcibm`) since it contains the `CTTZ/CTLZ` instructions.
Commit: e14f327d8094e02134efa98625acaf6fd43fee08
https://github.com/llvm/llvm-project/commit/e14f327d8094e02134efa98625acaf6fd43fee08
Author: Liao Chunyu <chunyu at iscas.ac.cn>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M llvm/test/CodeGen/RISCV/rvv/vselect-vp.ll
Log Message:
-----------
[RISCV] Pre-test for #144461
Commit: af49a650e172d56d684581b66afa9ab0368ec8f9
https://github.com/llvm/llvm-project/commit/af49a650e172d56d684581b66afa9ab0368ec8f9
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M llvm/test/CodeGen/PowerPC/f128-arith.ll
Log Message:
-----------
PowerPC: Add baseline tests for more f128 libcall handling (#144381)
Some of these incorrectly call the l suffixed version of libm
functions and others assert.
Commit: 7b9d10d2e6410029fd0750b2e0566432dbf03dc7
https://github.com/llvm/llvm-project/commit/7b9d10d2e6410029fd0750b2e0566432dbf03dc7
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M llvm/lib/IR/RuntimeLibcalls.cpp
M llvm/test/CodeGen/PowerPC/f128-arith.ll
Log Message:
-----------
PowerPC: Fix using long double libm functions for f128 intrinsics (#144382)
This wasn't setting the correct libcall names, which default to the
l suffixed libm names.
Commit: ad9e591fd53f2cf91a2744973b59669d873658af
https://github.com/llvm/llvm-project/commit/ad9e591fd53f2cf91a2744973b59669d873658af
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-06-17 (Tue, 17 Jun 2025)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
M llvm/test/CodeGen/RISCV/rvv/extract-subvector.ll
M llvm/test/CodeGen/RISCV/rvv/insert-subvector.ll
M llvm/test/CodeGen/RISCV/rvv/setcc-fp-vp.ll
M llvm/test/CodeGen/RISCV/rvv/setcc-fp.ll
M llvm/test/CodeGen/RISCV/rvv/setcc-int-vp.ll
M llvm/test/CodeGen/RISCV/rvv/setcc-integer.ll
M llvm/test/CodeGen/RISCV/rvv/undef-earlyclobber-chain.ll
M llvm/test/CodeGen/RISCV/rvv/vector-deinterleave-fixed.ll
M llvm/test/CodeGen/RISCV/rvv/vector-deinterleave.ll
M llvm/test/CodeGen/RISCV/rvv/vector-interleave-store.ll
M llvm/test/CodeGen/RISCV/rvv/vector-interleave.ll
M llvm/test/CodeGen/RISCV/rvv/vfptoi-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/vp-vector-interleaved-access.ll
Log Message:
-----------
[SelectionDAG][RISCV] Fold (add (vscale * C0), (vscale * C1)) to (vscale * (C0 + C1)) in getNode. (#144565)
We already have shl/mul vscale related folds in getNode.
This is an alternative to the DAGCombine proposed in #144507.
Commit: 74687180dde07312521db09c6f6454fe9d1e5662
https://github.com/llvm/llvm-project/commit/74687180dde07312521db09c6f6454fe9d1e5662
Author: Kirill Chibisov <contact at kchibisov.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M mlir/include/mlir/Dialect/EmitC/IR/CMakeLists.txt
M mlir/include/mlir/Dialect/EmitC/IR/EmitC.h
M mlir/include/mlir/Dialect/EmitC/IR/EmitC.td
A mlir/include/mlir/Dialect/EmitC/IR/EmitCInterfaces.h
A mlir/include/mlir/Dialect/EmitC/IR/EmitCInterfaces.td
R mlir/include/mlir/Dialect/EmitC/IR/EmitCTraits.h
M mlir/lib/Dialect/EmitC/IR/EmitC.cpp
M mlir/lib/Dialect/EmitC/Transforms/FormExpressions.cpp
M mlir/lib/Dialect/EmitC/Transforms/Transforms.cpp
M mlir/lib/Target/Cpp/TranslateToCpp.cpp
Log Message:
-----------
[mlir][emitc] Make CExpression trait into interface (#142771)
By defining `CExpressionInterface`, we move the side effect detection
logic from `emitc.expression` into the individual operations
implementing the interface allowing operations to gradually tune the
side effect.
It also allows checking for side effects each operation individually.
Commit: 10f29a607205c0c17ee9249a66feb63f0fdae182
https://github.com/llvm/llvm-project/commit/10f29a607205c0c17ee9249a66feb63f0fdae182
Author: Kunqiu Chen <camsyn at foxmail.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M compiler-rt/lib/msan/msan_interceptors.cpp
Log Message:
-----------
[MSan] Fix wrong unpoison size in SignalAction (#144071)
MSan should unpoison the parameters of extended signal handlers.
However, MSan unpoisoned the second parameter with the wrong size
`sizeof(__sanitizer_sigaction)`, inconsistent with its real type
`siginfo_t`.
This commit fixes this issue by correcting the size to
`sizeof(__sanitizer_siginfo)`.
Commit: 4d71f20b287e398f10bbff55d52bec9683ef89d2
https://github.com/llvm/llvm-project/commit/4d71f20b287e398f10bbff55d52bec9683ef89d2
Author: Robert Imschweiler <robert.imschweiler at amd.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M llvm/include/llvm/CodeGen/GlobalISel/LegalizationArtifactCombiner.h
M llvm/test/CodeGen/AMDGPU/GlobalISel/insertelement.ll
Log Message:
-----------
[GlobalISel] prevent G_UNMERGE_VALUES for vectors with different elements (#133335)
This commit prevents building a G_UNMERGE_VALUES instruction with
different source and destination vector elements in
`LegalizationArtifactCombiner::ArtifactValueFinder::tryCombineMergeLike()`,
e.g.:
`%1:_(<2 x s8>), %2:_(<2 x s8>) = G_UNMERGE_VALUES %0:_(<2 x s16>)`
This LLVM defect was identified via the AMD Fuzzing project.
Commit: 896e187a6e923b8441428f9db63c412d989fc51d
https://github.com/llvm/llvm-project/commit/896e187a6e923b8441428f9db63c412d989fc51d
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
Log Message:
-----------
[X86] combineAndMaskToShift - pull out repeated SDLoc(). NFC.
Commit: dac94f28e696e8234ec69bbed549533ea6b00227
https://github.com/llvm/llvm-project/commit/dac94f28e696e8234ec69bbed549533ea6b00227
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
Log Message:
-----------
[X86] combineAndNotOrIntoAndNotAnd - pull out repeated SDLoc(). NFC.
Commit: 0875bee2b10185eca40aea3b3f49eb8462522eda
https://github.com/llvm/llvm-project/commit/0875bee2b10185eca40aea3b3f49eb8462522eda
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
Log Message:
-----------
[X86] combineAndNotIntoANDNP - pull out repeated SDLoc(). NFC.
Commit: 44b715293fcad79ef4a54474627ac574a759fa5a
https://github.com/llvm/llvm-project/commit/44b715293fcad79ef4a54474627ac574a759fa5a
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
A llvm/test/Transforms/PhaseOrdering/X86/fmaddsub.ll
Log Message:
-----------
[PhaseOrdering][X86] Copy FMUL+ADDSUB/FMADDSUB build vector patterns from codegen tests
As detailed on #144489 - confirm the vectorisation of scalar FMUL+ADDSUB/FMADDSUB on various targets
Commit: 45ea46c44636094e9fcdbbeabfd11f9d0fad5e38
https://github.com/llvm/llvm-project/commit/45ea46c44636094e9fcdbbeabfd11f9d0fad5e38
Author: Garvit Gupta <quic_garvgupt at quicinc.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M clang/docs/Toolchain.rst
M clang/include/clang/Basic/DiagnosticDriverKinds.td
M clang/lib/Driver/ToolChains/BareMetal.cpp
M clang/lib/Driver/ToolChains/BareMetal.h
A clang/test/Driver/Inputs/basic_aarch64_gcc_tree/aarch64-none-elf/include/c++/8.2.1/.keep
A clang/test/Driver/Inputs/basic_aarch64_gcc_tree/aarch64-none-elf/lib/.keep
A clang/test/Driver/Inputs/basic_aarch64_gcc_tree/aarch64-none-elf/lib/crt0.o
A clang/test/Driver/Inputs/basic_aarch64_gcc_tree/bin/aarch64-none-elf-ld
A clang/test/Driver/Inputs/basic_aarch64_gcc_tree/lib/gcc/aarch64-none-elf/8.2.1/crtbegin.o
A clang/test/Driver/Inputs/basic_aarch64_gcc_tree/lib/gcc/aarch64-none-elf/8.2.1/crtend.o
A clang/test/Driver/Inputs/basic_aarch64_nogcc_tree/aarch64-none-elf/lib/crt0.o
A clang/test/Driver/Inputs/basic_aarch64_nogcc_tree/aarch64-none-elf/lib/crtbegin.o
A clang/test/Driver/Inputs/basic_aarch64_nogcc_tree/aarch64-none-elf/lib/crtend.o
A clang/test/Driver/Inputs/basic_aarch64_nogcc_tree/bin/aarch64-none-elf-ld
A clang/test/Driver/Inputs/basic_arm_gcc_tree/armv6m-none-eabi/include/c++/8.2.1/.keep
A clang/test/Driver/Inputs/basic_arm_gcc_tree/armv6m-none-eabi/lib/.keep
A clang/test/Driver/Inputs/basic_arm_gcc_tree/armv6m-none-eabi/lib/crt0.o
A clang/test/Driver/Inputs/basic_arm_gcc_tree/bin/armv6m-none-eabi-ld
A clang/test/Driver/Inputs/basic_arm_gcc_tree/lib/gcc/armv6m-none-eabi/8.2.1/crtbegin.o
A clang/test/Driver/Inputs/basic_arm_gcc_tree/lib/gcc/armv6m-none-eabi/8.2.1/crtend.o
A clang/test/Driver/Inputs/basic_arm_nogcc_tree/armv6m-none-eabi/lib/crt0.o
A clang/test/Driver/Inputs/basic_arm_nogcc_tree/armv6m-none-eabi/lib/crtbegin.o
A clang/test/Driver/Inputs/basic_arm_nogcc_tree/armv6m-none-eabi/lib/crtend.o
A clang/test/Driver/Inputs/basic_arm_nogcc_tree/bin/armv6m-none-eabi-ld
A clang/test/Driver/aarch64-gnutools.c
A clang/test/Driver/aarch64-toolchain-extra.c
A clang/test/Driver/aarch64-toolchain.c
A clang/test/Driver/arm-gnutools.c
A clang/test/Driver/arm-toolchain-extra.c
A clang/test/Driver/arm-toolchain.c
M clang/test/Driver/baremetal.cpp
A clang/test/Driver/check-no-multlib-warning.c
Log Message:
-----------
Reland [Driver] Add support for GCC installation detection in Baremetal toolchain (#144640)
This patch introduces enhancements to the Baremetal toolchain to support
GCC toolchain detection.
- If the --gcc-install-dir or --gcc-toolchain options are provided and
point to valid paths, the sysroot is derived from those locations.
- If not, the logic falls back to the existing sysroot inference
mechanism already present in the Baremetal toolchain.
- Support for adding include paths for the libstdc++ library has also
been added.
Additionally, the restriction to always use the integrated assembler has
been removed. With a valid GCC installation, the GNU assembler can now
be used as well.
This patch currently updates and adds tests for the ARM target only.
RISC-V-specific tests will be introduced in a later patch, once the
RISCVToolChain is fully merged into the Baremetal toolchain. At this
stage, there is no way to test the RISC-V target within this PR.
RFC:
https://discourse.llvm.org/t/merging-riscvtoolchain-and-baremetal-toolchains/75524
Commit: e07b1b26c38ba48af247b370a29eeb9879cefc97
https://github.com/llvm/llvm-project/commit/e07b1b26c38ba48af247b370a29eeb9879cefc97
Author: Rajveer Singh Bharadwaj <rajveer.developer at icloud.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M llvm/include/llvm/CodeGen/SDPatternMatch.h
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
M llvm/unittests/CodeGen/SelectionDAGPatternMatchTest.cpp
Log Message:
-----------
[DAG] Implement SDPatternMatch `m_Abs()` matcher (#144512)
Commit: a38932ac3c0a16226e3dde7f1532f117959c58df
https://github.com/llvm/llvm-project/commit/a38932ac3c0a16226e3dde7f1532f117959c58df
Author: Robert Imschweiler <robert.imschweiler at amd.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M llvm/include/llvm/CodeGen/GlobalISel/LegalizationArtifactCombiner.h
M llvm/test/CodeGen/AMDGPU/GlobalISel/insertelement.ll
Log Message:
-----------
Revert "[GlobalISel] prevent G_UNMERGE_VALUES for vectors with different elements" (#144650)
Reverts llvm/llvm-project#133335
Commit: 49df87e71b73b230ecb21335dcb5f5390eebdab3
https://github.com/llvm/llvm-project/commit/49df87e71b73b230ecb21335dcb5f5390eebdab3
Author: Simon Tatham <simon.tatham at arm.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M libc/src/__support/FPUtil/dyadic_float.h
Log Message:
-----------
[libc][printf] Fix out-of-range shift in float320 printf (#144542)
If you enable `LIBC_CONF_PRINTF_FLOAT_TO_STR_USE_FLOAT320` and use a
`%f` style printf format directive to print a nonzero number too small
to show up in the output digits, e.g. `printf("%.2f", 0.001)`, then the
output would be intermittently incorrect, because
`DyadicFloat::as_mantissa_type_rounded` would try to shift the 320-bit
mantissa right by more than 320 bits, invoking the 'undefined behavior'
clause commented in the `shift()` function in `big_int.h`.
There were already tests in the libc test suite exercising this case,
e.g. the subnormal tests in `LlvmLibcSPrintfTest.FloatDecimalConv` use
`%f` at the default precision of 6 decimal places on tiny numbers such
as 2^-1027. But because the behavior is undefined, they don't visibly
fail all the time, and in all previous test runs we'd tried with
USE_FLOAT320, they had got lucky.
The fix is simply to detect an out-of-range right shift before doing it,
and instead just set the output value to zero.
Commit: ba40a7bc2e65be86ac23c9cf6038ac085dda77eb
https://github.com/llvm/llvm-project/commit/ba40a7bc2e65be86ac23c9cf6038ac085dda77eb
Author: Mel Chen <mel.chen at sifive.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
M llvm/test/Transforms/LoopVectorize/RISCV/first-order-recurrence-scalable-vf1.ll
M llvm/test/Transforms/LoopVectorize/first-order-recurrence-scalable-vf1.ll
Log Message:
-----------
[LoopVectorize] Vectorize fixed-order recurrence with vscale x 1. (#142772)
When the fixed-order recurrence phi is live-out from the loop, the
vectorizer uses VPInstruction::ExtractPenultimateElement to extract the
penultimate element from the recurrence vector. However, this is not
feasible when the VF is vscale x 1, since vscale could be 1, making the
vector contain only one element.
This patch changes the behavior for vscale x 1 by extracting the last
element from the vector produced by splicing the recurrence phi and the
previous value. This ensures we can still determine the correct live-out
value of the recurrence phi.
Commit: ca29c632f06fc0e02ebbbb9fbdc73e3abd6b096b
https://github.com/llvm/llvm-project/commit/ca29c632f06fc0e02ebbbb9fbdc73e3abd6b096b
Author: Pengcheng Wang <wangpengcheng.pp at bytedance.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
A llvm/test/CodeGen/RISCV/icmp-non-byte-sized.ll
M llvm/test/CodeGen/RISCV/memcmp-optsize.ll
M llvm/test/CodeGen/RISCV/memcmp.ll
Log Message:
-----------
[RISCV] Support non-power-of-2 types when expanding memcmp
We can convert non-power-of-2 types into extended value types
and then they will be widen.
Reviewers: lukel97
Reviewed By: lukel97
Pull Request: https://github.com/llvm/llvm-project/pull/114971
Commit: 59d6fbb8ffe03ceecfcc07ebe22e256c97ef70dd
https://github.com/llvm/llvm-project/commit/59d6fbb8ffe03ceecfcc07ebe22e256c97ef70dd
Author: Kareem Ergawy <kareem.ergawy at amd.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M flang/lib/Optimizer/Builder/FIRBuilder.cpp
A flang/test/HLFIR/fir-local-alloca-block.fir
Log Message:
-----------
[flang][fir] Provide allocation block for `fir.local` when required (#144521)
Extends `fir::FirOpBuilder::getAllocaBlock()` to support `fir.local`.
This allows us to retrieve an allocation block when needed for
`fir.local`.
Commit: 255b55c602f73964262893859a543a115b278e21
https://github.com/llvm/llvm-project/commit/255b55c602f73964262893859a543a115b278e21
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M llvm/lib/Transforms/IPO/GlobalOpt.cpp
Log Message:
-----------
[GlobalOpt] Use cast instead of dyn_cast. NFC (#144634)
The dyn_cast was not checked for null, and the cast is guaranteed to
succeed by an earlier check.
Commit: 7ea7ccd24d603ceec6eb5194d98911e6ab7c0717
https://github.com/llvm/llvm-project/commit/7ea7ccd24d603ceec6eb5194d98911e6ab7c0717
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M llvm/lib/Target/PowerPC/PPCISelLowering.cpp
M llvm/test/CodeGen/PowerPC/aix-cc-abi-mir.ll
M llvm/test/CodeGen/PowerPC/aix-cc-abi.ll
M llvm/test/CodeGen/PowerPC/aix-cc-byval-mir.ll
M llvm/test/CodeGen/PowerPC/aix-vec-arg-spills-mir.ll
M llvm/test/CodeGen/PowerPC/aix-vec-arg-spills.ll
M llvm/test/CodeGen/PowerPC/aix-vector-vararg-caller.ll
M llvm/test/CodeGen/PowerPC/aix-vector-vararg-fixed-caller.ll
Log Message:
-----------
[PowerPC][AIX] Specify pointer info and alignment for stack store (#144526)
When lowering call arguments to stack, specify a stack MPI, as well as
the stack alignment, instead of using the defaults (which would be an
unknown location with ABI alignment).
I believe the asm diffs are just changes in scheduling.
Commit: c16dc63b44ae039f2ac123a8ffbc90031767d00b
https://github.com/llvm/llvm-project/commit/c16dc63b44ae039f2ac123a8ffbc90031767d00b
Author: Mikael Holmen <mikael.holmen at ericsson.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
Log Message:
-----------
[OMPIRBuilder] Fix gcc -Wparentheses warning [NFC]
Without this gcc warned like
/repo/llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp:7559:68: warning: suggest parentheses around '&&' within '||' [-Wparentheses]
7559 | NumStaleCIArgs == (OffloadingArraysToPrivatize.size() + 2) &&
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
7560 | "Wrong number of arguments for StaleCI when shareds are present");
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Commit: 669627d0c77ed8408358bc8c5973255fe28a36ea
https://github.com/llvm/llvm-project/commit/669627d0c77ed8408358bc8c5973255fe28a36ea
Author: Philipp Jung <philippjung2010 at live.de>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M clang-tools-extra/clang-tidy/cppcoreguidelines/CMakeLists.txt
M clang-tools-extra/clang-tidy/cppcoreguidelines/CppCoreGuidelinesTidyModule.cpp
A clang-tools-extra/clang-tidy/cppcoreguidelines/UseEnumClassCheck.cpp
A clang-tools-extra/clang-tidy/cppcoreguidelines/UseEnumClassCheck.h
M clang-tools-extra/docs/ReleaseNotes.rst
A clang-tools-extra/docs/clang-tidy/checks/cppcoreguidelines/use-enum-class.rst
M clang-tools-extra/docs/clang-tidy/checks/list.rst
A clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/use-enum-class.cpp
Log Message:
-----------
Add check 'cppcoreguidelines-use-enum-class' (#138282)
Warn on non-class enum definitions as suggested by the Core Guidelines:
https://isocpp.github.io/CppCoreGuidelines/CppCoreGuidelines#Renum-class
Commit: 43e1a5a411d972fe06a1afb86ffd5ba21fd2a376
https://github.com/llvm/llvm-project/commit/43e1a5a411d972fe06a1afb86ffd5ba21fd2a376
Author: Frank Schlimbach <frank.schlimbach at intel.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M mlir/include/mlir/Dialect/Mesh/IR/MeshOps.h
M mlir/include/mlir/Dialect/Mesh/Transforms/Passes.h
M mlir/include/mlir/Dialect/Mesh/Transforms/Passes.td
M mlir/lib/Dialect/Mesh/IR/MeshOps.cpp
M mlir/lib/Dialect/Mesh/Transforms/ShardingPropagation.cpp
A mlir/test/Dialect/Mesh/backward-sharding-propagation.mlir
A mlir/test/Dialect/Mesh/forward-backward-sharding-propagation.mlir
A mlir/test/Dialect/Mesh/forward-sharding-propagation.mlir
Log Message:
-----------
[mlir][mesh] adding option for traversal order in sharding propagation (#144079)
The traversal order in sharding propagation was hard-coded. This PR
provides options to the pass to select a suitable order
- forward-only
- backward-only
- forward-backward
- backward-forward
Default is the previous behavior (backward-forward).
Commit: 355725a25e6be38d7a97cab9e206d2a16a1bd849
https://github.com/llvm/llvm-project/commit/355725a25e6be38d7a97cab9e206d2a16a1bd849
Author: Kunqiu Chen <camsyn at foxmail.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M llvm/lib/Transforms/Instrumentation/ThreadSanitizer.cpp
M llvm/test/Instrumentation/ThreadSanitizer/atomic-non-integer.ll
Log Message:
-----------
[TSan] Fix missing inst cleanup (#144067)
Commit 44e875ad5b2ce26826dd53f9e7d1a71436c86212 introduced a change that
replaces `ReplaceInstWithInst` with `Instruction::replaceAllUsesWith`,
without subsequent instruction cleanup.
This results in TSan leaving behind useless `load atomic` instructions
after 'replacing' them.
This commit adds cleanup back, consistent with the context.
Commit: 8e157fdbb7b4af9f67b139a9f05feaa9b338d3f5
https://github.com/llvm/llvm-project/commit/8e157fdbb7b4af9f67b139a9f05feaa9b338d3f5
Author: Sirui Mu <msrlancern at gmail.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M clang/include/clang/CIR/Dialect/IR/CIROps.td
M clang/include/clang/CIR/MissingFeatures.h
M clang/lib/CIR/CodeGen/CIRGenBuiltin.cpp
M clang/lib/CIR/CodeGen/CIRGenFunction.h
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.h
M clang/test/CIR/CodeGen/builtin_call.cpp
Log Message:
-----------
[CIR] Add support for __builtin_assume (#144376)
This patch adds support for the `__builtin_assume` builtin function.
Commit: fe42d34274cac79794637bf2f69f85537dde8b74
https://github.com/llvm/llvm-project/commit/fe42d34274cac79794637bf2f69f85537dde8b74
Author: Ying Yi <ying.yi at sony.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M clang/lib/Headers/bmiintrin.h
M clang/lib/Headers/immintrin.h
M clang/lib/Headers/keylockerintrin.h
M clang/lib/Headers/x86gprintrin.h
M clang/lib/Headers/x86intrin.h
Log Message:
-----------
[clang][headers]Remove unnecessary guard of !defined(__SCE__). (#144522)
Sony PlayStation now supports C++20, and we wish to change the default
C++ mode to C++20 sometime in the future. As such, the !defined(__SCE__)
guards are redundant and we want to remove them. This in turn makes the
entire guard lines redundant (always true), so this patch removes them
entirely.
Commit: 58c4fa96cb111ea8d399296838f4cb6a294115ca
https://github.com/llvm/llvm-project/commit/58c4fa96cb111ea8d399296838f4cb6a294115ca
Author: Karlo Basioli <k.basioli at gmail.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
Log Message:
-----------
Fix bazel build for #142771 (#144659)
Commit: 6fcdde2a4eb9eaf34511ac3a35075be329fe1fae
https://github.com/llvm/llvm-project/commit/6fcdde2a4eb9eaf34511ac3a35075be329fe1fae
Author: Lucas Duarte Prates <lucas.prates at arm.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M runtimes/CMakeLists.txt
Log Message:
-----------
[runtimes] Allow use of external llvm-lit on standalone builds (#144347)
When creating a standalone build of the runtimes sub-project, the
current CMake implementation looks for a lit executable that might
potentially exist in the build tree and unconditionally overrides the
value of `LLVM_EXTERNAL_LIT`. Due to this, any value passed via
`-DLLVM_EXTERNAL_LIT` when configuring the CMake project is ignored.
This change adds the `ALLOW_EXTERNAL` argument to the
`get_llvm_lit_path` call in the runtimes' CMakeLists.txt, allowing any
value previously set to be considered.
Commit: 757a0e6d3b6130a984960ee413a3c8a6f99c7cb5
https://github.com/llvm/llvm-project/commit/757a0e6d3b6130a984960ee413a3c8a6f99c7cb5
Author: Stephen Tozer <stephen.tozer at sony.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M llvm/lib/Target/SystemZ/SystemZLongBranch.cpp
A llvm/test/CodeGen/SystemZ/fake-use-size.ll
Log Message:
-----------
[SystemZ] Treat FAKE_USE instructions as instructions without a size (#144390)
This patch fixes an error in which `FAKE_USE` instructions would trigger
an assertion in SystemZLongBranch due to them having a size of 0 without
being excepted in the assertion that each instruction, other than a set
of known 0-size instruction types, should have a non-0 size.
`FAKE_USE` instructions are no-op instructions that are emitted into
LLVM by the `-fextend-variable-liveness` clang flag to help preserve the
liveness of source variables in optimized code, and therefore they
should be understood as being valid size 0 instructions.
Commit: bb00fd087a3c3e02fb812e41218ad0a85d9f0fe1
https://github.com/llvm/llvm-project/commit/bb00fd087a3c3e02fb812e41218ad0a85d9f0fe1
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M llvm/utils/gn/secondary/clang-tools-extra/clang-tidy/cppcoreguidelines/BUILD.gn
Log Message:
-----------
[gn build] Port 669627d0c77e
Commit: cd8248f3e856a37cc1addcb74475b4d37dc8aa42
https://github.com/llvm/llvm-project/commit/cd8248f3e856a37cc1addcb74475b4d37dc8aa42
Author: Scott Constable <scott.d.constable at intel.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M llvm/lib/Target/X86/X86AsmPrinter.cpp
M llvm/test/CodeGen/X86/kcfi-arity.ll
Log Message:
-----------
Fixed a bug in `-fsanitize-kcfi-arity` (#142867)
Compiling with `fsanitize-kcfi-arity` can crash the compiler if a
function has more than 6 arguments, including floating-point arguments
passed in XMM registers. This patch fixes the feature by only counter
integer and stack arguments toward kCFI arity. For example, the compiler
crashed when it attempted to generate kCFI arity information for this
function:
https://github.com/torvalds/linux/blob/16b70698aa3ae7888826d0c84567c72241cf6713/drivers/gpu/drm/amd/display/dc/dml/dcn32/display_mode_vba_util_32.h#L680
As noted in a comment, floating-point registers are not relevant to
enforcing kCFI at this time.
Commit: dac0820b277835b7506a9c0d1dc5e077597f6742
https://github.com/llvm/llvm-project/commit/dac0820b277835b7506a9c0d1dc5e077597f6742
Author: Bjorn Pettersson <bjorn.a.pettersson at ericsson.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M llvm/test/CodeGen/Thumb2/mve-shuffle.ll
M llvm/test/CodeGen/Thumb2/mve-vld3.ll
M llvm/test/CodeGen/Thumb2/schedm7-hazard.ll
Log Message:
-----------
[Thumb2] Regenerate some test checks. NFC
Commit: 5a9cc93a2058e2c26d766f7be6aee63e928bf825
https://github.com/llvm/llvm-project/commit/5a9cc93a2058e2c26d766f7be6aee63e928bf825
Author: Karlo Basioli <k.basioli at gmail.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
Log Message:
-----------
Fix for bazel build #142079 (#144665)
Commit: a13b7cc00c5f4b9d2636ed7a22c1390cf8033baf
https://github.com/llvm/llvm-project/commit/a13b7cc00c5f4b9d2636ed7a22c1390cf8033baf
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M llvm/lib/Transforms/Scalar/LICM.cpp
M llvm/test/Transforms/LICM/call-hoisting.ll
M llvm/test/Transforms/LICM/funclet.ll
Log Message:
-----------
[LICM] Support hoisting of non-argmemonly readonly calls (#144497)
The code checking whether a readonly call is safe to hoist is
currently limited to only argmemonly calls. However, the actual
implementation does not depend on this in any way. It either
does an MSSA clobber walk on the memory access (which will take
all locations accessed by the call into account), or it will
look at all MemoryDefs in an entirely location-independent manner.
The current restriction dates back to the time when LICM still
supported AST, in which case this code *did* reason about the
individual pointer arguments.
Commit: ee4c2bb68752a6c4b463f3873cde278b8d348628
https://github.com/llvm/llvm-project/commit/ee4c2bb68752a6c4b463f3873cde278b8d348628
Author: Michael Buch <michaelbuch12 at gmail.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M lldb/test/Shell/SymbolFile/DWARF/x86/explicit-member-function-quals.cpp
Log Message:
-----------
[lldb][test] explicit-member-function-quals.cpp: add -glldb
This will get un-XFAILed but requires `-glldb` in an upcoming patch.
Commit: 561eca44e7639ee8805d0bf65a59b9898d782538
https://github.com/llvm/llvm-project/commit/561eca44e7639ee8805d0bf65a59b9898d782538
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
A llvm/test/CodeGen/PowerPC/aix32-cc-abi-vaarg-mir.ll
M llvm/test/CodeGen/PowerPC/aix32-cc-abi-vaarg.ll
A llvm/test/CodeGen/PowerPC/aix64-cc-abi-vaarg-mir.ll
M llvm/test/CodeGen/PowerPC/aix64-cc-abi-vaarg.ll
Log Message:
-----------
[PowerPC] Split tests into asm and mir parts (NFC)
To allow both to be generated.
Commit: acde20b5605f3a3a8da2217e4526fc045e6603ed
https://github.com/llvm/llvm-project/commit/acde20b5605f3a3a8da2217e4526fc045e6603ed
Author: Steven Perron <stevenperron at google.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M clang/include/clang/Basic/Attr.td
M clang/include/clang/Basic/AttrDocs.td
M clang/include/clang/Basic/Builtins.td
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/include/clang/Sema/SemaHLSL.h
M clang/lib/CodeGen/CGHLSLBuiltins.cpp
M clang/lib/CodeGen/CodeGenFunction.h
M clang/lib/Sema/SemaDecl.cpp
M clang/lib/Sema/SemaDeclAttr.cpp
M clang/lib/Sema/SemaHLSL.cpp
A clang/test/AST/HLSL/vk.spec-constant.usage.hlsl
R clang/test/CodeGenHLSL/inline-spirv/SpirvType.alignment.hlsl
R clang/test/CodeGenHLSL/inline-spirv/SpirvType.hlsl
A clang/test/CodeGenHLSL/vk-features/SpirvType.alignment.hlsl
A clang/test/CodeGenHLSL/vk-features/SpirvType.hlsl
A clang/test/CodeGenHLSL/vk-features/vk.spec-constant.hlsl
A clang/test/SemaHLSL/vk.spec-constant.error.hlsl
Log Message:
-----------
[HLSL][SPIRV] Add vk::constant_id attribute. (#143544)
The vk::constant_id attribute is used to indicate that a global const
variable
represents a specialization constant in SPIR-V. This PR adds this
attribute to clang.
The documentation for the attribute is
[here](https://github.com/microsoft/DirectXShaderCompiler/blob/main/docs/SPIR-V.rst#specialization-constants).
The strategy is to to modify the initializer to get the value of a
specialize constant for a builtin defined in the SPIR-V backend.
Implements https://github.com/llvm/wg-hlsl/pull/287
Fixes https://github.com/llvm/llvm-project/issues/142448
---------
Co-authored-by: Nathan Gauër <github at keenuts.net>
Commit: d3441f7348203cc2a1d9c44fd24c1113954aa2b2
https://github.com/llvm/llvm-project/commit/d3441f7348203cc2a1d9c44fd24c1113954aa2b2
Author: Paul Walker <paul.walker at arm.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
Log Message:
-----------
[LV] Change getSmallBestKnownTC to return an ElementCount (NFC) (#141793)
This is prep work for enabling better UF calculations when using vscale
based VFs to vectorise loops with vscale based tripcounts.
NOTE: NFC because All uses remain fixed-length until a following PR
changes LoopVectorize's version of getSmallConstantTripCount().
Commit: b7ef5dbac91f9ccaf335ae4dd998e5783523f24e
https://github.com/llvm/llvm-project/commit/b7ef5dbac91f9ccaf335ae4dd998e5783523f24e
Author: Paul Walker <paul.walker at arm.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M llvm/lib/CodeGen/ComplexDeinterleavingPass.cpp
M llvm/test/CodeGen/AArch64/complex-deinterleaving-splat-scalable.ll
Log Message:
-----------
[LLVM][ComplexDeinterleaving] Update splat identification to include vector ConstantInt/FP. (#144516)
Commit: b5967264b0fbfd502b3a7edec27409e966fb68be
https://github.com/llvm/llvm-project/commit/b5967264b0fbfd502b3a7edec27409e966fb68be
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M llvm/include/llvm/Support/CodeGen.h
M llvm/include/llvm/Target/TargetOptions.h
Log Message:
-----------
CodeGen: Move ABI option enums to support (#142912)
Move these out of TargetOptions and into Support to avoid
the dependency on Target. There are similar ABI options
already in Support/CodeGen.h.
Commit: 4aca3dc48b0919b81bd86302b141f29869266c45
https://github.com/llvm/llvm-project/commit/4aca3dc48b0919b81bd86302b141f29869266c45
Author: Robert Imschweiler <robert.imschweiler at amd.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M llvm/include/llvm/CodeGen/GlobalISel/LegalizationArtifactCombiner.h
M llvm/test/CodeGen/AMDGPU/GlobalISel/insertelement.ll
M llvm/test/CodeGen/AMDGPU/buffer-fat-pointers-contents-legalization.ll
Log Message:
-----------
Reland: [GlobalISel] prevent G_UNMERGE_VALUES for vectors with different elements (#144661)
This commit prevents building a G_UNMERGE_VALUES instruction with
different source and destination vector elements in
`LegalizationArtifactCombiner::ArtifactValueFinder::tryCombineMergeLike()`,
e.g.:
`%1:_(<2 x s8>), %2:_(<2 x s8>) = G_UNMERGE_VALUES %0:_(<2 x s16>)`
This LLVM defect was identified via the AMD Fuzzing project.
Commit: c3efe7d64cebcd8679bec3ba7ff8154f8b0a1fa4
https://github.com/llvm/llvm-project/commit/c3efe7d64cebcd8679bec3ba7ff8154f8b0a1fa4
Author: Martin Storsjö <martin at martin.st>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M libcxx/test/libcxx/odr_signature.exceptions.sh.cpp
M libcxx/test/libcxx/odr_signature.hardening.sh.cpp
Log Message:
-----------
[libcxx] [test] Fix odr_signature tests with optimizations enabled (#144317)
If optimization is enabled, the inline `f()` function actually gets
inlined, meaning that the functions `tu1()` and `tu2()` trivially return
1 and 2, instead of actually referencing the potentially linker
deduplicated function `f()`, which is what the test tries to test.
Therefore, this test previously actually failed to test what it was
supposed to test, if optimization was enabled.
Mark the inline functions with `TEST_NOINLINE` to make sure that they
don't get inlined even with optimizations enabled.
Also update the TODO comments to explain why we have an XFAIL for msvc
mode here.
This avoids these tests unexpectedly passing if building in msvc mode,
with optimizations enabled
(`-DLIBCXX_TEST_PARAMS="optimization=speed"`).
Commit: 66d6964a55014e7fabb7c80fbba19d2145262b6b
https://github.com/llvm/llvm-project/commit/66d6964a55014e7fabb7c80fbba19d2145262b6b
Author: Garvit Gupta <quic_garvgupt at quicinc.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M clang/test/Driver/aarch64-toolchain-extra.c
M clang/test/Driver/aarch64-toolchain.c
M clang/test/Driver/arm-toolchain-extra.c
M clang/test/Driver/arm-toolchain.c
Log Message:
-----------
Fix tests failing on fuchsia clang x86_64 builders (#144655)
Fuchsia sets CLANG_DEFAULT_UNWINDLIB to libunwind. As a result, when
rtlib is set to libgcc and unwindlib is not explicitly specified, tests
using Fuchsia as the default platform will fail. To address this, the
affected tests are now xfailed
This change fixes the following tests introduced in
https://github.com/llvm/llvm-project/commit/45ea46c44636094e9fcdbbeabfd11f9d0fad5e38:
clang/test/Driver/aarch64-toolchain-extra.c
clang/test/Driver/arm-toolchain-extra.c
clang/test/Driver/aarch64-toolchain.c
clang/test/Driver/arm-toolchain.c
Commit: 8a469da8b2342dd9104faf25deeddd8ad66ca6a6
https://github.com/llvm/llvm-project/commit/8a469da8b2342dd9104faf25deeddd8ad66ca6a6
Author: Oleksandr "Alex" Zinenko <git at ozinenko.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M mlir/lib/Dialect/MemRef/Transforms/ExpandOps.cpp
M mlir/test/Dialect/MemRef/expand-ops.mlir
Log Message:
-----------
[mlir] remove unnecessary atomic_rmw expansions (#144515)
The expansion of `memref.atomic_rmw` into a `memref.generic_atomic_rmw`
for floating-point min/max operations is no longer necessary as those
are now supported by the LLVM dialect and LLVM IR.
Furthermore, combining this expansion with direct lowering of
`generic_atomic_rmw` could leads to invalid LLVM dialect IR with
`cmpxchg` operating on floating-point values that it does not support.
Commit: d8e8ab79773f739c602c5869f80c6c5b5962c558
https://github.com/llvm/llvm-project/commit/d8e8ab79773f739c602c5869f80c6c5b5962c558
Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64FrameLowering.cpp
M llvm/test/CodeGen/AArch64/stack-hazard.ll
Log Message:
-----------
[AArch64][SME] Fix restoring callee-saves from FP with hazard padding (#143371)
Currently, when hazard-padding is enabled a (fixed-size) hazard slot is
placed in the CS area, just after the frame record. The size of this
slot is part of the "CalleeSaveBaseToFrameRecordOffset". The SVE
epilogue emission code assumed this offset was always zero, and
incorrectly setting the stack pointer, resulting in all SVE registers
being reloaded from incorrect offsets.
```
| prev_lr |
| prev_fp |
| (a.k.a. "frame record") |
|-----------------------------------| <- fp(=x29)
| <hazard padding> |
|-----------------------------------| <- callee-saved base
| |
| callee-saved fp/simd/SVE regs |
| |
|-----------------------------------| <- SVE callee-save base
```
i.e. in the above diagram, the code assumed `fp == callee-saved base`.
Commit: 34a48941498d95ec2682f7adaeb6115b7b4d70ba
https://github.com/llvm/llvm-project/commit/34a48941498d95ec2682f7adaeb6115b7b4d70ba
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
Log Message:
-----------
[X86] detectZextAbsDiff - use SDPatternMatch::m_Abs() matcher. NFC.
Commit: 7c15edb306932e41c159f3d69c161ed0d89d47b7
https://github.com/llvm/llvm-project/commit/7c15edb306932e41c159f3d69c161ed0d89d47b7
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M clang/lib/AST/ByteCode/Compiler.cpp
M clang/lib/AST/ByteCode/Compiler.h
M clang/lib/AST/ByteCode/Descriptor.cpp
M clang/lib/AST/ByteCode/Disasm.cpp
M clang/lib/AST/ByteCode/Floating.h
M clang/lib/AST/ByteCode/Integral.h
M clang/lib/AST/ByteCode/IntegralAP.h
M clang/lib/AST/ByteCode/Interp.cpp
M clang/lib/AST/ByteCode/Interp.h
M clang/lib/AST/ByteCode/InterpBuiltin.cpp
M clang/lib/AST/ByteCode/InterpBuiltinBitCast.cpp
M clang/lib/AST/ByteCode/InterpState.h
M clang/lib/AST/ByteCode/Opcodes.td
M clang/lib/AST/ByteCode/PrimType.h
M clang/lib/AST/ByteCode/Program.h
M clang/test/AST/ByteCode/builtin-bit-cast-long-double.cpp
M clang/test/AST/ByteCode/builtin-functions.cpp
Log Message:
-----------
Reapply "[clang][bytecode] Allocate IntegralAP and Floating types usi… (#144676)
…ng an allocator (#144246)"
This reverts commit 57828fec760f086b334ce0cb1c465fc559dcaea4.
Commit: 6265ca686dfe18e6032e59637f144bad7ea6cf2b
https://github.com/llvm/llvm-project/commit/6265ca686dfe18e6032e59637f144bad7ea6cf2b
Author: Ties Stuij <ties.stuij at arm.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64.td
M llvm/lib/Target/AArch64/AArch64Processors.td
A llvm/lib/Target/AArch64/AArch64SchedA320.td
A llvm/test/tools/llvm-mca/AArch64/Cortex/A320-basic-instructions.s
A llvm/test/tools/llvm-mca/AArch64/Cortex/A320-neon-instructions.s
A llvm/test/tools/llvm-mca/AArch64/Cortex/A320-sve-instructions.s
Log Message:
-----------
[AArch64] Add Cortex-A320 scheduling model (#144385)
Instead of using the Cortex-A510 scheduling model, Cortex-A320 now uses
its own scheduling model, based off of the Cortex-A320 Software
Optimization Guide:
https://developer.arm.com/documentation/110285/r0p1
---------
Co-authored-by: Nashe Mncube <Nashe.Mncube at arm.com>
Commit: a1c2a712939897251729b6fc436a2db7db6f03fc
https://github.com/llvm/llvm-project/commit/a1c2a712939897251729b6fc436a2db7db6f03fc
Author: Andrei Golubev <andrey.golubev at intel.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M mlir/include/mlir/Dialect/Bufferization/IR/BufferizableOpInterface.h
M mlir/lib/Dialect/Bufferization/IR/BufferizableOpInterface.cpp
M mlir/lib/Dialect/Bufferization/Transforms/Bufferize.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/SparsificationAndBufferizationPass.cpp
Log Message:
-----------
[mlir][bufferization] Use Type instead of Value in unknown conversion (#144658)
Generally, bufferization should be able to create a memref from a tensor
without needing to know more than just a mlir::Type. Thus, change
BufferizationOptions::UnknownTypeConverterFn to accept just a type
(mlir::TensorType for now) instead of mlir::Value. Additionally, apply
the same rationale to getMemRefType() helper function.
Both changes are prerequisites to enable custom types support in
one-shot bufferization.
Commit: 66580f77b826e71a9727f1d6287bec6a6101f620
https://github.com/llvm/llvm-project/commit/66580f77b826e71a9727f1d6287bec6a6101f620
Author: Matthias Springer <me at m-sp.org>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M mlir/lib/Transforms/Utils/DialectConversion.cpp
Log Message:
-----------
[mlir][Transforms][NFC] Dialect Conversion: Keep `unresolvedMaterializations` up to date (#144254)
`unresolvedMaterializations` is a mapping from
`UnrealizedConversionCastOp` to `UnresolvedMaterializationRewrite`. This
mapping is needed to find the correct type converter for an unresolved
materialization.
With this commit, `unresolvedMaterializations` is updated immediately
when an op is being erased. This also cleans up the code base a bit:
`SingleEraseRewriter` is now used only during the "cleanup" phase and no
longer needed as a field of `ConversionRewriterImpl`.
This commit is in preparation of the One-Shot Dialect Conversion
refactoring: `allowPatternRollback = false` will in the future trigger
immediate materialization of all IR changes.
Commit: 4b2ab1494bc07493087252dff4e5e19808703048
https://github.com/llvm/llvm-project/commit/4b2ab1494bc07493087252dff4e5e19808703048
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M flang/lib/Semantics/resolve-names.cpp
A flang/test/Lower/OpenMP/Todo/declare-mapper-iterator.f90
Log Message:
-----------
[flang][OpenMP] Don't crash on iterator modifier in declare mapper (#144359)
Both the declare mapper directive argument, and the iterator modifier
can contain declaration-type-spec, so make sure that the processing of
one ends before processing of the other begins in semantic analysis.
Commit: a83d3362f686725bac76bfb9562663908de25f15
https://github.com/llvm/llvm-project/commit/a83d3362f686725bac76bfb9562663908de25f15
Author: Tom Eccles <tom.eccles at arm.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M flang/lib/Semantics/resolve-directives.cpp
R flang/test/Lower/OpenMP/Todo/omp-doconcurrent.f90
A flang/test/Semantics/OpenMP/do-concurrent-collapse.f90
Log Message:
-----------
[flang][OpenMP] Don't allow DO CONCURRENT inside of a loop nest (#144506)
I don't think DO CONCURRENT fits the definition of a Canonical Loop Nest
(OpenMP 6.0 section 6.4.1).
It is however explicitly allowed for the LOOP construct (6.0 section
13.8).
There's some obscure language in OpenMP 6.0 for the LOOP construct:
> If the collapsed loop is a DO CONCURRENT loop, neither the
> data-sharing attribute clauses nor the collapse clause may be
specified.
>From the surrounding context, I think "collapsed loop" just means the
loop that the LOOP construct applies to. So I will interpret this to
mean that DO CONCURRENT can only be used with the LOOP construct if it
does not contain the COLLAPSE clause.
This also fixes a bug where the associated clause was never cleared
after it was set.
Fixes #144178
Commit: 8584abb05a84d3bf4e84cdfe4154d7ade8bdfd04
https://github.com/llvm/llvm-project/commit/8584abb05a84d3bf4e84cdfe4154d7ade8bdfd04
Author: Frank Schlimbach <frank.schlimbach at intel.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
A mlir/test/Target/SPIRV/lit.local.cfg
R mlir/test/lit.local.cfg
Log Message:
-----------
[mlir] mlir/test/lit.local.cfg -> mlir/test/Target/SPIRV/lit.local.cfg (#144685)
renamed: mlir/test/lit.local.cfg -> mlir/test/Target/SPIRV/lit.local.cfg
Commit: 68471d29eed2c49f9b439e505b3f24d387d54f97
https://github.com/llvm/llvm-project/commit/68471d29eed2c49f9b439e505b3f24d387d54f97
Author: Timm Bäder <tbaeder at redhat.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M clang/lib/AST/ByteCode/Compiler.cpp
M clang/lib/AST/ByteCode/Compiler.h
M clang/lib/AST/ByteCode/Descriptor.cpp
M clang/lib/AST/ByteCode/Disasm.cpp
M clang/lib/AST/ByteCode/Floating.h
M clang/lib/AST/ByteCode/Integral.h
M clang/lib/AST/ByteCode/IntegralAP.h
M clang/lib/AST/ByteCode/Interp.cpp
M clang/lib/AST/ByteCode/Interp.h
M clang/lib/AST/ByteCode/InterpBuiltin.cpp
M clang/lib/AST/ByteCode/InterpBuiltinBitCast.cpp
M clang/lib/AST/ByteCode/InterpState.h
M clang/lib/AST/ByteCode/Opcodes.td
M clang/lib/AST/ByteCode/PrimType.h
M clang/lib/AST/ByteCode/Program.h
M clang/test/AST/ByteCode/builtin-bit-cast-long-double.cpp
M clang/test/AST/ByteCode/builtin-functions.cpp
Log Message:
-----------
Revert "Reapply "[clang][bytecode] Allocate IntegralAP and Floating types usi… (#144676)"
This reverts commit 7c15edb306932e41c159f3d69c161ed0d89d47b7.
This still breaks clang-armv8-quick:
https://lab.llvm.org/buildbot/#/builders/154/builds/17587
Commit: 6729da647afa2b0ee040ccd4f06153e45d6ca738
https://github.com/llvm/llvm-project/commit/6729da647afa2b0ee040ccd4f06153e45d6ca738
Author: Kunwar Grover <groverkss at gmail.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M mlir/include/mlir/Dialect/AMDGPU/Transforms/Passes.h
M mlir/lib/Dialect/AMDGPU/Transforms/EmulateAtomics.cpp
M mlir/lib/Dialect/AMDGPU/Transforms/ResolveStridedMetadata.cpp
M mlir/lib/Dialect/AMDGPU/Transforms/TransferReadToLoad.cpp
Log Message:
-----------
[mlir][amdgpu][nfc] Add PatternBenefit to populate methods (#144663)
Commit: c4d99704e22097703c57ee67baea96fdabfd68ab
https://github.com/llvm/llvm-project/commit/c4d99704e22097703c57ee67baea96fdabfd68ab
Author: Garvit Gupta <quic_garvgupt at quicinc.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M clang/docs/Toolchain.rst
M clang/include/clang/Basic/DiagnosticDriverKinds.td
M clang/lib/Driver/ToolChains/BareMetal.cpp
M clang/lib/Driver/ToolChains/BareMetal.h
R clang/test/Driver/Inputs/basic_aarch64_gcc_tree/aarch64-none-elf/include/c++/8.2.1/.keep
R clang/test/Driver/Inputs/basic_aarch64_gcc_tree/aarch64-none-elf/lib/.keep
R clang/test/Driver/Inputs/basic_aarch64_gcc_tree/aarch64-none-elf/lib/crt0.o
R clang/test/Driver/Inputs/basic_aarch64_gcc_tree/bin/aarch64-none-elf-ld
R clang/test/Driver/Inputs/basic_aarch64_gcc_tree/lib/gcc/aarch64-none-elf/8.2.1/crtbegin.o
R clang/test/Driver/Inputs/basic_aarch64_gcc_tree/lib/gcc/aarch64-none-elf/8.2.1/crtend.o
R clang/test/Driver/Inputs/basic_aarch64_nogcc_tree/aarch64-none-elf/lib/crt0.o
R clang/test/Driver/Inputs/basic_aarch64_nogcc_tree/aarch64-none-elf/lib/crtbegin.o
R clang/test/Driver/Inputs/basic_aarch64_nogcc_tree/aarch64-none-elf/lib/crtend.o
R clang/test/Driver/Inputs/basic_aarch64_nogcc_tree/bin/aarch64-none-elf-ld
R clang/test/Driver/Inputs/basic_arm_gcc_tree/armv6m-none-eabi/include/c++/8.2.1/.keep
R clang/test/Driver/Inputs/basic_arm_gcc_tree/armv6m-none-eabi/lib/.keep
R clang/test/Driver/Inputs/basic_arm_gcc_tree/armv6m-none-eabi/lib/crt0.o
R clang/test/Driver/Inputs/basic_arm_gcc_tree/bin/armv6m-none-eabi-ld
R clang/test/Driver/Inputs/basic_arm_gcc_tree/lib/gcc/armv6m-none-eabi/8.2.1/crtbegin.o
R clang/test/Driver/Inputs/basic_arm_gcc_tree/lib/gcc/armv6m-none-eabi/8.2.1/crtend.o
R clang/test/Driver/Inputs/basic_arm_nogcc_tree/armv6m-none-eabi/lib/crt0.o
R clang/test/Driver/Inputs/basic_arm_nogcc_tree/armv6m-none-eabi/lib/crtbegin.o
R clang/test/Driver/Inputs/basic_arm_nogcc_tree/armv6m-none-eabi/lib/crtend.o
R clang/test/Driver/Inputs/basic_arm_nogcc_tree/bin/armv6m-none-eabi-ld
R clang/test/Driver/aarch64-gnutools.c
R clang/test/Driver/aarch64-toolchain-extra.c
R clang/test/Driver/aarch64-toolchain.c
R clang/test/Driver/arm-gnutools.c
R clang/test/Driver/arm-toolchain-extra.c
R clang/test/Driver/arm-toolchain.c
M clang/test/Driver/baremetal.cpp
R clang/test/Driver/check-no-multlib-warning.c
Log Message:
-----------
Revert "Reland [Driver] Add support for GCC installation detection in… (#144684)
… Baremetal toolchain (#144640)"
This reverts commit 45ea46c44636094e9fcdbbeabfd11f9d0fad5e38.
Commit: 1f34d68c4f086e7ea6ef9a529f9606476b38bbbb
https://github.com/llvm/llvm-project/commit/1f34d68c4f086e7ea6ef9a529f9606476b38bbbb
Author: Tobias Stadler <mail at stadler-tobias.de>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M llvm/docs/CommandGuide/llvm-opt-report.rst
M llvm/docs/Remarks.rst
M llvm/include/llvm/Remarks/RemarkFormat.h
M llvm/include/llvm/Remarks/RemarkParser.h
M llvm/include/llvm/Remarks/YAMLRemarkSerializer.h
M llvm/lib/Remarks/BitstreamRemarkParser.cpp
M llvm/lib/Remarks/BitstreamRemarkParser.h
M llvm/lib/Remarks/RemarkFormat.cpp
M llvm/lib/Remarks/RemarkLinker.cpp
M llvm/lib/Remarks/RemarkParser.cpp
M llvm/lib/Remarks/RemarkSerializer.cpp
M llvm/lib/Remarks/RemarkStreamer.cpp
M llvm/lib/Remarks/YAMLRemarkParser.cpp
M llvm/lib/Remarks/YAMLRemarkParser.h
M llvm/lib/Remarks/YAMLRemarkSerializer.cpp
M llvm/test/CodeGen/X86/remarks-section.ll
M llvm/unittests/Remarks/RemarksLinkingTest.cpp
M llvm/unittests/Remarks/YAMLRemarksParsingTest.cpp
M llvm/unittests/Remarks/YAMLRemarksSerializerTest.cpp
Log Message:
-----------
[Remarks] Remove yaml-strtab format (#144527)
Background: The yaml-strtab format looks just like the yaml format,
except that the values in the key/value pairs of the remarks are
deduplicated and replaced by indices into a string table (see removed
test cases for examples). The motivation behind this format was to
reduce size of the remarks files. However, it was quickly superseded by
the bitstream format.
Therefore, remove the yaml-strtab format, as it doesn't have a good
usecase anymore:
- It isn't particularly efficient
- It isn't human-readable
- It isn't straightforward to parse in external tools that can't use the
remarks library. We don't even support it in opt-viewer.
llvm-remarkutil is also missing options to parse/convert yaml-strtab, so
the chance that anyone is actually using this format is low.
Commit: 671caef379c603d2bcc428a00e3535b230162941
https://github.com/llvm/llvm-project/commit/671caef379c603d2bcc428a00e3535b230162941
Author: Jack Styles <jack.styles at arm.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M flang/lib/Semantics/resolve-directives.cpp
M flang/test/Semantics/OpenMP/allocate-align01.f90
M flang/test/Semantics/OpenMP/allocate01.f90
M flang/test/Semantics/OpenMP/allocate02.f90
M flang/test/Semantics/OpenMP/allocate03.f90
M flang/test/Semantics/OpenMP/allocate05.f90
M flang/test/Semantics/OpenMP/allocate06.f90
M flang/test/Semantics/OpenMP/allocate09.f90
M flang/test/Semantics/OpenMP/clause-validity01.f90
M flang/test/Semantics/OpenMP/deprecation.f90
M flang/test/Semantics/OpenMP/flush02.f90
M flang/test/Semantics/OpenMP/nested-barrier.f90
M flang/test/Semantics/OpenMP/nested-master.f90
M flang/test/Semantics/OpenMP/nested-teams.f90
M flang/test/Semantics/OpenMP/ordered-simd.f90
M flang/test/Semantics/OpenMP/parallel-master-goto.f90
Log Message:
-----------
[Flang][OpenMP] Update relevant warnings to emit when OMP >= v5.2 (#144492)
There has been a number of deprecation warnings that have been added to
Flang, however these features are only deprecated when the OpenMP
Version being used is 5.2 or later. Previously, flang did not consider
the version with the warnings so would always be emitted.
Flang now ensures warnings are emitted for the appropriate version of
OpenMP, and tests are updated to reflect this change.
Commit: fda6b751f1b1356e65816f85fbc5b98e78337940
https://github.com/llvm/llvm-project/commit/fda6b751f1b1356e65816f85fbc5b98e78337940
Author: Eric Fiselier <eric at efcs.ca>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M .github/workflows/libcxx-restart-preempted-jobs.yaml
Log Message:
-----------
Fix libc++ restarter job.
A while ago, the test workflow was updated with a new preemption regex,
however it was only applied to the test job, and not the job
that's actually restarting the failed libc++ test runs.
This fix should correct the issue and get the restarter working
again.
Commit: bdac9580f3bc341ccbeeb743ecca656756f5aaec
https://github.com/llvm/llvm-project/commit/bdac9580f3bc341ccbeeb743ecca656756f5aaec
Author: Mircea Trofin <mtrofin at google.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M llvm/include/llvm/Transforms/Scalar/JumpThreading.h
M llvm/lib/Transforms/Scalar/JumpThreading.cpp
Log Message:
-----------
[nfc][jt] Drop `std::optional` pointers (#144548)
The `std::optional` didn't add any semantics that couldn't be modeled with the pointers being `nullptr`.
Commit: c5613dc8635000bc0e8396b8156d5639195776ab
https://github.com/llvm/llvm-project/commit/c5613dc8635000bc0e8396b8156d5639195776ab
Author: lorenzo chelini <l.chelini at icloud.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M mlir/lib/Conversion/GPUToNVVM/LowerGpuOpsToNVVMOps.cpp
M mlir/test/Conversion/GPUToNVVM/gpu-to-nvvm.mlir
M mlir/test/Integration/GPU/CUDA/dump-ptx.mlir
Log Message:
-----------
[MLIR] Mark LLVM::FMAOp as legal (#144671)
Mark LLVM::FMAOp as legal in configureGpuToNVVMConversionLegality, since
we can handle intrinsic lowering in the NVPTX backend and emit
fma.rn.f32.
Commit: 1d6f1029f7e8cf5468309078da3e85201844b625
https://github.com/llvm/llvm-project/commit/1d6f1029f7e8cf5468309078da3e85201844b625
Author: Sergei Lebedev <185856+superbobry at users.noreply.github.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M mlir/python/mlir/_mlir_libs/_mlir/ir.pyi
Log Message:
-----------
[mlir] [python] Fixed the return type of `MemRefType.get_strides_and_offset` (#144523)
Previously, the return type for `offset` was `list[int]`, which clearly
is not right.
Commit: 9db7502d229b48817521429c2a5d3fb84543fdf9
https://github.com/llvm/llvm-project/commit/9db7502d229b48817521429c2a5d3fb84543fdf9
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M libcxx/include/__iterator/iterator_traits.h
Log Message:
-----------
[libc++] Move __has_iterator_typedefs to the up-to-C++17 implementation of iterator_traits (#144265)
`__has_iterator_typedefs` is only used in the up-to-C++17 implementation
of `type_traits`. To make that clearer the struct is moved into that
code block.
Commit: 40d2f392106f43a60eea79f433b47a5ce44fc4a4
https://github.com/llvm/llvm-project/commit/40d2f392106f43a60eea79f433b47a5ce44fc4a4
Author: Akira Hatanaka <ahatanak at gmail.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Sema/SemaObjC.h
M clang/lib/Sema/SemaCast.cpp
M clang/lib/Sema/SemaExprObjC.cpp
M clang/test/SemaObjCXX/arc-type-conversion.mm
Log Message:
-----------
[Sema][ObjC] Loosen restrictions on reinterpret_cast involving indirect ARC-managed pointers (#144458)
Allow using reinterpret_cast for conversions between indirect ARC
pointers and other pointer types.
rdar://152905399
Commit: ee070d08163ac09842d9bf0c1315f311df39faf1
https://github.com/llvm/llvm-project/commit/ee070d08163ac09842d9bf0c1315f311df39faf1
Author: Andrei Golubev <andrey.golubev at intel.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M mlir/include/mlir/Dialect/Bufferization/IR/BufferizableOpInterface.h
M mlir/include/mlir/Dialect/Bufferization/IR/BufferizationOps.td
M mlir/include/mlir/Dialect/Bufferization/IR/BufferizationTypeInterfaces.h
M mlir/include/mlir/Dialect/Bufferization/IR/BufferizationTypeInterfaces.td
M mlir/include/mlir/Dialect/Bufferization/IR/UnstructuredControlFlow.h
M mlir/lib/Dialect/Arith/Transforms/BufferizableOpInterfaceImpl.cpp
M mlir/lib/Dialect/Bufferization/IR/BufferizableOpInterface.cpp
M mlir/lib/Dialect/Bufferization/IR/BufferizationDialect.cpp
M mlir/lib/Dialect/Bufferization/IR/BufferizationOps.cpp
A mlir/lib/Dialect/Bufferization/IR/BufferizationTypeInterfaces.cpp
M mlir/lib/Dialect/Bufferization/IR/CMakeLists.txt
M mlir/lib/Dialect/Bufferization/Transforms/Bufferize.cpp
M mlir/lib/Dialect/Bufferization/Transforms/FuncBufferizableOpInterfaceImpl.cpp
M mlir/lib/Dialect/Linalg/Transforms/ConvertToDestinationStyle.cpp
M mlir/lib/Dialect/SCF/Transforms/BufferizableOpInterfaceImpl.cpp
M mlir/lib/Dialect/Shape/Transforms/BufferizableOpInterfaceImpl.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/SparseGPUCodegen.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/SparseTensorCodegen.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/SparseTensorConversion.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/Utils/CodegenUtils.cpp
M mlir/lib/Dialect/Tensor/Transforms/BufferizableOpInterfaceImpl.cpp
M mlir/test/Dialect/Bufferization/Transforms/one-shot-bufferize.mlir
M mlir/test/lib/Dialect/Test/TestOpDefs.cpp
M mlir/test/lib/Dialect/Test/TestOps.h
M mlir/test/lib/Dialect/Test/TestOps.td
M mlir/test/lib/Dialect/Test/TestTypeDefs.td
M mlir/test/lib/Dialect/Test/TestTypes.cpp
Log Message:
-----------
[mlir][bufferization] Support custom types (1/N) (#142986)
Following the addition of TensorLike and BufferLike type interfaces (see
00eaff3e9c897c263a879416d0f151d7ca7eeaff), introduce minimal changes
required to bufferize a custom tensor operation into a custom buffer
operation.
To achieve this, new interface methods are added to TensorLike type
interface that abstract away the differences between existing (tensor ->
memref) and custom conversions.
The scope of the changes is intentionally limited (for example,
BufferizableOpInterface is untouched) in order to first understand the
basics and reach consensus design-wise.
---
Notable changes:
* mlir::bufferization::getBufferType() returns BufferLikeType (instead
of BaseMemRefType)
* ToTensorOp / ToBufferOp operate on TensorLikeType / BufferLikeType.
Operation argument "memref" renamed to "buffer"
* ToTensorOp's tensor type inferring builder is dropped (users now need
to provide the tensor type explicitly)
Commit: 6f4add34801e6ce02a5ebc96df4d1ca479125649
https://github.com/llvm/llvm-project/commit/6f4add34801e6ce02a5ebc96df4d1ca479125649
Author: Omair Javaid <omair.javaid at linaro.org>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M compiler-rt/lib/fuzzer/tests/CMakeLists.txt
Log Message:
-----------
[compiler-rt] [Fuzzer] Fix ARMv7 test link failure by linking unwinder (#144495)
compiler-rt/lib/fuzzer/tests build was failing on armv7, with undefined
references to unwinder symbols, such as __aeabi_unwind_cpp_pr0.
This occurs because the test is built with `-nostdlib++` but `libunwind`
is not explicitly linked to the final test executable.
This patch resolves the issue by adding CMake logic to explicitly link
the required unwinder to the fuzzer tests, inspired by the same solution
used to fix Scudo build failures by https://reviews.llvm.org/D142888.
Commit: 36038a1048b2aab87ed18f982e960c044ad97670
https://github.com/llvm/llvm-project/commit/36038a1048b2aab87ed18f982e960c044ad97670
Author: Orlando Cazalet-Hyams <orlando.hyams at sony.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M llvm/include/llvm/CodeGen/FunctionLoweringInfo.h
M llvm/lib/CodeGen/SelectionDAG/FastISel.cpp
M llvm/lib/CodeGen/SelectionDAG/FunctionLoweringInfo.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.h
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp
Log Message:
-----------
[RemoveDIs][NFC] Remove dbg intrinsic handling code from SelectionDAG ISel (#144702)
Commit: 8fc20bffabe7fe6cdc4a9ec1bc79202eba5f1f23
https://github.com/llvm/llvm-project/commit/8fc20bffabe7fe6cdc4a9ec1bc79202eba5f1f23
Author: Karlo Basioli <k.basioli at gmail.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
M utils/bazel/llvm-project-overlay/mlir/test/BUILD.bazel
Log Message:
-----------
Fix bazel build issue caused by 142986 (#144721)
Commit: e4c3b037bc7f5d9a8089de4c509d3e6034735891
https://github.com/llvm/llvm-project/commit/e4c3b037bc7f5d9a8089de4c509d3e6034735891
Author: amordo <iammorjj at gmail.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineMulDivRem.cpp
A llvm/test/Transforms/InstCombine/fmul-tan-cos.ll
Log Message:
-----------
[InstCombine] Fold `tan(x) * cos(x) => sin(x)` (#136319)
This patch enables folding `tan(x) * cos(x) -> sin(x)` under the `contract` flag.
Fixes https://github.com/llvm/llvm-project/issues/34950.
Commit: b53c1e4ee810ac21dab5d27413af1f31a6a4cbfa
https://github.com/llvm/llvm-project/commit/b53c1e4ee810ac21dab5d27413af1f31a6a4cbfa
Author: John Brawn <john.brawn at arm.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelDAGToDAG.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/AArch64/AArch64InstrInfo.td
A llvm/test/CodeGen/AArch64/vector-ldst-offset.ll
M llvm/test/CodeGen/AArch64/zext-to-tbl.ll
Log Message:
-----------
[AArch64] Add ISel for postindex ld1/st1 in big-endian (#144387)
When big-endian we need to use ld1/st1 for vector loads and stores so
that we get the elements in the correct order, but this prevents
postindex addressing from being used. Fix this by adding the appropriate
ISel patterns, plus the relevant changes in ISelLowering and
ISelDAGToDAG to cause postindex addressing to be used.
Commit: 3af4d4e8100fda2a7e1bd0dbbe0914b584ad08d6
https://github.com/llvm/llvm-project/commit/3af4d4e8100fda2a7e1bd0dbbe0914b584ad08d6
Author: Nathan Gauër <brioche at google.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M clang/lib/CodeGen/CGHLSLRuntime.cpp
M clang/test/CodeGenHLSL/semantics/SV_Position.ps.hlsl
A llvm/test/CodeGen/SPIRV/linkage/link-attribute-vk.ll
Log Message:
-----------
[HLSL][SPIR-V] Fix LinkageAttribute emission for BuiltIn (#144701)
BuiltIn variables were missing the visibility attribute, which caused
the Linkage capability to be emitted by the backend.
Commit: 8b8a3699dbdbb5d7865b0fe330d972c3fa380f1e
https://github.com/llvm/llvm-project/commit/8b8a3699dbdbb5d7865b0fe330d972c3fa380f1e
Author: Graham Hunter <graham.hunter at arm.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
A llvm/test/CodeGen/AArch64/sve2p1-vector-shuffles.ll
Log Message:
-----------
[AArch64] Use dupq (SVE2.1) for segmented lane splats (#144482)
Use the dupq instructions (when available) to represent a splat of the
same lane within each 128b segment of a wider fixed vector.
Commit: 9da9d32670ddbf610f0788236e78b2382037f00b
https://github.com/llvm/llvm-project/commit/9da9d32670ddbf610f0788236e78b2382037f00b
Author: Brox Chen <guochen2 at amd.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/SIInstructions.td
M llvm/lib/Target/AMDGPU/VOP3Instructions.td
M llvm/test/CodeGen/AMDGPU/idot4s.ll
M llvm/test/CodeGen/AMDGPU/idot4u.ll
M llvm/test/CodeGen/AMDGPU/llvm.frexp.ll
A llvm/test/CodeGen/AMDGPU/sext-in-reg-vector-shuffle.ll
M llvm/test/CodeGen/AMDGPU/vector-reduce-smax.ll
M llvm/test/CodeGen/AMDGPU/vector-reduce-smin.ll
Log Message:
-----------
[AMDGPU][True16][CodeGen] sext i16 inreg in true16 mode (#144024)
update sext pattern in true16, setting up proper vgpr16 reg use
Commit: 5d502aeddf2a5d93c3fd93103054261acf4d92f3
https://github.com/llvm/llvm-project/commit/5d502aeddf2a5d93c3fd93103054261acf4d92f3
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M flang/lib/Semantics/check-omp-structure.cpp
M flang/test/Semantics/OpenMP/atomic-update-only.f90
M flang/test/Semantics/OpenMP/atomic03.f90
M flang/test/Semantics/OpenMP/atomic04.f90
Log Message:
-----------
[flang][OpenMP] Clarify confusing error message (#144707)
The message "The atomic variable x should occur exactly once among the
arguments of the top-level [...] operator" was intended to convey that
(1) an atomic variable should be an argument, and (2) it should be
exactly one of the arguments. However, the wording turned out to be
sowing confusion instead.
Rework the corresponding check, and emit an individual error message for
each problematic situation:
- "atomic variable cannot be a proper subexpression of an argument",
- "atomic variable should appear as an argument",
- "atomic variable should be exactly one of the arguments".
Fixes https://github.com/llvm/llvm-project/issues/144599
Commit: b5aaf9d988ff2dc652c86271b181bf0497eb97cb
https://github.com/llvm/llvm-project/commit/b5aaf9d988ff2dc652c86271b181bf0497eb97cb
Author: Philip Reames <preames at rivosinc.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
M llvm/test/Transforms/InstCombine/vp-reverse.ll
Log Message:
-----------
[InstCombine] Implement vp.reverse reordering/elimination through binop/unop (#143963)
This simply copies the structure of the vector.reverse patterns from
just above, and reimplements them for the vp.reverse intrinsics when the
mask is all ones and the EVLs exactly match.
Its unfortunate that we have three different ways to represent a reverse
(shuffle, vector.reverse, and vp.reverse) but I don't see an obvious way
to remove any them because the semantics are slightly different.
This significantly improves vectorization in TSVC_2's s112 and s1112
loops when using EVL tail folding.
Commit: 0fa373c77ded203eddb973c79244c75ee5957eaf
https://github.com/llvm/llvm-project/commit/0fa373c77ded203eddb973c79244c75ee5957eaf
Author: Jon Roelofs <jonathan_roelofs at apple.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M llvm/lib/Transforms/Scalar/LowerMatrixIntrinsics.cpp
A llvm/test/Transforms/LowerMatrixIntrinsics/phi.ll
M llvm/test/Transforms/LowerMatrixIntrinsics/propagate-backwards-unsupported.ll
Log Message:
-----------
[Matrix] Propagate shape information through PHI insts (#141681)
... and split them as we lower them, avoiding several shuffles in the
process.
Commit: a2cee05449636c8e0d630b2ccdc71f2d422227a9
https://github.com/llvm/llvm-project/commit/a2cee05449636c8e0d630b2ccdc71f2d422227a9
Author: Christopher Ferris <cferris1000 at users.noreply.github.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M compiler-rt/lib/scudo/standalone/chunk.h
M compiler-rt/lib/scudo/standalone/combined.h
M compiler-rt/lib/scudo/standalone/report.cpp
M compiler-rt/lib/scudo/standalone/report.h
Log Message:
-----------
[scudo] Make report pointers const. (#144624)
Mark as many of the reportXX functions that take pointers const. This
avoid the need to use const_cast when calling these functions on an
already const pointer.
Fix reportHeaderCorruption calls where an argument was passed into an
append call that didn't use them.
Commit: 13510c07364dc3ac30f34e73c98ac8dc75e7efc7
https://github.com/llvm/llvm-project/commit/13510c07364dc3ac30f34e73c98ac8dc75e7efc7
Author: Peng Liu <winner245 at hotmail.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M libcxx/docs/FeatureTestMacroTable.rst
M libcxx/include/list
M libcxx/include/version
M libcxx/test/std/containers/sequences/list/compare.pass.cpp
M libcxx/test/std/containers/sequences/list/compare.three_way.pass.cpp
M libcxx/test/std/containers/sequences/list/get_allocator.pass.cpp
M libcxx/test/std/containers/sequences/list/incomplete_type.pass.cpp
M libcxx/test/std/containers/sequences/list/iterators.pass.cpp
M libcxx/test/std/containers/sequences/list/list.capacity/empty.pass.cpp
M libcxx/test/std/containers/sequences/list/list.capacity/max_size.pass.cpp
M libcxx/test/std/containers/sequences/list/list.capacity/resize_size.pass.cpp
M libcxx/test/std/containers/sequences/list/list.capacity/resize_size_value.pass.cpp
M libcxx/test/std/containers/sequences/list/list.capacity/size.pass.cpp
M libcxx/test/std/containers/sequences/list/list.cons/assign_copy.pass.cpp
M libcxx/test/std/containers/sequences/list/list.cons/assign_initializer_list.pass.cpp
M libcxx/test/std/containers/sequences/list/list.cons/assign_move.pass.cpp
M libcxx/test/std/containers/sequences/list/list.cons/copy.pass.cpp
M libcxx/test/std/containers/sequences/list/list.cons/copy_alloc.pass.cpp
M libcxx/test/std/containers/sequences/list/list.cons/default.pass.cpp
M libcxx/test/std/containers/sequences/list/list.cons/default_stack_alloc.pass.cpp
M libcxx/test/std/containers/sequences/list/list.cons/from_range.pass.cpp
M libcxx/test/std/containers/sequences/list/list.cons/initializer_list.pass.cpp
M libcxx/test/std/containers/sequences/list/list.cons/initializer_list_alloc.pass.cpp
M libcxx/test/std/containers/sequences/list/list.cons/input_iterator.pass.cpp
M libcxx/test/std/containers/sequences/list/list.cons/move.pass.cpp
M libcxx/test/std/containers/sequences/list/list.cons/move_alloc.pass.cpp
M libcxx/test/std/containers/sequences/list/list.cons/op_equal_initializer_list.pass.cpp
M libcxx/test/std/containers/sequences/list/list.cons/size_type.pass.cpp
M libcxx/test/std/containers/sequences/list/list.cons/size_value_alloc.pass.cpp
M libcxx/test/std/containers/sequences/list/list.erasure/erase.pass.cpp
M libcxx/test/std/containers/sequences/list/list.erasure/erase_if.pass.cpp
M libcxx/test/std/containers/sequences/list/list.modifiers/append_range.pass.cpp
M libcxx/test/std/containers/sequences/list/list.modifiers/assign_range.pass.cpp
M libcxx/test/std/containers/sequences/list/list.modifiers/clear.pass.cpp
M libcxx/test/std/containers/sequences/list/list.modifiers/emplace.pass.cpp
M libcxx/test/std/containers/sequences/list/list.modifiers/emplace_back.pass.cpp
M libcxx/test/std/containers/sequences/list/list.modifiers/emplace_front.pass.cpp
M libcxx/test/std/containers/sequences/list/list.modifiers/erase_iter.pass.cpp
M libcxx/test/std/containers/sequences/list/list.modifiers/erase_iter_iter.pass.cpp
M libcxx/test/std/containers/sequences/list/list.modifiers/insert_iter_initializer_list.pass.cpp
M libcxx/test/std/containers/sequences/list/list.modifiers/insert_iter_iter_iter.pass.cpp
M libcxx/test/std/containers/sequences/list/list.modifiers/insert_iter_rvalue.pass.cpp
M libcxx/test/std/containers/sequences/list/list.modifiers/insert_iter_size_value.pass.cpp
M libcxx/test/std/containers/sequences/list/list.modifiers/insert_iter_value.pass.cpp
M libcxx/test/std/containers/sequences/list/list.modifiers/insert_range.pass.cpp
M libcxx/test/std/containers/sequences/list/list.modifiers/pop_back.pass.cpp
M libcxx/test/std/containers/sequences/list/list.modifiers/pop_front.pass.cpp
M libcxx/test/std/containers/sequences/list/list.modifiers/prepend_range.pass.cpp
M libcxx/test/std/containers/sequences/list/list.modifiers/push_back.pass.cpp
M libcxx/test/std/containers/sequences/list/list.modifiers/push_back_rvalue.pass.cpp
M libcxx/test/std/containers/sequences/list/list.modifiers/push_front.pass.cpp
M libcxx/test/std/containers/sequences/list/list.modifiers/push_front_rvalue.pass.cpp
M libcxx/test/std/containers/sequences/list/list.ops/merge.pass.cpp
M libcxx/test/std/containers/sequences/list/list.ops/merge_comp.pass.cpp
M libcxx/test/std/containers/sequences/list/list.ops/remove.pass.cpp
M libcxx/test/std/containers/sequences/list/list.ops/remove_if.pass.cpp
M libcxx/test/std/containers/sequences/list/list.ops/reverse.pass.cpp
M libcxx/test/std/containers/sequences/list/list.ops/sort.pass.cpp
M libcxx/test/std/containers/sequences/list/list.ops/sort_comp.pass.cpp
M libcxx/test/std/containers/sequences/list/list.ops/splice_pos_list.pass.cpp
M libcxx/test/std/containers/sequences/list/list.ops/splice_pos_list_iter.pass.cpp
M libcxx/test/std/containers/sequences/list/list.ops/splice_pos_list_iter_iter.pass.cpp
M libcxx/test/std/containers/sequences/list/list.ops/unique.pass.cpp
M libcxx/test/std/containers/sequences/list/list.ops/unique_pred.pass.cpp
M libcxx/test/std/containers/sequences/list/list.special/swap.pass.cpp
M libcxx/test/std/containers/sequences/list/list.special/swap_noexcept.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/list.version.compile.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/version.version.compile.pass.cpp
M libcxx/test/support/min_allocator.h
M libcxx/utils/generate_feature_test_macro_components.py
Log Message:
-----------
[libc++] Make list constexpr as part of P3372R3 (#129799)
This patch makes `std::list` constexpr as part of P3372R3.
Fixes #128659.
Commit: 6d785ca4218b18e77e39320bea7f8973c3ea2764
https://github.com/llvm/llvm-project/commit/6d785ca4218b18e77e39320bea7f8973c3ea2764
Author: Ying Yi <ying.yi at sony.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M clang/test/PCH/ignored-pch.c
Log Message:
-----------
[Clang] Fix the clang/test/PCH/ignored-pch.c test. (#144737)
Change the test to check the exit status of the 'ls' command line
(instead of error message) since the error message is different when
running 'ls' command on the different Host machine.
Commit: 2a41350aabd8b7d3e406141a55ce0bb6f5e70a76
https://github.com/llvm/llvm-project/commit/2a41350aabd8b7d3e406141a55ce0bb6f5e70a76
Author: Karlo Basioli <k.basioli at gmail.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
M utils/bazel/llvm-project-overlay/mlir/test/BUILD.bazel
Log Message:
-----------
Fix bazel build issue caused by #142986 second attempt (#144721 didnt… (#144743)
… cover everything)
Commit: dd40c460c42d075c47f0d1a6d83f129655eafe10
https://github.com/llvm/llvm-project/commit/dd40c460c42d075c47f0d1a6d83f129655eafe10
Author: Peng Liu <winner245 at hotmail.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M libcxx/include/forward_list
Log Message:
-----------
[libc++] Clean up casts in std::forward_list (#130310)
The patch removes unnecessary casts to `void*` pointers, inline some
casts, and eliminates an identity cast.
Commit: 9827440f1e723423baf4c235e844eb8ac48a8f97
https://github.com/llvm/llvm-project/commit/9827440f1e723423baf4c235e844eb8ac48a8f97
Author: Peng Liu <winner245 at hotmail.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M libcxx/docs/ReleaseNotes/21.rst
M libcxx/include/__algorithm/for_each.h
M libcxx/include/__algorithm/for_each_n.h
M libcxx/include/__algorithm/ranges_for_each.h
M libcxx/include/__algorithm/ranges_for_each_n.h
M libcxx/include/experimental/iterator
M libcxx/include/mutex
M libcxx/include/shared_mutex
M libcxx/test/benchmarks/algorithms/nonmodifying/for_each.bench.cpp
M libcxx/test/benchmarks/algorithms/nonmodifying/for_each_n.bench.cpp
M libcxx/test/std/algorithms/alg.nonmodifying/alg.foreach/ranges.for_each.pass.cpp
M libcxx/test/std/algorithms/alg.nonmodifying/alg.foreach/ranges.for_each_n.pass.cpp
Log Message:
-----------
[libc++] Optimize ranges::{for_each, for_each_n} for segmented iterators (#132896)
Previously, the segmented iterator optimization was limited to `std::{for_each, for_each_n}`. This patch
extends the optimization to `std::ranges::for_each` and `std::ranges::for_each_n`, ensuring consistent
optimizations across these algorithms. This patch first generalizes the `std` algorithms by introducing
a `Projection` parameter, which is set to `__identity` for the `std` algorithms. Then we let the `ranges`
algorithms to directly call their `std` counterparts with a general `__proj` argument. Benchmarks
demonstrate performance improvements of up to 21.4x for ``std::deque::iterator`` and 22.3x for
``join_view`` of ``vector<vector<char>>``.
Addresses a subtask of #102817.
Commit: 00189211486d052b25429f11790ef5486cf9d3ce
https://github.com/llvm/llvm-project/commit/00189211486d052b25429f11790ef5486cf9d3ce
Author: woruyu <99597449+woruyu at users.noreply.github.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
A llvm/test/CodeGen/X86/fold-masked-merge-demorgan.ll
Log Message:
-----------
[DAG] add (~a | x) & (a | y) -> (a & (x ^ y)) ^y for foldMaskedMerge (#144342)
### Summary
This PR resolves https://github.com/llvm/llvm-project/issues/143864
Add (~a | x) & (a | y) -> (a & (x ^ y)) ^y for foldMaskedMerge func
using SDPatternMatch
aftering adding this pattern, run ```ninja check-llvm-codegen```, all
other cases remain unchanged, so I add a
testcase(fold-masked-merge-demorgan.ll) for it
---------
Co-authored-by: Simon Pilgrim <llvm-dev at redking.me.uk>
Commit: fe3933da15b5bc635bce156f1f8d11a784316a07
https://github.com/llvm/llvm-project/commit/fe3933da15b5bc635bce156f1f8d11a784316a07
Author: Yang Bai <baiyang0132 at gmail.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
M mlir/test/Dialect/Affine/constant-fold.mlir
M mlir/test/Dialect/Linalg/mesh-spmdization.mlir
M mlir/test/Dialect/Mesh/spmdization.mlir
M mlir/test/Dialect/Tensor/mesh-spmdization.mlir
M mlir/test/Dialect/Tosa/constant_folding.mlir
M mlir/test/Dialect/Vector/constant-fold.mlir
A mlir/test/Dialect/Vector/single-fold.mlir
M mlir/test/Transforms/constant-fold-debuginfo.mlir
M mlir/test/Transforms/constant-fold.mlir
M mlir/test/lib/Transforms/CMakeLists.txt
R mlir/test/lib/Transforms/TestConstantFold.cpp
A mlir/test/lib/Transforms/TestSingleFold.cpp
M mlir/tools/mlir-opt/mlir-opt.cpp
Log Message:
-----------
[mlir][vector] Support complete folding in single pass for vector.insert/vector.extract (#142124)
### Description
This patch improves the folding efficiency of `vector.insert` and
`vector.extract` operations by not returning early after successfully
converting dynamic indices to static indices.
This PR also renames the test pass `TestConstantFold` to
`TestSingleFold` and adds comprehensive documentation explaining the
single-pass folding behavior.
### Motivation
Since the `OpBuilder::createOrFold` function only calls `fold` **once**,
the current `fold` methods of `vector.insert` and `vector.extract` may
leave the op in a state that can be folded further. For example,
consider the following un-folded IR:
```
%v1 = vector.insert %e1, %v0 [0] : f32 into vector<128xf32>
%c0 = arith.constant 0 : index
%e2 = vector.extract %v1[%c0] : f32 from vector<128xf32>
```
If we use `createOrFold` to create the `vector.extract` op, then the
result will be:
```
%v1 = vector.insert %e1, %v0 [127] : f32 into vector<128xf32>
%e2 = vector.extract %v1[0] : f32 from vector<128xf32>
```
But this is not the optimal result. `createOrFold` should have returned
`%e1`.
The reason is that the execution of fold returns immediately after
`extractInsertFoldConstantOp`, causing subsequent folding logics to be
skipped.
---------
Co-authored-by: Yang Bai <yangb at nvidia.com>
Commit: 4084ffcf1e69b962e864aa138bb54dabbcec912f
https://github.com/llvm/llvm-project/commit/4084ffcf1e69b962e864aa138bb54dabbcec912f
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M flang/include/flang/Semantics/dump-expr.h
M flang/lib/Semantics/dump-expr.cpp
Log Message:
-----------
[flang] Show types in DumpEvExpr (#143743)
When dumping evaluate::Expr, show type names which contain a lot of
useful information.
For example show
```
expr <Fortran::evaluate::SomeType> {
expr <Fortran::evaluate::SomeKind<Fortran::common::TypeCategory::Integer>> {
expr <Fortran::evaluate::Type<Fortran::common::TypeCategory::Integer, 4>> {
...
```
instead of
```
expr T {
expr T {
expr T {
...
```
Commit: 2a8c65e983b3f4e1c83d8028d354f7bacc149015
https://github.com/llvm/llvm-project/commit/2a8c65e983b3f4e1c83d8028d354f7bacc149015
Author: Alexis Engelke <engelke at in.tum.de>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M llvm/lib/CodeGen/MachineFunction.cpp
Log Message:
-----------
[CodeGen][NFC] Fix quadratic c-t for large jump tables
Deleting a basic block removes all references from jump tables, which
is O(n). When freeing a MachineFunction, all basic blocks are deleted
before the jump tables, causing O(n^2) runtime. Fix this by deallocating
the jump table first.
Test case generator:
import sys
n = int(sys.argv[1])
print("define void @f(i64 %c, ptr %p) {")
print(" switch i64 %c, label %d [")
for i in range(n):
print(f" i64 {i}, label %h{i}")
print(f" ]")
for i in range(n):
print(f'h{i}:')
print(f' store i64 {i*i}, ptr %p')
print(f' ret void')
print('d:')
print(' ret void')
print('}')
Improvement at 5000 entries:
Benchmark 1: ./llc.pre -filetype=obj -O0 <switch5k.bc
Time (mean ± σ): 49.7 ms ± 1.0 ms
Range (min … max): 48.0 ms … 52.1 ms 57 runs
Benchmark 2: ./llc.post -filetype=obj -O0 <switch5k.bc
Time (mean ± σ): 39.4 ms ± 0.8 ms
Range (min … max): 37.1 ms … 41.1 ms 72 runs
Summary
./llc.post -filetype=obj -O0 <switch5k.bc ran
1.26 ± 0.04 times faster than ./llc.pre -filetype=obj -O0 <switch5k.bc
Improvement at 20000 entries:
Benchmark 1: ./llc.pre -filetype=obj -O0 <switch20k.bc
Time (mean ± σ): 281.7 ms ± 1.0 ms
Range (min … max): 280.2 ms … 283.0 ms 10 runs
Benchmark 2: ./llc.post -filetype=obj -O0 <switch20k.bc
Time (mean ± σ): 123.9 ms ± 1.5 ms
Range (min … max): 121.4 ms … 129.2 ms 23 runs
Summary
./llc.post -filetype=obj -O0 <switch20k.bc ran
2.27 ± 0.03 times faster than ./llc.pre -filetype=obj -O0 <switch20k.bc
Pull Request: https://github.com/llvm/llvm-project/pull/144108
Commit: 77bc25485135b8a8cb2427910a8850fbc4e4be09
https://github.com/llvm/llvm-project/commit/77bc25485135b8a8cb2427910a8850fbc4e4be09
Author: John Brawn <john.brawn at arm.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
Log Message:
-----------
[AArch64] Fix build failure with -Werror (#144749)
PR#144387 caused buildbot failures with -Werror due to a comparison
between signed and unsigned types. Fix this with an explicit cast.
Commit: 298f1c276f4f9c18b25a79ffe6e619e89c5fbf7e
https://github.com/llvm/llvm-project/commit/298f1c276f4f9c18b25a79ffe6e619e89c5fbf7e
Author: Artem Belevich <tra at google.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M clang/lib/Headers/__clang_cuda_intrinsics.h
Log Message:
-----------
Revert "Add missing intrinsics to cuda headers" (#144755)
Reverts llvm/llvm-project#143664
as it breaks CUDA compilation.
Commit: d9f7979a63ceac88727632ecfd522c073288b6c1
https://github.com/llvm/llvm-project/commit/d9f7979a63ceac88727632ecfd522c073288b6c1
Author: Justin King <jcking at google.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
A compiler-rt/test/sanitizer_common/TestCases/Linux/free_aligned_sized.c
A compiler-rt/test/sanitizer_common/TestCases/Linux/free_sized.c
Log Message:
-----------
sanitizer_common: add unsupported test for free_sized and free_aligned_sized from C23 (#144727)
Signed-off-by: Justin King <jcking at google.com>
Commit: 82acd8c377e9ed267195afdbde16eedebabc648c
https://github.com/llvm/llvm-project/commit/82acd8c377e9ed267195afdbde16eedebabc648c
Author: Lei Huang <lei at ca.ibm.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M llvm/lib/Target/PowerPC/PPCInstrInfo.cpp
M llvm/lib/Target/PowerPC/PPCInstrInfo.h
M llvm/lib/Target/PowerPC/PPCInstrMMA.td
M llvm/lib/Target/PowerPC/PPCRegisterInfo.cpp
M llvm/test/CodeGen/PowerPC/dmr-spill.ll
A llvm/test/CodeGen/PowerPC/dmrp-spill.ll
Log Message:
-----------
[PowerPC] Add code to spill and restore DMRp registers (#142443)
Commit: 835d3034fe96931cf907537b51b9cdd87b59d3ad
https://github.com/llvm/llvm-project/commit/835d3034fe96931cf907537b51b9cdd87b59d3ad
Author: Tomer Shafir <tomer.shafir8 at gmail.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
A llvm/test/CodeGen/AArch64/arm64-zero-cycle-regmov-gpr32.ll
R llvm/test/CodeGen/AArch64/arm64-zero-cycle-regmov.ll
Log Message:
-----------
[AArch64] improve zero-cycle regmov test (#143680)
- Add a `gpr32` suffix to test name to denote the specific register
class being checked
- Expand `-mtriple=arm64-apple-ios` to `-march=arm64` to broaden the
test context to the generic architecture, as the specific triple is not
required
- Port `bl` match to Linux too via the regex: `{{_?foo}}`
- Advance `-mcpu=cyclone` to the newer M series major `-mcpu=apple-m1`
- Use `-mcpu` so that `-mattr=-zcm` has a real effect
- Add a test that generic arm64 doesn't optimize for ZCM
- Distinguish 4 different assembly layouts: NOTCPU, CPU, NOTATTR, ATTR
- Fix broken test logic, for example: `; NOT: mov [[REG2:w[0-9]+]], w3`
matched `mov w1, w3` then `REG2` captured `w1` but then `; NOT: mov w1,
[[REG2]]` matched by prefix `mov, w1, w19` even though it should have
matched `mov w1, w1`. This change adds explicit matches for all of the
generated copies.
Commit: 6f4e4ea17745d1414519651eb4067ce14031ea93
https://github.com/llvm/llvm-project/commit/6f4e4ea17745d1414519651eb4067ce14031ea93
Author: sribee8 <sriya.pratipati at gmail.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M libc/src/__support/HashTable/CMakeLists.txt
M libc/src/__support/HashTable/randomness.h
M libc/src/__support/OSUtil/linux/CMakeLists.txt
A libc/src/__support/OSUtil/linux/getrandom.h
M libc/src/sys/random/linux/getrandom.cpp
Log Message:
-----------
[libc] Internal getrandom implementation (#144427)
Implemented an internal getrandom to avoid calls to the public one in
table.h
---------
Co-authored-by: Sriya Pratipati <sriyap at google.com>
Commit: dfe4d44d8de645d151d3483272c1c1f80c27ab31
https://github.com/llvm/llvm-project/commit/dfe4d44d8de645d151d3483272c1c1f80c27ab31
Author: Arthur Eubanks <aeubanks at google.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlan.cpp
Log Message:
-----------
Revert "[VPlan] Remove unnecessary DomTreeUpdater flush (NFC)." (#144758)
This reverts commit 2e337349f436d75af112c081df5ec683871cbcc8.
Causes breakages internally, will post reproducer later.
Commit: 071a6feabd7aeec2c1239719f50f6912cf94d00a
https://github.com/llvm/llvm-project/commit/071a6feabd7aeec2c1239719f50f6912cf94d00a
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M llvm/include/llvm/Analysis/TargetTransformInfo.h
M llvm/include/llvm/Analysis/TargetTransformInfoImpl.h
M llvm/lib/Analysis/TargetTransformInfo.cpp
M llvm/lib/Target/PowerPC/PPCTargetTransformInfo.cpp
M llvm/lib/Target/PowerPC/PPCTargetTransformInfo.h
M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.h
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
Log Message:
-----------
[TTI] Remove PPC hasActiveVectorLength impl, simplify interface (NFC). (#142310)
PPCTTIImpl defines hasActiveVectorLength and also getVPMemoryOpCost, but
they appear unused (i.e. no changes to tests).
Remove them, as they complicate the interface for hasActiveVectorLength.
This simplifies the only use in LV as now no placeholder values need to
be passed.
PR: https://github.com/llvm/llvm-project/pull/142310
Commit: 3f3526f36d23eac8d099e8e887a924c94000bbfa
https://github.com/llvm/llvm-project/commit/3f3526f36d23eac8d099e8e887a924c94000bbfa
Author: zhijian lin <zhijian at ca.ibm.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M llvm/test/CodeGen/PowerPC/PR35812-neg-cmpxchg.ll
M llvm/test/CodeGen/PowerPC/all-atomics.ll
M llvm/test/CodeGen/PowerPC/loop-comment.ll
Log Message:
-----------
[NFC][PowerPC] pre-commit running the update_llc_test_checks.py for all-atomics.ll,loop-comment.ll etc (#144411)
Run the update_llc_test_checks.py for all-atomics.ll,loop-comment.ll
,PR35812-neg-cmpxchg.ll (Pre-commit patch for the
https://github.com/llvm/llvm-project/pull/144089)
Commit: 17f5b8b52a3552de1143efb42af6a94d47d8c7fd
https://github.com/llvm/llvm-project/commit/17f5b8b52a3552de1143efb42af6a94d47d8c7fd
Author: Andre Kuhlenschmidt <andre.kuhlenschmidt at gmail.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M flang/include/flang/Support/Fortran-features.h
M flang/lib/Frontend/CompilerInvocation.cpp
M flang/lib/Support/Fortran-features.cpp
Log Message:
-----------
[flang][driver] add ability to look up feature flags without setting them (#144559)
This just adds some convenience methods to feature control and rewrites
old code in terms of those methods. Also cleans up some names that I
just realize were overloads of another method.
Commit: 8c3fbaf0ee7322e948403d2234a7230bd6137c98
https://github.com/llvm/llvm-project/commit/8c3fbaf0ee7322e948403d2234a7230bd6137c98
Author: Walter J.T.V <81811777+eZWALT at users.noreply.github.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M clang/include/clang/AST/StmtOpenMP.h
M clang/lib/AST/StmtOpenMP.cpp
M clang/lib/Sema/SemaOpenMP.cpp
M clang/lib/Serialization/ASTReaderStmt.cpp
Log Message:
-----------
[Clang][OpenMP][LoopTransformations] Fix incorrect number of generated loops for Tile and Reverse directives (#140532)
This patch is closely related to #139293 and addresses an existing issue
in the loop transformation codebase. Specifically, it corrects the
handling of the `NumGeneratedLoops` variable in
`OMPLoopTransformationDirective` AST nodes and its inheritors (such as
OMPUnrollDirective, OMPTileDirective, etc.).
Previously, this variable was inaccurately set for certain
transformations like reverse or tile. While this did not lead to
functional bugs, since the value was only checked to determine whether
it was greater than zero or equal to zero, the inconsistency could
introduce problems when supporting more complex directives in the
future.
Commit: ab6beeca9ccc1968661eea27c1a55e8734f7437b
https://github.com/llvm/llvm-project/commit/ab6beeca9ccc1968661eea27c1a55e8734f7437b
Author: uthmanna <114300283+uthmanna at users.noreply.github.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M llvm/include/llvm/ProfileData/Coverage/CoverageMapping.h
M llvm/tools/llvm-cov/CoverageExporterJson.cpp
Log Message:
-----------
[llvm-cov] Export decision coverage to output json (#144335)
This commit adds decision coverage counts derived from MC/DC test vector execution to the JSON output of llvm-cov, as
discussed here: [Missing Decision Coverage (DC) in output
json](https://discourse.llvm.org/t/missing-decision-coverage-dc-in-output-json/86783)
with @evodius96
---------
Co-authored-by: uthmanna <andre.uthmann at vector.com>
Commit: ca9a09dbe679dbdd4d47cb7894977e04c3bb914e
https://github.com/llvm/llvm-project/commit/ca9a09dbe679dbdd4d47cb7894977e04c3bb914e
Author: Kazu Hirata <kazu at google.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M libcxx/docs/ABIGuarantees.rst
Log Message:
-----------
[libc++] Fix a typo in documentation (#144763)
Commit: a94eb27a29ef3aee5ccafc1d7bebee1c8efbaf38
https://github.com/llvm/llvm-project/commit/a94eb27a29ef3aee5ccafc1d7bebee1c8efbaf38
Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M llvm/lib/Analysis/HashRecognize.cpp
M llvm/test/Analysis/HashRecognize/cyclic-redundancy-check.ll
Log Message:
-----------
[HashRecognize] Fix big-endian CRC tables (#144754)
Big-endian CRC tables are incorrect due to the initial value of CRC in
genSarwateTable being hard-coded for CRC-8. 128 is the signed-min value
for CRC-8, but it should be generalized to APInt::getSignedMinValue. The
issue was found when writing CRC verification tests for llvm-test-suite.
Commit: f13b9e3643661ea2cda252c7e2c59ace036407c7
https://github.com/llvm/llvm-project/commit/f13b9e3643661ea2cda252c7e2c59ace036407c7
Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M llvm/include/llvm/Analysis/HashRecognize.h
M llvm/lib/Analysis/HashRecognize.cpp
Log Message:
-----------
[HashRecognize] Don't const-qualify Values in result (#144752)
Const-qualifying Values in the analysis result makes them unusable with
IRBuilder. The issue was discovered when attempting to use the result of
the analysis for a transform.
Commit: 156a64c585faf0870936b62ec85fae19ceb9ad3f
https://github.com/llvm/llvm-project/commit/156a64c585faf0870936b62ec85fae19ceb9ad3f
Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M llvm/lib/Analysis/HashRecognize.cpp
M llvm/test/Analysis/HashRecognize/cyclic-redundancy-check.ll
Log Message:
-----------
[HashRecognize] Tighten pre-conditions for analysis (#144757)
Exit early if the TC is not a byte-multiple, as optimization works by
dividing TC by 8. Also delay the SCEV TC query.
Commit: 88d250729eb00842a41c946632bcacf1af106f64
https://github.com/llvm/llvm-project/commit/88d250729eb00842a41c946632bcacf1af106f64
Author: Alan Phipps <a-phipps at ti.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M llvm/include/llvm/ProfileData/Coverage/CoverageMapping.h
M llvm/tools/llvm-cov/CoverageExporterJson.cpp
Log Message:
-----------
Revert "[llvm-cov] Export decision coverage to output json" (#144783)
Reverts llvm/llvm-project#144335
Need to resolve test failures
Commit: fb0651959b1b6ae64f84cf5840adc95923af991f
https://github.com/llvm/llvm-project/commit/fb0651959b1b6ae64f84cf5840adc95923af991f
Author: Jameson Nash <vtjnash at gmail.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/test/CodeGen/AArch64/trampoline.ll
Log Message:
-----------
[AArch64] fix trampoline implementation: actually use X15 (#143892)
A incorrect switch statement caused it to try to use X4 instead of X15
in #126743, which would have not worked.
Commit: c04fc5596ec8c197c75b92a086c31438bfb08faf
https://github.com/llvm/llvm-project/commit/c04fc5596ec8c197c75b92a086c31438bfb08faf
Author: Jameson Nash <vtjnash at gmail.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M llvm/lib/Transforms/Scalar/MemCpyOptimizer.cpp
M llvm/test/Transforms/MemCpyOpt/memcpy-memcpy-offset.ll
M llvm/test/Transforms/MemCpyOpt/variable-sized-memcpy-memcpy.ll
Log Message:
-----------
[MemCpyOpt] allow some undef contents overread in processMemCpyMemCpyDependence (#143745)
Allows memcpy to memcpy forwarding in cases where the second memcpy is
larger, but the overread is known to be undef, by shrinking the memcpy
size.
Refs https://github.com/llvm/llvm-project/pull/140954 which laid some of
the groundwork for this.
Commit: 67c52aacae2aa698eb1d31d81d2376bd77723d3a
https://github.com/llvm/llvm-project/commit/67c52aacae2aa698eb1d31d81d2376bd77723d3a
Author: Amr Hesham <amr96 at programmer.net>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenTypes.cpp
M clang/test/CIR/CodeGen/struct.c
Log Message:
-----------
[CIR] Upstream support for IncompleteArrayType (#144138)
This change adds the basic support for IncompleteArray
Issue https://github.com/llvm/llvm-project/issues/130197
Commit: d4b7c0d8b437f50ea254d814a1aeecf87a17be91
https://github.com/llvm/llvm-project/commit/d4b7c0d8b437f50ea254d814a1aeecf87a17be91
Author: Tobias Stadler <mail at stadler-tobias.de>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M llvm/include/llvm/Remarks/RemarkFormat.h
M llvm/include/llvm/Remarks/RemarkLinker.h
M llvm/lib/Remarks/RemarkFormat.cpp
M llvm/lib/Remarks/RemarkLinker.cpp
M llvm/lib/Remarks/RemarkParser.cpp
M llvm/lib/Remarks/RemarkSerializer.cpp
A llvm/test/tools/llvm-remarkutil/Inputs/broken-remark-magic.bitstream
M llvm/test/tools/llvm-remarkutil/annotation-count.test
A llvm/test/tools/llvm-remarkutil/broken-bitstream-remark-magic.test
M llvm/test/tools/llvm-remarkutil/empty-file.test
M llvm/test/tools/llvm-remarkutil/instruction-count.test
M llvm/test/tools/llvm-remarkutil/instruction-mix.test
M llvm/test/tools/llvm-remarkutil/size-diff/no-difference.test
M llvm/tools/llvm-remarkutil/RemarkUtilHelpers.h
M llvm/unittests/Remarks/RemarksLinkingTest.cpp
Log Message:
-----------
[Remarks] Auto-detect remark parser format (#144554)
Add remark format 'Auto', which performs automatic detection of the
remark format using the magic numbers at the beginning of the remarks
files.
The RemarkLinker already did something similar, so we streamlined this
and exposed this to llvm-remarkutil.
Commit: 22a69a266d8206b1585dd82d466cd96d01725a65
https://github.com/llvm/llvm-project/commit/22a69a266d8206b1585dd82d466cd96d01725a65
Author: Justin King <jcking at google.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M compiler-rt/lib/lsan/lsan_allocator.cpp
M compiler-rt/lib/lsan/lsan_allocator.h
M compiler-rt/lib/lsan/lsan_interceptors.cpp
M compiler-rt/lib/lsan/lsan_malloc_mac.cpp
M compiler-rt/lib/sanitizer_common/sanitizer_malloc_mac.inc
M compiler-rt/lib/sanitizer_common/sanitizer_platform_interceptors.h
M compiler-rt/test/sanitizer_common/TestCases/Linux/free_aligned_sized.c
M compiler-rt/test/sanitizer_common/TestCases/Linux/free_sized.c
Log Message:
-----------
lsan: Support free_sized and free_aligned_sized from C23 (#144604)
Adds support to LSan for `free_sized` and `free_aligned_sized` from C23.
Other sanitizers will be handled with their own separate PRs.
For https://github.com/llvm/llvm-project/issues/144435
This is attempt number 2.
Signed-off-by: Justin King <jcking at google.com>
Commit: 23b8f11b27f1345cfdd9d03c9ebaccaf81897764
https://github.com/llvm/llvm-project/commit/23b8f11b27f1345cfdd9d03c9ebaccaf81897764
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlan.h
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
Log Message:
-----------
[VPlan] Remove redundant VPWidenRecipe constructors (NFC)
Since the removal of VPWidenEVLRecipe, the constructors taking a
VPDefOpcode are not needed any more. Remove them.
Commit: a630ca6f6c4727d852d60076d1179c3e9830ca2f
https://github.com/llvm/llvm-project/commit/a630ca6f6c4727d852d60076d1179c3e9830ca2f
Author: Chelsea Cassanova <chelsea_cassanova at apple.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M lldb/include/lldb/Core/Debugger.h
M lldb/source/Breakpoint/Breakpoint.cpp
M lldb/source/Core/CoreProperties.td
M lldb/source/Core/Debugger.cpp
A lldb/test/API/terminal/TestDisabledBreakpoints.py
Log Message:
-----------
[lldb][breakpoint] Grey out disabled breakpoints (#91404)
This commit adds colour settings to the list of breakpoints in order to
grey out breakpoints that have been disabled.
Commit: a88e655809655eec8fa85366318fb3c4a0baa113
https://github.com/llvm/llvm-project/commit/a88e655809655eec8fa85366318fb3c4a0baa113
Author: Andrew Rogers <andrurogerz at gmail.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M llvm/lib/Support/BLAKE3/CMakeLists.txt
Log Message:
-----------
[llvm] build Blake3 source with LLVM_EXPORTS defined (#144753)
## Purpose
This patch ensures that the BLAKE3 implementation in the LLVM Support
library exports its public interface with `__declspec(dllexport)` when
building LLVM as a Windows DLL.
## Background
The effort to support building LLVM as a Windows DLL is tracked in
#109483. Additional context is provided in [this
discourse](https://discourse.llvm.org/t/psa-annotating-llvm-public-interface/85307).
## Overview
Replicate [this
logic](https://github.com/llvm/llvm-project/blob/main/llvm/cmake/modules/AddLLVM.cmake#L662-L664)
from `llvm_add_library()` for the `LLVMSupportBlake3` target. Without
this change, the `llvm_blake_` functions will only be annotated with
`__declspec(dllimport)` when building LLVM as a Windows DLL which leads
to inconsistent DLL linkage warnings from MSVC and `clang-cl`.
Commit: 96bbe472ef01e5f34bfeabedceea397889ff1119
https://github.com/llvm/llvm-project/commit/96bbe472ef01e5f34bfeabedceea397889ff1119
Author: Jakub Kuderski <jakub at nod-labs.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M mlir/lib/Target/SPIRV/Serialization/Serializer.cpp
M mlir/test/CMakeLists.txt
M mlir/test/Target/SPIRV/constant.mlir
R mlir/test/Target/SPIRV/lit.local.cfg
M mlir/test/lit.cfg.py
M mlir/test/lit.site.cfg.py.in
M utils/bazel/llvm-project-overlay/mlir/test/BUILD.bazel
Log Message:
-----------
Revert "[mlir][spirv] Fix int type declaration duplication when serializing" and follow up commits (#144773)
This reverts the following PRs:
* https://github.com/llvm/llvm-project/pull/143108
* https://github.com/llvm/llvm-project/pull/144538
* https://github.com/llvm/llvm-project/pull/144685
Reverting because this disabled tests when building without the llvm
spirv backend enabled.
Commit: b85e92990fdec32ec7512dec7bd36d945f8e0144
https://github.com/llvm/llvm-project/commit/b85e92990fdec32ec7512dec7bd36d945f8e0144
Author: Alexey Karyakin <akaryaki at quicinc.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M llvm/include/llvm/BinaryFormat/ELF.h
Log Message:
-----------
Hexagon v87 v89 elf flags (#144584)
Commit: 7aecd7ecacb4b305b94149f3cfcef306a9da6beb
https://github.com/llvm/llvm-project/commit/7aecd7ecacb4b305b94149f3cfcef306a9da6beb
Author: Diego Caballero <dieg0ca6aller0 at gmail.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M mlir/include/mlir/Dialect/Vector/IR/VectorOps.td
M mlir/include/mlir/IR/OpBase.td
M mlir/lib/TableGen/Operator.cpp
M mlir/test/Dialect/Vector/invalid.mlir
M mlir/test/Dialect/Vector/ops.mlir
M mlir/tools/mlir-tblgen/OpFormatGen.cpp
Log Message:
-----------
[mlir][Vector] Add `vector.to_elements` op (#141457)
This PR introduces the `vector.to_elements` op, which decomposes a
vector into its scalar elements. This operation is symmetrical to the
existing `vector.from_elements`.
Examples:
```
// Decompose a 0-D vector.
%0 = vector.to_elements %v0 : vector<f32>
// %0 = %v0[0]
// Decompose a 1-D vector.
%0:2 = vector.to_elements %v1 : vector<2xf32>
// %0#0 = %v1[0]
// %0#1 = %v1[1]
// Decompose a 2-D.
%0:6 = vector.to_elements %v2 : vector<2x3xf32>
// %0#0 = %v2[0, 0]
// %0#1 = %v2[0, 1]
// %0#2 = %v2[0, 2]
// %0#3 = %v2[1, 0]
// %0#4 = %v2[1, 1]
// %0#5 = %v2[1, 2]
```
This op is aimed at reducing code size when modeling "structured" vector
extractions and simplifying canonicalizations of large sequences of
`vector.extract` and `vector.insert` ops into `vector.shuffle` and other
sophisticated ops that can re-arrange vector elements.
Commit: 86d1d6b2c0c1f03e82cb8e360f2672c6f0ea39d5
https://github.com/llvm/llvm-project/commit/86d1d6b2c0c1f03e82cb8e360f2672c6f0ea39d5
Author: Nick Sarnie <nick.sarnie at intel.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M clang/lib/CodeGen/CGCall.cpp
M clang/lib/CodeGen/TargetInfo.cpp
M clang/lib/CodeGen/TargetInfo.h
M clang/lib/CodeGen/Targets/AMDGPU.cpp
M clang/lib/CodeGen/Targets/NVPTX.cpp
M clang/lib/CodeGen/Targets/SPIR.cpp
Log Message:
-----------
[clang] Use TargetInfo to determine device kernel calling convention (#144728)
We should abstract this logic away to `TargetInfo`. See
https://github.com/llvm/llvm-project/pull/137882 for more information.
---------
Signed-off-by: Sarnie, Nick <nick.sarnie at intel.com>
Commit: 03bdc0a1f68adcddef80a4e7931dbfae914e5652
https://github.com/llvm/llvm-project/commit/03bdc0a1f68adcddef80a4e7931dbfae914e5652
Author: Chelsea Cassanova <chelsea_cassanova at apple.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M lldb/source/Target/Target.cpp
M lldb/test/API/functionalities/progress_reporting/TestProgressReporting.py
Log Message:
-----------
[lldb][target] Add progress report for wait-attaching to process (#144768)
This commit adds a progress report when wait-attaching to a process as
well as a test for this.
Commit: 4dca4459a328b8d589d81cd1f203b798c36ebf35
https://github.com/llvm/llvm-project/commit/4dca4459a328b8d589d81cd1f203b798c36ebf35
Author: Amr Hesham <amr96 at programmer.net>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenBuiltin.cpp
M clang/lib/CIR/CodeGen/CIRGenExprComplex.cpp
M clang/lib/CIR/CodeGen/CIRGenValue.h
M clang/test/CIR/CodeGen/complex.cpp
Log Message:
-----------
[CIR] Upstream ComplexType builtin_complex (#144225)
This change adds support for builtin_complex
https://github.com/llvm/llvm-project/issues/141365
Commit: ac37a0df949afc31d12de75f85306db32dd50713
https://github.com/llvm/llvm-project/commit/ac37a0df949afc31d12de75f85306db32dd50713
Author: Diego Caballero <dieg0ca6aller0 at gmail.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M mlir/include/mlir/IR/OpBase.td
Log Message:
-----------
[mlir] Fix integer comparison warning (#144794)
Introduced by https://github.com/llvm/llvm-project/pull/141457
Commit: d10079e305acae58b44dc773cb94f7127de197ef
https://github.com/llvm/llvm-project/commit/d10079e305acae58b44dc773cb94f7127de197ef
Author: Min-Yih Hsu <min.hsu at sifive.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVVectorPeephole.cpp
M llvm/test/CodeGen/RISCV/rvv/masked-load-int.ll
M llvm/test/CodeGen/RISCV/rvv/vl-opt-instrs.ll
Log Message:
-----------
[RISCV] Reduce the VL of both operands in VMERGE_VVM (#144759)
The `tryToReduceVL` function in RISCVVectorPeephole currently only
reduces the VL of the instruction that defines the true operand in
VMERGE_VVM. We should be able to reduce VL of both operands. This patch
generalizes this function to support multiple operands from a single
instruction.
Commit: c4d7ea8049688a1d6d6d93129893fd1700a9f7e5
https://github.com/llvm/llvm-project/commit/c4d7ea8049688a1d6d6d93129893fd1700a9f7e5
Author: Javier Lopez-Gomez <javier.lopez.gomez at proton.me>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M llvm/include/llvm/DebugInfo/LogicalView/Core/LVElement.h
M llvm/include/llvm/DebugInfo/LogicalView/Core/LVScope.h
M llvm/include/llvm/DebugInfo/LogicalView/Core/LVSupport.h
Log Message:
-----------
[llvm-debuginfo-analyzer] Apply various memory savings in Core/LVxxx base classes (#144399)
This small changelist reduces memory footprint of instances of the Core
classes. Specifically,
- For `LVProperties`, use underlying type of `uint32_t` if there are at
most 32 properties to keep track of. Otherwise, fallback to the generic
`std::bitset<N>`.
The use of `llvm::SmallBitVector` is disregarded in this case, as the
upper bound on the size of the bitset can be determined statically (no
heap alloc ever needed).
- Reorder members in `LVElement` s.t. padding between members is
reduced.
- `LVScopeCompileUnit`: fix a couple of members which should be `static
constexpr` instead.
Commit: 51aa6a4993ea18c968a087352d1cf569c840c41f
https://github.com/llvm/llvm-project/commit/51aa6a4993ea18c968a087352d1cf569c840c41f
Author: Ebuka Ezike <yerimyah1 at gmail.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M lldb/test/API/tools/lldb-dap/memory/TestDAP_memory.py
M lldb/tools/lldb-dap/Handler/ReadMemoryRequestHandler.cpp
M lldb/tools/lldb-dap/Handler/RequestHandler.h
M lldb/tools/lldb-dap/Protocol/ProtocolRequests.cpp
M lldb/tools/lldb-dap/Protocol/ProtocolRequests.h
M lldb/unittests/DAP/ProtocolTypesTest.cpp
Log Message:
-----------
[lldb-dap] Use protocol types for ReadMemory request (#144552)
Read memory from process instead of target.
Commit: 118bfcda46c17349575217bc901e8e5942521955
https://github.com/llvm/llvm-project/commit/118bfcda46c17349575217bc901e8e5942521955
Author: Jianhui Li <jian.hui.li at intel.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M mlir/lib/Dialect/XeGPU/Transforms/XeGPUBlocking.cpp
M mlir/test/Dialect/XeGPU/xegpu-blocking.mlir
M mlir/test/lib/Dialect/XeGPU/TestXeGPUTransforms.cpp
Log Message:
-----------
[MLIR][XEGPU] Add blocking support for scatter ops (#144766)
Add blocking support for scatter ops: Create_tdesc, update, prefetch,
load and store. It also enables the load/store with chunk size.
Commit: 7b6963ea672f8fedbbaefd15eaca943495709d37
https://github.com/llvm/llvm-project/commit/7b6963ea672f8fedbbaefd15eaca943495709d37
Author: Muhammad Omair Javaid <omair.javaid at linaro.org>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M compiler-rt/lib/fuzzer/tests/CMakeLists.txt
Log Message:
-----------
[compiler-rt] [Fuzzer] Fix tests linking buildbot failure (#144495)
Fix for #144495 by 6f4add3 broke sanitizer-aarch64-linux buildbot.
compiler-rt/lib/fuzzer/tests build failed because the linker was
looking gcc_s without '-l' appended.
The CMake script was adding the library name without the required
'-l' prefix. This patch adds the -l prefix changing gcc_s to -lgcc_s
and gcc to -lgcc.
https://lab.llvm.org/buildbot/#/builders/51/builds/18170
Commit: 00ae89a1cbece94412cf832e47fdf449a611ad24
https://github.com/llvm/llvm-project/commit/00ae89a1cbece94412cf832e47fdf449a611ad24
Author: zGoldthorpe <Zach.Goldthorpe at amd.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M llvm/include/llvm/Transforms/IPO/Attributor.h
M llvm/lib/Transforms/IPO/Attributor.cpp
M llvm/lib/Transforms/IPO/AttributorAttributes.cpp
R llvm/test/Transforms/Attributor/AMDGPU/tag-invariant-loads.ll
M llvm/test/Transforms/Attributor/dereferenceable-1.ll
M llvm/test/Transforms/Attributor/value-simplify-local-remote.ll
Log Message:
-----------
Revert "[IPO] Added attributor for identifying invariant loads" (#144808)
Reverts llvm/llvm-project#141800
The implementation critically misunderstands the `AAMemoryBehavior`
attributor, which it relies on heavily.
@shiltian, since I do not have commit permissions.
Commit: e0933ab5ae4856c4aa188a5ea16716b3a8d0840b
https://github.com/llvm/llvm-project/commit/e0933ab5ae4856c4aa188a5ea16716b3a8d0840b
Author: Chelsea Cassanova <chelsea_cassanova at apple.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M lldb/source/Target/Target.cpp
M lldb/test/API/functionalities/progress_reporting/TestProgressReporting.py
Log Message:
-----------
Revert "[lldb][target] Add progress report for wait-attaching to process" (#144810)
This is breaking TestCreateAfterAttach.py on Ubuntu:
```
======================================================================
FAIL: test_create_after_attach_dwo (TestCreateAfterAttach.CreateAfterAttachTestCase.test_create_after_attach_dwo)
Test thread creation after process attach.
----------------------------------------------------------------------
Traceback (most recent call last):
File "/home/buildbot/worker/as-builder-9/lldb-remote-linux-ubuntu/llvm-project/lldb/packages/Python/lldbsuite/test/lldbtest.py", line 1804, in test_method
return attrvalue(self)
^^^^^^^^^^^^^^^
File "/home/buildbot/worker/as-builder-9/lldb-remote-linux-ubuntu/llvm-project/lldb/packages/Python/lldbsuite/test/decorators.py", line 149, in wrapper
return func(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^
File "/home/buildbot/worker/as-builder-9/lldb-remote-linux-ubuntu/llvm-project/lldb/test/API/functionalities/thread/create_after_attach/TestCreateAfterAttach.py", line 36, in test_create_after_attach
self.runCmd("process attach -p " + str(pid))
File "/home/buildbot/worker/as-builder-9/lldb-remote-linux-ubuntu/llvm-project/lldb/packages/Python/lldbsuite/test/lldbtest.py", line 1005, in runCmd
self.assertTrue(self.res.Succeeded(), msg + output)
AssertionError: False is not true : Command 'process attach -p 1474309' did not return successfully
Error output:
error: attach failed: lost connection
```
on the buildbots for lldb-remote-linux-ubuntu, lldb-arm-ubuntu,
lldb-aarch64-ubuntu, lldb-arm-ubuntu.
Commit: 780c0ef7fb97027aa21c2ee6b02282693f908a20
https://github.com/llvm/llvm-project/commit/780c0ef7fb97027aa21c2ee6b02282693f908a20
Author: Andrew Rogers <andrurogerz at gmail.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M llvm/tools/llvm-jitlink/llvm-jitlink-executor/CMakeLists.txt
Log Message:
-----------
[llvm] explicitly link llvm-jitlink-executor with ExecutionEngine (#144778)
## Overview
Explicitly link `llvm-jitlink-executor` with `ExecutionEngine` to avoid
link failures when building LLVM as a Windows DLL. This link dependency
should probably have always been declared here, but didn't matter when
building against an LLVM static library because it was (presumably)
picked up as a transitive dependency.
This change is required to enable the Windows DLL build because
`llvm-jitlink-executor` is declared using `add_llvm_utility` which
invokes `add_llvm_executable` with
[`DISABLE_LLVM_LINK_LLVM_DYLIB`](https://github.com/llvm/llvm-project/blob/main/llvm/cmake/modules/AddLLVM.cmake#L500-L502)
so it links statically against its dependencies instead of against the
main LLVM library.
## Background
The effort to support building LLVM as a Windows DLL is tracked in
#109483. Additional context is provided in [this
discourse](https://discourse.llvm.org/t/psa-annotating-llvm-public-interface/85307).
Commit: bb1f5c3189c4d8d30e3b1273e0b774a7ccdbd86a
https://github.com/llvm/llvm-project/commit/bb1f5c3189c4d8d30e3b1273e0b774a7ccdbd86a
Author: Guy David <49722543+guy-david at users.noreply.github.com>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64Subtarget.cpp
M llvm/test/CodeGen/AArch64/min-jump-table.ll
Log Message:
-----------
[AArch64] Lower jump table cases threshold to 10 (#143632)
Previous stabs at this setting
(https://github.com/llvm/llvm-project/pull/71166) hypertuned it for
SPEC2017, but Clang's own compilation can benefit from a slightly lower
threshold, yielding a 0.3% improvement in compile time, while still not
regressing SPEC.
Most notable beneficiaries of this change are:
- `llvm::Instruction::getNumSuccessors` (11 cases)
- `llvm::Instruction::getSuccessor` (11 cases)
Test Suite with a bootstrapped build:
```
Tests: 4316
Metric: compile_time
Program compile_time
lhs rhs diff
SingleSour...ce/UnitTests/SignlessTypes/div 0.02 0.02 3.0%
SingleSour.../UnitTests/SignlessTypes/cast2 0.02 0.02 2.8%
SingleSource/Benchmarks/Misc/flops-4 0.02 0.02 1.9%
SingleSour...ebra/solvers/cholesky/cholesky 0.05 0.05 1.8%
SingleSour...tTests/2020-01-06-coverage-006 0.02 0.02 1.7%
SingleSour...ce/Benchmarks/Stanford/FloatMM 0.03 0.03 1.7%
SingleSour...9-04-16-BitfieldInitialization 0.02 0.02 1.7%
SingleSour...nitTests/2003-07-08-BitOpsTest 0.02 0.02 1.7%
MultiSourc...marks/Prolangs-C++/vcirc/vcirc 0.02 0.02 1.6%
MultiSourc...Prolangs-C/fixoutput/fixoutput 0.05 0.05 1.5%
SingleSour...h/stencils/jacobi-1d/jacobi-1d 0.04 0.04 1.4%
MultiSourc...rks/Prolangs-C++/office/office 0.28 0.28 1.4%
SingleSour...arks/Adobe-C++/functionobjects 0.39 0.40 1.3%
SingleSour...Tests/2003-10-29-ScalarReplBug 0.02 0.02 1.2%
SingleSour...arks/Adobe-C++/stepanov_vector 0.41 0.42 1.2%
Geomean difference -0.3%
compile_time
l/r lhs rhs diff
count 4316.000000 4316.000000 469.000000
mean 0.057747 0.057595 -0.003034
std 0.544528 0.543139 0.007625
min 0.000000 0.000000 -0.035294
25% 0.000000 0.000000 -0.007006
50% 0.000000 0.000000 -0.003257
75% 0.000000 0.000000 0.000000
max 18.295300 18.252500 0.030151
```
Commit: 5f69d680e2cc94dcb30a7f29e8144725530a6da4
https://github.com/llvm/llvm-project/commit/5f69d680e2cc94dcb30a7f29e8144725530a6da4
Author: Steven Perron <stevenperron at google.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M clang/include/clang/Basic/Attr.td
M clang/include/clang/Basic/AttrDocs.td
M clang/include/clang/Basic/Builtins.td
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/include/clang/Sema/SemaHLSL.h
M clang/lib/CodeGen/CGHLSLBuiltins.cpp
M clang/lib/CodeGen/CodeGenFunction.h
M clang/lib/Sema/SemaDecl.cpp
M clang/lib/Sema/SemaDeclAttr.cpp
M clang/lib/Sema/SemaHLSL.cpp
R clang/test/AST/HLSL/vk.spec-constant.usage.hlsl
A clang/test/CodeGenHLSL/inline-spirv/SpirvType.alignment.hlsl
A clang/test/CodeGenHLSL/inline-spirv/SpirvType.hlsl
R clang/test/CodeGenHLSL/vk-features/SpirvType.alignment.hlsl
R clang/test/CodeGenHLSL/vk-features/SpirvType.hlsl
R clang/test/CodeGenHLSL/vk-features/vk.spec-constant.hlsl
R clang/test/SemaHLSL/vk.spec-constant.error.hlsl
Log Message:
-----------
Revert "[HLSL][SPIRV] Add vk::constant_id attribute." (#144812)
Reverts llvm/llvm-project#143544
Commit: d265105b8f50718a684d792d3ca957231d668533
https://github.com/llvm/llvm-project/commit/d265105b8f50718a684d792d3ca957231d668533
Author: David Justo <david.justo.1996 at gmail.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M compiler-rt/test/fuzzer/uncaught-exception.test
Log Message:
-----------
Augment `uncaught-exception.test` fuzzer test to be msvc-compatible (#125924)
Today, the `uncaught-exception.test` fuzzer test checks for the string
"libFuzzer: deadly signal" in the program output as the result of an
uncaught exception.
Although this is correct for `clang`, `msvc` reports a different error
message: "libFuzzer: uncaught C++ exception". Since `msvc` reuses the
`libFuzzer` infrastructure for ASan regression testing, it would help us
greatly if the test handled the `msvc` divergence more gracefully.
**This PR:** augments this test so check for a different string (namely
"libFuzzer: uncaught C++ exception") if the compiler target matches the
`msvc` naming scheme.
I understand if this is outside the scope of support for LLVM as well,
and I'm also open for different approaches here. Thanks!
Commit: bc8908a4e93b0641e1c17f408885c8aebb308bbe
https://github.com/llvm/llvm-project/commit/bc8908a4e93b0641e1c17f408885c8aebb308bbe
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M llvm/lib/Target/ARM/ARMISelLowering.h
Log Message:
-----------
ARM: Move declaration of supportSplitCSR to be public (#144679)
This is an implementation of a public method from the base
class, so it should also be public. Avoids unrelated diff
in a future patch.
Commit: 874a02f05b6ebb4b5dbe0ab09beb9c3d5b36e237
https://github.com/llvm/llvm-project/commit/874a02f05b6ebb4b5dbe0ab09beb9c3d5b36e237
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M llvm/lib/Target/ARM/ARMAsmPrinter.cpp
M llvm/lib/Target/ARM/ARMAsmPrinter.h
M llvm/lib/Target/ARM/ARMFastISel.cpp
M llvm/lib/Target/ARM/ARMISelLowering.cpp
M llvm/lib/Target/ARM/ARMISelLowering.h
M llvm/lib/Target/ARM/ARMSubtarget.cpp
M llvm/lib/Target/ARM/ARMSubtarget.h
M llvm/lib/Target/ARM/ARMTargetMachine.cpp
M llvm/lib/Target/ARM/ARMTargetMachine.h
Log Message:
-----------
ARM: Move ABI helpers from Subtarget to TargetMachine (#144680)
These are module level concepts, and attaching them to the
function level subtarget is confusing. Similarly these other
helpers that only operate on the triple should also be removed
from the subtarget.
Commit: 6e5ee4aa98f1dc16e6a75a7fd298a59f1edd1c6e
https://github.com/llvm/llvm-project/commit/6e5ee4aa98f1dc16e6a75a7fd298a59f1edd1c6e
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVCallingConv.td
M llvm/lib/Target/RISCV/RISCVRegisterInfo.cpp
M llvm/test/CodeGen/RISCV/interrupt-attr.ll
A llvm/test/CodeGen/RISCV/rvv/interrupt-attr-nocall.ll
Log Message:
-----------
[RISCV] Save vector registers in interrupt handler. (#143808)
Corresponding gcc bug report
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110665
The generated code is pretty awful.
Commit: 2bcdfa198aa511479c46144c5cf95c7c685384ef
https://github.com/llvm/llvm-project/commit/2bcdfa198aa511479c46144c5cf95c7c685384ef
Author: Sirui Mu <msrlancern at gmail.com>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M clang/include/clang/CIR/Dialect/Builder/CIRBaseBuilder.h
M clang/include/clang/CIR/Dialect/IR/CIRAttrs.td
M clang/include/clang/CIR/Dialect/IR/CIROps.td
M clang/include/clang/CIR/Interfaces/CIROpInterfaces.td
M clang/include/clang/CIR/MissingFeatures.h
M clang/lib/CIR/CodeGen/CIRGenCall.cpp
M clang/lib/CIR/CodeGen/CIRGenCall.h
M clang/lib/CIR/CodeGen/CIRGenModule.h
M clang/lib/CIR/Dialect/IR/CIRDialect.cpp
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.h
M clang/test/CIR/CodeGen/call.c
M clang/test/CIR/IR/call.cir
Log Message:
-----------
[CIR] Add side effect attribute to call operations (#144201)
This patch adds `side_effect` attribute to `cir.call` operation.
Other function call attributes will be added in later patches.
Commit: faf9295f4e3a23a972d29e2be85052beef409d08
https://github.com/llvm/llvm-project/commit/faf9295f4e3a23a972d29e2be85052beef409d08
Author: MingYan <99472920+NexMing at users.noreply.github.com>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInsertVSETVLI.cpp
M llvm/test/CodeGen/RISCV/rvv/vsetvli-insert-crossbb.mir
Log Message:
-----------
[RISCV] Fix a bug where AVL is the last MI in MBB. (#144668)
When `AVL` is the last MI, `std::next(II)` equals `MBB.end()`, and
calling `II->getParent()` at that point will cause an error.
---------
Co-authored-by: yanming <ming.yan at terapines.com>
Commit: bfee625821c07d9a05b48e4a8b0f3d73c1233107
https://github.com/llvm/llvm-project/commit/bfee625821c07d9a05b48e4a8b0f3d73c1233107
Author: Durgadoss R <durgadossr at nvidia.com>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M llvm/include/llvm/IR/IntrinsicsNVVM.td
M llvm/lib/IR/Verifier.cpp
A llvm/test/Verifier/NVPTX/fence-proxy.tensormap.ll
M llvm/test/Verifier/NVPTX/setmaxnreg.ll
Log Message:
-----------
[NVPTX] Attach Range attr to setmaxnreg and fence intrinsics (#144120)
This patch attaches the range attribute to the setmaxnreg
and fence.proxy.tensormap.* intrinsics. The range checks
are now handled generically in the Verifier. So, this patch
removes the per-intrinsic error-handling for range-checks
from the Verifier.
This patch also adds more coverage tests for these cases.
Signed-off-by: Durgadoss R <durgadossr at nvidia.com>
Commit: 5875fafdc547889fb089c943a881a9ab6d8a23c0
https://github.com/llvm/llvm-project/commit/5875fafdc547889fb089c943a881a9ab6d8a23c0
Author: Phoebe Wang <phoebe.wang at intel.com>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M clang/test/Preprocessor/predefined-arch-macros.c
M llvm/lib/Target/X86/X86.td
M llvm/lib/TargetParser/X86TargetParser.cpp
Log Message:
-----------
[X86] Remove CLDEMOTE from Alderlake and later hybrid processors (#144662)
SDM doesn't list any hybrid processors in this feature. Besides,
physical machine also reports not supported.
Commit: 351303c28e8feb85c93d8e9480f534653b032735
https://github.com/llvm/llvm-project/commit/351303c28e8feb85c93d8e9480f534653b032735
Author: Han-Chung Wang <hanhan0912 at gmail.com>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M mlir/include/mlir/Dialect/MemRef/IR/MemRefOps.td
M mlir/include/mlir/IR/BuiltinOps.td
Log Message:
-----------
[mlir][docs] Fix broken links to Traits documentation. (#144820)
Commit: 7b989ade35a43357f9152198ee2c76899df9a56d
https://github.com/llvm/llvm-project/commit/7b989ade35a43357f9152198ee2c76899df9a56d
Author: Med Ismail Bennani <ismail at bennani.ma>
Date: 2025-06-18 (Wed, 18 Jun 2025)
Changed paths:
M lldb/examples/python/crashlog.py
M lldb/test/Shell/ScriptInterpreter/Python/Crashlog/altered_threadState.test
M lldb/test/Shell/ScriptInterpreter/Python/Crashlog/json.test
M lldb/test/Shell/ScriptInterpreter/Python/Crashlog/no_threadState.test
M lldb/test/Shell/ScriptInterpreter/Python/Crashlog/skipped_status_interactive_crashlog.test
M lldb/test/Shell/ScriptInterpreter/Python/Crashlog/text.test
Log Message:
-----------
[lldb/crashlog] Make interactive mode the new default (#144839)
This patch makes interactive mode as the default when using the crashlog
command. It replaces the existing `-i|--interactive` flag with a new
`-m|--mode` option, that can either be `interactive` or `batch`.
By default, when the option is not explicitely set by the user, the
interactive mode is selected, however, lldb will fallback to batch mode
if the command interpreter is not interactive or if stdout is not a tty.
This also adds some railguards to prevent users from using interactive
only options with the batch mode and updates the tests accordingly.
rdar://97801509
Differential Revision: https://reviews.llvm.org/D141658
Signed-off-by: Med Ismail Bennani <ismail at bennani.ma>
Commit: 590066bee70db37636311881c5b232464d6d4aec
https://github.com/llvm/llvm-project/commit/590066bee70db37636311881c5b232464d6d4aec
Author: Rajat Bajpai <rbajpai at nvidia.com>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M llvm/docs/NVPTXUsage.rst
M llvm/lib/Target/NVPTX/NVPTX.td
M llvm/lib/Target/NVPTX/NVPTXInstrInfo.td
M llvm/lib/Target/NVPTX/NVPTXSubtarget.h
M llvm/test/CodeGen/NVPTX/sm-version.ll
Log Message:
-----------
[NVPTX] Add family-specific architectures support (#141899)
This change adds family-specific architecture variants support added in [PTX ISA
8.8](https://docs.nvidia.com/cuda/parallel-thread-execution/#ptx-isa-version-8-8).
These architecture variants have "f" suffix. For example, sm_100f.
This change doesn't promote existing features to family-specific
architecture.
Commit: 03461c9c6e21e43a6e1c699bfb254ddb3d575c93
https://github.com/llvm/llvm-project/commit/03461c9c6e21e43a6e1c699bfb254ddb3d575c93
Author: Hsiangkai Wang <hsiangkai.wang at arm.com>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M mlir/include/mlir/Dialect/GPU/IR/GPUOps.td
M mlir/lib/Conversion/GPUToSPIRV/GPUToSPIRV.cpp
M mlir/test/Conversion/GPUToSPIRV/shuffle.mlir
Log Message:
-----------
[mlir][gpu][spirv] Remove rotation semantics of gpu.shuffle up/down (#139105)
>From the description of gpu.shuffle operation, shuffle up/down rotates
values in the subgroup because it applies modulo on the shifted value to
calculate the result lane ID. It is inconsistent with the definition of
SPIR-V shuffle up/down and NVVM data movement definitions within
subgroup.
In NVVM, it says
"If the computed source lane index j is in range, the returned i32 value
will be the value of %a from lane j; otherwise, it will be the the value
of %a from the current thread."
It will keep the original value if the result land ID is out of range.
In SPIR-V OpGroupNonUniformShuffleUp and OpGroupNonUniformShuffleDown,
it says
"The resulting value is undefined if Delta is greater than the current
invocation’s id within the scope or if the identified invocation is not
in scope restricted tangle."
It's an undefined value if the result land ID is out of range.
Anyway, there is no circular movement in shuffle up/down from these 2
specifications. This patch removes the circular movement in gpu.shuffle
up/down and lower gpu.shuffle up/down to SPIR-V
OpGroupNonUniformShuffleUp and OpGroupNonUniformShuffleDown directly.
Reference:
https://docs.nvidia.com/cuda/archive/12.2.1/nvvm-ir-spec/index.html#data-movement
https://registry.khronos.org/SPIR-V/specs/unified1/SPIRV.html#OpGroupNonUniformShuffleUp
https://registry.khronos.org/SPIR-V/specs/unified1/SPIRV.html#OpGroupNonUniformShuffleDown
Commit: 2c2ad9a096e78e9129f8cb2d4ee260eb7e67473f
https://github.com/llvm/llvm-project/commit/2c2ad9a096e78e9129f8cb2d4ee260eb7e67473f
Author: Younan Zhang <zyn7109 at gmail.com>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/AST/StmtProfile.cpp
M clang/test/SemaCXX/exception-spec.cpp
M clang/test/SemaTemplate/concepts-out-of-line-def.cpp
Log Message:
-----------
Reapply "[Clang] Profile singly-resolved UnresolvedLookupExpr with the declaration" (#140680)
For a dependent variable template specialization, we don't build a
dependent Decl node or a DeclRefExpr to represent it. Instead, we
preserve the UnresolvedLookupExpr until instantiation.
However, this approach isn't ideal for constraint normalization. We
consider the qualifier during profiling, but since that's based on the
written code, it can introduce confusing differences, even when the
expressions resolve to the same declaration.
This change profiles the underlying VarTemplateDecl if
UnresolvedLookupExpr is used to model a dependent use of it.
Fixes https://github.com/llvm/llvm-project/issues/139476
Commit: 9ee55e717308757b580dff182fc23b40d1c18a56
https://github.com/llvm/llvm-project/commit/9ee55e717308757b580dff182fc23b40d1c18a56
Author: Amr Hesham <amr96 at programmer.net>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M clang/lib/CIR/Dialect/Transforms/CIRSimplify.cpp
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
A clang/test/CIR/Transforms/vector-splat.cir
Log Message:
-----------
[CIR] Implement folder for VecSplatOp (#143771)
This change adds a folder for the VecSplatOp
Issue https://github.com/llvm/llvm-project/issues/136487
Commit: 408e55098d7d8f7064d7a288b5e3fe6fdbbc2ad4
https://github.com/llvm/llvm-project/commit/408e55098d7d8f7064d7a288b5e3fe6fdbbc2ad4
Author: quic_hchandel <quic_hchandel at quicinc.com>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfoXqci.td
M llvm/test/MC/RISCV/xqciac-valid.s
M llvm/utils/TableGen/CompressInstEmitter.cpp
Log Message:
-----------
[RISCV] Add support for handling one tied operand in the source instruction for compress patterns (#143660)
This update enables compress patterns to handle one tied operand in
source instructions, which was previously unsupported. Qualcomm's uC
extension Xqci includes several instructions with tied operands that can
be compressed into smaller forms. This change adds the necessary support
to enable such compression. Additionally, a compress pattern for the
qc.muliadd instruction has been implemented.
Commit: 3e795c60c73e990fbbf254715cb47855c32bcfae
https://github.com/llvm/llvm-project/commit/3e795c60c73e990fbbf254715cb47855c32bcfae
Author: Dmitry Vasilyev <dvassiliev at accesssoftek.com>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M lldb/test/API/python_api/watchpoint/watchlocation/TestTargetWatchAddress.py
Log Message:
-----------
[lldb] Disable TestTargetWatchAddress on Windows x86_64 (#144779)
See #144777 for details.
Commit: a9a71b6d311892d6add6aab3790b20fe945cca38
https://github.com/llvm/llvm-project/commit/a9a71b6d311892d6add6aab3790b20fe945cca38
Author: S. B. Tam <cpplearner at outlook.com>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M libcxx/test/std/utilities/format/format.functions/escaped_output.unicode.pass.cpp
M libcxx/test/std/utilities/format/format.functions/fill.unicode.pass.cpp
Log Message:
-----------
[libc++][test] Don't pass ill-formed UTF-8 to MAKE_STRING_VIEW (#136403)
Commit: 50a7511138a42d2c7a69b68237ce88cc027b91bc
https://github.com/llvm/llvm-project/commit/50a7511138a42d2c7a69b68237ce88cc027b91bc
Author: Paschalis Mpeis <paschalis.mpeis at arm.com>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M bolt/test/AArch64/r_aarch64_prelxx.s
Log Message:
-----------
[BOLT][AArch64] Fix PREL Relocs on RHEL8 (#144505)
Commit: e73bff89ef8e3c8cdd8895cdc3d021fc4dcabd76
https://github.com/llvm/llvm-project/commit/e73bff89ef8e3c8cdd8895cdc3d021fc4dcabd76
Author: Pierre van Houtryve <pierre.vanhoutryve at amd.com>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeRules.cpp
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-select.mir
Log Message:
-----------
[AMDGPU] New RegBankSelect: Handle all 32/64 bit pointer types for B32/B64 rule (#142560)
The previous system explicitly enumerated the types. P0 was missing and thus we couldn't handle a select of P0s for example.
Generalize the logic to simply check the width of the pointer for 32/64 bit pointers, this should handle all common address spaces
Commit: db8e6fc64534e986f5bf96cceaa76cc5007ac1c7
https://github.com/llvm/llvm-project/commit/db8e6fc64534e986f5bf96cceaa76cc5007ac1c7
Author: Pierre van Houtryve <pierre.vanhoutryve at amd.com>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeHelper.cpp
M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeRules.cpp
M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeRules.h
Log Message:
-----------
[AMDGPU] New RegBanKSelect: Add S128 types (#142601)
Commit: 26d4b3cb4ca2f882384d940f3dad28f8d79451eb
https://github.com/llvm/llvm-project/commit/26d4b3cb4ca2f882384d940f3dad28f8d79451eb
Author: Sudharsan Veeravalli <quic_svs at quicinc.com>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfoXqci.td
M llvm/test/CodeGen/RISCV/xqcibm-extract.ll
Log Message:
-----------
[RISCV] Don't prefer QC_EXT for SEXT_INREG patterns when Zbb is enabled (#144837)
`Zbb` has the `sext.b` and `sext.h` instructions that are compressible.
Commit: 7ceea22a7adad5d21328839facbc6a6d0151e056
https://github.com/llvm/llvm-project/commit/7ceea22a7adad5d21328839facbc6a6d0151e056
Author: Pierre van Houtryve <pierre.vanhoutryve at amd.com>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeHelper.cpp
M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeRules.cpp
M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeRules.h
Log Message:
-----------
[AMDGPU] New RegBankSelect: Add Ptr32/Ptr64/Ptr128 (#142602)
There's quite a few opcodes that do not care about the exact AS of the pointer, just its size.
Adding generic types for these will help reduce duplication in the rule definitions.
I also moved the usual B types to use the new `isAnyPtr` helper I added to make sure they're supersets of the `Ptr` cases
Commit: 52ff58c3300338876ae63126ce0d33331000f1ba
https://github.com/llvm/llvm-project/commit/52ff58c3300338876ae63126ce0d33331000f1ba
Author: Juan Manuel Martinez Caamaño <jmartinezcaamao at gmail.com>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M clang/lib/Headers/CMakeLists.txt
R clang/lib/Headers/cuda_wrappers/bits/c++config.h
Log Message:
-----------
Revert "[CUDA][HIP] Add a __device__ version of std::__glibcxx_assert_fail()" (#144850)
Reverts llvm/llvm-project#136133
Commit: 650b451d0065c8ea6a1f87e7fdc6d07648729549
https://github.com/llvm/llvm-project/commit/650b451d0065c8ea6a1f87e7fdc6d07648729549
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M libcxx/include/__memory/pointer_traits.h
Log Message:
-----------
[libc++] Simplify the implementation of pointer_traits a bit (#142260)
Commit: 1ab0e7dd60e26ac7c7fc64a273485522f5c5ba02
https://github.com/llvm/llvm-project/commit/1ab0e7dd60e26ac7c7fc64a273485522f5c5ba02
Author: Jiachen (Yangyang) Wang <130888597+WanderingAura at users.noreply.github.com>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M llvm/lib/Transforms/Scalar/LICM.cpp
M llvm/test/CodeGen/AMDGPU/loop_exit_with_xor.ll
M llvm/test/Transforms/LICM/call-hoisting.ll
Log Message:
-----------
[LICM] Hoisting writeonly calls (#143799)
Adds support for hoisting `writeonly` calls in LICM.
This patch adds a missing optimization that allows hoisting of
`writeonly` function calls out of loops when it is safe to do so.
Previously, such calls were conservatively retained inside the loop
body, and the redundant calls were only reduced through unrolling,
relying on target-dependent heuristics.
Closes #143267
Testing:
- Modified previously negative tests for hoisting writeonly calls to be
instead positive
- Added test cases for hoisting of two writeonly calls where the
pointers do/do not alias
- Added a test case for not argmemonly writeonly calls.
Commit: 0e1aab1ec833d7f8e9897b0940c634385036fdee
https://github.com/llvm/llvm-project/commit/0e1aab1ec833d7f8e9897b0940c634385036fdee
Author: Pierre van Houtryve <pierre.vanhoutryve at amd.com>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-inttoptr.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-ptrtoint.mir
Log Message:
-----------
[AMDGPU] Improve test coverage for G_INTTOPTR and G_PTRTOINT (#142603)
Test P0 through P6 + P8 for both S/VGPRs.
Commit: 62fe5e428acc2c5ef9b144c5737d55b17b55feac
https://github.com/llvm/llvm-project/commit/62fe5e428acc2c5ef9b144c5737d55b17b55feac
Author: Sameer Sahasrabuddhe <sameer.sahasrabuddhe at amd.com>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp
Log Message:
-----------
[NFC][AMDGPU] print more info when debugging SIInsertWaitcnts pass (#144629)
Commit: 8f82c027c8969d965c43909da639e7790af19956
https://github.com/llvm/llvm-project/commit/8f82c027c8969d965c43909da639e7790af19956
Author: Pierre van Houtryve <pierre.vanhoutryve at amd.com>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeRules.cpp
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-inttoptr.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-ptrtoint.mir
Log Message:
-----------
[AMDGPU] New RegBankSelect: Add rules for `G_PTRTOINT` and `G_INTTOPTR` (#142604)
Commit: 681db064d221e9eef024ce0aef6165caa37fbfd2
https://github.com/llvm/llvm-project/commit/681db064d221e9eef024ce0aef6165caa37fbfd2
Author: Kunqiu Chen <camsyn at foxmail.com>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M compiler-rt/lib/tsan/rtl/tsan_platform.h
M compiler-rt/lib/tsan/rtl/tsan_rtl_access.cpp
Log Message:
-----------
[TSan] Make Shadow/Meta region inclusive-exclusive (#144647)
This commit changes the interval shadow/meta address check from
inclusive-inclusive ( $[\mathrm{start}, \mathrm{end}]$ ) to
inclusive-exclusive ( $[\mathrm{start}, \mathrm{end})$ ), to resolve the
ambiguity of the end point address. This also aligns the logic with the
check for `isAppMem` (i.e., inclusive-exclusive), ensuring consistent
behavior across all memory classifications.
1. The `isShadowMem` and `isMetaMem` checks previously used an
inclusive-inclusive interval, i.e., $[\mathrm{start}, \mathrm{end}]$,
which could lead to a boundary address being incorrectly classified as
both Shadow and Meta memory, e.g., 0x3000_0000_0000 in
`Mapping48AddressSpace`.
- What's more, even when Shadow doesn't border Meta, `ShadowMem::end`
cannot be considered a legal shadow address, as TSan protects the gap,
i.e., `ProtectRange(ShadowEnd(), MetaShadowBeg());`
2. `ShadowMem`/`MetaMem` addresses are derived from `AppMem` using an
affine-like transformation (`* factor + bias`). This transformation
includes two extra modifications: high- and low-order bits are masked
out, and for Shadow Memory, an optional XOR operation may be applied to
prevent conflicts with certain AppMem regions.
- Given that all AppMem regions are defined as inclusive-exclusive
intervals, $[\mathrm{start}, \mathrm{end})$, the resulting Shadow/Meta
regions should logically also be inclusive-exclusive.
Note: This change is purely for improving code consistency and should
have no functional impact. In practice, the exact endpoint addresses of
the Shadow/Meta regions are generally not reached.
Commit: 584cc376870505821b5ff0b0e80be85ee563ff0c
https://github.com/llvm/llvm-project/commit/584cc376870505821b5ff0b0e80be85ee563ff0c
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M libcxx/include/__math/abs.h
M libcxx/include/math.h
M libcxx/include/stdlib.h
M libcxx/test/std/numerics/c.math/abs.verify.cpp
Log Message:
-----------
[libc++] Move std::abs into __math/abs.h (#139586)
`template <class = int>` is also added to our implementations to avoid
an ambiguity between the libc's version and our version when both are
visible.
This avoids including `<stdlib.h>` in `<math.h>`.
Commit: 20245bbf66977ca9de5a2b6e29e8617a3a5d9fb5
https://github.com/llvm/llvm-project/commit/20245bbf66977ca9de5a2b6e29e8617a3a5d9fb5
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M libcxx/test/std/numerics/c.math/abs.pass.cpp
Log Message:
-----------
[libc++][NFC] Format abs.pass.cpp test
I will modify the test in an upcoming PR. I'm formatting it now to avoid
a bunch of whitespace changes in that PR.
Commit: 6273c5d4d3540204cb0d298cf1cf74ba94ed2a6c
https://github.com/llvm/llvm-project/commit/6273c5d4d3540204cb0d298cf1cf74ba94ed2a6c
Author: David Spickett <david.spickett at linaro.org>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M lldb/source/Plugins/Process/Utility/RegisterInfoPOSIX_arm64.cpp
Log Message:
-----------
[lldb][AArch64] Correctly invalidate svg when vg is written (#140875)
Recently the Linux Kernel has fixed a bunch of issues in SME support and
while testing that, I found two tests failing:
FAIL: test_za_register_dynamic_config_main_disabled
(TestZAThreadedDynamic.AArch64ZAThreadedTestCase)
FAIL: test_za_register_dynamic_config_main_enabled
(TestZAThreadedDynamic.AArch64ZAThreadedTestCase)
These tests write to vg during streaming mode from lldb and expect to
see that za has been resized to match it. Instead, it was unavailable.
lldb-server was sending the correct amount of data but lldb client was
expecting the old size.
Turns out that instead of a write to vg invalidating svg, it was
invalidating... something else. I'm still not sure how these tests ever
worked but with this one line fix, they pass again.
I did not see this issue with SVE or streaming SVE Z registers because
those always resize using the value of vg, and vg always has the value
we just wrote.
(remember that vg is the vector length of the **current** mode, not of
non-streaming mode, whereas svg is the vector length of streaming mode,
even if you are currently in non-streaming mode)
Commit: c0a9c908a697a150f797d0dff7f0bcd3782abed9
https://github.com/llvm/llvm-project/commit/c0a9c908a697a150f797d0dff7f0bcd3782abed9
Author: Durgadoss R <durgadossr at nvidia.com>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M mlir/include/mlir/Dialect/LLVMIR/NVVMOps.td
Log Message:
-----------
[MLIR][NVVM-Docs] Fix rendering of a few tables in NVVM Docs (#144764)
This patch corrects the formatting of tables
in the tcgen05 ld/st and smem_descriptor Ops.
Signed-off-by: Durgadoss R <durgadossr at nvidia.com>
Commit: 97c1a2444574b32dd7a283c53be248c5dbbf62e9
https://github.com/llvm/llvm-project/commit/97c1a2444574b32dd7a283c53be248c5dbbf62e9
Author: Fabian Mora <fmora.dev at gmail.com>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M mlir/include/mlir/Dialect/Linalg/TransformOps/LinalgTransformOps.td
M mlir/include/mlir/Dialect/Linalg/Transforms/Transforms.h
M mlir/include/mlir/Dialect/Linalg/Utils/Utils.h
M mlir/lib/Dialect/Linalg/TransformOps/LinalgTransformOps.cpp
M mlir/lib/Dialect/Linalg/Transforms/Padding.cpp
M mlir/lib/Dialect/Linalg/Utils/Utils.cpp
M mlir/test/Dialect/Linalg/transform-op-pad.mlir
Log Message:
-----------
[mlir][linalg] Add option to pad dynamic dims to `linalg::rewriteAsPaddedOp` (#144354)
This patch makes the following changes:
- Add a `ValueRange typeDynDims` argument to
`linalg::makeComposedPadHighOp`, allowing to pad a tensor with dynamic
dimensions using `tensor::createPadHighOp`.
- Add a `DenseMap<std::pair<unsigned, unsigned>, OpFoldResult>
sizeToPadTo;` option to `LinalgPaddingOptions`. This option allows
setting the size to use when padding a dimension of an operand, allowing
to pad operands even in the case they don't have a constant upper
bounding box. If the value is not provided, then the constant upper
bound is used by default.
- Add a `use_prescribed_tensor_shapes` option to
`transform.structured.pad`. If set to true then `tensor.dim` will be
used as dimensions to compute the size of the padded dim instead of
computing the constant upper bound.
- This patch also changes the behavior for computing the padded shape
`linalg::rewriteAsPaddedOp`, by using the newly added options in
`LinalgPaddingOptions`.
- Finally it adds tests verifying the behavior.
Commit: af51c9d9df9d482503fe30c80dd788a02161cea6
https://github.com/llvm/llvm-project/commit/af51c9d9df9d482503fe30c80dd788a02161cea6
Author: David Sherwood <david.sherwood at arm.com>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/test/Transforms/LoopVectorize/branch-weights.ll
Log Message:
-----------
[LV][NFC] Add branch weight test showing incorrect behaviour (#144682)
This patch adds a test that shows incorrect branch weights being set in
function
EpilogueVectorizerEpilogueLoop::emitMinimumVectorEpilogueIterCountCheck
Commit: 0fe78c4a290517925acc03d59f235926f440f155
https://github.com/llvm/llvm-project/commit/0fe78c4a290517925acc03d59f235926f440f155
Author: Chuanqi Xu <yedeng.yd at linux.alibaba.com>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M clang/include/clang/Serialization/ASTReader.h
M clang/include/clang/Serialization/ASTRecordWriter.h
M clang/include/clang/Serialization/ASTWriter.h
M clang/lib/Serialization/ASTReader.cpp
M clang/lib/Serialization/ASTReaderDecl.cpp
M clang/lib/Serialization/ASTWriter.cpp
M clang/lib/Serialization/ASTWriterDecl.cpp
Log Message:
-----------
[NFC] [Serialization] Some Code Cleanups for Name lookup table things
Commit: 5bee2c34bde1aa8b0fb5aed7d5ce330f094f6436
https://github.com/llvm/llvm-project/commit/5bee2c34bde1aa8b0fb5aed7d5ce330f094f6436
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M llvm/include/llvm/IR/RuntimeLibcalls.h
M llvm/lib/CodeGen/TargetLoweringBase.cpp
M llvm/lib/IR/RuntimeLibcalls.cpp
M llvm/lib/Object/IRSymtab.cpp
M llvm/lib/Target/ARM/ARMISelLowering.cpp
Log Message:
-----------
RuntimeLibcalls: Pass in FloatABI and EABI type (#144691)
We need the full set of ABI options to accurately compute
the full set of libcalls. This partially resolves missing
information required to compute the set of ARM calls.
Commit: 305953a32ded8a43b22f65cf73d9214729feb1fc
https://github.com/llvm/llvm-project/commit/305953a32ded8a43b22f65cf73d9214729feb1fc
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M llvm/include/llvm/MC/MCTargetOptions.h
M llvm/include/llvm/Support/CodeGen.h
Log Message:
-----------
MC: Move ExceptionHandling enum to Support (#144692)
Similar to b5967264b0fbfd502b3a7edec27409e966fb68be, we need
to use this in RuntimeLibcalls to compute the set of library
calls.
Commit: 1c35fe4e6b2596d153da82b23d04a3779fb12730
https://github.com/llvm/llvm-project/commit/1c35fe4e6b2596d153da82b23d04a3779fb12730
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M llvm/include/llvm/IR/RuntimeLibcalls.h
M llvm/lib/CodeGen/TargetLoweringBase.cpp
M llvm/lib/IR/RuntimeLibcalls.cpp
M llvm/lib/Target/VE/VEISelLowering.cpp
M llvm/lib/Target/X86/X86ISelLowering.cpp
Log Message:
-----------
RuntimeLibcalls: Pass in exception handling type (#144696)
All of the ABI options that influence libcall decisions need
to be passed in.
Commit: 74054cab7a3e04b323828850409343932e975737
https://github.com/llvm/llvm-project/commit/74054cab7a3e04b323828850409343932e975737
Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M llvm/include/llvm/Analysis/HashRecognize.h
M llvm/lib/Analysis/HashRecognize.cpp
M llvm/lib/Passes/PassRegistry.def
Log Message:
-----------
[HashRecognize] Make it a non-PM analysis (#144742)
Make HashRecognize a non-PassManager analysis that can be called to get
the result on-demand, creating a new getResult() entry-point. The issue
was discovered when attempting to use the analysis to perform a
transform in LoopIdiomRecognize.
Commit: 30824c449a893771c3f25f0eb29cfa9d2cfd4f15
https://github.com/llvm/llvm-project/commit/30824c449a893771c3f25f0eb29cfa9d2cfd4f15
Author: Michael Buch <michaelbuch12 at gmail.com>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp
Log Message:
-----------
[lldb][DWARFASTParserClang] GetCXXObjectParameter to take DeclContext DIE parameter (#144876)
I'm trying to call `GetCXXObjectParameter` from unit-tests in a
follow-up patch and taking a `DWARFDIE` instead of `clang::DeclContext`
makes that much simpler. These should be equivalent, since all we're
trying to check is that the parent context is a record type.
Commit: 046e2f545ef568b2ce577c9172a0f147dc376071
https://github.com/llvm/llvm-project/commit/046e2f545ef568b2ce577c9172a0f147dc376071
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
A llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-interleave.ll
Log Message:
-----------
[LV] Add interleaving test with partial reductions and non-const start.
Add test coverage for mis-compile after
https://github.com/llvm/llvm-project/pull/142290.
Commit: e33f13ba4824d807e846e7783a48efd6c0bf58ee
https://github.com/llvm/llvm-project/commit/e33f13ba4824d807e846e7783a48efd6c0bf58ee
Author: Matthias Springer <me at m-sp.org>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M mlir/include/mlir/Dialect/Arith/IR/ArithOps.td
M mlir/lib/Conversion/ArithToLLVM/ArithToLLVM.cpp
M mlir/lib/Dialect/Arith/IR/ArithCanonicalization.td
M mlir/test/Conversion/ArithToLLVM/arith-to-llvm.mlir
M mlir/test/Dialect/Arith/ops.mlir
Log Message:
-----------
[mlir][arith] Add overflow flags to `arith.trunci` (#144863)
LLVM already supports overflow flags on `llvm.trunc` for a while. This
commit adds support for these flags to `arith.trunci`.
Commit: b73720cf6c5380854bf27d4453abf21cc87ae642
https://github.com/llvm/llvm-project/commit/b73720cf6c5380854bf27d4453abf21cc87ae642
Author: Donát Nagy <donat.nagy at ericsson.com>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M clang/include/clang/StaticAnalyzer/Checkers/Checkers.td
M clang/lib/StaticAnalyzer/Checkers/DynamicTypePropagation.cpp
Log Message:
-----------
[analyzer] Conversion to CheckerFamily: DynamicTypePropagation (#144735)
This commit converts the class DynamicTypePropagation to a very simple
checker family, which has only one checker frontend -- but also supports
enabling the backend ("modeling checker") without the frontend.
As a tangentially related change, this commit adds the backend of
DynamicTypePropagation as a dependency of alpha.core.DynamicTypeChecker
in Checkers.td, because the header comment of DynamicTypeChecker.cpp
claims that it depends on DynamicTypePropagation and the source code
seems to confirm this.
(The lack of this dependency relationship didn't cause problems, because
'core.DynamicTypePropagation' is in the group 'core', so it is
practically always active. However, explicitly declaring the dependency
clarifies the fact that the separate existence of the modeling checker
is warranted.)
Commit: 2b4d757290226e0185e17294339aae1588efd07e
https://github.com/llvm/llvm-project/commit/2b4d757290226e0185e17294339aae1588efd07e
Author: Anatoly Trosinenko <atrosinenko at accesssoftek.com>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M bolt/include/bolt/Passes/PAuthGadgetScanner.h
M bolt/lib/Passes/PAuthGadgetScanner.cpp
A bolt/test/binary-analysis/AArch64/gs-pauth-authentication-oracles.s
M bolt/test/binary-analysis/AArch64/gs-pauth-debug-output.s
Log Message:
-----------
[BOLT] Gadget scanner: detect authentication oracles (#135663)
Implement the detection of authentication instructions whose results can
be inspected by an attacker to know whether authentication succeeded.
As the properties of output registers of authentication instructions are
inspected, add a second set of analysis-related classes to iterate over
the instructions in reverse order.
Commit: 936c5566db013225dc098ff961395bb19e1bf2a4
https://github.com/llvm/llvm-project/commit/936c5566db013225dc098ff961395bb19e1bf2a4
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M flang/lib/Lower/OpenMP/OpenMP.cpp
M flang/lib/Semantics/CMakeLists.txt
M flang/lib/Semantics/check-omp-structure.cpp
M flang/lib/Semantics/check-omp-structure.h
R flang/lib/Semantics/rewrite-directives.cpp
R flang/lib/Semantics/rewrite-directives.h
M flang/lib/Semantics/rewrite-parse-tree.cpp
A flang/test/Lower/OpenMP/requires-admo-acqrel.f90
A flang/test/Lower/OpenMP/requires-admo-invalid1.f90
A flang/test/Lower/OpenMP/requires-admo-invalid2.f90
R flang/test/Semantics/OpenMP/requires-atomic01.f90
R flang/test/Semantics/OpenMP/requires-atomic02.f90
Log Message:
-----------
[flang][OpenMP] Handle REQUIRES ADMO in lowering (#144362)
The previous approach rewrote the atomic constructs in the AST based on
the REQUIRES ATOMIC_DEFAULT_MEM_ORDER directives. The new approach
checks for incorrect uses of REQUIRED ADMO in the semantic analysis, and
applies it in lowering, eliminating the need for a separate
tree-rewriting procedure.
Commit: e478a22d540d336632fb3c110c5377447cd7f3b2
https://github.com/llvm/llvm-project/commit/e478a22d540d336632fb3c110c5377447cd7f3b2
Author: Paul Walker <paul.walker at arm.com>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M clang/test/CodeGen/builtin_vectorelements.c
M llvm/include/llvm/IR/IRBuilder.h
M llvm/lib/IR/IRBuilder.cpp
M llvm/test/Analysis/ValueTracking/phi-known-bits.ll
M llvm/test/Instrumentation/AddressSanitizer/asan-masked-load-store.ll
M llvm/test/Instrumentation/AddressSanitizer/asan-vp-load-store.ll
M llvm/test/Instrumentation/AddressSanitizer/vector-load-store.ll
M llvm/test/Instrumentation/BoundsChecking/simple.ll
M llvm/test/Instrumentation/HWAddressSanitizer/vector-load-store.ll
M llvm/test/Instrumentation/MemorySanitizer/vector-load-store.ll
M llvm/test/Instrumentation/MemorySanitizer/vscale.ll
M llvm/test/Transforms/InstCombine/AArch64/sve-intrinsic-opts-counting-elems.ll
M llvm/test/Transforms/InstCombine/gep-vector.ll
M llvm/test/Transforms/InstCombine/gepofconstgepi8.ll
M llvm/test/Transforms/InstCombine/getelementptr.ll
M llvm/test/Transforms/InstCombine/icmp-gep.ll
M llvm/test/Transforms/InstCombine/masked_intrinsics.ll
M llvm/test/Transforms/InstCombine/opaque-ptr.ll
M llvm/test/Transforms/InstCombine/scalable-vector-array.ll
M llvm/test/Transforms/InstCombine/scalable-vector-struct.ll
M llvm/test/Transforms/InstCombine/sub-gep.ll
M llvm/test/Transforms/InstCombine/vscale_gep.ll
M llvm/test/Transforms/LoopVectorize/AArch64/clamped-trip-count.ll
M llvm/test/Transforms/LoopVectorize/AArch64/conditional-branches-cost.ll
M llvm/test/Transforms/LoopVectorize/AArch64/divs-with-scalable-vfs.ll
M llvm/test/Transforms/LoopVectorize/AArch64/eliminate-tail-predication.ll
M llvm/test/Transforms/LoopVectorize/AArch64/gather-do-not-vectorize-addressing.ll
M llvm/test/Transforms/LoopVectorize/AArch64/induction-costs-sve.ll
M llvm/test/Transforms/LoopVectorize/AArch64/low_trip_count_predicates.ll
M llvm/test/Transforms/LoopVectorize/AArch64/masked-call.ll
M llvm/test/Transforms/LoopVectorize/AArch64/optsize_minsize.ll
M llvm/test/Transforms/LoopVectorize/AArch64/outer_loop_prefer_scalable.ll
M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-chained.ll
M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-dot-product-epilogue.ll
M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-dot-product-mixed.ll
M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-dot-product.ll
M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-sub.ll
M llvm/test/Transforms/LoopVectorize/AArch64/pr60831-sve-inv-store-crash.ll
M llvm/test/Transforms/LoopVectorize/AArch64/reduction-recurrence-costs-sve.ll
M llvm/test/Transforms/LoopVectorize/AArch64/scalable-avoid-scalarization.ll
M llvm/test/Transforms/LoopVectorize/AArch64/scalable-reduction-inloop-cond.ll
M llvm/test/Transforms/LoopVectorize/AArch64/scalable-strict-fadd.ll
M llvm/test/Transforms/LoopVectorize/AArch64/simple_early_exit.ll
M llvm/test/Transforms/LoopVectorize/AArch64/store-costs-sve.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-epilog-vect-inloop-reductions.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-epilog-vect-no-remaining-iterations.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-epilog-vect-reductions.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-epilog-vect-strict-reductions.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-epilog-vect.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-extract-last-veclane.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-fneg.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-inductions-unusual-types.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-inductions.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-interleaved-accesses.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-interleaved-masked-accesses.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-inv-store.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-live-out-pointer-induction.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-low-trip-count.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-multiexit.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-runtime-check-size-based-threshold.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-tail-folding-forced.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-tail-folding-optsize.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-tail-folding-reductions.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-tail-folding-unroll.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-tail-folding.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-vector-reverse.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-vscale-based-trip-counts.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-widen-gep.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve2-histcnt-epilogue.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve2-histcnt-too-many-deps.ll
M llvm/test/Transforms/LoopVectorize/AArch64/tail-folding-styles.ll
M llvm/test/Transforms/LoopVectorize/AArch64/uniform-args-call-variants.ll
M llvm/test/Transforms/LoopVectorize/AArch64/wider-VF-for-callinst.ll
M llvm/test/Transforms/LoopVectorize/RISCV/bf16.ll
M llvm/test/Transforms/LoopVectorize/RISCV/blend-any-of-reduction-cost.ll
M llvm/test/Transforms/LoopVectorize/RISCV/blocks-with-dead-instructions.ll
M llvm/test/Transforms/LoopVectorize/RISCV/dead-ops-cost.ll
M llvm/test/Transforms/LoopVectorize/RISCV/defaults.ll
M llvm/test/Transforms/LoopVectorize/RISCV/divrem.ll
M llvm/test/Transforms/LoopVectorize/RISCV/f16.ll
M llvm/test/Transforms/LoopVectorize/RISCV/fminimumnum.ll
M llvm/test/Transforms/LoopVectorize/RISCV/induction-costs.ll
M llvm/test/Transforms/LoopVectorize/RISCV/inloop-reduction.ll
M llvm/test/Transforms/LoopVectorize/RISCV/interleaved-accesses.ll
M llvm/test/Transforms/LoopVectorize/RISCV/interleaved-masked-access.ll
M llvm/test/Transforms/LoopVectorize/RISCV/lmul.ll
M llvm/test/Transforms/LoopVectorize/RISCV/low-trip-count.ll
M llvm/test/Transforms/LoopVectorize/RISCV/mask-index-type.ll
M llvm/test/Transforms/LoopVectorize/RISCV/masked_gather_scatter.ll
M llvm/test/Transforms/LoopVectorize/RISCV/partial-reduce-dot-product.ll
M llvm/test/Transforms/LoopVectorize/RISCV/pr87378-vpinstruction-or-drop-poison-generating-flags.ll
M llvm/test/Transforms/LoopVectorize/RISCV/remark-reductions.ll
M llvm/test/Transforms/LoopVectorize/RISCV/riscv-vector-reverse-output.ll
M llvm/test/Transforms/LoopVectorize/RISCV/riscv-vector-reverse.ll
M llvm/test/Transforms/LoopVectorize/RISCV/safe-dep-distance.ll
M llvm/test/Transforms/LoopVectorize/RISCV/scalable-basics.ll
M llvm/test/Transforms/LoopVectorize/RISCV/scalable-tailfold.ll
M llvm/test/Transforms/LoopVectorize/RISCV/select-cmp-reduction.ll
M llvm/test/Transforms/LoopVectorize/RISCV/strided-accesses.ll
M llvm/test/Transforms/LoopVectorize/RISCV/truncate-to-minimal-bitwidth-cost.ll
M llvm/test/Transforms/LoopVectorize/RISCV/truncate-to-minimal-bitwidth-evl-crash.ll
M llvm/test/Transforms/LoopVectorize/RISCV/type-info-cache-evl-crash.ll
M llvm/test/Transforms/LoopVectorize/RISCV/uniform-load-store.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-bin-unary-ops-args.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-call-intrinsics.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-cast-intrinsics.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-cond-reduction.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-div.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-fixed-order-recurrence.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-inloop-reduction.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-interleave.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-intermediate-store.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-iv32.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-known-no-overflow.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-masked-loadstore.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-ordered-reduction.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-reduction.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-reverse-load-store.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-safe-dep-distance.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-uniform-store.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-vp-intrinsics.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vplan-vp-select-intrinsics.ll
M llvm/test/Transforms/LoopVectorize/outer_loop_scalable.ll
M llvm/test/Transforms/LoopVectorize/scalable-first-order-recurrence.ll
M llvm/test/Transforms/LoopVectorize/scalable-inductions.ll
M llvm/test/Transforms/LoopVectorize/scalable-iv-outside-user.ll
M llvm/test/Transforms/LoopVectorize/scalable-lifetime.ll
M llvm/test/Transforms/LoopVectorize/scalable-loop-unpredicated-body-scalar-tail.ll
M llvm/test/Transforms/LoopVectorize/scalable-reduction-inloop.ll
M llvm/test/Transforms/LoopVectorize/scalable-trunc-min-bitwidth.ll
M llvm/test/Transforms/LoopVectorize/vectorize-force-tail-with-evl.ll
M llvm/test/Transforms/MemCpyOpt/vscale-crashes.ll
M llvm/test/Transforms/PhaseOrdering/AArch64/sve-interleave-vectorization.ll
M llvm/test/Transforms/PreISelIntrinsicLowering/AArch64/expand-exp.ll
Log Message:
-----------
[LLVM][IRBuilder] Use NUW arithmetic for Create{ElementCount,TypeSize}. (#143532)
This put the onus on the caller to ensure the result type is big enough.
In the unlikely event a cropped result is required then explicitly
truncate a safe value.
Commit: c4c2d777f4aea07c59ff85ade75816df24b05389
https://github.com/llvm/llvm-project/commit/c4c2d777f4aea07c59ff85ade75816df24b05389
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlanUnroll.cpp
M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-interleave.ll
Log Message:
-----------
[VPlan] Fix handling of ReductionStartVector for rdxs when unrolling.
Update handling of ReductionStartVector in VPlanUnroll for partial
reductions. The new code makes sure all parts are properly set to the
cloned ReductionStartVector.
Fixes a mis-compile reported for
https://github.com/llvm/llvm-project/pull/142290.
Commit: 5148e085386fb1808fba055e170d88e3344220ca
https://github.com/llvm/llvm-project/commit/5148e085386fb1808fba055e170d88e3344220ca
Author: Karlo Basioli <k.basioli at gmail.com>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M clang/include/clang/Serialization/ASTRecordWriter.h
Log Message:
-----------
Fix build issue caused by commit #0fe78c4 (#144888)
Noticed internally in blaze build.
Commit: dae5104eed451fdd0354ff9639feba10f9dc5440
https://github.com/llvm/llvm-project/commit/dae5104eed451fdd0354ff9639feba10f9dc5440
Author: Michael Buch <michaelbuch12 at gmail.com>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp
M lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.h
M lldb/unittests/SymbolFile/DWARF/DWARFASTParserClangTests.cpp
Log Message:
-----------
[lldb][DWARFASTParserClang] Make GetCXXObjectParameter public and call it from unit-tests (#144879)
My goal is to remove the `object_pointer` member on
`ParsedDWARFTypeAttributes` since it's duplicating information that we
retrieve with `GetCXXObjectParameter` anyway. To continue having
coverage for the `DW_AT_object_pointer` code-paths, instead of checking
the
`attrs.object_pointer` I'm now calling `GetCXXObjectParameter` directly.
We could find some very roundabout way to go via the Clang AST to check
that the object parameter was parsed correctly, but that quickly became
quite painful.
Depends on https://github.com/llvm/llvm-project/pull/144876
Commit: c079040eea5ce75a97285003948d141ebaac69e6
https://github.com/llvm/llvm-project/commit/c079040eea5ce75a97285003948d141ebaac69e6
Author: Charles Zablit <c_zablit at apple.com>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M lldb/include/lldb/Core/DemangledNameInfo.h
M lldb/unittests/Core/MangledTest.cpp
Log Message:
-----------
[lldb] add has methods to all DemangledNameInfo attributes (#144549)
Add `hasX` methods to all the attributes of `DemangledNameInfo`.
Commit: 09e794c4bb138e14b3156d7dbdac0164d9c0327b
https://github.com/llvm/llvm-project/commit/09e794c4bb138e14b3156d7dbdac0164d9c0327b
Author: Joseph Huber <huberjn at outlook.com>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M clang/lib/CodeGen/CodeGenModule.cpp
Log Message:
-----------
[HIP] Emit the CUID value in the module with the new driver (#144570)
Summary:
This is a weird point of divergence that was not updated when the new
driver
switched to using the CUID method, which is also apparently critical
for SPIR-V compilation not failing? Somehow if we don't emit this global
than the `llvm.compiler.used` global uses AS(0) which makes SPIR-V
unhappy, but with this global it's AS(4) which makes it happy. Either
way, this should be fixed.
Commit: e873fd157eda617ffd42edad3c4a6ab495e6e375
https://github.com/llvm/llvm-project/commit/e873fd157eda617ffd42edad3c4a6ab495e6e375
Author: Anatoly Trosinenko <atrosinenko at accesssoftek.com>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M bolt/lib/Passes/PAuthGadgetScanner.cpp
M bolt/test/binary-analysis/AArch64/gs-pauth-debug-output.s
Log Message:
-----------
[BOLT] Gadget scanner: do not crash on debug-printing CFI instructions (#136151)
Some instruction-printing code used under LLVM_DEBUG does not handle CFI
instructions well. While CFI instructions seem to be harmless for the
correctness of the analysis results, they do not convey any useful
information to the analysis either, so skip them early.
Commit: 493a359237e824216d5c572656481c42165a2cb7
https://github.com/llvm/llvm-project/commit/493a359237e824216d5c572656481c42165a2cb7
Author: David Spickett <david.spickett at linaro.org>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M lldb/test/API/commands/register/register/aarch64_mte_ctrl_register/TestMTECtrlRegister.py
Log Message:
-----------
[lldb][AArch64] Fix live process test for Linux's mte_ctrl register
I forgot to update this when I changed the presentation of the
"TCF" field.
Commit: 83381ba832a5cf34b09e27a6154c7179fed2fc80
https://github.com/llvm/llvm-project/commit/83381ba832a5cf34b09e27a6154c7179fed2fc80
Author: Ilia Kuklin <ikuklin at accesssoftek.com>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M lldb/source/ValueObject/DILParser.cpp
M lldb/test/API/commands/frame/var-dil/basics/ArraySubscript/TestFrameVarDILArraySubscript.py
M lldb/test/API/commands/frame/var-dil/basics/ArraySubscript/main.cpp
Log Message:
-----------
[LLDB] Add negative number parsing to DIL (#144557)
Commit: 5645d6710904107d66a45f1c3ee0ee25924ff08a
https://github.com/llvm/llvm-project/commit/5645d6710904107d66a45f1c3ee0ee25924ff08a
Author: Aly ElAshram <71949028+AlyElashram at users.noreply.github.com>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
A libc/config/darwin/aarch64/config.json
M libc/config/darwin/aarch64/entrypoints.txt
M libc/config/darwin/aarch64/headers.txt
M libc/src/setjmp/CMakeLists.txt
A libc/src/setjmp/darwin/CMakeLists.txt
A libc/src/setjmp/darwin/sigsetjmp_epilogue.cpp
M libc/test/src/CMakeLists.txt
Log Message:
-----------
Implement `sigsetjmp` and `siglongjmp` for darwin/aarch64 (#139555)
Commit: bf79d4819edeb54c6cf528db63676110992908a8
https://github.com/llvm/llvm-project/commit/bf79d4819edeb54c6cf528db63676110992908a8
Author: zhijian lin <zhijian at ca.ibm.com>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M clang/lib/Basic/Targets/PPC.cpp
M clang/test/CodeGenCXX/cxx11-thread-local-reference.cpp
M clang/test/Driver/aix-shared-lib-tls-model-opt.c
M clang/test/Driver/aix-small-local-exec-dynamic-tls.c
M clang/test/Driver/ppc-crbits.cpp
M clang/test/Driver/ppc-isa-features.cpp
M llvm/include/llvm/TargetParser/CMakeLists.txt
M llvm/include/llvm/TargetParser/PPCTargetParser.h
M llvm/include/llvm/TargetParser/TargetParser.h
M llvm/lib/Target/PowerPC/PPC.td
M llvm/lib/TargetParser/PPCTargetParser.cpp
M llvm/lib/TargetParser/TargetParser.cpp
M llvm/utils/TableGen/Basic/CMakeLists.txt
A llvm/utils/TableGen/Basic/TargetFeaturesEmitter.cpp
A llvm/utils/TableGen/Basic/TargetFeaturesEmitter.h
M llvm/utils/TableGen/SubtargetEmitter.cpp
Log Message:
-----------
[Reland] [PowerPC] frontend get target feature from backend with cpu name (#144594)
1. The PR proceeds with a backend target hook to allow front-ends to
determine what target features are available in a compilation based on
the CPU name.
2. Fix a backend target feature bug that supports HTM for
Power8/9/10/11. However, HTM is only supported on Power8/9 according to
the ISA.
3. All target features that are hardcoded in PPC.cpp can be retrieved
from the backend target feature. I have double-checked that the
hardcoded logic for inferring target features from the CPU in the
frontend(PPC.cpp) is the same as in PPC.td.
The reland patch addressed the comment
https://github.com/llvm/llvm-project/pull/137670#discussion_r2143541120
Commit: f87b6625d64c4ba95cf26b249ce6bdbcb31d65c9
https://github.com/llvm/llvm-project/commit/f87b6625d64c4ba95cf26b249ce6bdbcb31d65c9
Author: Abdul Raheem <abdulraheembeigh at gmail.com>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M mlir/include/mlir/IR/Operation.h
Log Message:
-----------
[MLIR][NFC] Fixed some Typos (#144263)
-- Fixed some typos in Operation.h
Signed-off: Abdul Raheem Beigh abdulraheembeigh at gmail.com
Commit: e75e2485f2e5e627d0bdf0306df4672f69ddd6eb
https://github.com/llvm/llvm-project/commit/e75e2485f2e5e627d0bdf0306df4672f69ddd6eb
Author: Brox Chen <guochen2 at amd.com>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
A llvm/test/CodeGen/AMDGPU/fix-sgpr-copies-f16-gfx12-fake16.mir
A llvm/test/CodeGen/AMDGPU/fix-sgpr-copies-f16-gfx12-true16.mir
M llvm/test/CodeGen/AMDGPU/move-to-valu-pseudo-scalar-trans-f16-fake16.ll
M llvm/test/CodeGen/AMDGPU/move-to-valu-pseudo-scalar-trans-f16-true16.ll
Log Message:
-----------
[AMDGPU][True16][Codegen] keep srcmod/clamp/omod from v_s_xxx_f16 when moved to VALU (#144781)
https://github.com/llvm/llvm-project/pull/141152 causes an issue in
v_s_xxx_f16 lowering in both true16/fake16 flow.
V_S_XXX_F16 are special insts which has scalar input/output but in VALU
VOP3 format. Need to keep the srcmod/clamp/omod when lower it to its
corresponding VALU inst with vector input/output.
Commit: 278ece7c80d36bb1074fa53e655a5ca8f31145dd
https://github.com/llvm/llvm-project/commit/278ece7c80d36bb1074fa53e655a5ca8f31145dd
Author: Abhishek Kaushik <abhishek.kaushik at intel.com>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
A llvm/test/Transforms/InstCombine/bitcast-known-bits.ll
Log Message:
-----------
[InstCombine][NFC] Pre-commit tests for #125935 (#144111)
Pre-commit tests for #125935
---------
Co-authored-by: Simon Pilgrim <llvm-dev at redking.me.uk>
Commit: a4e4527c4b44be9a88168c0a4758de58fd1a770d
https://github.com/llvm/llvm-project/commit/a4e4527c4b44be9a88168c0a4758de58fd1a770d
Author: Matthias Springer <me at m-sp.org>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M mlir/lib/Conversion/FuncToLLVM/FuncToLLVM.cpp
M mlir/lib/Transforms/Utils/DialectConversion.cpp
Log Message:
-----------
[mlir][Transforms] Fix replaceUsesOfBlockArgument API (#144706)
Before this PR, users had to pass the "old" block argument when
replacing the uses of a block argument in a newly converted block. Users
can now pass the actual block argument that should be replaced.
Note for LLVM integration: Make sure to pass the current block argument
instead of the old one.
Commit: 802fa92aee3565768887615108aa3e924d4e0fc7
https://github.com/llvm/llvm-project/commit/802fa92aee3565768887615108aa3e924d4e0fc7
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M llvm/lib/Transforms/Utils/PredicateInfo.cpp
Log Message:
-----------
[PredicateInfo] Avoid duplicate hash lookup (NFC)
Use try_emplace to either look up the existing entry or insert it.
Commit: 7e8f1f5f72753a1d9d3ae2810da52b82a787600b
https://github.com/llvm/llvm-project/commit/7e8f1f5f72753a1d9d3ae2810da52b82a787600b
Author: Siu Chi Chan <siuchi.chan at amd.com>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M clang/lib/Driver/ToolChains/Linux.cpp
M clang/test/Driver/hip-runtime-libs-linux.hip
Log Message:
-----------
[HIP] Remove dots in HIP runtime path (#143792)
Remove the dots in the HIP path before passing to the rpath flag
Commit: 4c6f398b866030c17fd94dcdca04f4df03c5214c
https://github.com/llvm/llvm-project/commit/4c6f398b866030c17fd94dcdca04f4df03c5214c
Author: Joseph Huber <huberjn at outlook.com>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M clang/lib/Driver/Driver.cpp
M clang/lib/Driver/ToolChains/HIPAMD.cpp
M clang/lib/Driver/ToolChains/HIPAMD.h
A clang/test/Driver/spirv-amd-toolchain.c
Log Message:
-----------
[Clang] Add standalone AMDGPU SPIR-V toolchain (#144576)
Summary:
The AMDGPU toolchain uses a different set of tools than the standard
SPIR-V toolchain. The linker wrapper prefers to invoke a linker via a
clang toolchain. To make that work we introduce
`--target=spirv64-amd-amdhsa` so that it creates the linking phases that
HIP prefers. Additionally, this can be used to make LLVM-IR / SPIR-V
from C/C++ that can be linked with the HIP output.
Commit: 19360e62d0d1a1dabf9f01736927ab8f1b72c7df
https://github.com/llvm/llvm-project/commit/19360e62d0d1a1dabf9f01736927ab8f1b72c7df
Author: Nico Weber <thakis at chromium.org>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M llvm/utils/gn/secondary/llvm/include/llvm/TargetParser/BUILD.gn
M llvm/utils/gn/secondary/llvm/utils/TableGen/Basic/BUILD.gn
Log Message:
-----------
[gn build] port bf79d4819ede (ppc -gen-target-features)
Commit: 89efae916a5de0387710b7dc06938423817e1503
https://github.com/llvm/llvm-project/commit/89efae916a5de0387710b7dc06938423817e1503
Author: Jack Styles <jack.styles at arm.com>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M flang/lib/Lower/OpenMP/ClauseProcessor.cpp
M flang/lib/Lower/OpenMP/ClauseProcessor.h
M flang/lib/Lower/OpenMP/Clauses.cpp
M flang/lib/Lower/OpenMP/OpenMP.cpp
A flang/test/Lower/OpenMP/target-enter-data-default-openmp52.f90
Log Message:
-----------
[Flang][OpenMP] Update default MapType for Map Clauses and OpenMP 5.2 (#144715)
In OpenMP 5.2, the `target enter data` and `target exit data` constructs
now have default map types if the user does not define them in the Map
clause. For `target enter data`, this is `to` and `target exit data`
this is `from`. This behaviour is now enabled when OpenMP 5.2 or greater
is used when compiling. To enable this, the default value is now set in
the `processMap` clause, with any previous behaviour being maintained
for either older versions of OpenMP or other directives.
See also #110008
Commit: eb694b28461fdbd5e347fca59829e8a9ad021773
https://github.com/llvm/llvm-project/commit/eb694b28461fdbd5e347fca59829e8a9ad021773
Author: Tobias Gysi <tobias.gysi at nextsilicon.com>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M mlir/lib/Dialect/Arith/IR/ArithCanonicalization.td
M mlir/lib/Dialect/Arith/IR/ArithOps.cpp
M mlir/test/Dialect/Arith/canonicalize.mlir
Log Message:
-----------
[mlir][arith] Delete mul ext canonicalizations (#144844)
The Arith dialect includes patterns that canonicalize a sequence of:
- trunci(shrui(mul(sext(x), sext(y)), c)) -> mulsi_extended(x, y)
- trunci(shrui(mul(zext(x), zext(y)), c)) -> mului_extended(x, y)
These patterns return the high word of an extended multiplication, which
assumes that the shift amount is equal to the bit width of the original
operands. This check was missing, leading to incorrect canonicalizations
when the shift amount was less than the bit width.
For example, the following code:
```
%x = arith.extui %a: i32 to i33
%y = arith.extui %b: i32 to i33
%m = arith.muli %x, %y: i33
%c1 = arith.constant 1: i33
%sh = arith.shrui %m, %c1 : i33
%hi = arith.trunci %sh: i33 to i32
```
would incorrectly be canonicalized to:
```
_, %hi = arith.mului_extended %a, %b : i32
```
This commit removes the faulty canonicalizations since they are not
believed to be generally beneficial (c.f., the discussion of the
alternative https://github.com/llvm/llvm-project/pull/144787 which fixes
the canonicalizations).
Commit: 3516ad05dfd674d731487cb67bbfe48f7e1fda9c
https://github.com/llvm/llvm-project/commit/3516ad05dfd674d731487cb67bbfe48f7e1fda9c
Author: Mikhail R. Gadelha <mikhail at igalia.com>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVSchedSpacemitX60.td
M llvm/test/tools/llvm-mca/RISCV/SpacemitX60/atomic.s
M llvm/test/tools/llvm-mca/RISCV/SpacemitX60/floating-point.s
M llvm/test/tools/llvm-mca/RISCV/SpacemitX60/integer.s
Log Message:
-----------
[RISCV] Update SpacemiT X60 scheduling latencies based on hardware measurements (#144730)
This patch updates the RISC-V SpacemiT X60 scheduling model with latency
values collected from the X60 hardware. The previous values were
empirically derived but were slightly off.
Changes:
- LoadLatency (baseline for load instructions): 5 --> 3 cycles
- Memory operations: unified at 4 cycles
- Atomic loads/stores: 5 --> 8 cycles
- Atomic RMW operations: 5 --> 12 cycles
Hardware-measured values provide more accurate instruction scheduling
for the in-order X60 core. Testing shows NFC across benchmarks except
for 523.xalancbmk_r (known to be noisy).
https://lnt.lukelau.me/db_default/v4/nts/663?compare_to=657
Commit: fdb572681de7e12b7cd03fd33478022272eb1bae
https://github.com/llvm/llvm-project/commit/fdb572681de7e12b7cd03fd33478022272eb1bae
Author: Karlo Basioli <k.basioli at gmail.com>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/llvm/BUILD.bazel
Log Message:
-----------
Fix bazel build after #144594 (#144904)
Commit: 5eb24fde11cd82a08f208509f80f428da90c89c9
https://github.com/llvm/llvm-project/commit/5eb24fde11cd82a08f208509f80f428da90c89c9
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
M llvm/test/CodeGen/RISCV/shifts.ll
Log Message:
-----------
[SelectionDAG][RISCV] Preserve nneg flag when folding (trunc (zext X))->(zext X). (#144807)
If X is known non-negative, that's still true if we fold the truncate
to create a smaller zext.
In the i128 tests, SelectionDAGBuilder aggressively truncates the
`zext nneg` to i64 to match `getShiftAmountTy`. If we don't preserve
the `nneg` we can't see that the shift amount argument being `signext`
means we don't need to do any extension
Commit: 3de01d07c33c10dfefc753c87c0a926fd512425b
https://github.com/llvm/llvm-project/commit/3de01d07c33c10dfefc753c87c0a926fd512425b
Author: Karlo Basioli <k.basioli at gmail.com>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M llvm/lib/TargetParser/TargetParser.cpp
Log Message:
-----------
Fix bazel build after #144594, mark variable as potentially unused (#144910)
Commit: 36af7345dfb8e84a1f2971db34089b63321e8467
https://github.com/llvm/llvm-project/commit/36af7345dfb8e84a1f2971db34089b63321e8467
Author: Stephen Tozer <stephen.tozer at sony.com>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M clang/docs/CommandGuide/clang.rst
M clang/docs/ReleaseNotes.rst
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/test/Driver/extend-variable-liveness.c
Log Message:
-----------
Reapply "[Clang] Enable -fextend-variable-liveness at -Og (#118026)"
Relands this feature after several fixes:
* Force fake uses to be emitted before musttail calls (#136867)
* Added soften-float legalization for fake uses (#142714)
* Treat fake uses as size-less instructions in a SystemZ assert (#144390)
If further issues with fake uses are found then this may be reverted again,
but all currently-known issues are resolved.
This reverts commit 2dc6e98169baeb1f73036da0ea50fd828d8323d0.
Commit: f4db14229cd975822c41376afda9d56a29f9396c
https://github.com/llvm/llvm-project/commit/f4db14229cd975822c41376afda9d56a29f9396c
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M llvm/include/llvm/Transforms/Utils/SCCPSolver.h
M llvm/lib/Transforms/IPO/SCCP.cpp
M llvm/lib/Transforms/Utils/SCCPSolver.cpp
Log Message:
-----------
[SCCP] Move logic for removing ssa.copy into Solver (NFC)
So it can be reused between IPSCCP and SCCP.
Make the implementation a bit more efficient by only lookup the
PredicateInfo once.
Commit: 01d648a42939c834b6b45677e540882222b01c11
https://github.com/llvm/llvm-project/commit/01d648a42939c834b6b45677e540882222b01c11
Author: Steven Perron <stevenperron at google.com>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M clang/include/clang/Basic/Attr.td
M clang/include/clang/Basic/AttrDocs.td
M clang/include/clang/Basic/Builtins.td
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/include/clang/Sema/SemaHLSL.h
M clang/lib/CodeGen/CGHLSLBuiltins.cpp
M clang/lib/CodeGen/CodeGenFunction.h
M clang/lib/Sema/SemaDecl.cpp
M clang/lib/Sema/SemaDeclAttr.cpp
M clang/lib/Sema/SemaHLSL.cpp
A clang/test/AST/HLSL/vk.spec-constant.usage.hlsl
R clang/test/CodeGenHLSL/inline-spirv/SpirvType.alignment.hlsl
R clang/test/CodeGenHLSL/inline-spirv/SpirvType.hlsl
A clang/test/CodeGenHLSL/vk-features/SpirvType.alignment.hlsl
A clang/test/CodeGenHLSL/vk-features/SpirvType.hlsl
A clang/test/CodeGenHLSL/vk-features/vk.spec-constant.hlsl
A clang/test/SemaHLSL/vk.spec-constant.error.hlsl
Log Message:
-----------
[HLSL][SPIRV] Reapply "[HLSL][SPIRV] Add vk::constant_id attribute." (#144902)
- **Reapply "[HLSL][SPIRV] Add vk::constant_id attribute." (#144812)**
- **Fix memory leak.**
Commit: c1ac87b327861a7387c1ab9e1ffb1c002acbcd6a
https://github.com/llvm/llvm-project/commit/c1ac87b327861a7387c1ab9e1ffb1c002acbcd6a
Author: lntue <lntue at google.com>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M libc/src/setjmp/CMakeLists.txt
Log Message:
-----------
[libc] Fix setjmp build order. (#144917)
Fix build order issue from
https://github.com/llvm/llvm-project/pull/139555.
Commit: b8337349d9b6143669e8bfa6776926a708cacf99
https://github.com/llvm/llvm-project/commit/b8337349d9b6143669e8bfa6776926a708cacf99
Author: lntue <lntue at google.com>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M libc/src/__support/FPUtil/FEnvImpl.h
M libc/src/__support/macros/optimization.h
Log Message:
-----------
[libc][math] Skip setting errno and floating point exception for math functions when LIBC_MATH flag has LIBC_MATH_NO_ERRNO and LIBC_MATH_NO_EXCEPT. (#144920)
Commit: 5cf7d871b030212d021ffc9356620551f09ad402
https://github.com/llvm/llvm-project/commit/5cf7d871b030212d021ffc9356620551f09ad402
Author: Rahul Joshi <rjoshi at nvidia.com>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M clang/include/clang/AST/DeclTemplate.h
M clang/include/clang/AST/Expr.h
M clang/include/clang/AST/OpenACCClause.h
M clang/include/clang/AST/OpenMPClause.h
M clang/include/clang/AST/StmtOpenACC.h
M clang/include/clang/AST/Type.h
M clang/lib/AST/ASTImporter.cpp
M clang/lib/AST/Decl.cpp
M clang/lib/AST/ExprCXX.cpp
M clang/lib/AST/OpenMPClause.cpp
M clang/lib/AST/Type.cpp
Log Message:
-----------
[NFC][Clang][AST] Adopt simplified `getTrailingObjects` in AST (#144432)
Adopt simplified `getTrailingObjects` API in several places in clag/AST
that were missed by earlier changes.
Commit: c0cc81cdc03c97473ba771bbc3a2330bd22396bc
https://github.com/llvm/llvm-project/commit/c0cc81cdc03c97473ba771bbc3a2330bd22396bc
Author: Rahul Joshi <rjoshi at nvidia.com>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M clang/lib/Serialization/ASTReaderDecl.cpp
M clang/lib/Serialization/ASTReaderStmt.cpp
Log Message:
-----------
[NFC][Clang] Adopt simplified `getTrailingObjects` in ASTReader (#144438)
Commit: 3fe62682ef9ca514b899d0cecaebb8f1fd97baef
https://github.com/llvm/llvm-project/commit/3fe62682ef9ca514b899d0cecaebb8f1fd97baef
Author: Andrzej Warzyński <andrzej.warzynski at arm.com>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M mlir/include/mlir/Dialect/Vector/IR/VectorOps.td
Log Message:
-----------
[mlir][vector] Use `result` consistently as the result argument name (#144739)
This patch updates the following ops to use `result` (instead of `res`)
as the name for their result argument:
* `vector.scalable.insert`
* `vector.scalable.extract`
* `vector.insert_strided_slice`
This change ensures naming consistency with other ops in the `vector`
dialect. It addresses part of:
* https://github.com/llvm/llvm-project/issues/131602
Commit: 0816bb32ac37b24d2f895f0c0464b7659fffd4fc
https://github.com/llvm/llvm-project/commit/0816bb32ac37b24d2f895f0c0464b7659fffd4fc
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M llvm/lib/Transforms/Scalar/LowerMatrixIntrinsics.cpp
Log Message:
-----------
[Matrix] Fix heap-use-after-free after 0fa373c77ded203eddb.
We need to skip instructions in FusedInsts, as they may have been
deleted. Fixes a heap-use-after-free after #141681.
Commit: 6ce86538c11b3ef93a2a8df3bd4f817a724f42bd
https://github.com/llvm/llvm-project/commit/6ce86538c11b3ef93a2a8df3bd4f817a724f42bd
Author: Slava Zakharin <szakharin at nvidia.com>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M mlir/include/mlir/Dialect/ControlFlow/IR/ControlFlowOps.td
M mlir/lib/Dialect/ControlFlow/IR/ControlFlowOps.cpp
M mlir/test/Dialect/ControlFlow/canonicalize.mlir
Log Message:
-----------
[mlir][cf] Preserve branch weights during cf.cond_br canonicalization. (#144822)
Commit: c0c71463f6bca05eb4540b68cdcbd17c916562c9
https://github.com/llvm/llvm-project/commit/c0c71463f6bca05eb4540b68cdcbd17c916562c9
Author: Slava Zakharin <szakharin at nvidia.com>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M llvm/include/llvm/IR/PatternMatch.h
M llvm/lib/Transforms/InstCombine/InstCombineAddSub.cpp
M llvm/lib/Transforms/InstCombine/InstCombineMulDivRem.cpp
M llvm/lib/Transforms/InstCombine/InstCombineNegator.cpp
A llvm/test/Transforms/InstCombine/sub-sext-add.ll
Log Message:
-----------
[InstCombine] Optimize sub(sext(add(x,y)),sext(add(x,z))). (#144174)
This pattern can be often met in Flang generated LLVM IR,
for example, for the counts of the loops generated for array
expressions like: `a(x:x+y)` or `a(x+z:x+z)` or their variations.
In order to compute the loop count, Flang needs to subtract
the lower bound of the array slice from the upper bound
of the array slice. To avoid the sign wraps, it sign extends
the original values (that may be of any user data type)
to `i64`.
This peephole is really helpful in CPU2017/548.exchange2,
where we have multiple following statements like this:
```
block(row+1:row+2, 7:9, i7) = block(row+1:row+2, 7:9, i7) - 10
```
While this is just a 2x3 iterations loop nest, LLVM cannot
figure it out, ending up vectorizing the inner loop really
hard (with a vector epilog and scalar remainder). This, in turn,
causes problems for LSR that ends up creating too many loop-carried
values in the loop containing the above statement, which are then
causing too many spills/reloads.
Alive2: https://alive2.llvm.org/ce/z/gLgfYX
Related to #143219.
Commit: 0b8179b2adbc821324c425d7cafd269f84e72d5e
https://github.com/llvm/llvm-project/commit/0b8179b2adbc821324c425d7cafd269f84e72d5e
Author: Abhishek Kaushik <abhishek.kaushik at intel.com>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M llvm/lib/Analysis/ValueTracking.cpp
M llvm/test/Transforms/InstCombine/X86/x86-vector-shifts.ll
M llvm/test/Transforms/InstCombine/bitcast-known-bits.ll
Log Message:
-----------
[ValueTracking] Improve `Bitcast` handling to match SDAG (#125935)
Closes #125228
Commit: f780955e1df9105e9c4e67ebd16efded7dd279e2
https://github.com/llvm/llvm-project/commit/f780955e1df9105e9c4e67ebd16efded7dd279e2
Author: Justin King <jcking at google.com>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M compiler-rt/lib/lsan/lsan_interceptors.cpp
Log Message:
-----------
lsan: fix macos build after #144604 (#144818)
Fixes build failures on macOS, including
https://green.lab.llvm.org/job/llvm.org/job/clang-stage1-RA/
llvm-project/compiler-rt/lib/lsan/lsan_interceptors.cpp:579:3: error: use of undeclared identifier 'LSAN_MAYBE_INTERCEPT_FREE_SIZED'
13:23:58 579 | LSAN_MAYBE_INTERCEPT_FREE_SIZED;
13:23:58 | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
13:23:58 /Users/ec2-user/jenkins/workspace/llvm.org/as-lldb-cmake/llvm-project/compiler-rt/lib/lsan/lsan_interceptors.cpp:580:3: error: use of undeclared identifier 'LSAN_MAYBE_INTERCEPT_FREE_ALIGNED_SIZED'
13:23:58 580 | LSAN_MAYBE_INTERCEPT_FREE_ALIGNED_SIZED;
13:23:58 | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
13:23:58 2 errors generated.
Commit: 836201f1177c38f3ca0457de019bb179a04afe3c
https://github.com/llvm/llvm-project/commit/836201f1177c38f3ca0457de019bb179a04afe3c
Author: Umang Yadav <29876643+umangyadav at users.noreply.github.com>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M mlir/lib/Conversion/AMDGPUToROCDL/AMDGPUToROCDL.cpp
M mlir/test/Conversion/AMDGPUToROCDL/mfma-gfx950.mlir
Log Message:
-----------
Allow bf16 operands on new MFMAs (#144925)
New gfx950 MFMA allows bf16 operands.
https://github.com/llvm/llvm-project/blob/c0cc81cdc03c97473ba771bbc3a2330bd22396bc/llvm/include/llvm/IR/IntrinsicsAMDGPU.td#L3434
When running `amdgpu-to-rocdl`, Current logic converts bf16 to i16
always which fails to compile for newer bf16 MFMA e.g.
`v_mfma_f32_16x16x32bf16`.
Backend expects bf16 type for the operands for those newer MFMAs. This
patch fixes it.
CC: @krzysz00 @dhernandez0 @giuseros @antiagainst @kuhar
Commit: 74ec1c287a88dffc232c38e0fdd3251f6b167d15
https://github.com/llvm/llvm-project/commit/74ec1c287a88dffc232c38e0fdd3251f6b167d15
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
A llvm/test/Transforms/LoopVectorize/ARM/mve-reductions-interleave.ll
Log Message:
-----------
[LV] Add tests interleaving extended and multiply/accumulate reductions.
Add missing test coverage for interleaving with
VPExtendedReduction/VPMulAccumulateReduction recipes.
Adds missing test coverage in preparation for
https://github.com/llvm/llvm-project/pull/144281.
Commit: 3bee9ba0156ee130fa88379a5a89de0812936a3d
https://github.com/llvm/llvm-project/commit/3bee9ba0156ee130fa88379a5a89de0812936a3d
Author: Nicolai Hähnle <nicolai.haehnle at amd.com>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M llvm/docs/AMDGPUUsage.rst
M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
M llvm/lib/Target/AMDGPU/SOPInstructions.td
M llvm/test/CodeGen/AMDGPU/insert-skips-gfx12.mir
A llvm/test/CodeGen/AMDGPU/llvm.amdgcn.s.barrier.signal.isfirst.ll
Log Message:
-----------
AMDGPU/GFX12: Fix s_barrier_signal_isfirst for single-wave workgroups (#143634)
Barrier instructions are no-ops in single-wave workgroups. This includes
s_barrier_signal_isfirst, which will leave SCC unmodified.
Model this correctly (via an implicit use of SCC) and ensure SCC==1
before the barrier instruction (if the wave is the only one of the
workgroup, then it is the first).
---------
Co-authored-by: Matt Arsenault <arsenm2 at gmail.com>
Commit: 633e740e3453bab06bf535830174c759100257f9
https://github.com/llvm/llvm-project/commit/633e740e3453bab06bf535830174c759100257f9
Author: Shilei Tian <i at tianshilei.me>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/lib/Driver/ToolChains/HIPAMD.cpp
M clang/test/Driver/hip-thinlto.hip
M clang/test/Driver/openmp-offload-gpu.c
Log Message:
-----------
[Clang][AMDGPU][Driver] Add `avail-extern-gv-in-addrspace-to-local` option when ThinTLO is enabled (#144914)
On AMDGPU, we need an extra argument
`-avail-extern-gv-in-addrspace-to-local=3`
to privatize LDS global variables when ThinLTO is enabled.
Commit: baf35d7a829efb9688dc0aef6d1e161ef6bc5983
https://github.com/llvm/llvm-project/commit/baf35d7a829efb9688dc0aef6d1e161ef6bc5983
Author: William Huynh <William.Huynh at arm.com>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M libc/cmake/modules/LLVMLibCCompileOptionRules.cmake
Log Message:
-----------
[libc] Fix bug in LIBC_CONF_ERRNO_MODE being undefined (#144896)
A typo, set() instead of list() would cause the build to not define
LIBC_CONF_ERRNO_MODE, which would cause the wrong configuration to be
used.
Commit: 8631b4f1b4f30edd1f26b20e35b7367517aba359
https://github.com/llvm/llvm-project/commit/8631b4f1b4f30edd1f26b20e35b7367517aba359
Author: Slava Zakharin <szakharin at nvidia.com>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M flang/include/flang/Optimizer/Dialect/FIROps.td
M flang/lib/Optimizer/CodeGen/LowerRepackArrays.cpp
A flang/test/Integration/cold_array_repacking.f90
M flang/test/Transforms/lower-repack-arrays.fir
Log Message:
-----------
[flang] Set low probability for array repacking code. (#144830)
This allows LLVM to place the most probably cold blocks
that do the repacking out of the line of the potentially hot code.
Commit: 28808dda2c53a1dff1076cb83a9b91d0866ebf9a
https://github.com/llvm/llvm-project/commit/28808dda2c53a1dff1076cb83a9b91d0866ebf9a
Author: Slava Zakharin <szakharin at nvidia.com>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M flang/test/Integration/cold_array_repacking.f90
Log Message:
-----------
[flang] Fixed test added in #144830.
Commit: dc058a3d84ed1bc4006416023e8b336f3214bdc7
https://github.com/llvm/llvm-project/commit/dc058a3d84ed1bc4006416023e8b336f3214bdc7
Author: Kazu Hirata <kazu at google.com>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M clang/utils/TableGen/ClangAttrEmitter.cpp
M clang/utils/TableGen/ClangDiagnosticsEmitter.cpp
Log Message:
-----------
[TableGen] Use ListSeparator (NFC) (#144936)
Note that an instance of ListSeparator evaluates to the empty string
for the first time and then ", " for subsequent references.
Commit: 7349864d2c7c874c17ed546791489a46e896f901
https://github.com/llvm/llvm-project/commit/7349864d2c7c874c17ed546791489a46e896f901
Author: Kazu Hirata <kazu at google.com>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M llvm/include/llvm/ADT/PointerIntPair.h
Log Message:
-----------
[ADT] Remove an extraneous variable (NFC) (#144937)
Without this patch, Int and IntWord have the same value and type.
This patch removes the extraneous copy.
Commit: 3b672e1d7b7375ca2a048cfb252d0e8ff35724e2
https://github.com/llvm/llvm-project/commit/3b672e1d7b7375ca2a048cfb252d0e8ff35724e2
Author: Kazu Hirata <kazu at google.com>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M llvm/unittests/ADT/TestGraph.h
M llvm/unittests/Support/Casting.cpp
Log Message:
-----------
[llvm] Use "= delete" to delete constructors (NFC) (#144938)
None of the constructors touched in this patch has a corresponding
definition. This patch explicitly deletes them with "= delete" while
moving them to the public section of respective classes. Note that "=
delete" itself serves as documentation.
Identified with modernize-use-equals-delete.
Commit: 03692aa40487d0f4090d329ca2904fb888242c94
https://github.com/llvm/llvm-project/commit/03692aa40487d0f4090d329ca2904fb888242c94
Author: Kazu Hirata <kazu at google.com>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M llvm/include/llvm/ProfileData/MemProfReader.h
Log Message:
-----------
[memprof] Use a lambda instead of std::bind (NFC) (#144940)
A lambda is a lot shorter than std::bind here.
Commit: 9fd22cb56d4c626769afd938e0f9ef6157164394
https://github.com/llvm/llvm-project/commit/9fd22cb56d4c626769afd938e0f9ef6157164394
Author: Peter Klausler <pklausler at nvidia.com>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M flang/include/flang/Evaluate/tools.h
M flang/include/flang/Semantics/tools.h
M flang/lib/Evaluate/tools.cpp
M flang/lib/Lower/OpenACC.cpp
M flang/lib/Lower/OpenMP/OpenMP.cpp
M flang/lib/Semantics/check-omp-structure.cpp
M flang/lib/Semantics/tools.cpp
Log Message:
-----------
[flang][NFC] Move new code to right place (#144551)
Some new code was added to flang/Semantics that only depends on
facilities in flang/Evaluate. Move it into Evaluate and clean up some
minor stylistic problems.
Commit: 53336ad488c953d41e744d42873d712276be980f
https://github.com/llvm/llvm-project/commit/53336ad488c953d41e744d42873d712276be980f
Author: Ross Brunton <ross at codeplay.com>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M offload/liboffload/include/OffloadImpl.hpp
M offload/liboffload/src/OffloadImpl.cpp
M offload/liboffload/src/OffloadLib.cpp
M offload/tools/offload-tblgen/EntryPointGen.cpp
Log Message:
-----------
[Offload] Move (most) global state to an `OffloadContext` struct (#144494)
Rather than having a number of static local variables, we now use
a single `OffloadContext` struct to store global state. This is
initialised by `olInit`, but is never deleted (de-initialization of
Offload isn't yet implemented).
The error reporting mechanism has not been moved to the struct, since
that's going to cause issues with teardown (error messages must outlive
liboffload).
Commit: 2f3a8fd0b3322baac25e5595313413ed4cd1158f
https://github.com/llvm/llvm-project/commit/2f3a8fd0b3322baac25e5595313413ed4cd1158f
Author: lntue <lntue at google.com>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M libc/src/__support/FPUtil/FEnvImpl.h
M libc/src/__support/FPUtil/x86_64/FEnvImpl.h
Log Message:
-----------
[libc] Skip x87 floating point register and only update mxcsr for x86_64 targets when raising exceptions inside math functions. (#144951)
Updating x87 floating point register significantly affect the
performance of the functions.
All the floating point exception reads will merge the results from both
mxcsr and x87 registers anyway.
Commit: 53ea522d1b87c144a1faeffea62d50a4d9907a38
https://github.com/llvm/llvm-project/commit/53ea522d1b87c144a1faeffea62d50a4d9907a38
Author: Philip Reames <preames at rivosinc.com>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorizationPlanner.h
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
Log Message:
-----------
[LV] Introduce and use VPBuilder::createScalarZExtOrTrunc [nfc] (#144946)
Reduce redundant code, make the flow slightly easier to read.
Commit: d3a2931d8af87c20aaede991acda0b5f313075c3
https://github.com/llvm/llvm-project/commit/d3a2931d8af87c20aaede991acda0b5f313075c3
Author: lntue <lntue at google.com>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M libc/src/math/generic/log2f.cpp
Log Message:
-----------
[libc] Use `raise_except_if_required` for log2f. (#144961)
Commit: a9d175f1735a508ac05ab48d83a99071ba97c10e
https://github.com/llvm/llvm-project/commit/a9d175f1735a508ac05ab48d83a99071ba97c10e
Author: Kazu Hirata <kazu at google.com>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M clang/lib/CodeGen/CGBlocks.cpp
M clang/lib/CodeGen/CGCleanup.cpp
M clang/lib/CodeGen/CGDeclCXX.cpp
M clang/lib/CodeGen/CGException.cpp
M clang/lib/CodeGen/CGExpr.cpp
M clang/lib/CodeGen/CGExprConstant.cpp
M clang/lib/CodeGen/CGObjC.cpp
M clang/lib/CodeGen/CGObjCGNU.cpp
M clang/lib/CodeGen/CGObjCMac.cpp
M clang/lib/CodeGen/CGObjCRuntime.cpp
Log Message:
-----------
[CodeGen] Use range-based for loops (NFC) (#144939)
Commit: a8edda195c9fe0d48ee7f6f2438c9575ebbad7f2
https://github.com/llvm/llvm-project/commit/a8edda195c9fe0d48ee7f6f2438c9575ebbad7f2
Author: Kazu Hirata <kazu at google.com>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M llvm/lib/ExecutionEngine/JITLink/COFFDirectiveParser.cpp
M llvm/lib/ExecutionEngine/Orc/UnwindInfoRegistrationPlugin.cpp
M llvm/lib/Linker/IRMover.cpp
M llvm/lib/Target/BPF/BPFPreserveStaticOffset.cpp
Log Message:
-----------
[llvm] Remove unused includes (NFC) (#144941)
These are identified by misc-include-cleaner. I've filtered out those
that break builds. Also, I'm staying away from llvm-config.h,
config.h, and Compiler.h, which likely cause platform- or
compiler-specific build failures.
Commit: dfb5cadf5e816e542e46d3f0551b6a148a93ce3d
https://github.com/llvm/llvm-project/commit/dfb5cadf5e816e542e46d3f0551b6a148a93ce3d
Author: Koakuma <koachan at protonmail.com>
Date: 2025-06-20 (Fri, 20 Jun 2025)
Changed paths:
M llvm/lib/Target/Sparc/Sparc.td
M llvm/lib/Target/Sparc/SparcInstrInfo.td
M llvm/test/CodeGen/SPARC/ctlz.ll
M llvm/test/CodeGen/SPARC/cttz.ll
M llvm/test/CodeGen/SPARC/inlineasm-v9.ll
M llvm/test/CodeGen/SPARC/inlineasm.ll
M llvm/test/MC/Sparc/Relocations/relocation-specifier.s
M llvm/test/MC/Sparc/sparcv9-instructions.s
Log Message:
-----------
[SPARC][IAS] Properly set implied feature sets for ISA levels/extensions (#143232)
Some SPARC ISA levels and/or extensions are defined in a way such that
the availability of it implies the availability of other, more fundamental
ISA features (for example, targeting 64-bit environment implies that
V9 instructions are available).
Properly set those in the TableGen definitions.
Fixes https://github.com/llvm/llvm-project/issues/142388.
Commit: b96370131d1572feb9c51442ac8ba1ccb16d7071
https://github.com/llvm/llvm-project/commit/b96370131d1572feb9c51442ac8ba1ccb16d7071
Author: Philip Reames <preames at rivosinc.com>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M llvm/include/llvm/Analysis/TargetTransformInfo.h
M llvm/include/llvm/Analysis/TargetTransformInfoImpl.h
M llvm/lib/Analysis/TargetTransformInfo.cpp
M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.h
M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.h
M llvm/lib/Target/WebAssembly/WebAssemblyTargetTransformInfo.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyTargetTransformInfo.h
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
Log Message:
-----------
[TTI] Plumb CostKind through getPartialReductionCost (#144953)
Purely for the sake of being idiomatic with other TTI costing routines,
no direct motivation beyond that.
Commit: d8e6d74c6905b3032a3dc9b686bd80bb3feb9857
https://github.com/llvm/llvm-project/commit/d8e6d74c6905b3032a3dc9b686bd80bb3feb9857
Author: Philip Reames <preames at rivosinc.com>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
Log Message:
-----------
[LV] Consider EVL legality for TTI tail folding preference (#144790)
Commit: dad64877c811dcce7e2c7ebc216161ecf0733fcf
https://github.com/llvm/llvm-project/commit/dad64877c811dcce7e2c7ebc216161ecf0733fcf
Author: Kazu Hirata <kazu at google.com>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M llvm/include/llvm/IR/IntrinsicInst.h
M llvm/lib/CodeGen/GlobalISel/InlineAsmLowering.cpp
M llvm/lib/IR/IntrinsicInst.cpp
Log Message:
-----------
[llvm] Remove an extraneous cast (NFC) (#144955)
llvm::CallBase::getArgOperand returns Value *, so we do not need
const_cast<Value *>.
Commit: 6001a8bb945762fd128f025bb8d7969d92096772
https://github.com/llvm/llvm-project/commit/6001a8bb945762fd128f025bb8d7969d92096772
Author: Tianle Liu <tianle.l.liu at intel.com>
Date: 2025-06-20 (Fri, 20 Jun 2025)
Changed paths:
M llvm/lib/Transforms/IPO/WholeProgramDevirt.cpp
A llvm/test/Transforms/WholeProgramDevirt/availableexternal-check.ll
Log Message:
-----------
[WholeProgramDevirt] Add check for AvailableExternal and give up icall.branch.funnel (#143468)
When a customer class inherits from a libc++ class, and is built with
"-flto -fwhole-program-vtables -static-libstdc++ \
-Wl,-plugin-opt=-whole-program-visibility", the libc++ class's vtable is
available_externally, meanwhile the customer class vtable is private.
And
both of them are !vcall_visibility == Linkage Unit.
In this case, icall.branch.funnel might be generated.
But the icall.branch.funnel would cause crash in LowerTypeTests because
available_externally Global_Object's GlobalTypeMember would not be
saved and finally leads to a NULL GlobalTypeMember which causes a crash.
Even saving the available_externally GO's GlobalTypeMember so that it is
not NULL to avoid the crash in LowerTypeTests, it still will crash in
SelectionDAGBuilder or Verifier, because operands linkage type
consistency
check of icall.branch.funnel can not pass.
So any one of available externally vtable would stop to generate
icall.branch.funnel.
This patch fixes FullLTO mode and split-LTO-unit ThinLTO mode.
Commit: 91439817e8d19613ac6e25ca9abd5e7534a9d33b
https://github.com/llvm/llvm-project/commit/91439817e8d19613ac6e25ca9abd5e7534a9d33b
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-06-20 (Fri, 20 Jun 2025)
Changed paths:
M llvm/lib/Target/ARM/ARMISelLowering.cpp
M llvm/lib/Target/ARM/ARMSubtarget.h
Log Message:
-----------
ARM: Avoid using isTarget wrappers around Triple predicates (#144705)
These are module level properties, and querying them through
a function-level subtarget context is confusing. Plus we don't
need an aliased name. This doesn't avoid all the uses, just the
ones in the TargetLowering constructor.
Commit: efd42b9b1d655a56abb3e6ce1ed4414e9f882912
https://github.com/llvm/llvm-project/commit/efd42b9b1d655a56abb3e6ce1ed4414e9f882912
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-06-20 (Fri, 20 Jun 2025)
Changed paths:
M llvm/lib/Target/WebAssembly/WebAssemblyRuntimeLibcallSignatures.cpp
Log Message:
-----------
WebAssembly: Stop directly using RuntimeLibcalls.def (#143054)
Construct RuntimeLibcallsInfo instead of manually creating a map.
This was repeating the setting of the RETURN_ADDRESS. This removes
an obstacle to generating libcall information with tablegen.
This is also not great, since it's setting a static map which
would be broken if there were ever a triple with a different libcall
configuration.
Commit: fa7646008ef32b38357189ed5752e1a1b8d6d146
https://github.com/llvm/llvm-project/commit/fa7646008ef32b38357189ed5752e1a1b8d6d146
Author: joaosaffran <126493771+joaosaffran at users.noreply.github.com>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M llvm/lib/Target/DirectX/DXILRootSignature.cpp
M llvm/test/CodeGen/DirectX/ContainerData/RootSignature-Error-is-not-function.ll
M llvm/test/CodeGen/DirectX/ContainerData/RootSignature-Error-is-not-value.ll
M llvm/test/CodeGen/DirectX/ContainerData/RootSignature-Error-no-root-element-list.ll
M llvm/test/CodeGen/DirectX/ContainerData/RootSignature-Error-root-element-not-mdnode.ll
M llvm/test/CodeGen/DirectX/ContainerData/RootSignature-Flags-Error.ll
M llvm/test/CodeGen/DirectX/ContainerData/RootSignature-Flags.ll
M llvm/test/CodeGen/DirectX/ContainerData/RootSignature-MultipleEntryFunctions.ll
M llvm/test/CodeGen/DirectX/ContainerData/RootSignature-NullFunction-Error.ll
M llvm/test/CodeGen/DirectX/ContainerData/RootSignature-Parameters-Invalid-ParameterIsNotString.ll
M llvm/test/CodeGen/DirectX/ContainerData/RootSignature-Parameters-Validation-Error.ll
M llvm/test/CodeGen/DirectX/ContainerData/RootSignature-Parameters.ll
M llvm/test/CodeGen/DirectX/ContainerData/RootSignature-RootConstants-Invalid-Num32BitValues.ll
M llvm/test/CodeGen/DirectX/ContainerData/RootSignature-RootConstants-Invalid-RegisterSpace.ll
M llvm/test/CodeGen/DirectX/ContainerData/RootSignature-RootConstants-Invalid-ShaderRegister.ll
M llvm/test/CodeGen/DirectX/ContainerData/RootSignature-RootConstants.ll
M llvm/test/CodeGen/DirectX/ContainerData/RootSignature-RootDescriptor-Invalid-Flags.ll
M llvm/test/CodeGen/DirectX/ContainerData/RootSignature-RootDescriptor-Invalid-RegisterKind.ll
M llvm/test/CodeGen/DirectX/ContainerData/RootSignature-RootDescriptor-Invalid-RegisterSpace.ll
M llvm/test/CodeGen/DirectX/ContainerData/RootSignature-RootDescriptor-Invalid-RegisterValue.ll
M llvm/test/CodeGen/DirectX/ContainerData/RootSignature-RootDescriptor.ll
A llvm/test/CodeGen/DirectX/ContainerData/RootSignature-RootDescriptor_V1.ll
M llvm/test/CodeGen/DirectX/ContainerData/RootSignature-RootElement-Error.ll
M llvm/test/CodeGen/DirectX/ContainerData/RootSignature-RootFlags-VisibilityValidationError.ll
Log Message:
-----------
[DirectX] Add Root Signature Version Support and Update Test IR Format (#144957)
Updates the Root Signature metadata parser to extract version
information. This requirement was added after the initial parser
implementation.
---------
Co-authored-by: joaosaffran <joao.saffran at microsoft.com>
Commit: 5cbed34404a3862c2d7f18e4b4b24f5ce1516a8d
https://github.com/llvm/llvm-project/commit/5cbed34404a3862c2d7f18e4b4b24f5ce1516a8d
Author: Phoebe Wang <phoebe.wang at intel.com>
Date: 2025-06-20 (Fri, 20 Jun 2025)
Changed paths:
M clang/test/Preprocessor/predefined-arch-macros.c
M llvm/lib/Target/X86/X86.td
M llvm/lib/TargetParser/X86TargetParser.cpp
Log Message:
-----------
[X86] Remove CLDEMOTE from Arrowlake and later hybrid processors (#144833)
Decouple Arrowlake from Sierraforest because the later has CLDEMOTE
feature.
Commit: a05393a879b2950fccca66ff0e1b6c70c39838e4
https://github.com/llvm/llvm-project/commit/a05393a879b2950fccca66ff0e1b6c70c39838e4
Author: Jim Lin <jim at andestech.com>
Date: 2025-06-20 (Fri, 20 Jun 2025)
Changed paths:
M llvm/include/llvm/BinaryFormat/ELFRelocs/RISCV_nonstandard.def
M llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVAsmBackend.cpp
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVBaseInfo.h
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVELFObjectWriter.cpp
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVFixupKinds.h
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCCodeEmitter.cpp
M llvm/lib/Target/RISCV/RISCVInstrFormats.td
M llvm/lib/Target/RISCV/RISCVInstrInfoXAndes.td
M llvm/test/MC/RISCV/custom_reloc.s
M llvm/test/MC/RISCV/vendor-symbol.s
A llvm/test/MC/RISCV/xandesperf-fixups-diagnostics.s
A llvm/test/MC/RISCV/xandesperf-relocation.s
Log Message:
-----------
[RISCV] Add symbol parsing support for XAndesPerf branch instructions (#137748)
This patch adds support for parsing symbols in the XAndesPerf branch
immediate instructions. The branch immediate instructions use
`R_RISCV_NDS_BRANCH_10` relocation. It uses a 10-bit PC-relative branch
offset.
Commit: 513bcf6d012f7f9483af784de8487ee04cb9971a
https://github.com/llvm/llvm-project/commit/513bcf6d012f7f9483af784de8487ee04cb9971a
Author: Fangrui Song <i at maskray.me>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
A llvm/test/tools/yaml2obj/basic.test
M llvm/tools/yaml2obj/yaml2obj.cpp
Log Message:
-----------
[yaml2obj] Report error when the input filename does not exist
I invoked yaml2obj with a mistyped filename and received no error
message. I nearly thought the program had succeeded, but the shell's
exit code prompt tipped me off.
Pull Request: https://github.com/llvm/llvm-project/pull/144835
Commit: 4f991cc99523e4bb7a0d96cee9f5c3a64bf2bc8e
https://github.com/llvm/llvm-project/commit/4f991cc99523e4bb7a0d96cee9f5c3a64bf2bc8e
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M lldb/include/lldb/Host/Socket.h
M lldb/source/Host/common/Socket.cpp
M lldb/test/API/tools/lldb-dap/server/TestDAP_server.py
M lldb/tools/lldb-dap/Options.td
M lldb/tools/lldb-dap/src-ts/lldb-dap-server.ts
M lldb/tools/lldb-dap/tool/lldb-dap.cpp
Log Message:
-----------
[lldb-dap] Make connection URLs match lldb (#144770)
Use the same scheme as ConnectionFileDescriptor::Connect and use
"listen" and "accept". Addresses feedback from a Pavel in a different PR
[1].
[1] https://github.com/llvm/llvm-project/pull/143628#discussion_r2152225200
Commit: 50c5ecd35402dc734f2a462df5532e77a5ce12b2
https://github.com/llvm/llvm-project/commit/50c5ecd35402dc734f2a462df5532e77a5ce12b2
Author: Chuanqi Xu <yedeng.yd at linux.alibaba.com>
Date: 2025-06-20 (Fri, 20 Jun 2025)
Changed paths:
M clang/include/clang/Serialization/ASTReader.h
Log Message:
-----------
[NFC] [Serialization] Remove a useless comment
The comments belongs to other WIP patches.
Commit: bb51c5d4b85a655e8c90247a6678e507402703a4
https://github.com/llvm/llvm-project/commit/bb51c5d4b85a655e8c90247a6678e507402703a4
Author: Ming Yan <99472920+NexMing at users.noreply.github.com>
Date: 2025-06-20 (Fri, 20 Jun 2025)
Changed paths:
M llvm/include/llvm/CodeGen/SDPatternMatch.h
M llvm/unittests/CodeGen/SelectionDAGPatternMatchTest.cpp
Log Message:
-----------
[SDPatternMatch] Add m_Poison matcher (#144860)
Add SDPatternMatch matcher and unit test coverage for ISD::POISON opcode
e.g.
```
m_InsertElt(m_Poison(), m_Value(), m_Zero())
```
Commit: 64fe3236476a9a85977abf5489414bbb2de2109c
https://github.com/llvm/llvm-project/commit/64fe3236476a9a85977abf5489414bbb2de2109c
Author: Kazu Hirata <kazu at google.com>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M llvm/include/llvm/CodeGen/BasicTTIImpl.h
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
Log Message:
-----------
[llvm] Migrate away from ArrayRef(std::nullopt) (NFC) (#144967)
ArrayRef has a constructor that accepts std::nullopt. This
constructor dates back to the days when we still had llvm::Optional.
Since the use of std::nullopt outside the context of std::optional is
kind of abuse and not intuitive to new comers, I would like to move
away from the constructor and eventually remove it.
This patch takes care of the llvm side of the migration.
Commit: 69974658f079cec82a9fc13dd4993ab1e072c811
https://github.com/llvm/llvm-project/commit/69974658f079cec82a9fc13dd4993ab1e072c811
Author: Stanislav Mekhanoshin <rampitec at users.noreply.github.com>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M clang/include/clang/Basic/OffloadArch.h
M clang/lib/Basic/OffloadArch.cpp
M clang/lib/Basic/Targets/NVPTX.cpp
M clang/lib/CodeGen/CGOpenMPRuntimeGPU.cpp
M clang/test/CodeGenOpenCL/amdgpu-features.cl
M clang/test/Driver/amdgpu-macros.cl
M clang/test/Driver/amdgpu-mcpu.cl
M clang/test/Misc/target-invalid-cpu-note/amdgcn.c
M clang/test/Misc/target-invalid-cpu-note/nvptx.c
M llvm/docs/AMDGPUUsage.rst
M llvm/include/llvm/BinaryFormat/ELF.h
M llvm/include/llvm/TargetParser/TargetParser.h
M llvm/lib/Object/ELFObjectFile.cpp
M llvm/lib/ObjectYAML/ELFYAML.cpp
M llvm/lib/Target/AMDGPU/AMDGPU.td
M llvm/lib/Target/AMDGPU/GCNProcessors.td
M llvm/lib/Target/AMDGPU/GCNSubtarget.h
M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUTargetStreamer.cpp
M llvm/lib/TargetParser/TargetParser.cpp
M llvm/test/CodeGen/AMDGPU/directive-amdgcn-target.ll
M llvm/test/CodeGen/AMDGPU/elf-header-flags-mach.ll
M llvm/test/Object/AMDGPU/elf-header-flags-mach.yaml
M llvm/test/tools/llvm-objdump/ELF/AMDGPU/subtarget.ll
M llvm/test/tools/llvm-readobj/ELF/AMDGPU/elf-headers.test
M llvm/tools/llvm-readobj/ELFDumper.cpp
Log Message:
-----------
[AMDGPU] Initial support for gfx1250 target. (#144965)
This is just a stub for now.
Commit: b8d3efa189620bfd48dab5fb05b923560fb1e2d5
https://github.com/llvm/llvm-project/commit/b8d3efa189620bfd48dab5fb05b923560fb1e2d5
Author: Maksim Panchenko <maks at fb.com>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M bolt/lib/Rewrite/LinuxKernelRewriter.cpp
M bolt/test/X86/linux-version.S
Log Message:
-----------
[BOLT][Linux] Fix linux_banner lookup (#144962)
While detecting the Linux kernel version, look for `linux_banner` symbol
with local visibility if the global one was not found.
Fixes #144847
Commit: 7cbb1411550ef6caab18a9360f1549d6029ffe86
https://github.com/llvm/llvm-project/commit/7cbb1411550ef6caab18a9360f1549d6029ffe86
Author: Kazu Hirata <kazu at google.com>
Date: 2025-06-19 (Thu, 19 Jun 2025)
Changed paths:
M clang/include/clang/AST/TypeProperties.td
M clang/lib/AST/ASTContext.cpp
M clang/lib/AST/ASTDiagnostic.cpp
M clang/lib/AST/ASTImporter.cpp
M clang/lib/AST/DeclTemplate.cpp
M clang/lib/AST/QualTypeNames.cpp
M clang/lib/Basic/Targets/Xtensa.h
M clang/lib/CodeGen/CGBuiltin.cpp
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/lib/Sema/SemaConcept.cpp
M clang/lib/Sema/SemaExpr.cpp
M clang/lib/Sema/TreeTransform.h
Log Message:
-----------
[clang] Migrate away from ArrayRef(std::nullopt) (NFC) (#144982)
ArrayRef has a constructor that accepts std::nullopt. This
constructor dates back to the days when we still had llvm::Optional.
Since the use of std::nullopt outside the context of std::optional is
kind of abuse and not intuitive to new comers, I would like to move
away from the constructor and eventually remove it.
This patch takes care of the clang side of the migration.
Commit: 0f302f38b0014a0018031ffb3cb898fdc7d90880
https://github.com/llvm/llvm-project/commit/0f302f38b0014a0018031ffb3cb898fdc7d90880
Author: no92 <no92 at users.noreply.github.com>
Date: 2025-06-20 (Fri, 20 Jun 2025)
Changed paths:
M clang/lib/Basic/Targets.cpp
M clang/lib/Basic/Targets/OSTargets.h
M clang/lib/Driver/CMakeLists.txt
M clang/lib/Driver/Driver.cpp
M clang/lib/Driver/ToolChains/Gnu.cpp
A clang/lib/Driver/ToolChains/Managarm.cpp
A clang/lib/Driver/ToolChains/Managarm.h
M clang/lib/Lex/InitHeaderSearch.cpp
A clang/test/Driver/Inputs/basic_managarm_tree/lib/aarch64-managarm-mlibc/.keep
A clang/test/Driver/Inputs/basic_managarm_tree/lib/riscv64-managarm-mlibc/.keep
A clang/test/Driver/Inputs/basic_managarm_tree/lib/x86_64-managarm-mlibc/.keep
A clang/test/Driver/Inputs/basic_managarm_tree/lib64/aarch64-managarm-mlibc/.keep
A clang/test/Driver/Inputs/basic_managarm_tree/lib64/riscv64-managarm-mlibc/.keep
A clang/test/Driver/Inputs/basic_managarm_tree/lib64/x86_64-managarm-mlibc/.keep
A clang/test/Driver/Inputs/basic_managarm_tree/usr/include/aarch64-managarm-mlibc/c++/10/.keep
A clang/test/Driver/Inputs/basic_managarm_tree/usr/include/c++/10/.keep
A clang/test/Driver/Inputs/basic_managarm_tree/usr/include/c++/v1/.keep
A clang/test/Driver/Inputs/basic_managarm_tree/usr/include/riscv64-managarm-mlibc/c++/10/.keep
A clang/test/Driver/Inputs/basic_managarm_tree/usr/include/x86_64-managarm-mlibc/c++/10/.keep
A clang/test/Driver/Inputs/basic_managarm_tree/usr/lib/aarch64-managarm-mlibc/.keep
A clang/test/Driver/Inputs/basic_managarm_tree/usr/lib/gcc/aarch64-managarm-mlibc/10/crtbegin.o
A clang/test/Driver/Inputs/basic_managarm_tree/usr/lib/gcc/aarch64-managarm-mlibc/10/crtbeginS.o
A clang/test/Driver/Inputs/basic_managarm_tree/usr/lib/gcc/aarch64-managarm-mlibc/10/crtbeginT.o
A clang/test/Driver/Inputs/basic_managarm_tree/usr/lib/gcc/riscv64-managarm-mlibc/10/crtbegin.o
A clang/test/Driver/Inputs/basic_managarm_tree/usr/lib/gcc/riscv64-managarm-mlibc/10/crtbeginS.o
A clang/test/Driver/Inputs/basic_managarm_tree/usr/lib/gcc/riscv64-managarm-mlibc/10/crtbeginT.o
A clang/test/Driver/Inputs/basic_managarm_tree/usr/lib/gcc/x86_64-managarm-mlibc/10/crtbegin.o
A clang/test/Driver/Inputs/basic_managarm_tree/usr/lib/gcc/x86_64-managarm-mlibc/10/crtbeginS.o
A clang/test/Driver/Inputs/basic_managarm_tree/usr/lib/gcc/x86_64-managarm-mlibc/10/crtbeginT.o
A clang/test/Driver/Inputs/basic_managarm_tree/usr/lib/riscv64-managarm-mlibc/.keep
A clang/test/Driver/Inputs/basic_managarm_tree/usr/lib/x86_64-managarm-mlibc/.keep
A clang/test/Driver/Inputs/basic_managarm_tree/usr/lib64/.keep
A clang/test/Driver/managarm.cpp
M clang/test/Preprocessor/init.c
M clang/test/Preprocessor/predefined-macros-no-warnings.c
Log Message:
-----------
[clang] Add managarm support (#144791)
This is a repost of the quickly reverted #139271. The failing buildbot
tests have been fixed and pass on my machine now.
Commit: 06e08f38e1ec57bf3cb5e08569b52eb6a3c3e166
https://github.com/llvm/llvm-project/commit/06e08f38e1ec57bf3cb5e08569b52eb6a3c3e166
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-06-20 (Fri, 20 Jun 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
A llvm/test/CodeGen/AArch64/unsupported-cc-call.ll
A llvm/test/CodeGen/AArch64/unsupported-cc-func.ll
M llvm/test/MC/AArch64/coff-function-type-info.ll
Log Message:
-----------
AArch64: Use reportFatalUsageError for unsupported calling conv (#144840)
This probably should emit a DiagnosticInfoUnsupported and use the
default calling convention instead, but then we would need to pass
in the context.
Also move where CCAssignFnForCall is called. It was unnecessarily
called for each argument, so the error wouldn't trigger for functions
with 0 arguments.
This only ensures the error occurs for functions defined with the
calling convention. The error is still missed for outgoing calls
with no arguments. The lowering logic here is convoluted, calling
CCAssignFnForCall for each argument and it does not mirror
LowerFormalArguments so I'm not sure what's going on here.
Commit: 090f409538d2b426f11ce5aa22af8c243099aecf
https://github.com/llvm/llvm-project/commit/090f409538d2b426f11ce5aa22af8c243099aecf
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2025-06-20 (Fri, 20 Jun 2025)
Changed paths:
M llvm/utils/gn/secondary/clang/lib/Driver/BUILD.gn
Log Message:
-----------
[gn build] Port 0f302f38b001
Commit: d196124dd22391f6c967ed569b34632840536c45
https://github.com/llvm/llvm-project/commit/d196124dd22391f6c967ed569b34632840536c45
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-06-20 (Fri, 20 Jun 2025)
Changed paths:
M llvm/lib/Transforms/Utils/PredicateInfo.cpp
Log Message:
-----------
[PredicateInfo] Remove unnecessary EdgeUsesOnly set (NFC) (#144912)
As far as I can tell, this set is pointless: It just represents whether
the target block has multiple predecessors, and the way it is
constructed and queried, we're not even reducing the number of
getSinglePredecessor() calls or something like that.
Commit: cbb5e244f7564091f9169f525fd8456e68bc028a
https://github.com/llvm/llvm-project/commit/cbb5e244f7564091f9169f525fd8456e68bc028a
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-06-20 (Fri, 20 Jun 2025)
Changed paths:
M llvm/lib/Transforms/Utils/PredicateInfo.cpp
Log Message:
-----------
[PredicateInfo] Remove redundant EdgeOnly member (NFC)
EdgeOnly indicates a phi def, which can already be identified by
LN_Last with non-null PInfo. Most of the code already reasons in
terms of LN_Last instead of EdgeOnly.
Commit: 1cae21da47b1f53c3946534b12507a035fb283d2
https://github.com/llvm/llvm-project/commit/1cae21da47b1f53c3946534b12507a035fb283d2
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-06-20 (Fri, 20 Jun 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPU.h
M llvm/lib/Target/AMDGPU/AMDGPUPromoteAlloca.cpp
M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
Log Message:
-----------
AMDGPU: Remove legacy PM version of AMDGPUPromoteAllocaToVector (#144986)
This is only run in the middle end with the new pass manager now,
so garbage collect the old PM version.
Commit: c361bffa50f1ed790c393ffbab39c2e07dfcb242
https://github.com/llvm/llvm-project/commit/c361bffa50f1ed790c393ffbab39c2e07dfcb242
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-06-20 (Fri, 20 Jun 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPU.h
M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
M llvm/lib/Target/AMDGPU/AMDGPUUnifyMetadata.cpp
Log Message:
-----------
AMDGPU: Remove legacy pass manager version of AMDGPUUnifyMetadata (#144985)
This is only run in the new pass manager now.
Commit: 8973be462c49a7b0a24c61f41e07a721706b1ad8
https://github.com/llvm/llvm-project/commit/8973be462c49a7b0a24c61f41e07a721706b1ad8
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-06-20 (Fri, 20 Jun 2025)
Changed paths:
M llvm/lib/Transforms/Utils/PredicateInfo.cpp
Log Message:
-----------
[PredicateInfo] Avoid duplicate stack in scope check (NFC)
popStackUntilDFSScope() is going to check this itself, there is
no need to do it in advance as well.
Commit: bc14e5e5e9c717a7699cf10b13a7661a9e033594
https://github.com/llvm/llvm-project/commit/bc14e5e5e9c717a7699cf10b13a7661a9e033594
Author: Stanislav Mekhanoshin <rampitec at users.noreply.github.com>
Date: 2025-06-20 (Fri, 20 Jun 2025)
Changed paths:
M llvm/test/MC/AMDGPU/gfx12_asm_smem.s
M llvm/test/MC/AMDGPU/gfx12_asm_sopk.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop1_dpp16.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop1_dpp8.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop2_dpp16.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop2_dpp8.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop3_from_vop1_dpp16.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop3_from_vop1_dpp8.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop3_from_vop2_dpp16.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop3_from_vop2_dpp8.s
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_smem.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop1_dpp8.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3_from_vop1_dpp16.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3_from_vop1_dpp8.txt
Log Message:
-----------
[AMDGPU] Add trivial gfx1250 runlines to MC tests. NFC. (#144988)
Commit: b6b8fa3b15d334c51fcf8763ccda0102a01aeb9c
https://github.com/llvm/llvm-project/commit/b6b8fa3b15d334c51fcf8763ccda0102a01aeb9c
Author: int-zjt <zhangjiatong.0 at bytedance.com>
Date: 2025-06-20 (Fri, 20 Jun 2025)
Changed paths:
A compiler-rt/test/profile/Posix/gcov-file-change-line.cpp
M compiler-rt/test/profile/Posix/gcov-file-change.cpp
M llvm/include/llvm/ProfileData/GCOV.h
M llvm/lib/ProfileData/GCOV.cpp
M llvm/lib/Transforms/Instrumentation/GCOVProfiling.cpp
Log Message:
-----------
[llvm-cov][gcov] Support multi-files coverage in one basic block (#144504)
In the current gcov implementation, all lines within a basic block are
attributed to the source file of the block's containing function. This
is inaccurate when a block contains lines from other files (e.g., via
#include "foo.inc").
Commit
[406e81b](https://github.com/llvm/llvm-project/commit/406e81b79d26dae6838cc69d10a3e22635da09ef)
attempted to address this by filtering lines based on debug info types,
but this approach has two limitations:
* **Over-filtering**: Some valid lines belonging to the function are
incorrectly excluded.
* **Under-counting**: Lines not belonging to the function are filtered
out and omitted from coverage statistics.
**GCC Reference Behavior**
GCC's gcov implementation handles this case correctly.This change aligns
the LLVM behavior with GCC.
**Proposed Solution**
1. **GCNO Generation**:
* **Current**: Each block stores a single GCOVLines record (filename +
lines).
* **New**: Dynamically create new GCOVLines records whenever consecutive
lines in a block originate from different source files. Group subsequent
lines from the same file under one record.
2. **GCNO Parsing**:
* **Current**: Lines are directly attributed to the function's source
file.
* **New**: Introduce a GCOVLocation type to track filename/line mappings
within blocks. Statistics will reflect the actual source file for each
line.
Commit: 874773635d31501ab21812c05c44caf281c1acc7
https://github.com/llvm/llvm-project/commit/874773635d31501ab21812c05c44caf281c1acc7
Author: Sander de Smalen <sander.desmalen at arm.com>
Date: 2025-06-20 (Fri, 20 Jun 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
Log Message:
-----------
[SLP] NFC: Simplify CandidateVFs initialization (#144882)
Also adds a comment to clarify the meaning of MaxRegVF.
Commit: 14e89b061fdecedcec4bb035060a56588610cb5c
https://github.com/llvm/llvm-project/commit/14e89b061fdecedcec4bb035060a56588610cb5c
Author: Chuanqi Xu <yedeng.yd at linux.alibaba.com>
Date: 2025-06-20 (Fri, 20 Jun 2025)
Changed paths:
M clang/lib/Sema/SemaModule.cpp
A clang/test/Modules/pr144230.cppm
Log Message:
-----------
[C++20] [Modules] Add exported modules as transitive imported modules
Close https://github.com/llvm/llvm-project/issues/144230
The root cause of the problem is, when we decide the transitive imports,
we didn't deal with exported imports.
Commit: f704782c63ac1d567422f66072bebd49c41723f9
https://github.com/llvm/llvm-project/commit/f704782c63ac1d567422f66072bebd49c41723f9
Author: Matthew Devereau <matthew.devereau at arm.com>
Date: 2025-06-20 (Fri, 20 Jun 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/test/CodeGen/AArch64/neon-partial-reduce-dot-product.ll
Log Message:
-----------
[AArch64][SelectionDAG] Fix UDOT regression (#144907)
Fix broken check in AArch64ISelLowering for bailing from ZExt
optimizations when there is a partial reduction intrinsic.
Commit: b85387dfe8e67ee8a142a1faf25325761c343577
https://github.com/llvm/llvm-project/commit/b85387dfe8e67ee8a142a1faf25325761c343577
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-06-20 (Fri, 20 Jun 2025)
Changed paths:
M llvm/lib/Transforms/Utils/SCCPSolver.cpp
Log Message:
-----------
[SCCP] Check instruction type before querying PredicateInfo (NFC)
Do the cheap intrinsic check before the hash lookup for the
PredicateInfo.
Commit: eb0f1dc00e5d0e591fe912c1aaf9dd9d01d94b8d
https://github.com/llvm/llvm-project/commit/eb0f1dc00e5d0e591fe912c1aaf9dd9d01d94b8d
Author: Peter Smith <peter.smith at arm.com>
Date: 2025-06-20 (Fri, 20 Jun 2025)
Changed paths:
M lld/ELF/Thunks.cpp
M lld/test/ELF/aarch64-thunk-bti-multipass.s
Log Message:
-----------
[LLD][ELF] Include offset when adding Thunk symbols (#144995)
Include the offset of a thunk in the ThunkSection when adding symbols.
At Thunk creation time the offset is set to 0 as we don't know where in
the ThunkSection the Thunk will end up. The symbol values are updated by
the setOffset() call in assignOffsets().
When we transform a thunk from a short to a long, we sometimes add a
mapping symbol. At this point the offset of the thunk is non zero and we
need to account for that when defining the symbol, as the setOffset()
call subtracts the offset before adding the new one back in.
To test; added a second thunk that is converted to a long thunk to
aarch64-thunk-bit-multipass. This second thunk is given a non zero
offset from the start of the Thunk Section so we can observe the mapping
symbol being put in the wrong place without accounting for the offset.
fixes: https://github.com/llvm/llvm-project/issues/142326
Commit: 61972054f3fcaf59096799342bac9c93dd9aa432
https://github.com/llvm/llvm-project/commit/61972054f3fcaf59096799342bac9c93dd9aa432
Author: Alexis Engelke <engelke at in.tum.de>
Date: 2025-06-20 (Fri, 20 Jun 2025)
Changed paths:
M llvm/lib/CodeGen/MachineBlockPlacement.cpp
M llvm/test/CodeGen/RISCV/branch.ll
Log Message:
-----------
[CodeGen] Limit number of analyzed predecessors
MachineBlockPlacement has quadratic runtime in the number of
predecessors: in some situation, for an edge, all predecessors of the
successor are considered.
Limit the number of considered predecessors to bound compile time for
large functions.
Pull Request: https://github.com/llvm/llvm-project/pull/142584
Commit: f577516d91dc1ae5b9c8a3bcad81558bc19ccf65
https://github.com/llvm/llvm-project/commit/f577516d91dc1ae5b9c8a3bcad81558bc19ccf65
Author: Matthias Springer <me at m-sp.org>
Date: 2025-06-20 (Fri, 20 Jun 2025)
Changed paths:
M mlir/include/mlir/Dialect/Arith/IR/ArithOps.td
Log Message:
-----------
[mlir][arith] Add back ElementwiseMappable to `arith.trunci` (#145000)
This trait was accidentally dropped in #144863.
Commit: dd4776d429bd20050c80749f669367a0574520c8
https://github.com/llvm/llvm-project/commit/dd4776d429bd20050c80749f669367a0574520c8
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-06-20 (Fri, 20 Jun 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp
M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp
M llvm/lib/Target/AMDGPU/AMDGPUInstrInfo.cpp
M llvm/lib/Target/AMDGPU/AMDGPUInstrInfo.h
M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeRules.cpp
M llvm/lib/Target/AMDGPU/AMDGPURegisterBankInfo.cpp
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
Log Message:
-----------
AMDGPU: Remove AMDGPUInstrInfo class (#144984)
This was never constructed and only provided one static helper
function.
Commit: f75973949b0e51eb4b3852c903d08bc72bf5d459
https://github.com/llvm/llvm-project/commit/f75973949b0e51eb4b3852c903d08bc72bf5d459
Author: Ádám Kallai <kadam at inf.u-szeged.hu>
Date: 2025-06-20 (Fri, 20 Jun 2025)
Changed paths:
M bolt/include/bolt/Profile/DataAggregator.h
M bolt/include/bolt/Utils/CommandLineOpts.h
M bolt/lib/Profile/DataAggregator.cpp
A bolt/test/perf2bolt/AArch64/perf2bolt-spe.test
A bolt/test/perf2bolt/X86/perf2bolt-spe.test
M bolt/tools/driver/llvm-bolt.cpp
M bolt/unittests/Profile/CMakeLists.txt
A bolt/unittests/Profile/PerfSpeEvents.cpp
Log Message:
-----------
[BOLT][AArch64] Add support for SPE brstack format (#129231)
Since Linux 6.14, Perf gained the ability to report SPE branch events
using the `brstack` format, which matches the layout of LBR/BRBE.
This patch reuses the existing LBR parsing logic to support SPE.
Example SPE brstack format:
```bash
perf script -i perf.data -F pid,brstack --itrace=bl
```
```
PID FROM / TO / PREDICTED
16984 0x72e342e5f4/0x72e36192d0/M/-/-/11/RET/-
16984 0x72e7b8b3b4/0x72e7b8b3b8/PN/-/-/11/COND/-
16984 0x72e7b92b48/0x72e7b92b4c/PN/-/-/8/COND/-
16984 0x72eacc6b7c/0x760cc94b00/P/-/-/9/RET/-
16984 0x72e3f210fc/0x72e3f21068/P/-/-/4//-
16984 0x72e39b8c5c/0x72e3627b24/P/-/-/4//-
16984 0x72e7b89d20/0x72e7b92bbc/P/-/-/4/RET/-
```
SPE brstack flags can be two characters long: `PN` or `MN`:
- `P` = predicted branch
- `M` = mispredicted branch
- `N` = optionally appears when the branch is NOT-TAKEN
- flag is relevant only to conditional branches
Example of usage with BOLT:
1. Capture SPE branch events:
```bash
perf record -e 'arm_spe_0/branch_filter=1/u' -- binary
```
2. Convert profile for BOLT:
```bash
perf2bolt -p perf.data -o perf.fdata --spe binary
```
3. Run BOLT Optimization:
```bash
llvm-bolt binary -o binary.bolted --data perf.fdata ...
```
A unit test verifies the parsing of the 'SPE brstack format'.
---------
Co-authored-by: Paschalis Mpeis <paschalis.mpeis at arm.com>
Commit: 238abf8ba8233ec0f2dab57a3bacbd192e78f8b6
https://github.com/llvm/llvm-project/commit/238abf8ba8233ec0f2dab57a3bacbd192e78f8b6
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2025-06-20 (Fri, 20 Jun 2025)
Changed paths:
M llvm/utils/gn/secondary/bolt/unittests/Profile/BUILD.gn
Log Message:
-----------
[gn build] Port f75973949b0e
Commit: 95bd05d7cae327e431ccdaf0a452a0573ade5357
https://github.com/llvm/llvm-project/commit/95bd05d7cae327e431ccdaf0a452a0573ade5357
Author: Matthias Springer <me at m-sp.org>
Date: 2025-06-20 (Fri, 20 Jun 2025)
Changed paths:
M mlir/lib/Conversion/FuncToLLVM/FuncToLLVM.cpp
Log Message:
-----------
[mlir][Func][NFC] Simplify implementation after #144706 (#145006)
Commit: a5fa5bd2a890c588b99b07fc0f3fcef236888609
https://github.com/llvm/llvm-project/commit/a5fa5bd2a890c588b99b07fc0f3fcef236888609
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-06-20 (Fri, 20 Jun 2025)
Changed paths:
M llvm/test/CodeGen/X86/ptest.ll
Log Message:
-----------
[X86] ptest.ll - add test coverage for #144861 load chains
Commit: 7085065c02da6091dca91be201160912e43a63ec
https://github.com/llvm/llvm-project/commit/7085065c02da6091dca91be201160912e43a63ec
Author: Amir Ayupov <aaupov at fb.com>
Date: 2025-06-20 (Fri, 20 Jun 2025)
Changed paths:
M bolt/include/bolt/Profile/DataAggregator.h
M bolt/lib/Profile/DataAggregator.cpp
M bolt/test/X86/callcont-fallthru.s
M bolt/test/link_fdata.py
Log Message:
-----------
[BOLT] Support pre-aggregated returns (#143296)
Intel's Architectural LBR supports capturing branch type information
as part of LBR stack (SDM Vol 3B, part 2, October 2024):
```
20.1.3.2 Branch Types
The IA32_LBR_x_INFO.BR_TYPE and IA32_LER_INFO.BR_TYPE fields encode
the branch types as shown in Table 20-3.
Table 20-3. IA32_LBR_x_INFO and IA32_LER_INFO Branch Type Encodings
Encoding | Branch Type
0000B | COND
0001B | NEAR_IND_JMP
0010B | NEAR_REL_JMP
0011B | NEAR_IND_CALL
0100B | NEAR_REL_CALL
0101B | NEAR_RET
011xB | Reserved
1xxxB | OTHER_BRANCH
For a list of branch operations that fall into the categories above,
see Table 20-2.
Table 20-2. Branch Type Filtering Details
Branch Type | Operations Recorded
COND | Jcc, J*CXZ, and LOOP*
NEAR_IND_JMP | JMP r/m*
NEAR_REL_JMP | JMP rel*
NEAR_IND_CALL | CALL r/m*
NEAR_REL_CALL | CALL rel* (excluding CALLs to the next sequential IP)
NEAR_RET | RET (0C3H)
OTHER_BRANCH | JMP/CALL ptr*, JMP/CALL m*, RET (0C8H), SYS*,
interrupts, exceptions (other than debug exceptions), IRET, INT3,
INTn, INTO, TSX Abort, EENTER, ERESUME, EEXIT, AEX, INIT, SIPI, RSM
```
Linux kernel can preserve branch type when `save_type` is enabled,
even if CPU does not support Architectural LBR:
https://github.com/torvalds/linux/blob/f09079bd04a924c72d555cd97942d5f8d7eca98c/tools/perf/Documentation/perf-record.txt#L457-L460
> - save_type: save branch type during sampling in case binary is not
available later.
For the platforms with Intel Arch LBR support (12th-Gen+ client or
4th-Gen Xeon+ server), the save branch type is unconditionally enabled
when the taken branch stack sampling is enabled.
Kernel-reported branch type values:
https://github.com/torvalds/linux/blob/8c6bc74c7f8910ed4c969ccec52e98716f98700a/include/uapi/linux/perf_event.h#L251-L269
This information is needed to disambiguate external returns (from
DSO/JIT) to an entry point or a landing pad, when BOLT can't
disassemble the branch source.
This patch adds new pre-aggregated types:
- return trace (R),
- external return fall-through (r).
For such types, the checks for fall-through start (not an entry or
a landing pad) are relaxed.
Depends on #143295.
Test Plan: updated callcont-fallthru.s
Commit: 00c18d04ab6341022867d3b6674ec3ab30e5de2c
https://github.com/llvm/llvm-project/commit/00c18d04ab6341022867d3b6674ec3ab30e5de2c
Author: Nicolas Vasilache <Nico.Vasilache at amd.com>
Date: 2025-06-20 (Fri, 20 Jun 2025)
Changed paths:
M mlir/include/mlir/Dialect/Linalg/TransformOps/LinalgTransformOps.td
M mlir/include/mlir/Dialect/Linalg/Transforms/Transforms.h
M mlir/lib/Dialect/Linalg/TransformOps/LinalgTransformOps.cpp
M mlir/lib/Dialect/Linalg/Transforms/CMakeLists.txt
A mlir/lib/Dialect/Linalg/Transforms/PadTilingInterface.cpp
A mlir/test/Dialect/Linalg/transform-op-pad-tiling-interface-multiple-of.mlir
A mlir/test/Dialect/Linalg/transform-op-pad-tiling-interface.mlir
Log Message:
-----------
[mlir][Transforms] Add a PadTilingInterface transformation and hook i… (#144991)
…t up to the transform dialect
This revision revisits the padding transformation from first principles
and prepares it to work more generally with TilingInterface.
Compared to structured.transform.pad it has the following differences:
- no support for nofold, copy-back, transpose and hoisting: these have
been carried by the padding op in the very early days of StructuredOps
and have since then been separated out as independent transformations
that compose.
- no conflated static bounding box derivation attempts:
pad_tiling_interface composes more naturally with or without tiling.
- properly derives padding size on outputs where multiple dimensions
contribute: this is not supported in structured.transform.pad
- geared towards supporting TilingInterface once the proper control
mechanisms are supported through a PadSizeComputationFunction (supports
LinalgOp by default)
This will gradually replace structured.transform.pad as it is fleshed
out and tested more comprehensively.
In the future this should be moved out of a specific Linalg
implementation file and into a more general "Structured" file.
Commit: 7af545237f8509d40b9ab1dd6526210e09bc76bf
https://github.com/llvm/llvm-project/commit/7af545237f8509d40b9ab1dd6526210e09bc76bf
Author: Nicolas Vasilache <Nico.Vasilache at amd.com>
Date: 2025-06-20 (Fri, 20 Jun 2025)
Changed paths:
M mlir/test/Dialect/Linalg/transform-op-pad-tiling-interface-multiple-of.mlir
Log Message:
-----------
[NFC] Update transform-op-pad-tiling-interface-multiple-of.mlir
Missing NL
Commit: 227cd56e1330e51bc48f4fd71fabfc203b7ca31d
https://github.com/llvm/llvm-project/commit/227cd56e1330e51bc48f4fd71fabfc203b7ca31d
Author: Nicolas Vasilache <Nico.Vasilache at amd.com>
Date: 2025-06-20 (Fri, 20 Jun 2025)
Changed paths:
M mlir/test/Dialect/Linalg/transform-op-pad-tiling-interface.mlir
Log Message:
-----------
[NFC] Update transform-op-pad-tiling-interface.mlir
Missing NL
Commit: 68732ce8e01938227378b4e6f7850ba85c978726
https://github.com/llvm/llvm-project/commit/68732ce8e01938227378b4e6f7850ba85c978726
Author: Paul Walker <paul.walker at arm.com>
Date: 2025-06-20 (Fri, 20 Jun 2025)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorOps.cpp
M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
A llvm/test/CodeGen/AArch64/sve-bf16-reductions.ll
Log Message:
-----------
[LLVM][CodeGen][SVE] Add isel for bfloat unordered reductions. (#143540)
The omissions are VECREDUCE_SEQ_* and MUL. The former goes down a
different code path and the latter is unsupported across all element types.
Commit: 4ec6d127c1857e77d70236b15b03d23ba1283a3d
https://github.com/llvm/llvm-project/commit/4ec6d127c1857e77d70236b15b03d23ba1283a3d
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-06-20 (Fri, 20 Jun 2025)
Changed paths:
M llvm/test/CodeGen/X86/movmsk-cmp.ll
Log Message:
-----------
[X86] movmsk-cmp.ll - regenerate VPTERNLOG asm comments
Commit: 3e99aa6c0a36ec4d6f126882b1a06436767cbf73
https://github.com/llvm/llvm-project/commit/3e99aa6c0a36ec4d6f126882b1a06436767cbf73
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-06-20 (Fri, 20 Jun 2025)
Changed paths:
M llvm/lib/Transforms/Utils/PredicateInfo.cpp
Log Message:
-----------
[PredicateInfo] Clean up DFS sorting (NFC) (#144943)
The comparison function for ValueDFS was confused in a number of ways.
Most significantly, it had a bunch of logic based on Def -- however, Def
is always null during sorting, it only gets set later. At this point
defs only have PInfo set.
Clean up the implementation to remove various dead code.
Commit: cbd496581fb6953a9a8d8387a010cc3a67d4654b
https://github.com/llvm/llvm-project/commit/cbd496581fb6953a9a8d8387a010cc3a67d4654b
Author: Chris Jackson <chris.jackson at amd.com>
Date: 2025-06-20 (Fri, 20 Jun 2025)
Changed paths:
M llvm/test/CodeGen/AMDGPU/any_extend_vector_inreg.ll
Log Message:
-----------
[NFC][AMDGPU] Automate any_extend_vector_inreg.ll check line generation (#145013)
Convert the test to use update_llc_test_checks.py.
Commit: e5559ca45f211f2cdd9c81e46935afe1cc2e22ab
https://github.com/llvm/llvm-project/commit/e5559ca45f211f2cdd9c81e46935afe1cc2e22ab
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2025-06-20 (Fri, 20 Jun 2025)
Changed paths:
M flang/lib/Lower/CMakeLists.txt
A flang/lib/Lower/OpenMP/Atomic.cpp
A flang/lib/Lower/OpenMP/Atomic.h
M flang/lib/Lower/OpenMP/OpenMP.cpp
Log Message:
-----------
[flang][OpenMP] Move lowering of ATOMIC to separate file, NFC (#144960)
Commit: 1b83f10072b322a206ffcaf737b42fe5c2d95b89
https://github.com/llvm/llvm-project/commit/1b83f10072b322a206ffcaf737b42fe5c2d95b89
Author: Vigneshwar Jayakumar <vigneshwar.jayakumar at amd.com>
Date: 2025-06-20 (Fri, 20 Jun 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/VOP1Instructions.td
M llvm/lib/Target/AMDGPU/VOPInstructions.td
M llvm/test/CodeGen/AMDGPU/machine-sink-ignorable-exec-use.mir
Log Message:
-----------
[AMDGPU] Fix to prevent sinking of PERMLANE_SWAP instruction (#144423)
Permlane_swap instruction depends on exec mask, added isConvergent flag
to prevent sinking of instruction.
Fixes: SWDEV-537232
Commit: e8be733a3c3347207c162fc83e8dbe02dad2a952
https://github.com/llvm/llvm-project/commit/e8be733a3c3347207c162fc83e8dbe02dad2a952
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-06-20 (Fri, 20 Jun 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlanPatternMatch.h
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/test/Transforms/LoopVectorize/AArch64/vplan-printing.ll
Log Message:
-----------
[VPlan] Remove redundant ExtractLastElement from vector-to-scalar VPI.
Recipes that are vector-to-scalar are guaranteed to generate a scalar
value, so the extract is redundant after VPlan unrolling. Remove it.
This removes unneeded ExtractLastElement VPInstruction of reduction
result computations.
Commit: 8650c801381d5640018a2fab32932ee41ad27797
https://github.com/llvm/llvm-project/commit/8650c801381d5640018a2fab32932ee41ad27797
Author: NimishMishra <42909663+NimishMishra at users.noreply.github.com>
Date: 2025-06-20 (Fri, 20 Jun 2025)
Changed paths:
M flang/lib/Lower/OpenMP/DataSharingProcessor.cpp
Log Message:
-----------
[flang][OpenMP] Do not skip privatization of linear variable if it is OmpPreDetermined (#144315)
Current implementation of linear clause skips privatisation of all
linear variables during the FIR generation phase, since linear variables
are handled in their entirety by the OpenMP IRBuilder. However,
"implicit" linear variables (like OmpPreDetermined) cannot be skipped,
since FIR generation requires privatized symbols. This patch adds checks
to skip the same.
Fixes https://github.com/llvm/llvm-project/issues/142935
Commit: e970f59e6b20dddc4369735affb79ca9be240c1c
https://github.com/llvm/llvm-project/commit/e970f59e6b20dddc4369735affb79ca9be240c1c
Author: NimishMishra <42909663+NimishMishra at users.noreply.github.com>
Date: 2025-06-20 (Fri, 20 Jun 2025)
Changed paths:
M flang/lib/Lower/OpenMP/OpenMP.cpp
R flang/test/Lower/OpenMP/wsloop-linear.f90
Log Message:
-----------
[flang][OpenMP] Reintroduce TODO for FIR lowering of linear clause (#144883)
Current design of the linear clause lowering and translation shifts all
responsibility for handling the clause (like privatisation, linear
stepping, finalisation, and emission of synchronisation barriers) to the
IRBuilder. However in certain corner cases (like associated loops in or
before OpenMP version 4.5), variables are are implicitly linear. This
currently causes a problem with the existing linear clause
implementation. Hence, re-introduce TODO on the linear clause until the
linear clause lowering/translation are robust enough to handle such
cases as well.
Fixes https://github.com/llvm/llvm-project/issues/142935
Commit: a5b1093f782729014604f3208550de7400c518ac
https://github.com/llvm/llvm-project/commit/a5b1093f782729014604f3208550de7400c518ac
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2025-06-20 (Fri, 20 Jun 2025)
Changed paths:
M mlir/include/mlir/Dialect/MemRef/IR/MemRefOps.td
M mlir/test/Transforms/remove-dead-values.mlir
Log Message:
-----------
[MLIR] Add ReturnLike trait to memref.atomic_yield (#144932)
Without this, the yield isn't considered as the region terminator and
the dataflow framework does not consider it live.
Commit: 5835f1e0a33afcae46a6ca4854373785eb3e7fd6
https://github.com/llvm/llvm-project/commit/5835f1e0a33afcae46a6ca4854373785eb3e7fd6
Author: Tobias Stadler <mail at stadler-tobias.de>
Date: 2025-06-20 (Fri, 20 Jun 2025)
Changed paths:
M llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
M llvm/test/CodeGen/X86/remarks-section.ll
Log Message:
-----------
[AsmPrinter] Fix crash when remarks section is unsupported (#144724)
Emit a warning and bail out instead of segfault-ing when the current
object file format does not have support for emitting a remarks section.
Commit: fd97dfbb78e3c9aea16873617b6d61b5b8a64474
https://github.com/llvm/llvm-project/commit/fd97dfbb78e3c9aea16873617b6d61b5b8a64474
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-06-20 (Fri, 20 Jun 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorizationLegality.cpp
M llvm/test/Transforms/LoopVectorize/X86/drop-poison-generating-flags.ll
M llvm/test/Transforms/LoopVectorize/dereferenceable-info-from-assumption-constant-size.ll
M llvm/test/Transforms/LoopVectorize/dereferenceable-info-from-assumption-variable-size.ll
M llvm/test/Transforms/LoopVectorize/load-deref-pred-poison-ub-ops-feeding-pointer.ll
Log Message:
-----------
[LV] Don't mark ptrs as safe to speculate if fed by UB/poison op. (#143204)
Add additional checks before marking pointers safe to load
speculatively. If some computations feeding the pointer may trigger UB,
we cannot load the pointer speculatively, because we cannot compute the
address speculatively. The UB triggering instructions will be
predicated, but if the predicated block does not execute the result is
poison.
Similarly, we also cannot load the pointer speculatively if it may be
poison. The patch also checks if any of the operands defined outside the
loop may be poison when entering the loop. We *don't* need to check if
any operation inside the loop may produce poison due to flags, as those
will be dropped if needed.
There are some types of instructions inside the loop that can produce
poison independent of flags. Currently loads are also checked, not sure
if there's a convenient API to check for all such operands.
Fixes https://github.com/llvm/llvm-project/issues/142957.
PR: https://github.com/llvm/llvm-project/pull/143204
Commit: 6c0ac888c59ca34a7f4e1dc2702b30e0db5cbac3
https://github.com/llvm/llvm-project/commit/6c0ac888c59ca34a7f4e1dc2702b30e0db5cbac3
Author: Matthias Springer <me at m-sp.org>
Date: 2025-06-20 (Fri, 20 Jun 2025)
Changed paths:
M mlir/include/mlir/Dialect/Arith/IR/ArithOps.td
Log Message:
-----------
[mlir][arith][NFC] Remove redundant trait declaration (#145007)
`Arith_Op` already declares the `ElementwiseMappable` traits, so they
don't have to be declared for `arith.select`.
Commit: 6edf2eb36470b623597668a7a97153544f568a40
https://github.com/llvm/llvm-project/commit/6edf2eb36470b623597668a7a97153544f568a40
Author: Artemiy Bulavin <artemiyb at graphcore.ai>
Date: 2025-06-20 (Fri, 20 Jun 2025)
Changed paths:
M mlir/lib/Pass/PassManagerOptions.cpp
A mlir/test/mlir-opt/local-reproducer-with-threading.mlir
Log Message:
-----------
[MLIR] Print more user-friendly error message when generating local reproducer and threading is enabled (#144905)
Commit: b334ffd4f4e70a404a8572b132184583a9d8623a
https://github.com/llvm/llvm-project/commit/b334ffd4f4e70a404a8572b132184583a9d8623a
Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
Date: 2025-06-20 (Fri, 20 Jun 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorizationPlanner.h
Log Message:
-----------
[VPlan] Refine return types in VPBuilder (NFC) (#108858)
Commit: c8c4bd1ebc6e4451dc835a77bacdbe6a0467f219
https://github.com/llvm/llvm-project/commit/c8c4bd1ebc6e4451dc835a77bacdbe6a0467f219
Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
Date: 2025-06-20 (Fri, 20 Jun 2025)
Changed paths:
M llvm/lib/Analysis/LoopAccessAnalysis.cpp
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/test/Transforms/LoopVectorize/RISCV/pr88802.ll
A llvm/test/Transforms/LoopVectorize/predicatedinst-loop-invariant.ll
Log Message:
-----------
[LV] Stengthen loop-invariance checks in isPredicatedInst (#140744)
Check loop-invariance against SCEV as well.
Commit: 349f8d67d4ee2e7a6045b02f6aea0a72165404b1
https://github.com/llvm/llvm-project/commit/349f8d67d4ee2e7a6045b02f6aea0a72165404b1
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2025-06-20 (Fri, 20 Jun 2025)
Changed paths:
A flang/test/Lower/ignore-target-data.f90
M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
M mlir/test/Target/LLVMIR/omptarget-llvm.mlir
M mlir/test/Target/LLVMIR/omptargetdata-nowait-llvm.mlir
M mlir/test/Target/LLVMIR/openmp-data-target-device.mlir
Log Message:
-----------
[flang][OpenMP] Skip runtime mapping with no offload targets (#144534)
When no offload targets are specified flang will ignore "target"
constructs, but not "target data" constructs. This patch makes the
behavior consistent across all offload-related operations.
While ignoring "target" may produce semantically incorrect code, it may
still be a useful debugging tool.
Commit: 152d4b8a01e8671a676e7cfaf71c70b1edeee7e8
https://github.com/llvm/llvm-project/commit/152d4b8a01e8671a676e7cfaf71c70b1edeee7e8
Author: Graham Hunter <graham.hunter at arm.com>
Date: 2025-06-20 (Fri, 20 Jun 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
A llvm/test/CodeGen/AArch64/sve-fixed-length-splat-segment.ll
Log Message:
-----------
[AArch64] Use indexed dup for 128b segmented splat (#144688)
Matches a splat of 128b segments into a wider z register expressed as a
concat_vectors sdnode and generate a dup zn.q, zd.q[0] instruction.
Commit: 8db272ffcf9ad97fe5614b34cd978eac30b53cd1
https://github.com/llvm/llvm-project/commit/8db272ffcf9ad97fe5614b34cd978eac30b53cd1
Author: Andrzej Warzyński <andrzej.warzynski at arm.com>
Date: 2025-06-20 (Fri, 20 Jun 2025)
Changed paths:
M mlir/test/Integration/Dialect/SparseTensor/CPU/dense_output_bf16.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_sum_bf16.mlir
Log Message:
-----------
[mlir][SparseTensor] Re-enable tests on AArch64 (#143387)
These tests were disabled in https://reviews.llvm.org/D136273, due to:
* https://github.com/llvm/llvm-project/issues/58465
That issue has now been resolved, so we should be able to re-enable
these tests.
Commit: c3929fbf0ef2d0fac05c54237bd9eac4fd57b1d8
https://github.com/llvm/llvm-project/commit/c3929fbf0ef2d0fac05c54237bd9eac4fd57b1d8
Author: Paul Walker <paul.walker at arm.com>
Date: 2025-06-20 (Fri, 20 Jun 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64InstrInfo.td
Log Message:
-----------
[NFC][LLVM] Reorder SVE_SME codegen predicate classes.
Also removes unused HasNonStreamingSVE2p1_or_SSVE_AES predicate.
Commit: 376b71442d03bcc8ec6e2244002e3d62916dcea4
https://github.com/llvm/llvm-project/commit/376b71442d03bcc8ec6e2244002e3d62916dcea4
Author: Rahul Joshi <rjoshi at nvidia.com>
Date: 2025-06-20 (Fri, 20 Jun 2025)
Changed paths:
M llvm/utils/TableGen/DecoderEmitter.cpp
Log Message:
-----------
[NFC][TableGen][DecoderEmitter] Use structured binding in range for loop (#144890)
Also assign variable names to different elements of `OpMap` for better
readibility, and eliminate `NumberedEncodingsRef` as `std::vector` will
automatically get converted to an `ArrayRef`.
Commit: 269cb22ae82fd83ecc7a7ef7f7a4110e4c7a43ec
https://github.com/llvm/llvm-project/commit/269cb22ae82fd83ecc7a7ef7f7a4110e4c7a43ec
Author: Nicolas Vasilache <Nico.Vasilache at amd.com>
Date: 2025-06-20 (Fri, 20 Jun 2025)
Changed paths:
M mlir/include/mlir/Dialect/Linalg/IR/LinalgInterfaces.td
M mlir/include/mlir/Dialect/Linalg/Transforms/Transforms.h
M mlir/lib/Dialect/Linalg/TransformOps/LinalgTransformOps.cpp
M mlir/lib/Dialect/Linalg/Transforms/PadTilingInterface.cpp
M mlir/test/Dialect/Linalg/transform-op-pad-tiling-interface.mlir
Log Message:
-----------
[mlir][transform] extract a minimal DomainAndOperandsAffineMapT… (#145034)
…ransferInterface out of LinalgStructuredInterface and use that for
PadTilingInterface
Along the way, a bug was found on the handling of scalar values, fix it
and add a test.
Commit: 3ff69c80786e4c2e37fd40a48ee675e33a5b6f76
https://github.com/llvm/llvm-project/commit/3ff69c80786e4c2e37fd40a48ee675e33a5b6f76
Author: Graham Hunter <graham.hunter at arm.com>
Date: 2025-06-20 (Fri, 20 Jun 2025)
Changed paths:
M llvm/test/Transforms/LoopVectorize/early_exit_legality.ll
A llvm/test/Transforms/LoopVectorize/early_exit_store_legality.ll
Log Message:
-----------
[LV] Add early-exit-with-store tests (#140899)
Adds some additional LoopVectorizeLegality tests for early exit loops
with a store that we don't vectorize.
Test precommit split from #137774
Commit: 225768d1f9f2e2ccff7dc79b4a4aaeab4c6aafc1
https://github.com/llvm/llvm-project/commit/225768d1f9f2e2ccff7dc79b4a4aaeab4c6aafc1
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-06-20 (Fri, 20 Jun 2025)
Changed paths:
M llvm/test/CodeGen/X86/vector-shift-lshr-256.ll
M llvm/test/CodeGen/X86/vector-shift-shl-256.ll
Log Message:
-----------
[X86] combineConcatVectorOps - add tests showing v4i64 shift-by-32 with unnecessary concatenation
On AVX1-only targets, we concat SHL/SRL AVX1 v4i64 by 32-bits as a shuffle. But this is only worth while if the shift source value is free to concatenate.
Commit: bd36f7331a9f575272aebb9e0163194541110912
https://github.com/llvm/llvm-project/commit/bd36f7331a9f575272aebb9e0163194541110912
Author: Andres-Salamanca <andrealebarbaritos at gmail.com>
Date: 2025-06-20 (Fri, 20 Jun 2025)
Changed paths:
M clang/include/clang/CIR/MissingFeatures.h
M clang/lib/CIR/CodeGen/CIRGenRecordLayout.h
M clang/lib/CIR/CodeGen/CIRGenRecordLayoutBuilder.cpp
M clang/lib/CIR/CodeGen/TargetInfo.cpp
M clang/lib/CIR/CodeGen/TargetInfo.h
A clang/test/CIR/CodeGen/bitfields.c
A clang/test/CIR/CodeGen/bitfields.cpp
Log Message:
-----------
[CIR] Add initial support for bitfields in structs (#142041)
This change adds support for bitfields CIR records can now contain bit
fields.
I’ve updated the `CIRGenBitFieldInfo` comment, which originally came
from the incubator and was identical to the one in OGCodeGen, to better
reflect the current implementation.
Support for bitfields in unions big-endian architectures and `get` and
`set` operations remains unimplemented and will be addressed in a future
patch.
Commit: e0633d59b9d0f931d3917e51a51b5aa7d7e775ac
https://github.com/llvm/llvm-project/commit/e0633d59b9d0f931d3917e51a51b5aa7d7e775ac
Author: Ross Brunton <ross at codeplay.com>
Date: 2025-06-20 (Fri, 20 Jun 2025)
Changed paths:
M offload/liboffload/API/Common.td
M offload/liboffload/include/OffloadImpl.hpp
M offload/liboffload/src/OffloadImpl.cpp
M offload/tools/offload-tblgen/EntryPointGen.cpp
M offload/unittests/OffloadAPI/CMakeLists.txt
M offload/unittests/OffloadAPI/common/Environment.cpp
A offload/unittests/OffloadAPI/init/olInit.cpp
Log Message:
-----------
[Offload] Check for initialization (#144370)
All entry points (except olInit) now check that offload has been
initialized. If not, a new `OL_ERRC_UNINITIALIZED` error is returned.
Commit: f242360e156b407902829d694c036b2d22211894
https://github.com/llvm/llvm-project/commit/f242360e156b407902829d694c036b2d22211894
Author: Ross Brunton <ross at codeplay.com>
Date: 2025-06-20 (Fri, 20 Jun 2025)
Changed paths:
M offload/liboffload/src/OffloadImpl.cpp
M offload/plugins-nextgen/common/include/PluginInterface.h
Log Message:
-----------
[Offload] Add type information to device info nodes (#144535)
Rather than being "stringly typed", store values as a std::variant that
can hold various types. This means that liboffload doesn't have to do
any string parsing for integer/bool device info keys.
Commit: 96ab74bf175f46de4b6fbfc68deecd3567e42a52
https://github.com/llvm/llvm-project/commit/96ab74bf175f46de4b6fbfc68deecd3567e42a52
Author: Jameson Nash <vtjnash at gmail.com>
Date: 2025-06-20 (Fri, 20 Jun 2025)
Changed paths:
M clang/test/Misc/loop-opt-setup.c
M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
M llvm/test/Transforms/InstCombine/and-or-icmps.ll
M llvm/test/Transforms/InstCombine/apint-shift.ll
M llvm/test/Transforms/InstCombine/call-cast-target.ll
A llvm/test/Transforms/InstCombine/dead-alloc-elim.ll
M llvm/test/Transforms/InstCombine/fp-ret-bitcast.ll
M llvm/test/Transforms/InstCombine/getelementptr.ll
M llvm/test/Transforms/InstCombine/malloc-free.ll
M llvm/test/Transforms/InstCombine/multiple-uses-load-bitcast-select.ll
M llvm/test/Transforms/InstCombine/objsize.ll
M llvm/test/Transforms/InstCombine/select-load.ll
M llvm/test/Transforms/InstCombine/shift-amount-reassociation.ll
M llvm/test/Transforms/InstCombine/vscale_gep.ll
Log Message:
-----------
[InstCombine] remove undef loads, such as memcpy from undef (#143958)
Extend `isAllocSiteRemovable` to be able to check if the ModRef info
indicates the alloca is only Ref or only Mod, and be able to remove it
accordingly. It seemed that there were a surprising number of
benchmarks with this pattern which weren't getting optimized previously
(due to MemorySSA walk limits). There were somewhat more existing tests
than I'd like to have modified which were simply doing exactly this
pattern (and thus relying on undef memory). Claude code contributed the
new tests (and found an important typo that I'd made).
This implements the discussion in
https://github.com/llvm/llvm-project/pull/143782#discussion_r2142720376.
Commit: a2b8a93ff9cfdae4a1578c60fe5efc8ebd8c5571
https://github.com/llvm/llvm-project/commit/a2b8a93ff9cfdae4a1578c60fe5efc8ebd8c5571
Author: Luke Lau <luke at igalia.com>
Date: 2025-06-20 (Fri, 20 Jun 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/VPlan.h
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
Log Message:
-----------
[VPlan] Pass NumUnrolledElems as operand to VPWidenPointerInductionRecipe. NFC (#119859)
Similarly to VPWidenIntOrFpInductionRecipe, if we want to support it in
EVL tail folding we need to increment the induction by EVL steps instead
of VF*UF steps, but currently this is hard-wired in
VPWidenPointerInductionRecipe.
This adds an operand for the number of elements unrolled and plumbs it
through, so that we can swap it out in
VPlanTransforms::tryAddExplicitVectorLength further down the line.
Commit: 20d57e77f6709ef32791391bc064d3ed5663272a
https://github.com/llvm/llvm-project/commit/20d57e77f6709ef32791391bc064d3ed5663272a
Author: Hemang Gadhavi <hemang.gadhavi at ibm.com>
Date: 2025-06-20 (Fri, 20 Jun 2025)
Changed paths:
M lldb/source/Plugins/Process/AIX/CMakeLists.txt
A lldb/source/Plugins/Process/AIX/NativeRegisterContextAIX.cpp
A lldb/source/Plugins/Process/AIX/NativeRegisterContextAIX.h
Log Message:
-----------
[lldb][AIX] Added base file for AIX Register Context (#144645)
This PR is in reference to porting LLDB on AIX.
Link to discussions on llvm discourse and github:
1. https://discourse.llvm.org/t/port-lldb-to-ibm-aix/80640
2. https://github.com/llvm/llvm-project/issues/101657
The complete changes for porting are present in this draft PR:
https://github.com/llvm/llvm-project/pull/102601
- Added skeleton for Registercontext file for AIX. (Later we will add
implementation respectively)
Commit: 95c6c11c747dee61133cff56f1a7ea7445c7ae79
https://github.com/llvm/llvm-project/commit/95c6c11c747dee61133cff56f1a7ea7445c7ae79
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-06-20 (Fri, 20 Jun 2025)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/vector-fshl-256.ll
M llvm/test/CodeGen/X86/vector-fshr-256.ll
Log Message:
-----------
[X86] combineConcatVectorOps - only always concat logic ops on AVX512 targets (#145036)
We should only concat logic ops if at least one operand will freely
concatenate. We've now addressed the remaining regressions on AVX2
targets, but still have a number on AVX512 targets which can
aggressively use VPTERNLOG in many cases.
Commit: b017b4ce9a45d4c5a339e24142da5d4a7e4c5db1
https://github.com/llvm/llvm-project/commit/b017b4ce9a45d4c5a339e24142da5d4a7e4c5db1
Author: Michael Buch <michaelbuch12 at gmail.com>
Date: 2025-06-20 (Fri, 20 Jun 2025)
Changed paths:
M lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp
M lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.h
Log Message:
-----------
[lldb][DWARF] Remove object_pointer from ParsedDWARFAttributes (#144880)
We can just always use `GetCXXObjectParameter` instead. We've only used
this attribute to set the object parameter name on ClangASTMetadata,
which doesn't seem like good enough justification to keep it around.
Depends on https://github.com/llvm/llvm-project/pull/144879
Commit: 9dc59cc95b1766510ab43ec62bb087aa9273341a
https://github.com/llvm/llvm-project/commit/9dc59cc95b1766510ab43ec62bb087aa9273341a
Author: Chao Chen <chao.chen at intel.com>
Date: 2025-06-20 (Fri, 20 Jun 2025)
Changed paths:
M mlir/test/lib/Dialect/Test/TestOps.td
M mlir/test/mlir-tblgen/op-format.mlir
M mlir/tools/mlir-tblgen/OpFormatGen.cpp
Log Message:
-----------
[MLIR] Incorrect track of usedKey in setPropertiesFromParsedAttr (#144789)
co-authored by @chencha3 and @joker-eph
Commit: 05b4bfe19eaba13b4fdf39fc5541077c255b8e3f
https://github.com/llvm/llvm-project/commit/05b4bfe19eaba13b4fdf39fc5541077c255b8e3f
Author: Prajwal Nadig <pnadig at apple.com>
Date: 2025-06-20 (Fri, 20 Jun 2025)
Changed paths:
M clang/lib/ExtractAPI/Serialization/SymbolGraphSerializer.cpp
M clang/test/ExtractAPI/objc_instancetype.m
Log Message:
-----------
[ExtractAPI] Include +/- symbols for ObjC methods (#145035)
ObjC methods include a +/- prefix to indicate if they are a class or
instance method. This information is valuable, and must be included in
the navigator generated by ExtractAPI.
rdar://150870936
Commit: 71e20c6c86e04863df80e286a004a20070a5a610
https://github.com/llvm/llvm-project/commit/71e20c6c86e04863df80e286a004a20070a5a610
Author: Douglas <Douglas.Gliner at sony.com>
Date: 2025-06-20 (Fri, 20 Jun 2025)
Changed paths:
M llvm/cmake/modules/HandleLLVMOptions.cmake
Log Message:
-----------
Fix references to required libraries when building LLVM with ASAN and MultiThreaded[Debug] on Windows (#139657)
After https://github.com/llvm/llvm-project/pull/81677, statically
linking ASAN under Windows is no longer supported. Therefore, when using
Clang built past
https://github.com/llvm/llvm-project/commit/53a81d4d26f0409de8a0655d7af90f2bea222a12
to build LLVM / Clang with
`-DCMAKE_MSVC_RUNTIME_LIBRARY=MultiThreaded[Debug]
-DLLVM_USE_SANITIZER=Address`, a different set of dependent libraries
must be linked. This is mentioned in the description of
https://github.com/llvm/llvm-project/pull/81677 and also in
https://devblogs.microsoft.com/cppblog/msvc-address-sanitizer-one-dll-for-all-runtime-configurations/.
Commit: b533b0ec34ac36d8a6af406d1fb046e07f95f717
https://github.com/llvm/llvm-project/commit/b533b0ec34ac36d8a6af406d1fb046e07f95f717
Author: Jeremy Kun <jkun at google.com>
Date: 2025-06-20 (Fri, 20 Jun 2025)
Changed paths:
A mlir/include/mlir/Analysis/DataFlow/Utils.h
M mlir/lib/Analysis/DataFlow/LivenessAnalysis.cpp
M mlir/lib/Dialect/XeGPU/Transforms/XeGPUSubgroupDistribute.cpp
M mlir/test/lib/Analysis/DataFlow/TestDenseBackwardDataFlowAnalysis.cpp
M mlir/test/lib/Analysis/DataFlow/TestDenseForwardDataFlowAnalysis.cpp
M mlir/test/lib/Analysis/DataFlow/TestSparseBackwardDataFlowAnalysis.cpp
Log Message:
-----------
Define a DataFlowSolver helper that loads sensible default analyses (#143415)
Cf. https://discourse.llvm.org/t/mlir-dead-code-analysis/67568/10
Custom analysis passes will not work properly unless both
DeadCodeAnalysis and SparseConstantPropagation are loaded to the
DataFlowSolver. This is intended behavior, but surprising to many users
as shown in the thread. In lieu of a longer-term fix (which I am not
knowledgeable enough to implement myself, yet), this commit adds a
helper function that loads these two analyses, as well as providing
breadcrumbs for an explanation of the problem. The existing places in
the codebase where these two analyses are loaded for the purpose of
running other unrelated analyses are replaced by the use of the helper.
---------
Co-authored-by: Jeremy Kun <j2kun at users.noreply.github.com>
Co-authored-by: Oleksandr "Alex" Zinenko <azinenko at amd.com>
Commit: c734377544fc5a854c539fafc9b9b658f12230a3
https://github.com/llvm/llvm-project/commit/c734377544fc5a854c539fafc9b9b658f12230a3
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-06-20 (Fri, 20 Jun 2025)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
Log Message:
-----------
[DAG] foldMaskedMerge - fix Wparentheses operator precedence warning. NFC.
Commit: 3f1de197b1c339b311329c02bb739860b32c073f
https://github.com/llvm/llvm-project/commit/3f1de197b1c339b311329c02bb739860b32c073f
Author: Joseph Huber <huberjn at outlook.com>
Date: 2025-06-20 (Fri, 20 Jun 2025)
Changed paths:
M offload/unittests/CMakeLists.txt
M offload/unittests/OffloadAPI/device_code/CMakeLists.txt
Log Message:
-----------
[Offload] Rework compiling device code for unit test suites (#144776)
Summary:
I'll probably want to use this as a more generic utility in the future.
This patch reworks it to make it a top level function. I also tried to
decouple this from the OpenMP utilities to make that easier in the
future. Instead, I just use `-march=native` functionality which is the
same thing. Needed a small hack to skip the linker stage for checking if
that works.
This should still create the same output as far as I'm aware.
Commit: 887222e3526fbe08e748a33f740296ac22bf1ab1
https://github.com/llvm/llvm-project/commit/887222e3526fbe08e748a33f740296ac22bf1ab1
Author: Kazu Hirata <kazu at google.com>
Date: 2025-06-20 (Fri, 20 Jun 2025)
Changed paths:
M mlir/include/mlir/AsmParser/AsmParserState.h
M mlir/include/mlir/Dialect/Linalg/Utils/Utils.h
M mlir/include/mlir/Dialect/Tensor/Utils/Utils.h
M mlir/include/mlir/ExecutionEngine/ExecutionEngine.h
M mlir/include/mlir/IR/BlockSupport.h
M mlir/include/mlir/IR/Builders.h
M mlir/include/mlir/IR/BuiltinTypes.td
M mlir/include/mlir/IR/PatternMatch.h
M mlir/include/mlir/IR/Region.h
M mlir/include/mlir/IR/SymbolTable.h
M mlir/include/mlir/IR/TypeRange.h
M mlir/include/mlir/IR/ValueRange.h
M mlir/include/mlir/Rewrite/FrozenRewritePatternSet.h
M mlir/include/mlir/Tools/PDLL/AST/Types.h
M mlir/include/mlir/Transforms/DialectConversion.h
M mlir/include/mlir/Transforms/Passes.h
M mlir/lib/Dialect/GPU/Transforms/DecomposeMemRefs.cpp
M mlir/lib/Dialect/LLVMIR/IR/TypeDetail.h
M mlir/lib/Pass/PassStatistics.cpp
M mlir/unittests/IR/OperationSupportTest.cpp
M mlir/unittests/IR/ValueTest.cpp
Log Message:
-----------
[mlir] Migrate away from ArrayRef(std::nullopt) (NFC) (#144989)
ArrayRef has a constructor that accepts std::nullopt. This
constructor dates back to the days when we still had llvm::Optional.
Since the use of std::nullopt outside the context of std::optional is
kind of abuse and not intuitive to new comers, I would like to move
away from the constructor and eventually remove it.
This patch takes care of the mlir side of the migration, starting with
straightforward places where I see ArrayRef or ValueRange nearby.
Note that ValueRange has a constructor that forwards arguments to an
ArrayRef constructor.
Commit: 9524bfb27020d31b9474f595b7c0e5d2e1ac65f5
https://github.com/llvm/llvm-project/commit/9524bfb27020d31b9474f595b7c0e5d2e1ac65f5
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2025-06-20 (Fri, 20 Jun 2025)
Changed paths:
M lldb/cmake/modules/LLDBConfig.cmake
M lldb/include/lldb/Core/Debugger.h
M lldb/include/lldb/Core/PluginManager.h
A lldb/include/lldb/Core/ProtocolServer.h
M lldb/include/lldb/Interpreter/CommandOptionArgumentTable.h
M lldb/include/lldb/lldb-enumerations.h
M lldb/include/lldb/lldb-forward.h
M lldb/include/lldb/lldb-private-interfaces.h
M lldb/source/Commands/CMakeLists.txt
A lldb/source/Commands/CommandObjectProtocolServer.cpp
A lldb/source/Commands/CommandObjectProtocolServer.h
M lldb/source/Core/CMakeLists.txt
M lldb/source/Core/Debugger.cpp
M lldb/source/Core/PluginManager.cpp
A lldb/source/Core/ProtocolServer.cpp
M lldb/source/Interpreter/CommandInterpreter.cpp
M lldb/source/Plugins/CMakeLists.txt
A lldb/source/Plugins/Protocol/CMakeLists.txt
A lldb/source/Plugins/Protocol/MCP/CMakeLists.txt
A lldb/source/Plugins/Protocol/MCP/MCPError.cpp
A lldb/source/Plugins/Protocol/MCP/MCPError.h
A lldb/source/Plugins/Protocol/MCP/Protocol.cpp
A lldb/source/Plugins/Protocol/MCP/Protocol.h
A lldb/source/Plugins/Protocol/MCP/ProtocolServerMCP.cpp
A lldb/source/Plugins/Protocol/MCP/ProtocolServerMCP.h
A lldb/source/Plugins/Protocol/MCP/Tool.cpp
A lldb/source/Plugins/Protocol/MCP/Tool.h
M lldb/unittests/CMakeLists.txt
M lldb/unittests/DAP/ProtocolTypesTest.cpp
A lldb/unittests/Protocol/CMakeLists.txt
A lldb/unittests/Protocol/ProtocolMCPServerTest.cpp
A lldb/unittests/Protocol/ProtocolMCPTest.cpp
M lldb/unittests/TestingSupport/TestUtilities.h
Log Message:
-----------
[lldb] Add Model Context Protocol (MCP) support to LLDB (#143628)
This PR adds an MCP (Model Context Protocol ) server to LLDB. For
motivation and background, please refer to the corresponding RFC:
https://discourse.llvm.org/t/rfc-adding-mcp-support-to-lldb/86798
I implemented this as a new kind of plugin. The idea is that we could
support multiple protocol servers (e.g. if we want to support DAP from
within LLDB). This also introduces a corresponding top-level command
(`protocol-server`) with two subcommands to `start` and `stop` the
server.
```
(lldb) protocol-server start MCP tcp://localhost:1234
MCP server started with connection listeners: connection://[::1]:1234, connection://[127.0.0.1]:1234
```
The MCP sever supports one tool (`lldb_command`) which executes a
command, but can easily be extended with more commands.
Commit: 78971916da04895838ff043f4fc71760dcca5bac
https://github.com/llvm/llvm-project/commit/78971916da04895838ff043f4fc71760dcca5bac
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2025-06-20 (Fri, 20 Jun 2025)
Changed paths:
M llvm/utils/gn/secondary/lldb/source/Commands/BUILD.gn
M llvm/utils/gn/secondary/lldb/source/Core/BUILD.gn
Log Message:
-----------
[gn build] Port 9524bfb27020
Commit: 6e86b7e34b9494a01bf7164825c3d72ff21a4c7f
https://github.com/llvm/llvm-project/commit/6e86b7e34b9494a01bf7164825c3d72ff21a4c7f
Author: Jay Foad <jay.foad at amd.com>
Date: 2025-06-20 (Fri, 20 Jun 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
M llvm/test/CodeGen/AMDGPU/pseudo-scalar-transcendental.ll
Log Message:
-----------
[AMDGPU] Do not replace SALU floating point multiply with VALU-only ldexp (#145048)
Commit: 749e4a53d252e23e870d4a1638ff9d846af58e7f
https://github.com/llvm/llvm-project/commit/749e4a53d252e23e870d4a1638ff9d846af58e7f
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2025-06-20 (Fri, 20 Jun 2025)
Changed paths:
M lldb/source/Commands/CommandObjectProtocolServer.cpp
M lldb/source/Commands/CommandObjectProtocolServer.h
Log Message:
-----------
[lldb] Fix ASCII art in CommandObjectProtocolServer (NFC)
Commit: 151ee0faad427651304b51b8af77704be26bb485
https://github.com/llvm/llvm-project/commit/151ee0faad427651304b51b8af77704be26bb485
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-06-20 (Fri, 20 Jun 2025)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/vector-shuffle-combining-avx2.ll
Log Message:
-----------
[X86] SimplifyDemandedVectorEltsForTargetNode - ensure X86ISD::VPERMILPV node use v2f64/v4f32 types
When reducing v4f64/v8f32 non-lane crossing X86ISD::VPERMV nodes, we use X86ISD::VPERMILPV nodes for 128-bits, but these are only available for fp types.
Fixes #145046
Commit: 32fc625a3fa27fa325c75b0fc841db4ce8e06805
https://github.com/llvm/llvm-project/commit/32fc625a3fa27fa325c75b0fc841db4ce8e06805
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2025-06-20 (Fri, 20 Jun 2025)
Changed paths:
M clang/lib/AST/ByteCode/ByteCodeEmitter.cpp
M clang/lib/AST/ByteCode/Compiler.cpp
M clang/lib/AST/ByteCode/Compiler.h
M clang/lib/AST/ByteCode/Descriptor.cpp
M clang/lib/AST/ByteCode/Disasm.cpp
M clang/lib/AST/ByteCode/Floating.h
M clang/lib/AST/ByteCode/Integral.h
M clang/lib/AST/ByteCode/IntegralAP.h
M clang/lib/AST/ByteCode/Interp.cpp
M clang/lib/AST/ByteCode/Interp.h
M clang/lib/AST/ByteCode/InterpBuiltin.cpp
M clang/lib/AST/ByteCode/InterpBuiltinBitCast.cpp
M clang/lib/AST/ByteCode/InterpState.h
M clang/lib/AST/ByteCode/Opcodes.td
M clang/lib/AST/ByteCode/PrimType.h
M clang/lib/AST/ByteCode/Program.h
M clang/test/AST/ByteCode/builtin-bit-cast-long-double.cpp
M clang/test/AST/ByteCode/builtin-functions.cpp
Log Message:
-----------
Reapply "Reapply "[clang][bytecode] Allocate IntegralAP and Floating … (#145014)
…types usi… (#144676)"
This reverts commit 68471d29eed2c49f9b439e505b3f24d387d54f97.
IntegralAP contains a union:
union {
uint64_t *Memory = nullptr;
uint64_t Val;
};
On 64bit systems, both Memory and Val have the same size. However, on 32
bit system, Val is 64bit and Memory only 32bit. Which means the default
initializer for Memory will only zero half of Val. We fixed this by
zero-initializing Val explicitly in the IntegralAP(unsigned BitWidth)
constructor.
See also the discussion in
https://github.com/llvm/llvm-project/pull/144246
Commit: 770b16cd4939054e30f5bba40765cfe1f5895f74
https://github.com/llvm/llvm-project/commit/770b16cd4939054e30f5bba40765cfe1f5895f74
Author: Amir Ayupov <aaupov at fb.com>
Date: 2025-06-20 (Fri, 20 Jun 2025)
Changed paths:
M bolt/test/perf2bolt/X86/perf2bolt-spe.test
Log Message:
-----------
[BOLT][test] Update X86/perf2bolt-spe.test (#145061)
Address NFC mismatches caused by running perf2bolt from under the
wrapper script:
https://lab.llvm.org/buildbot/#/builders/92/builds/20938
> <stdin>:2:64: note: possible intended match here
>
/home/worker/bolt-worker2/bolt-x86_64-ubuntu-nfc/build/bin/llvm-bolt.old:
-spe is available only on AArch64.
Test Plan:
ninja check-bolt
Commit: 72de0e45846bab293a0b07e5aeda65a5e6590a87
https://github.com/llvm/llvm-project/commit/72de0e45846bab293a0b07e5aeda65a5e6590a87
Author: Chenguang Wang <w3cing at gmail.com>
Date: 2025-06-20 (Fri, 20 Jun 2025)
Changed paths:
M llvm/docs/TableGen/ProgRef.rst
Log Message:
-----------
[TableGen][Docs] Fix empty list syntax in TableGen doc. (#145041)
`[]<list<int>>` actually produces `list<list<int>>`.
Commit: 6ba1955ba22c0bea4d2fb76c6dfcad0f5354be72
https://github.com/llvm/llvm-project/commit/6ba1955ba22c0bea4d2fb76c6dfcad0f5354be72
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2025-06-20 (Fri, 20 Jun 2025)
Changed paths:
A flang/test/Lower/OpenMP/ignore-target-data.f90
R flang/test/Lower/ignore-target-data.f90
Log Message:
-----------
[flang][OpenMP] Fix ignore-target-data.f90 test
Allow the function definition line to match with and without attrbute
set number.
This fixes build break after PR144534:
https://lab.llvm.org/buildbot/#/builders/157/builds/31331
Also move the test to the OpenMP subdirectory where it should have
been from the beginning.
Commit: bfef8732be1b7b3a7ba7b3ccd93d043fd044293e
https://github.com/llvm/llvm-project/commit/bfef8732be1b7b3a7ba7b3ccd93d043fd044293e
Author: Justin King <jcking at google.com>
Date: 2025-06-20 (Fri, 20 Jun 2025)
Changed paths:
M compiler-rt/lib/msan/msan_interceptors.cpp
M compiler-rt/test/sanitizer_common/TestCases/Linux/free_aligned_sized.c
M compiler-rt/test/sanitizer_common/TestCases/Linux/free_sized.c
Log Message:
-----------
msan: Support free_sized and free_aligned_sized from C23 (#144529)
Adds support to MSan for `free_sized` and `free_aligned_sized` from C23.
Other sanitizers will be handled with their own separate PRs.
For https://github.com/llvm/llvm-project/issues/144435
Signed-off-by: Justin King <jcking at google.com>
Commit: 877511920dcf36463e06746d626e8876583a6abd
https://github.com/llvm/llvm-project/commit/877511920dcf36463e06746d626e8876583a6abd
Author: Michael Buch <michaelbuch12 at gmail.com>
Date: 2025-06-20 (Fri, 20 Jun 2025)
Changed paths:
M lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp
M lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.h
Log Message:
-----------
Revert "[lldb][DWARF] Remove object_pointer from ParsedDWARFAttributes" (#145065)
Reverts llvm/llvm-project#144880
Caused `TestObjCIvarsInBlocks.py` to fail on macOS CI.
Commit: 940ff110d78ba1eea7e0004275e098024cfd87c4
https://github.com/llvm/llvm-project/commit/940ff110d78ba1eea7e0004275e098024cfd87c4
Author: Jameson Nash <vtjnash at gmail.com>
Date: 2025-06-20 (Fri, 20 Jun 2025)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
Log Message:
-----------
[InstCombine] fix hwasan mistake in "remove dead loads" (#145057)
Detected by CI after #143958.
Commit: 379a609dadc1733c2b62d2bf3bab6e8032236836
https://github.com/llvm/llvm-project/commit/379a609dadc1733c2b62d2bf3bab6e8032236836
Author: Muzammil <55665739+Muzammiluddin-Syed-ECE at users.noreply.github.com>
Date: 2025-06-20 (Fri, 20 Jun 2025)
Changed paths:
M mlir/include/mlir/Dialect/Arith/Transforms/Passes.h
M mlir/include/mlir/Dialect/Arith/Transforms/Passes.td
M mlir/lib/Dialect/Arith/Transforms/ExpandOps.cpp
M mlir/test/Dialect/Arith/expand-ops.mlir
A mlir/test/Integration/Dialect/Arith/CPU/test-arith-expand-truncf-extf.mlir
Log Message:
-----------
[mlir][arith][transforms] Adds f4E2M1FN support to truncf and extf (#144157)
See work detail: https://github.com/iree-org/iree/issues/20920
Add support for f4E2M1FN in `arith.truncf` and `arith.extf` ops though a software emulation
---------
Signed-off-by: Muzammiluddin Syed <muzasyed at amd.com>
Commit: edbaf19c46c678e080d5a43e719bc19a02b44ca9
https://github.com/llvm/llvm-project/commit/edbaf19c46c678e080d5a43e719bc19a02b44ca9
Author: Shilei Tian <i at tianshilei.me>
Date: 2025-06-20 (Fri, 20 Jun 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/GCNRegPressure.cpp
A llvm/test/CodeGen/AMDGPU/gcn-reg-pressure-true16-integer-overflow.mir
Log Message:
-----------
[AMDGPU] Fix a potential integer overflow in GCNRegPressure when true16 is enabled (#144968)
Fixes SWDEV-537014.
Commit: 945ce1aa3d29e24c49720ae9e0bcfbac88f2defd
https://github.com/llvm/llvm-project/commit/945ce1aa3d29e24c49720ae9e0bcfbac88f2defd
Author: Hristo Hristov <hghristov.rmm at gmail.com>
Date: 2025-06-20 (Fri, 20 Jun 2025)
Changed paths:
M libcxx/include/version
M libcxx/test/std/language.support/support.limits/support.limits.general/expected.version.compile.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/optional.version.compile.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/tuple.version.compile.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/utility.version.compile.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/variant.version.compile.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/version.version.compile.pass.cpp
M libcxx/utils/generate_feature_test_macro_components.py
Log Message:
-----------
[libc++] Update the value of __cpp_lib_constrained_equality after P3379R0 (#144553)
https://wg21.link/P3379R0 updated the value of __cpp_lib_constrained_equality,
but we forgot to update it when we implemented the paper.
Commit: 6ddb3a69c15963b7cf1cbb0323dd3e467b71cefc
https://github.com/llvm/llvm-project/commit/6ddb3a69c15963b7cf1cbb0323dd3e467b71cefc
Author: Jay Foad <jay.foad at amd.com>
Date: 2025-06-20 (Fri, 20 Jun 2025)
Changed paths:
M llvm/test/CodeGen/AMDGPU/pseudo-scalar-transcendental.ll
Log Message:
-----------
[AMDGPU] Add another test showing unwanted VALU codegen (#145062)
Commit: 7157f33c6c88143acb8bc02bc26a0d6786136419
https://github.com/llvm/llvm-project/commit/7157f33c6c88143acb8bc02bc26a0d6786136419
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2025-06-20 (Fri, 20 Jun 2025)
Changed paths:
M libcxx/test/libcxx/depr/exception.unexpected/unexpected_disabled_cpp17.verify.cpp
Log Message:
-----------
[libc++] Disable a std::unexpected test in modules build (#144466)
This patch disables unexpected_disabled_cpp17.verify.cpp under clang
modules builds because it changes diagnostics criteria post #143423,
causing the test to fail.
This patch follows a similar style to 853059a15011fd8b57dd0.
This was found when working on trying to land #144033.
Commit: 8d6e29d0d3e3acb67adaa61648f35a38a9d196b3
https://github.com/llvm/llvm-project/commit/8d6e29d0d3e3acb67adaa61648f35a38a9d196b3
Author: Uzair Nawaz <uzairnawaz at google.com>
Date: 2025-06-20 (Fri, 20 Jun 2025)
Changed paths:
M libc/src/__support/wchar/character_converter.cpp
M libc/src/__support/wchar/character_converter.h
M libc/src/__support/wchar/mbstate.h
M libc/test/src/__support/wchar/utf32_to_8_test.cpp
M libc/test/src/__support/wchar/utf8_to_32_test.cpp
Log Message:
-----------
[libc] Reworked CharacterConverter isComplete into isFull and isEmpty (#144799)
isComplete previously meant different things for different conversion
directions.
Refactored bytes_processed to bytes_stored which now consistently
increments on every push and decrements on pop making both directions
more consistent with each other
Commit: 65cb3bcf327da8f9740e56897bc9954364e59eb6
https://github.com/llvm/llvm-project/commit/65cb3bcf327da8f9740e56897bc9954364e59eb6
Author: Maryam Moghadas <maryammo at ca.ibm.com>
Date: 2025-06-20 (Fri, 20 Jun 2025)
Changed paths:
M clang/include/clang/Basic/BuiltinsPPC.def
M clang/include/clang/Basic/PPCTypes.def
M clang/lib/AST/ASTContext.cpp
M clang/test/AST/ast-dump-ppc-types.c
A clang/test/CodeGen/PowerPC/builtins-ppc-dmf.c
A clang/test/CodeGen/PowerPC/ppc-dmf-paired-vec-memops-builtin-err.c
A clang/test/CodeGen/PowerPC/ppc-dmf-types.c
A clang/test/CodeGen/PowerPC/ppc-future-mma-builtin-err.c
M clang/test/CodeGenCXX/ppc-mangle-mma-types.cpp
A clang/test/Sema/ppc-dmf-types.c
M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp
Log Message:
-----------
[Clang][PowerPC] Add __dmr1024 type and DMF integer calculation builtins (#142480)
Define the __dmr1024 type used to manipulate the new DMR registers
introduced by the Dense Math Facility (DMF) on PowerPC, and add six
Clang builtins that correspond to the integer outer-product accumulate
to ACC PowerPC instructions:
* __builtin_mma_dmxvi8gerx4
* __builtin_mma_pmdmxvi8gerx4
* __builtin_mma_dmxvi8gerx4pp
* __builtin_mma_pmdmxvi8gerx4pp
* __builtin_mma_dmxvi8gerx4spp
* __builtin_mma_pmdmxvi8gerx4spp.
Commit: f8ee5774b612c425051adfc9108d1c52820b193d
https://github.com/llvm/llvm-project/commit/f8ee5774b612c425051adfc9108d1c52820b193d
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-06-20 (Fri, 20 Jun 2025)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/vector-shift-lshr-256.ll
M llvm/test/CodeGen/X86/vector-shift-shl-256.ll
Log Message:
-----------
[X86] combineConcatVectorOps - only concat AVX1 v4i64 shift-by-32 to a shuffle if the concat is free (#145043)
Commit: 33a92af1b2260506356eb838125b356703bf02bb
https://github.com/llvm/llvm-project/commit/33a92af1b2260506356eb838125b356703bf02bb
Author: Thurston Dang <thurston at google.com>
Date: 2025-06-20 (Fri, 20 Jun 2025)
Changed paths:
M llvm/lib/Transforms/Instrumentation/MemorySanitizer.cpp
M llvm/test/Instrumentation/MemorySanitizer/partial-poison.ll
Log Message:
-----------
[msan] Add off-by-default flag to fix false negatives from partially undefined constant fixed-length vectors (#143837)
This patch adds an off-by-default flag which, when enabled via `-mllvm -msan-poison-undef-vectors=true`, fixes a false negative in MSan (partially-undefined constant fixed-length vectors). It is currently off by default since, by fixing the false positive, code/tests that previously passed MSan may start failing. The default will be changed in a future patch.
Prior to this patch, MSan computes that partially-undefined constant fixed-length vectors are fully initialized, which leads to false negatives; moreover, benign vector rewriting could theoretically flip MSan's shadow computation from initialized to uninitialized or vice-versa (*). `-msan-poison-undef-vectors=true` calculates the shadow precisely: for each element of the vector, the corresponding shadow is fully uninitialized if the element is undefined/poisoned, otherwise it is fully initialized.
Updates the test from https://github.com/llvm/llvm-project/pull/143823
(*) For example:
```
%x = insertelement <2 x i64> <i64 0, i64 poison>, i64 42, i64 0
%y = insertelement <2 x i64> <i64 poison, i64 poison>, i64 42, i64 0
```
%x and %y are equivalent but, prior to this patch, MSan incorrectly computes the shadow of %x as <0, 0> rather than <0, -1>.
Commit: 0d21c956a5c1640c0f9588b307963bf32b09f6ab
https://github.com/llvm/llvm-project/commit/0d21c956a5c1640c0f9588b307963bf32b09f6ab
Author: Michal Rostecki <vadorovsky at disroot.org>
Date: 2025-06-20 (Fri, 20 Jun 2025)
Changed paths:
M llvm/lib/Target/BPF/BTFDebug.cpp
A llvm/test/CodeGen/BPF/BTF/map-def-nested.ll
Log Message:
-----------
[BPF] Handle nested wrapper structs in BPF map definition traversal (#144097)
In Aya/Rust, BPF map definitions are nested in two nested types:
* A struct representing the map type (e.g., `HashMap`, `RingBuf`) that
provides methods for interacting with the map type (e.g. `HashMap::get`,
`RingBuf::reserve`).
* An `UnsafeCell`, which informs the Rust compiler that the type is
thread-safe and can be safely mutated even as a global variable. The
kernel guarantees map operation safety.
This leads to a type hierarchy like:
```rust
pub struct HashMap<K, V, const M: usize, const F: usize = 0>(
core::cell::UnsafeCell<HashMapDef<K, V, M, F>>,
);
const BPF_MAP_TYPE_HASH: usize = 1;
pub struct HashMapDef<K, V, const M: usize, const F: usize = 0> {
r#type: *const [i32; BPF_MAP_TYPE_HASH],
key: *const K,
value: *const V,
max_entries: *const [i32; M],
map_flags: *const [i32; F],
}
```
Then used in the BPF program code as a global variable:
```rust
#[link_section = ".maps"]
static HASH_MAP: HashMap<u32, u32, 1337> = HashMap::new();
```
Which is an equivalent of the following BPF map definition in C:
```c
#define BPF_MAP_TYPE_HASH 1
struct {
int (*type)[BPF_MAP_TYPE_HASH];
typeof(int) *key;
typeof(int) *value;
int (*max_entries)[1337];
} map_1 __attribute__((section(".maps")));
```
Accessing the actual map definition requires traversing:
```
HASH_MAP -> __0 -> value
```
Previously, the BPF backend only visited the pointee types of the
outermost struct, and didn’t descend into inner wrappers. This caused
issues when the key/value types were custom structs:
```rust
// Define custom structs for key and values.
pub struct MyKey(u32);
pub struct MyValue(u32);
#[link_section = ".maps"]
#[export_name = "HASH_MAP"]
pub static HASH_MAP: HashMap<MyKey, MyValue, 10> = HashMap::new();
```
These types weren’t fully visited and appeared in BTF as forward
declarations:
```
#30: <FWD> 'MyKey' kind:struct
#31: <FWD> 'MyValue' kind:struct
```
The fix is to enhance `visitMapDefType` to recursively visit inner
composite members. If a member is a composite type (likely a wrapper),
it is now also visited using `visitMapDefType`, ensuring that the
pointee types of the innermost stuct members, like `MyKey` and
`MyValue`, are fully resolved in BTF.
With this fix, the correct BTF entries are emitted:
```
#6: <STRUCT> 'MyKey' sz:4 n:1
#00 '__0' off:0 --> [7]
#7: <INT> 'u32' bits:32 off:0
#8: <PTR> --> [9]
#9: <STRUCT> 'MyValue' sz:4 n:1
#00 '__0' off:0 --> [7]
```
Fixes: #143361
Commit: c9ebf678c3387f72206ad211640fd5086bac285b
https://github.com/llvm/llvm-project/commit/c9ebf678c3387f72206ad211640fd5086bac285b
Author: Aiden Grossman <agrossman154 at yahoo.com>
Date: 2025-06-20 (Fri, 20 Jun 2025)
Changed paths:
M .github/new-prs-labeler.yml
M .github/workflows/libcxx-restart-preempted-jobs.yaml
M bolt/include/bolt/Passes/PAuthGadgetScanner.h
M bolt/include/bolt/Profile/DataAggregator.h
M bolt/include/bolt/Utils/CommandLineOpts.h
M bolt/lib/Passes/PAuthGadgetScanner.cpp
M bolt/lib/Profile/DataAggregator.cpp
M bolt/lib/Rewrite/LinuxKernelRewriter.cpp
M bolt/test/AArch64/r_aarch64_prelxx.s
M bolt/test/X86/callcont-fallthru.s
M bolt/test/X86/linux-version.S
A bolt/test/binary-analysis/AArch64/gs-pauth-authentication-oracles.s
M bolt/test/binary-analysis/AArch64/gs-pauth-debug-output.s
M bolt/test/link_fdata.py
M bolt/test/lit.local.cfg
A bolt/test/perf2bolt/AArch64/perf2bolt-spe.test
A bolt/test/perf2bolt/X86/perf2bolt-spe.test
M bolt/tools/driver/llvm-bolt.cpp
M bolt/unittests/Profile/CMakeLists.txt
A bolt/unittests/Profile/PerfSpeEvents.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/CMakeLists.txt
M clang-tools-extra/clang-tidy/cppcoreguidelines/CppCoreGuidelinesTidyModule.cpp
A clang-tools-extra/clang-tidy/cppcoreguidelines/UseEnumClassCheck.cpp
A clang-tools-extra/clang-tidy/cppcoreguidelines/UseEnumClassCheck.h
M clang-tools-extra/clang-tidy/performance/UnnecessaryValueParamCheck.cpp
M clang-tools-extra/clang-tidy/performance/UnnecessaryValueParamCheck.h
M clang-tools-extra/clangd/ClangdLSPServer.cpp
M clang-tools-extra/clangd/Protocol.cpp
M clang-tools-extra/clangd/Protocol.h
A clang-tools-extra/clangd/test/positionencoding.test
M clang-tools-extra/docs/ReleaseNotes.rst
A clang-tools-extra/docs/clang-tidy/checks/cppcoreguidelines/use-enum-class.rst
M clang-tools-extra/docs/clang-tidy/checks/list.rst
M clang-tools-extra/docs/clang-tidy/checks/performance/enum-size.rst
M clang-tools-extra/docs/clang-tidy/checks/performance/unnecessary-value-param.rst
A clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/use-enum-class.cpp
A clang-tools-extra/test/clang-tidy/checkers/performance/unnecessary-value-param-coroutine.cpp
M clang/docs/CommandGuide/clang.rst
M clang/docs/ReleaseNotes.rst
M clang/docs/UsersManual.rst
M clang/include/clang/AST/DeclTemplate.h
M clang/include/clang/AST/Expr.h
M clang/include/clang/AST/OpenACCClause.h
M clang/include/clang/AST/OpenMPClause.h
M clang/include/clang/AST/StmtOpenACC.h
M clang/include/clang/AST/StmtOpenMP.h
M clang/include/clang/AST/Type.h
M clang/include/clang/AST/TypeProperties.td
M clang/include/clang/Basic/Attr.td
M clang/include/clang/Basic/AttrDocs.td
M clang/include/clang/Basic/Builtins.td
M clang/include/clang/Basic/BuiltinsPPC.def
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/include/clang/Basic/OffloadArch.h
M clang/include/clang/Basic/PPCTypes.def
M clang/include/clang/CIR/Dialect/Builder/CIRBaseBuilder.h
M clang/include/clang/CIR/Dialect/IR/CIRAttrs.td
M clang/include/clang/CIR/Dialect/IR/CIROps.td
M clang/include/clang/CIR/Interfaces/CIROpInterfaces.td
M clang/include/clang/CIR/MissingFeatures.h
M clang/include/clang/Driver/Options.td
M clang/include/clang/Parse/Parser.h
M clang/include/clang/Sema/Scope.h
M clang/include/clang/Sema/SemaHLSL.h
M clang/include/clang/Sema/SemaObjC.h
M clang/include/clang/Serialization/ASTReader.h
M clang/include/clang/Serialization/ASTRecordWriter.h
M clang/include/clang/Serialization/ASTWriter.h
M clang/include/clang/StaticAnalyzer/Checkers/Checkers.td
M clang/lib/AST/ASTContext.cpp
M clang/lib/AST/ASTDiagnostic.cpp
M clang/lib/AST/ASTImporter.cpp
M clang/lib/AST/ByteCode/ByteCodeEmitter.cpp
M clang/lib/AST/ByteCode/Compiler.cpp
M clang/lib/AST/ByteCode/Compiler.h
M clang/lib/AST/ByteCode/Descriptor.cpp
M clang/lib/AST/ByteCode/Disasm.cpp
M clang/lib/AST/ByteCode/Floating.h
M clang/lib/AST/ByteCode/Integral.h
M clang/lib/AST/ByteCode/IntegralAP.h
M clang/lib/AST/ByteCode/Interp.cpp
M clang/lib/AST/ByteCode/Interp.h
M clang/lib/AST/ByteCode/InterpBlock.cpp
M clang/lib/AST/ByteCode/InterpBuiltin.cpp
M clang/lib/AST/ByteCode/InterpBuiltinBitCast.cpp
M clang/lib/AST/ByteCode/InterpStack.cpp
M clang/lib/AST/ByteCode/InterpState.h
M clang/lib/AST/ByteCode/Opcodes.td
M clang/lib/AST/ByteCode/PrimType.h
M clang/lib/AST/ByteCode/Program.h
M clang/lib/AST/Decl.cpp
M clang/lib/AST/DeclTemplate.cpp
M clang/lib/AST/ExprCXX.cpp
M clang/lib/AST/OpenMPClause.cpp
M clang/lib/AST/QualTypeNames.cpp
M clang/lib/AST/StmtOpenMP.cpp
M clang/lib/AST/StmtProfile.cpp
M clang/lib/AST/Type.cpp
M clang/lib/Basic/OffloadArch.cpp
M clang/lib/Basic/Targets.cpp
M clang/lib/Basic/Targets/NVPTX.cpp
M clang/lib/Basic/Targets/OSTargets.h
M clang/lib/Basic/Targets/PPC.cpp
M clang/lib/Basic/Targets/Xtensa.h
M clang/lib/CIR/CodeGen/CIRGenBuiltin.cpp
M clang/lib/CIR/CodeGen/CIRGenCall.cpp
M clang/lib/CIR/CodeGen/CIRGenCall.h
M clang/lib/CIR/CodeGen/CIRGenExpr.cpp
M clang/lib/CIR/CodeGen/CIRGenExprComplex.cpp
M clang/lib/CIR/CodeGen/CIRGenExprConstant.cpp
M clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
M clang/lib/CIR/CodeGen/CIRGenFunction.h
M clang/lib/CIR/CodeGen/CIRGenModule.h
M clang/lib/CIR/CodeGen/CIRGenRecordLayout.h
M clang/lib/CIR/CodeGen/CIRGenRecordLayoutBuilder.cpp
M clang/lib/CIR/CodeGen/CIRGenStmt.cpp
M clang/lib/CIR/CodeGen/CIRGenTypes.cpp
M clang/lib/CIR/CodeGen/CIRGenValue.h
M clang/lib/CIR/CodeGen/TargetInfo.cpp
M clang/lib/CIR/CodeGen/TargetInfo.h
M clang/lib/CIR/Dialect/IR/CIRDialect.cpp
M clang/lib/CIR/Dialect/Transforms/CIRSimplify.cpp
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.h
M clang/lib/CodeGen/CGBlocks.cpp
M clang/lib/CodeGen/CGBuiltin.cpp
M clang/lib/CodeGen/CGCall.cpp
M clang/lib/CodeGen/CGCleanup.cpp
M clang/lib/CodeGen/CGDeclCXX.cpp
M clang/lib/CodeGen/CGException.cpp
M clang/lib/CodeGen/CGExpr.cpp
M clang/lib/CodeGen/CGExprConstant.cpp
M clang/lib/CodeGen/CGHLSLBuiltins.cpp
M clang/lib/CodeGen/CGHLSLRuntime.cpp
M clang/lib/CodeGen/CGObjC.cpp
M clang/lib/CodeGen/CGObjCGNU.cpp
M clang/lib/CodeGen/CGObjCMac.cpp
M clang/lib/CodeGen/CGObjCRuntime.cpp
M clang/lib/CodeGen/CGOpenMPRuntimeGPU.cpp
M clang/lib/CodeGen/CodeGenFunction.h
M clang/lib/CodeGen/CodeGenModule.cpp
M clang/lib/CodeGen/TargetInfo.cpp
M clang/lib/CodeGen/TargetInfo.h
M clang/lib/CodeGen/Targets/AMDGPU.cpp
M clang/lib/CodeGen/Targets/NVPTX.cpp
M clang/lib/CodeGen/Targets/SPIR.cpp
M clang/lib/Driver/CMakeLists.txt
M clang/lib/Driver/Driver.cpp
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/lib/Driver/ToolChains/Fuchsia.cpp
M clang/lib/Driver/ToolChains/Gnu.cpp
M clang/lib/Driver/ToolChains/HIPAMD.cpp
M clang/lib/Driver/ToolChains/HIPAMD.h
M clang/lib/Driver/ToolChains/Linux.cpp
A clang/lib/Driver/ToolChains/Managarm.cpp
A clang/lib/Driver/ToolChains/Managarm.h
M clang/lib/ExtractAPI/Serialization/SymbolGraphSerializer.cpp
M clang/lib/Headers/bmiintrin.h
M clang/lib/Headers/immintrin.h
M clang/lib/Headers/keylockerintrin.h
M clang/lib/Headers/x86gprintrin.h
M clang/lib/Headers/x86intrin.h
M clang/lib/Lex/InitHeaderSearch.cpp
M clang/lib/Parse/ParseDeclCXX.cpp
M clang/lib/Sema/SemaCast.cpp
M clang/lib/Sema/SemaConcept.cpp
M clang/lib/Sema/SemaDecl.cpp
M clang/lib/Sema/SemaDeclAttr.cpp
M clang/lib/Sema/SemaExpr.cpp
M clang/lib/Sema/SemaExprObjC.cpp
M clang/lib/Sema/SemaHLSL.cpp
M clang/lib/Sema/SemaModule.cpp
M clang/lib/Sema/SemaOpenMP.cpp
M clang/lib/Sema/TreeTransform.h
M clang/lib/Serialization/ASTReader.cpp
M clang/lib/Serialization/ASTReaderDecl.cpp
M clang/lib/Serialization/ASTReaderStmt.cpp
M clang/lib/Serialization/ASTWriter.cpp
M clang/lib/Serialization/ASTWriterDecl.cpp
M clang/lib/StaticAnalyzer/Checkers/DivZeroChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/DynamicTypePropagation.cpp
M clang/lib/StaticAnalyzer/Checkers/MallocChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/NullabilityChecker.cpp
M clang/lib/StaticAnalyzer/Core/Z3CrosscheckVisitor.cpp
M clang/test/AST/ByteCode/builtin-bit-cast-long-double.cpp
M clang/test/AST/ByteCode/builtin-functions.cpp
A clang/test/AST/HLSL/vk.spec-constant.usage.hlsl
M clang/test/AST/ast-dump-ppc-types.c
M clang/test/Analysis/NewDelete-checker-test.cpp
M clang/test/Analysis/analyzer-enabled-checkers.c
M clang/test/Analysis/bugfix-124477.m
M clang/test/Analysis/std-c-library-functions-arg-enabled-checkers.c
M clang/test/Analysis/taint-generic.c
A clang/test/CIR/CodeGen/bitfields.c
A clang/test/CIR/CodeGen/bitfields.cpp
M clang/test/CIR/CodeGen/builtin_call.cpp
M clang/test/CIR/CodeGen/call.c
M clang/test/CIR/CodeGen/complex.cpp
M clang/test/CIR/CodeGen/string-literals.c
A clang/test/CIR/CodeGen/string-literals.cpp
M clang/test/CIR/CodeGen/struct.c
M clang/test/CIR/IR/call.cir
A clang/test/CIR/Transforms/vector-splat.cir
A clang/test/CodeGen/PowerPC/builtins-ppc-dmf.c
A clang/test/CodeGen/PowerPC/ppc-dmf-paired-vec-memops-builtin-err.c
A clang/test/CodeGen/PowerPC/ppc-dmf-types.c
A clang/test/CodeGen/PowerPC/ppc-future-mma-builtin-err.c
M clang/test/CodeGen/builtin_vectorelements.c
M clang/test/CodeGenCXX/cxx11-thread-local-reference.cpp
M clang/test/CodeGenCXX/ppc-mangle-mma-types.cpp
M clang/test/CodeGenHLSL/builtins/firstbithigh.hlsl
M clang/test/CodeGenHLSL/builtins/firstbitlow.hlsl
R clang/test/CodeGenHLSL/inline-spirv/SpirvType.alignment.hlsl
R clang/test/CodeGenHLSL/inline-spirv/SpirvType.hlsl
M clang/test/CodeGenHLSL/semantics/SV_Position.ps.hlsl
A clang/test/CodeGenHLSL/vk-features/SpirvType.alignment.hlsl
A clang/test/CodeGenHLSL/vk-features/SpirvType.hlsl
A clang/test/CodeGenHLSL/vk-features/vk.spec-constant.hlsl
M clang/test/CodeGenOpenCL/amdgpu-features.cl
A clang/test/Driver/Inputs/basic_managarm_tree/lib/aarch64-managarm-mlibc/.keep
A clang/test/Driver/Inputs/basic_managarm_tree/lib/riscv64-managarm-mlibc/.keep
A clang/test/Driver/Inputs/basic_managarm_tree/lib/x86_64-managarm-mlibc/.keep
A clang/test/Driver/Inputs/basic_managarm_tree/lib64/aarch64-managarm-mlibc/.keep
A clang/test/Driver/Inputs/basic_managarm_tree/lib64/riscv64-managarm-mlibc/.keep
A clang/test/Driver/Inputs/basic_managarm_tree/lib64/x86_64-managarm-mlibc/.keep
A clang/test/Driver/Inputs/basic_managarm_tree/usr/include/aarch64-managarm-mlibc/c++/10/.keep
A clang/test/Driver/Inputs/basic_managarm_tree/usr/include/c++/10/.keep
A clang/test/Driver/Inputs/basic_managarm_tree/usr/include/c++/v1/.keep
A clang/test/Driver/Inputs/basic_managarm_tree/usr/include/riscv64-managarm-mlibc/c++/10/.keep
A clang/test/Driver/Inputs/basic_managarm_tree/usr/include/x86_64-managarm-mlibc/c++/10/.keep
A clang/test/Driver/Inputs/basic_managarm_tree/usr/lib/aarch64-managarm-mlibc/.keep
A clang/test/Driver/Inputs/basic_managarm_tree/usr/lib/gcc/aarch64-managarm-mlibc/10/crtbegin.o
A clang/test/Driver/Inputs/basic_managarm_tree/usr/lib/gcc/aarch64-managarm-mlibc/10/crtbeginS.o
A clang/test/Driver/Inputs/basic_managarm_tree/usr/lib/gcc/aarch64-managarm-mlibc/10/crtbeginT.o
A clang/test/Driver/Inputs/basic_managarm_tree/usr/lib/gcc/riscv64-managarm-mlibc/10/crtbegin.o
A clang/test/Driver/Inputs/basic_managarm_tree/usr/lib/gcc/riscv64-managarm-mlibc/10/crtbeginS.o
A clang/test/Driver/Inputs/basic_managarm_tree/usr/lib/gcc/riscv64-managarm-mlibc/10/crtbeginT.o
A clang/test/Driver/Inputs/basic_managarm_tree/usr/lib/gcc/x86_64-managarm-mlibc/10/crtbegin.o
A clang/test/Driver/Inputs/basic_managarm_tree/usr/lib/gcc/x86_64-managarm-mlibc/10/crtbeginS.o
A clang/test/Driver/Inputs/basic_managarm_tree/usr/lib/gcc/x86_64-managarm-mlibc/10/crtbeginT.o
A clang/test/Driver/Inputs/basic_managarm_tree/usr/lib/riscv64-managarm-mlibc/.keep
A clang/test/Driver/Inputs/basic_managarm_tree/usr/lib/x86_64-managarm-mlibc/.keep
A clang/test/Driver/Inputs/basic_managarm_tree/usr/lib64/.keep
M clang/test/Driver/aix-shared-lib-tls-model-opt.c
M clang/test/Driver/aix-small-local-exec-dynamic-tls.c
M clang/test/Driver/amdgpu-macros.cl
M clang/test/Driver/amdgpu-mcpu.cl
M clang/test/Driver/android-link.cpp
M clang/test/Driver/extend-variable-liveness.c
M clang/test/Driver/fveclib.c
M clang/test/Driver/hip-runtime-libs-linux.hip
M clang/test/Driver/hip-thinlto.hip
A clang/test/Driver/ignored-pch.cpp
A clang/test/Driver/managarm.cpp
M clang/test/Driver/openmp-offload-gpu.c
M clang/test/Driver/ppc-crbits.cpp
M clang/test/Driver/ppc-isa-features.cpp
M clang/test/Driver/print-supported-extensions-riscv.c
A clang/test/Driver/spirv-amd-toolchain.c
M clang/test/ExtractAPI/objc_instancetype.m
M clang/test/Misc/loop-opt-setup.c
M clang/test/Misc/target-invalid-cpu-note/amdgcn.c
M clang/test/Misc/target-invalid-cpu-note/nvptx.c
A clang/test/Modules/pr144230.cppm
A clang/test/Modules/preferred_name_header_unit.cpp
A clang/test/PCH/Inputs/ignored-pch.h
A clang/test/PCH/ignored-pch.c
M clang/test/Preprocessor/init.c
M clang/test/Preprocessor/predefined-arch-macros.c
M clang/test/Preprocessor/predefined-macros-no-warnings.c
M clang/test/Preprocessor/riscv-target-features-andes.c
A clang/test/Sema/gh87867.c
A clang/test/Sema/ppc-dmf-types.c
M clang/test/SemaCXX/builtin-is-constant-evaluated.cpp
M clang/test/SemaCXX/class.cpp
M clang/test/SemaCXX/cxx0x-class.cpp
M clang/test/SemaCXX/cxx2a-consteval.cpp
M clang/test/SemaCXX/exception-spec.cpp
A clang/test/SemaHLSL/vk.spec-constant.error.hlsl
M clang/test/SemaObjCXX/arc-type-conversion.mm
M clang/test/SemaTemplate/concepts-out-of-line-def.cpp
M clang/test/SemaTemplate/instantiate-static-var.cpp
M clang/tools/clang-linker-wrapper/ClangLinkerWrapper.cpp
M clang/utils/TableGen/ClangAttrEmitter.cpp
M clang/utils/TableGen/ClangDiagnosticsEmitter.cpp
M compiler-rt/lib/builtins/CMakeLists.txt
M compiler-rt/lib/fuzzer/tests/CMakeLists.txt
M compiler-rt/lib/lsan/lsan_interceptors.cpp
M compiler-rt/lib/msan/msan_interceptors.cpp
M compiler-rt/lib/sanitizer_common/sanitizer_malloc_mac.inc
M compiler-rt/lib/sanitizer_common/sanitizer_platform_interceptors.h
M compiler-rt/lib/scudo/standalone/chunk.h
M compiler-rt/lib/scudo/standalone/combined.h
M compiler-rt/lib/scudo/standalone/report.cpp
M compiler-rt/lib/scudo/standalone/report.h
M compiler-rt/lib/tsan/rtl/tsan_platform.h
M compiler-rt/lib/tsan/rtl/tsan_rtl_access.cpp
M compiler-rt/test/fuzzer/uncaught-exception.test
A compiler-rt/test/profile/Posix/gcov-file-change-line.cpp
M compiler-rt/test/profile/Posix/gcov-file-change.cpp
A compiler-rt/test/sanitizer_common/TestCases/Linux/free_aligned_sized.c
A compiler-rt/test/sanitizer_common/TestCases/Linux/free_sized.c
M flang/include/flang/Evaluate/tools.h
M flang/include/flang/Optimizer/Dialect/FIROps.td
M flang/include/flang/Parser/dump-parse-tree.h
M flang/include/flang/Parser/parse-tree.h
M flang/include/flang/Semantics/dump-expr.h
M flang/include/flang/Semantics/tools.h
M flang/include/flang/Support/Fortran-features.h
M flang/include/flang/Support/OpenMP-features.h
M flang/lib/Evaluate/tools.cpp
M flang/lib/Frontend/CompilerInvocation.cpp
M flang/lib/Lower/CMakeLists.txt
M flang/lib/Lower/OpenACC.cpp
A flang/lib/Lower/OpenMP/Atomic.cpp
A flang/lib/Lower/OpenMP/Atomic.h
M flang/lib/Lower/OpenMP/ClauseProcessor.cpp
M flang/lib/Lower/OpenMP/ClauseProcessor.h
M flang/lib/Lower/OpenMP/Clauses.cpp
M flang/lib/Lower/OpenMP/DataSharingProcessor.cpp
M flang/lib/Lower/OpenMP/OpenMP.cpp
M flang/lib/Optimizer/Builder/FIRBuilder.cpp
M flang/lib/Optimizer/CodeGen/LowerRepackArrays.cpp
M flang/lib/Optimizer/Dialect/FIROps.cpp
M flang/lib/Optimizer/Transforms/ControlFlowConverter.cpp
M flang/lib/Parser/openmp-parsers.cpp
M flang/lib/Semantics/CMakeLists.txt
M flang/lib/Semantics/check-omp-structure.cpp
M flang/lib/Semantics/check-omp-structure.h
M flang/lib/Semantics/dump-expr.cpp
M flang/lib/Semantics/resolve-directives.cpp
M flang/lib/Semantics/resolve-names.cpp
R flang/lib/Semantics/rewrite-directives.cpp
R flang/lib/Semantics/rewrite-directives.h
M flang/lib/Semantics/rewrite-parse-tree.cpp
M flang/lib/Semantics/tools.cpp
M flang/lib/Support/Fortran-features.cpp
M flang/test/Driver/flang-openmp-version-macro.f90
A flang/test/Fir/cfg-conversion-if.fir
M flang/test/Fir/fir-ops.fir
M flang/test/Fir/invalid.fir
A flang/test/HLFIR/fir-local-alloca-block.fir
A flang/test/Integration/cold_array_repacking.f90
A flang/test/Lower/OpenMP/Todo/declare-mapper-iterator.f90
A flang/test/Lower/OpenMP/Todo/omp-clause-indirect.f90
R flang/test/Lower/OpenMP/Todo/omp-doconcurrent.f90
R flang/test/Lower/OpenMP/Todo/target-parallel-private.f90
R flang/test/Lower/OpenMP/Todo/target-teams-private.f90
A flang/test/Lower/OpenMP/copyprivate5.f90
A flang/test/Lower/OpenMP/ignore-target-data.f90
A flang/test/Lower/OpenMP/requires-admo-acqrel.f90
A flang/test/Lower/OpenMP/requires-admo-invalid1.f90
A flang/test/Lower/OpenMP/requires-admo-invalid2.f90
A flang/test/Lower/OpenMP/target-enter-data-default-openmp52.f90
A flang/test/Lower/OpenMP/target-parallel-private.f90
A flang/test/Lower/OpenMP/target-teams-private.f90
R flang/test/Lower/OpenMP/wsloop-linear.f90
A flang/test/Parser/OpenMP/declare-target-indirect-tree.f90
M flang/test/Semantics/OpenMP/allocate-align01.f90
M flang/test/Semantics/OpenMP/allocate01.f90
M flang/test/Semantics/OpenMP/allocate02.f90
M flang/test/Semantics/OpenMP/allocate03.f90
M flang/test/Semantics/OpenMP/allocate05.f90
M flang/test/Semantics/OpenMP/allocate06.f90
M flang/test/Semantics/OpenMP/allocate09.f90
M flang/test/Semantics/OpenMP/atomic-update-only.f90
M flang/test/Semantics/OpenMP/atomic03.f90
M flang/test/Semantics/OpenMP/atomic04.f90
M flang/test/Semantics/OpenMP/clause-validity01.f90
M flang/test/Semantics/OpenMP/deprecation.f90
A flang/test/Semantics/OpenMP/do-concurrent-collapse.f90
M flang/test/Semantics/OpenMP/flush02.f90
M flang/test/Semantics/OpenMP/nested-barrier.f90
M flang/test/Semantics/OpenMP/nested-master.f90
M flang/test/Semantics/OpenMP/nested-teams.f90
M flang/test/Semantics/OpenMP/ordered-simd.f90
M flang/test/Semantics/OpenMP/parallel-master-goto.f90
M flang/test/Semantics/OpenMP/parallel-sections01.f90
R flang/test/Semantics/OpenMP/requires-atomic01.f90
R flang/test/Semantics/OpenMP/requires-atomic02.f90
A flang/test/Semantics/OpenMP/sections-goto.f90
M flang/test/Semantics/OpenMP/sections02.f90
A flang/test/Semantics/indirect01.f90
A flang/test/Semantics/indirect02.f90
M flang/test/Transforms/lower-repack-arrays.fir
M libc/cmake/modules/LLVMLibCCompileOptionRules.cmake
A libc/config/darwin/aarch64/config.json
M libc/config/darwin/aarch64/entrypoints.txt
M libc/config/darwin/aarch64/headers.txt
M libc/src/__support/FPUtil/FEnvImpl.h
M libc/src/__support/FPUtil/dyadic_float.h
M libc/src/__support/FPUtil/x86_64/FEnvImpl.h
M libc/src/__support/HashTable/CMakeLists.txt
M libc/src/__support/HashTable/randomness.h
M libc/src/__support/OSUtil/linux/CMakeLists.txt
A libc/src/__support/OSUtil/linux/getrandom.h
M libc/src/__support/macros/optimization.h
M libc/src/__support/wchar/character_converter.cpp
M libc/src/__support/wchar/character_converter.h
M libc/src/__support/wchar/mbstate.h
M libc/src/math/generic/log2f.cpp
M libc/src/setjmp/CMakeLists.txt
A libc/src/setjmp/darwin/CMakeLists.txt
A libc/src/setjmp/darwin/sigsetjmp_epilogue.cpp
M libc/src/sys/random/linux/getrandom.cpp
M libc/test/src/CMakeLists.txt
M libc/test/src/__support/CMakeLists.txt
M libc/test/src/__support/wchar/CMakeLists.txt
M libc/test/src/__support/wchar/utf32_to_8_test.cpp
A libc/test/src/__support/wchar/utf8_to_32_test.cpp
M libc/test/src/stdio/CMakeLists.txt
M libc/test/src/stdio/fdopen_test.cpp
M libc/test/src/stdio/fgetc_test.cpp
M libc/test/src/stdio/fgetc_unlocked_test.cpp
M libc/test/src/stdio/fgets_test.cpp
M libc/test/src/stdio/fileop_test.cpp
M libc/test/src/stdio/fopencookie_test.cpp
M libc/test/src/stdio/remove_test.cpp
M libc/test/src/stdio/rename_test.cpp
M libc/test/src/stdio/setvbuf_test.cpp
M libc/test/src/stdio/unlocked_fileop_test.cpp
M libc/test/src/stdlib/StrtolTest.h
M libc/test/src/stdlib/strtold_test.cpp
M libcxx/docs/ABIGuarantees.rst
M libcxx/docs/FeatureTestMacroTable.rst
M libcxx/docs/ReleaseNotes/21.rst
M libcxx/include/__algorithm/for_each.h
M libcxx/include/__algorithm/for_each_n.h
M libcxx/include/__algorithm/ranges_for_each.h
M libcxx/include/__algorithm/ranges_for_each_n.h
M libcxx/include/__iterator/iterator_traits.h
M libcxx/include/__math/abs.h
M libcxx/include/__memory/pointer_traits.h
M libcxx/include/experimental/iterator
M libcxx/include/forward_list
M libcxx/include/fstream
M libcxx/include/list
M libcxx/include/math.h
M libcxx/include/mutex
M libcxx/include/shared_mutex
M libcxx/include/stdlib.h
M libcxx/include/streambuf
M libcxx/include/version
M libcxx/test/benchmarks/algorithms/nonmodifying/for_each.bench.cpp
M libcxx/test/benchmarks/algorithms/nonmodifying/for_each_n.bench.cpp
M libcxx/test/libcxx/depr/exception.unexpected/unexpected_disabled_cpp17.verify.cpp
M libcxx/test/libcxx/odr_signature.exceptions.sh.cpp
M libcxx/test/libcxx/odr_signature.hardening.sh.cpp
M libcxx/test/std/algorithms/alg.nonmodifying/alg.foreach/ranges.for_each.pass.cpp
M libcxx/test/std/algorithms/alg.nonmodifying/alg.foreach/ranges.for_each_n.pass.cpp
M libcxx/test/std/containers/sequences/list/compare.pass.cpp
M libcxx/test/std/containers/sequences/list/compare.three_way.pass.cpp
M libcxx/test/std/containers/sequences/list/get_allocator.pass.cpp
M libcxx/test/std/containers/sequences/list/incomplete_type.pass.cpp
M libcxx/test/std/containers/sequences/list/iterators.pass.cpp
M libcxx/test/std/containers/sequences/list/list.capacity/empty.pass.cpp
M libcxx/test/std/containers/sequences/list/list.capacity/max_size.pass.cpp
M libcxx/test/std/containers/sequences/list/list.capacity/resize_size.pass.cpp
M libcxx/test/std/containers/sequences/list/list.capacity/resize_size_value.pass.cpp
M libcxx/test/std/containers/sequences/list/list.capacity/size.pass.cpp
M libcxx/test/std/containers/sequences/list/list.cons/assign_copy.pass.cpp
M libcxx/test/std/containers/sequences/list/list.cons/assign_initializer_list.pass.cpp
M libcxx/test/std/containers/sequences/list/list.cons/assign_move.pass.cpp
M libcxx/test/std/containers/sequences/list/list.cons/copy.pass.cpp
M libcxx/test/std/containers/sequences/list/list.cons/copy_alloc.pass.cpp
M libcxx/test/std/containers/sequences/list/list.cons/default.pass.cpp
M libcxx/test/std/containers/sequences/list/list.cons/default_stack_alloc.pass.cpp
M libcxx/test/std/containers/sequences/list/list.cons/from_range.pass.cpp
M libcxx/test/std/containers/sequences/list/list.cons/initializer_list.pass.cpp
M libcxx/test/std/containers/sequences/list/list.cons/initializer_list_alloc.pass.cpp
M libcxx/test/std/containers/sequences/list/list.cons/input_iterator.pass.cpp
M libcxx/test/std/containers/sequences/list/list.cons/move.pass.cpp
M libcxx/test/std/containers/sequences/list/list.cons/move_alloc.pass.cpp
M libcxx/test/std/containers/sequences/list/list.cons/op_equal_initializer_list.pass.cpp
M libcxx/test/std/containers/sequences/list/list.cons/size_type.pass.cpp
M libcxx/test/std/containers/sequences/list/list.cons/size_value_alloc.pass.cpp
M libcxx/test/std/containers/sequences/list/list.erasure/erase.pass.cpp
M libcxx/test/std/containers/sequences/list/list.erasure/erase_if.pass.cpp
M libcxx/test/std/containers/sequences/list/list.modifiers/append_range.pass.cpp
M libcxx/test/std/containers/sequences/list/list.modifiers/assign_range.pass.cpp
M libcxx/test/std/containers/sequences/list/list.modifiers/clear.pass.cpp
M libcxx/test/std/containers/sequences/list/list.modifiers/emplace.pass.cpp
M libcxx/test/std/containers/sequences/list/list.modifiers/emplace_back.pass.cpp
M libcxx/test/std/containers/sequences/list/list.modifiers/emplace_front.pass.cpp
M libcxx/test/std/containers/sequences/list/list.modifiers/erase_iter.pass.cpp
M libcxx/test/std/containers/sequences/list/list.modifiers/erase_iter_iter.pass.cpp
M libcxx/test/std/containers/sequences/list/list.modifiers/insert_iter_initializer_list.pass.cpp
M libcxx/test/std/containers/sequences/list/list.modifiers/insert_iter_iter_iter.pass.cpp
M libcxx/test/std/containers/sequences/list/list.modifiers/insert_iter_rvalue.pass.cpp
M libcxx/test/std/containers/sequences/list/list.modifiers/insert_iter_size_value.pass.cpp
M libcxx/test/std/containers/sequences/list/list.modifiers/insert_iter_value.pass.cpp
M libcxx/test/std/containers/sequences/list/list.modifiers/insert_range.pass.cpp
M libcxx/test/std/containers/sequences/list/list.modifiers/pop_back.pass.cpp
M libcxx/test/std/containers/sequences/list/list.modifiers/pop_front.pass.cpp
M libcxx/test/std/containers/sequences/list/list.modifiers/prepend_range.pass.cpp
M libcxx/test/std/containers/sequences/list/list.modifiers/push_back.pass.cpp
M libcxx/test/std/containers/sequences/list/list.modifiers/push_back_rvalue.pass.cpp
M libcxx/test/std/containers/sequences/list/list.modifiers/push_front.pass.cpp
M libcxx/test/std/containers/sequences/list/list.modifiers/push_front_rvalue.pass.cpp
M libcxx/test/std/containers/sequences/list/list.ops/merge.pass.cpp
M libcxx/test/std/containers/sequences/list/list.ops/merge_comp.pass.cpp
M libcxx/test/std/containers/sequences/list/list.ops/remove.pass.cpp
M libcxx/test/std/containers/sequences/list/list.ops/remove_if.pass.cpp
M libcxx/test/std/containers/sequences/list/list.ops/reverse.pass.cpp
M libcxx/test/std/containers/sequences/list/list.ops/sort.pass.cpp
M libcxx/test/std/containers/sequences/list/list.ops/sort_comp.pass.cpp
M libcxx/test/std/containers/sequences/list/list.ops/splice_pos_list.pass.cpp
M libcxx/test/std/containers/sequences/list/list.ops/splice_pos_list_iter.pass.cpp
M libcxx/test/std/containers/sequences/list/list.ops/splice_pos_list_iter_iter.pass.cpp
M libcxx/test/std/containers/sequences/list/list.ops/unique.pass.cpp
M libcxx/test/std/containers/sequences/list/list.ops/unique_pred.pass.cpp
M libcxx/test/std/containers/sequences/list/list.special/swap.pass.cpp
M libcxx/test/std/containers/sequences/list/list.special/swap_noexcept.pass.cpp
M libcxx/test/std/input.output/stream.buffers/streambuf/streambuf.protected/streambuf.get.area/setg.assert.pass.cpp
M libcxx/test/std/input.output/stream.buffers/streambuf/streambuf.protected/streambuf.put.area/setp.assert.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/expected.version.compile.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/list.version.compile.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/optional.version.compile.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/tuple.version.compile.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/utility.version.compile.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/variant.version.compile.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/version.version.compile.pass.cpp
M libcxx/test/std/numerics/c.math/abs.pass.cpp
M libcxx/test/std/numerics/c.math/abs.verify.cpp
M libcxx/test/std/utilities/format/format.functions/escaped_output.unicode.pass.cpp
M libcxx/test/std/utilities/format/format.functions/fill.unicode.pass.cpp
M libcxx/test/support/min_allocator.h
M libcxx/utils/generate_feature_test_macro_components.py
M lld/ELF/Thunks.cpp
M lld/MachO/DriverUtils.cpp
M lld/test/ELF/aarch64-thunk-bti-multipass.s
M lld/test/ELF/lto/aarch64-pac-got-func.ll
A lld/test/MachO/reexport-with-symlink.s
M lldb/cmake/modules/FindPythonAndSwig.cmake
M lldb/cmake/modules/LLDBConfig.cmake
M lldb/examples/python/crashlog.py
M lldb/include/lldb/Core/Debugger.h
M lldb/include/lldb/Core/DemangledNameInfo.h
M lldb/include/lldb/Core/PluginManager.h
A lldb/include/lldb/Core/ProtocolServer.h
M lldb/include/lldb/Host/Socket.h
M lldb/include/lldb/Interpreter/CommandOptionArgumentTable.h
M lldb/include/lldb/lldb-enumerations.h
M lldb/include/lldb/lldb-forward.h
M lldb/include/lldb/lldb-private-interfaces.h
M lldb/packages/Python/lldbsuite/test/tools/lldb-dap/dap_server.py
M lldb/source/Breakpoint/Breakpoint.cpp
M lldb/source/Commands/CMakeLists.txt
A lldb/source/Commands/CommandObjectProtocolServer.cpp
A lldb/source/Commands/CommandObjectProtocolServer.h
M lldb/source/Core/CMakeLists.txt
M lldb/source/Core/CoreProperties.td
M lldb/source/Core/Debugger.cpp
M lldb/source/Core/DynamicLoader.cpp
M lldb/source/Core/PluginManager.cpp
A lldb/source/Core/ProtocolServer.cpp
M lldb/source/Host/common/Socket.cpp
M lldb/source/Interpreter/CommandInterpreter.cpp
M lldb/source/Plugins/CMakeLists.txt
M lldb/source/Plugins/ExpressionParser/Clang/IRDynamicChecks.cpp
M lldb/source/Plugins/ExpressionParser/Clang/IRDynamicChecks.h
M lldb/source/Plugins/Language/CPlusPlus/CxxStringTypes.cpp
M lldb/source/Plugins/Language/CPlusPlus/CxxStringTypes.h
M lldb/source/Plugins/Language/CPlusPlus/LibCxx.cpp
M lldb/source/Plugins/Language/CPlusPlus/LibCxxUnorderedMap.cpp
M lldb/source/Plugins/ObjectFile/XCOFF/ObjectFileXCOFF.cpp
M lldb/source/Plugins/Process/AIX/CMakeLists.txt
A lldb/source/Plugins/Process/AIX/NativeRegisterContextAIX.cpp
A lldb/source/Plugins/Process/AIX/NativeRegisterContextAIX.h
M lldb/source/Plugins/Process/Utility/RegisterInfoPOSIX_arm64.cpp
M lldb/source/Plugins/Process/minidump/MinidumpParser.cpp
M lldb/source/Plugins/Process/minidump/MinidumpParser.h
A lldb/source/Plugins/Protocol/CMakeLists.txt
A lldb/source/Plugins/Protocol/MCP/CMakeLists.txt
A lldb/source/Plugins/Protocol/MCP/MCPError.cpp
A lldb/source/Plugins/Protocol/MCP/MCPError.h
A lldb/source/Plugins/Protocol/MCP/Protocol.cpp
A lldb/source/Plugins/Protocol/MCP/Protocol.h
A lldb/source/Plugins/Protocol/MCP/ProtocolServerMCP.cpp
A lldb/source/Plugins/Protocol/MCP/ProtocolServerMCP.h
A lldb/source/Plugins/Protocol/MCP/Tool.cpp
A lldb/source/Plugins/Protocol/MCP/Tool.h
M lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp
M lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.h
M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp
M lldb/source/ValueObject/DILParser.cpp
M lldb/test/API/commands/frame/var-dil/basics/ArraySubscript/TestFrameVarDILArraySubscript.py
M lldb/test/API/commands/frame/var-dil/basics/ArraySubscript/main.cpp
A lldb/test/API/commands/plugin/TestPlugin.py
M lldb/test/API/commands/register/register/aarch64_mte_ctrl_register/TestMTECtrlRegister.py
M lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx/string/TestDataFormatterLibcxxString.py
M lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx/string_view/TestDataFormatterLibcxxStringView.py
M lldb/test/API/lit.cfg.py
M lldb/test/API/lit.site.cfg.py.in
M lldb/test/API/python_api/watchpoint/watchlocation/TestTargetWatchAddress.py
A lldb/test/API/terminal/TestDisabledBreakpoints.py
M lldb/test/API/tools/lldb-dap/breakpoint/TestDAP_setExceptionBreakpoints.py
M lldb/test/API/tools/lldb-dap/exception/objc/Makefile
M lldb/test/API/tools/lldb-dap/exception/objc/TestDAP_exception_objc.py
M lldb/test/API/tools/lldb-dap/exception/objc/main.m
M lldb/test/API/tools/lldb-dap/memory/TestDAP_memory.py
M lldb/test/API/tools/lldb-dap/save-core/TestDAP_save_core.py
M lldb/test/API/tools/lldb-dap/server/TestDAP_server.py
M lldb/test/Shell/Commands/command-plugin-list.test
A lldb/test/Shell/ObjectFile/XCOFF/symbol-info.yaml
A lldb/test/Shell/ObjectFile/XCOFF/symbol-info32.yaml
M lldb/test/Shell/ScriptInterpreter/Python/Crashlog/altered_threadState.test
M lldb/test/Shell/ScriptInterpreter/Python/Crashlog/json.test
M lldb/test/Shell/ScriptInterpreter/Python/Crashlog/no_threadState.test
M lldb/test/Shell/ScriptInterpreter/Python/Crashlog/skipped_status_interactive_crashlog.test
M lldb/test/Shell/ScriptInterpreter/Python/Crashlog/text.test
M lldb/test/Shell/SymbolFile/DWARF/x86/explicit-member-function-quals.cpp
M lldb/test/Shell/lit.cfg.py
M lldb/tools/lldb-dap/DAP.cpp
M lldb/tools/lldb-dap/DAP.h
M lldb/tools/lldb-dap/ExceptionBreakpoint.cpp
M lldb/tools/lldb-dap/ExceptionBreakpoint.h
M lldb/tools/lldb-dap/Handler/InitializeRequestHandler.cpp
M lldb/tools/lldb-dap/Handler/ReadMemoryRequestHandler.cpp
M lldb/tools/lldb-dap/Handler/RequestHandler.h
M lldb/tools/lldb-dap/Handler/SetExceptionBreakpointsRequestHandler.cpp
M lldb/tools/lldb-dap/JSONUtils.cpp
M lldb/tools/lldb-dap/JSONUtils.h
M lldb/tools/lldb-dap/Options.td
M lldb/tools/lldb-dap/Protocol/ProtocolRequests.cpp
M lldb/tools/lldb-dap/Protocol/ProtocolRequests.h
M lldb/tools/lldb-dap/Protocol/ProtocolTypes.cpp
M lldb/tools/lldb-dap/Protocol/ProtocolTypes.h
M lldb/tools/lldb-dap/ProtocolUtils.cpp
M lldb/tools/lldb-dap/ProtocolUtils.h
M lldb/tools/lldb-dap/src-ts/lldb-dap-server.ts
M lldb/tools/lldb-dap/tool/lldb-dap.cpp
M lldb/unittests/CMakeLists.txt
M lldb/unittests/Core/MangledTest.cpp
M lldb/unittests/DAP/ProtocolTypesTest.cpp
A lldb/unittests/Protocol/CMakeLists.txt
A lldb/unittests/Protocol/ProtocolMCPServerTest.cpp
A lldb/unittests/Protocol/ProtocolMCPTest.cpp
M lldb/unittests/SymbolFile/DWARF/DWARFASTParserClangTests.cpp
M lldb/unittests/TestingSupport/TestUtilities.h
M llvm/cmake/config-ix.cmake
M llvm/cmake/modules/AddLLVM.cmake
M llvm/cmake/modules/HandleLLVMOptions.cmake
M llvm/docs/AMDGPUUsage.rst
M llvm/docs/CommandGuide/llvm-opt-report.rst
M llvm/docs/NVPTXUsage.rst
M llvm/docs/RISCVUsage.rst
M llvm/docs/ReleaseNotes.md
M llvm/docs/Remarks.rst
M llvm/docs/TableGen/ProgRef.rst
M llvm/include/llvm-c/ExecutionEngine.h
M llvm/include/llvm/ADT/PointerIntPair.h
M llvm/include/llvm/Analysis/HashRecognize.h
M llvm/include/llvm/Analysis/IRSimilarityIdentifier.h
M llvm/include/llvm/Analysis/PtrUseVisitor.h
M llvm/include/llvm/Analysis/TargetTransformInfo.h
M llvm/include/llvm/Analysis/TargetTransformInfoImpl.h
M llvm/include/llvm/Analysis/VecFuncs.def
M llvm/include/llvm/BinaryFormat/DXContainer.h
M llvm/include/llvm/BinaryFormat/DXContainerConstants.def
M llvm/include/llvm/BinaryFormat/Dwarf.h
M llvm/include/llvm/BinaryFormat/ELF.h
M llvm/include/llvm/BinaryFormat/ELFRelocs/RISCV_nonstandard.def
M llvm/include/llvm/CodeGen/BasicTTIImpl.h
M llvm/include/llvm/CodeGen/FunctionLoweringInfo.h
M llvm/include/llvm/CodeGen/GlobalISel/LegalizationArtifactCombiner.h
M llvm/include/llvm/CodeGen/SDPatternMatch.h
M llvm/include/llvm/CodeGen/TargetLowering.h
M llvm/include/llvm/Config/config.h.cmake
A llvm/include/llvm/DebugInfo/DWARF/DWARFCFIPrinter.h
M llvm/include/llvm/DebugInfo/DWARF/DWARFCFIProgram.h
M llvm/include/llvm/DebugInfo/LogicalView/Core/LVElement.h
M llvm/include/llvm/DebugInfo/LogicalView/Core/LVScope.h
M llvm/include/llvm/DebugInfo/LogicalView/Core/LVSupport.h
M llvm/include/llvm/Frontend/HLSL/HLSLRootSignature.h
M llvm/include/llvm/Frontend/HLSL/HLSLRootSignatureUtils.h
M llvm/include/llvm/Frontend/OpenMP/ClauseT.h
M llvm/include/llvm/Frontend/OpenMP/OMP.td
M llvm/include/llvm/IR/IRBuilder.h
M llvm/include/llvm/IR/InstVisitor.h
M llvm/include/llvm/IR/IntrinsicInst.h
M llvm/include/llvm/IR/IntrinsicsNVVM.td
M llvm/include/llvm/IR/PatternMatch.h
M llvm/include/llvm/IR/RuntimeLibcalls.h
M llvm/include/llvm/MC/MCAsmInfo.h
M llvm/include/llvm/MC/MCExpr.h
M llvm/include/llvm/MC/MCTargetOptions.h
M llvm/include/llvm/Object/ELF.h
M llvm/include/llvm/Option/OptSpecifier.h
M llvm/include/llvm/ProfileData/GCOV.h
M llvm/include/llvm/ProfileData/MemProfReader.h
M llvm/include/llvm/Remarks/RemarkFormat.h
M llvm/include/llvm/Remarks/RemarkLinker.h
M llvm/include/llvm/Remarks/RemarkParser.h
M llvm/include/llvm/Remarks/YAMLRemarkSerializer.h
M llvm/include/llvm/Support/CodeGen.h
M llvm/include/llvm/Target/CGPassBuilderOption.h
M llvm/include/llvm/Target/TargetLoweringObjectFile.h
M llvm/include/llvm/Target/TargetMachine.h
M llvm/include/llvm/Target/TargetOptions.h
M llvm/include/llvm/TargetParser/CMakeLists.txt
M llvm/include/llvm/TargetParser/PPCTargetParser.h
M llvm/include/llvm/TargetParser/SubtargetFeature.h
M llvm/include/llvm/TargetParser/TargetParser.h
M llvm/include/llvm/Transforms/IPO.h
M llvm/include/llvm/Transforms/IPO/Attributor.h
M llvm/include/llvm/Transforms/Scalar/GVN.h
M llvm/include/llvm/Transforms/Scalar/JumpThreading.h
M llvm/include/llvm/Transforms/Utils/Local.h
M llvm/include/llvm/Transforms/Utils/PromoteMemToReg.h
M llvm/include/llvm/Transforms/Utils/SCCPSolver.h
M llvm/lib/Analysis/AliasSetTracker.cpp
M llvm/lib/Analysis/CallGraph.cpp
M llvm/lib/Analysis/ConstantFolding.cpp
M llvm/lib/Analysis/DemandedBits.cpp
M llvm/lib/Analysis/HashRecognize.cpp
M llvm/lib/Analysis/IR2Vec.cpp
M llvm/lib/Analysis/Loads.cpp
M llvm/lib/Analysis/LoopAccessAnalysis.cpp
M llvm/lib/Analysis/MemoryDependenceAnalysis.cpp
M llvm/lib/Analysis/MemoryLocation.cpp
M llvm/lib/Analysis/ScalarEvolution.cpp
M llvm/lib/Analysis/TargetLibraryInfo.cpp
M llvm/lib/Analysis/TargetTransformInfo.cpp
M llvm/lib/Analysis/ValueTracking.cpp
M llvm/lib/BinaryFormat/Dwarf.cpp
M llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
M llvm/lib/CodeGen/CodeGenPrepare.cpp
M llvm/lib/CodeGen/ComplexDeinterleavingPass.cpp
M llvm/lib/CodeGen/GlobalISel/InlineAsmLowering.cpp
M llvm/lib/CodeGen/MachineBlockPlacement.cpp
M llvm/lib/CodeGen/MachineFunction.cpp
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
M llvm/lib/CodeGen/SelectionDAG/FastISel.cpp
M llvm/lib/CodeGen/SelectionDAG/FunctionLoweringInfo.cpp
M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorOps.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.h
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp
M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
M llvm/lib/CodeGen/TargetLoweringBase.cpp
M llvm/lib/DebugInfo/DWARF/CMakeLists.txt
A llvm/lib/DebugInfo/DWARF/DWARFCFIPrinter.cpp
M llvm/lib/DebugInfo/DWARF/DWARFCFIProgram.cpp
M llvm/lib/DebugInfo/DWARF/DWARFDebugFrame.cpp
M llvm/lib/ExecutionEngine/JITLink/COFFDirectiveParser.cpp
M llvm/lib/ExecutionEngine/Orc/UnwindInfoRegistrationPlugin.cpp
M llvm/lib/Frontend/HLSL/HLSLRootSignatureUtils.cpp
M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
M llvm/lib/IR/DebugInfo.cpp
M llvm/lib/IR/DiagnosticInfo.cpp
M llvm/lib/IR/IRBuilder.cpp
M llvm/lib/IR/IntrinsicInst.cpp
M llvm/lib/IR/RuntimeLibcalls.cpp
M llvm/lib/IR/Verifier.cpp
M llvm/lib/Linker/IRMover.cpp
M llvm/lib/MC/MCAsmInfo.cpp
M llvm/lib/MC/MCExpr.cpp
M llvm/lib/Object/ELFObjectFile.cpp
M llvm/lib/Object/IRSymtab.cpp
M llvm/lib/ObjectYAML/ELFYAML.cpp
M llvm/lib/Passes/PassRegistry.def
M llvm/lib/ProfileData/GCOV.cpp
M llvm/lib/Remarks/BitstreamRemarkParser.cpp
M llvm/lib/Remarks/BitstreamRemarkParser.h
M llvm/lib/Remarks/RemarkFormat.cpp
M llvm/lib/Remarks/RemarkLinker.cpp
M llvm/lib/Remarks/RemarkParser.cpp
M llvm/lib/Remarks/RemarkSerializer.cpp
M llvm/lib/Remarks/RemarkStreamer.cpp
M llvm/lib/Remarks/YAMLRemarkParser.cpp
M llvm/lib/Remarks/YAMLRemarkParser.h
M llvm/lib/Remarks/YAMLRemarkSerializer.cpp
M llvm/lib/Support/BLAKE3/CMakeLists.txt
M llvm/lib/Support/Unix/Process.inc
M llvm/lib/Target/AArch64/AArch64.td
M llvm/lib/Target/AArch64/AArch64AsmPrinter.cpp
M llvm/lib/Target/AArch64/AArch64FrameLowering.cpp
M llvm/lib/Target/AArch64/AArch64ISelDAGToDAG.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/AArch64/AArch64InstrInfo.td
M llvm/lib/Target/AArch64/AArch64Processors.td
A llvm/lib/Target/AArch64/AArch64SchedA320.td
M llvm/lib/Target/AArch64/AArch64StackTagging.cpp
M llvm/lib/Target/AArch64/AArch64Subtarget.cpp
M llvm/lib/Target/AArch64/AArch64TargetMachine.cpp
M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.h
M llvm/lib/Target/AArch64/AsmParser/AArch64AsmParser.cpp
M llvm/lib/Target/AArch64/Disassembler/AArch64Disassembler.cpp
M llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCTargetDesc.cpp
M llvm/lib/Target/AArch64/TargetInfo/AArch64TargetInfo.cpp
M llvm/lib/Target/AMDGPU/AMDGPU.h
M llvm/lib/Target/AMDGPU/AMDGPU.td
M llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.cpp
M llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp
M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp
M llvm/lib/Target/AMDGPU/AMDGPUInstCombineIntrinsic.cpp
M llvm/lib/Target/AMDGPU/AMDGPUInstrInfo.cpp
M llvm/lib/Target/AMDGPU/AMDGPUInstrInfo.h
M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
M llvm/lib/Target/AMDGPU/AMDGPUInstructions.td
M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
M llvm/lib/Target/AMDGPU/AMDGPUPromoteAlloca.cpp
M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeHelper.cpp
M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeRules.cpp
M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeRules.h
M llvm/lib/Target/AMDGPU/AMDGPURegisterBankInfo.cpp
M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
M llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.cpp
M llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.h
M llvm/lib/Target/AMDGPU/AMDGPUUnifyMetadata.cpp
M llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
M llvm/lib/Target/AMDGPU/Disassembler/AMDGPUDisassembler.cpp
M llvm/lib/Target/AMDGPU/GCNProcessors.td
M llvm/lib/Target/AMDGPU/GCNRegPressure.cpp
M llvm/lib/Target/AMDGPU/GCNSubtarget.h
M llvm/lib/Target/AMDGPU/MCA/AMDGPUCustomBehaviour.cpp
M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCTargetDesc.cpp
M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUTargetStreamer.cpp
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
M llvm/lib/Target/AMDGPU/SIISelLowering.h
M llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp
M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
M llvm/lib/Target/AMDGPU/SIInstrInfo.td
M llvm/lib/Target/AMDGPU/SIInstructions.td
M llvm/lib/Target/AMDGPU/SOPInstructions.td
M llvm/lib/Target/AMDGPU/TargetInfo/AMDGPUTargetInfo.cpp
M llvm/lib/Target/AMDGPU/VOP1Instructions.td
M llvm/lib/Target/AMDGPU/VOP3Instructions.td
M llvm/lib/Target/AMDGPU/VOPInstructions.td
M llvm/lib/Target/ARM/ARMAsmPrinter.cpp
M llvm/lib/Target/ARM/ARMAsmPrinter.h
M llvm/lib/Target/ARM/ARMFastISel.cpp
M llvm/lib/Target/ARM/ARMISelLowering.cpp
M llvm/lib/Target/ARM/ARMISelLowering.h
M llvm/lib/Target/ARM/ARMSubtarget.cpp
M llvm/lib/Target/ARM/ARMSubtarget.h
M llvm/lib/Target/ARM/ARMTargetMachine.cpp
M llvm/lib/Target/ARM/ARMTargetMachine.h
M llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
M llvm/lib/Target/ARM/Disassembler/ARMDisassembler.cpp
M llvm/lib/Target/ARM/MCTargetDesc/ARMMCTargetDesc.cpp
M llvm/lib/Target/ARM/TargetInfo/ARMTargetInfo.cpp
M llvm/lib/Target/AVR/AVRAsmPrinter.cpp
M llvm/lib/Target/AVR/AVRTargetMachine.cpp
M llvm/lib/Target/AVR/AsmParser/AVRAsmParser.cpp
M llvm/lib/Target/AVR/Disassembler/AVRDisassembler.cpp
M llvm/lib/Target/AVR/MCTargetDesc/AVRMCAsmInfo.cpp
M llvm/lib/Target/AVR/MCTargetDesc/AVRMCAsmInfo.h
M llvm/lib/Target/AVR/MCTargetDesc/AVRMCExpr.cpp
M llvm/lib/Target/AVR/MCTargetDesc/AVRMCExpr.h
M llvm/lib/Target/AVR/MCTargetDesc/AVRMCTargetDesc.cpp
M llvm/lib/Target/AVR/TargetInfo/AVRTargetInfo.cpp
M llvm/lib/Target/BPF/AsmParser/BPFAsmParser.cpp
M llvm/lib/Target/BPF/BPFAsmPrinter.cpp
M llvm/lib/Target/BPF/BPFPreserveStaticOffset.cpp
M llvm/lib/Target/BPF/BPFTargetMachine.cpp
M llvm/lib/Target/BPF/BTFDebug.cpp
M llvm/lib/Target/BPF/Disassembler/BPFDisassembler.cpp
M llvm/lib/Target/BPF/MCTargetDesc/BPFMCTargetDesc.cpp
M llvm/lib/Target/BPF/TargetInfo/BPFTargetInfo.cpp
M llvm/lib/Target/DirectX/DXILPrepare.cpp
M llvm/lib/Target/DirectX/DXILRootSignature.cpp
M llvm/lib/Target/Hexagon/AsmParser/HexagonAsmParser.cpp
M llvm/lib/Target/Hexagon/Disassembler/HexagonDisassembler.cpp
M llvm/lib/Target/Hexagon/HexagonAsmPrinter.cpp
M llvm/lib/Target/Hexagon/HexagonLoopIdiomRecognition.cpp
M llvm/lib/Target/Hexagon/HexagonTargetMachine.cpp
M llvm/lib/Target/Hexagon/MCTargetDesc/HexagonMCTargetDesc.cpp
M llvm/lib/Target/Hexagon/TargetInfo/HexagonTargetInfo.cpp
M llvm/lib/Target/Lanai/AsmParser/LanaiAsmParser.cpp
M llvm/lib/Target/Lanai/Disassembler/LanaiDisassembler.cpp
M llvm/lib/Target/Lanai/LanaiAsmPrinter.cpp
M llvm/lib/Target/Lanai/LanaiTargetMachine.cpp
M llvm/lib/Target/Lanai/MCTargetDesc/LanaiMCTargetDesc.cpp
M llvm/lib/Target/Lanai/TargetInfo/LanaiTargetInfo.cpp
M llvm/lib/Target/LoongArch/AsmParser/LoongArchAsmParser.cpp
M llvm/lib/Target/LoongArch/Disassembler/LoongArchDisassembler.cpp
M llvm/lib/Target/LoongArch/LoongArchAsmPrinter.cpp
M llvm/lib/Target/LoongArch/LoongArchTargetMachine.cpp
M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchAsmBackend.cpp
M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchAsmBackend.h
M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchMCTargetDesc.cpp
M llvm/lib/Target/LoongArch/TargetInfo/LoongArchTargetInfo.cpp
M llvm/lib/Target/MSP430/AsmParser/MSP430AsmParser.cpp
M llvm/lib/Target/MSP430/Disassembler/MSP430Disassembler.cpp
M llvm/lib/Target/MSP430/MCTargetDesc/MSP430MCTargetDesc.cpp
M llvm/lib/Target/MSP430/MSP430AsmPrinter.cpp
M llvm/lib/Target/MSP430/MSP430TargetMachine.cpp
M llvm/lib/Target/MSP430/TargetInfo/MSP430TargetInfo.cpp
M llvm/lib/Target/Mips/AsmParser/MipsAsmParser.cpp
M llvm/lib/Target/Mips/Disassembler/MipsDisassembler.cpp
M llvm/lib/Target/Mips/MCTargetDesc/CMakeLists.txt
M llvm/lib/Target/Mips/MCTargetDesc/MipsELFObjectWriter.cpp
M llvm/lib/Target/Mips/MCTargetDesc/MipsMCAsmInfo.cpp
M llvm/lib/Target/Mips/MCTargetDesc/MipsMCAsmInfo.h
M llvm/lib/Target/Mips/MCTargetDesc/MipsMCCodeEmitter.cpp
R llvm/lib/Target/Mips/MCTargetDesc/MipsMCExpr.cpp
R llvm/lib/Target/Mips/MCTargetDesc/MipsMCExpr.h
M llvm/lib/Target/Mips/MCTargetDesc/MipsMCTargetDesc.cpp
M llvm/lib/Target/Mips/MCTargetDesc/MipsTargetStreamer.cpp
M llvm/lib/Target/Mips/MipsAsmPrinter.cpp
M llvm/lib/Target/Mips/MipsMCInstLower.cpp
M llvm/lib/Target/Mips/MipsTargetMachine.cpp
M llvm/lib/Target/Mips/MipsTargetObjectFile.cpp
M llvm/lib/Target/Mips/TargetInfo/MipsTargetInfo.cpp
M llvm/lib/Target/NVPTX/MCTargetDesc/NVPTXMCTargetDesc.cpp
M llvm/lib/Target/NVPTX/NVPTX.td
M llvm/lib/Target/NVPTX/NVPTXAsmPrinter.cpp
M llvm/lib/Target/NVPTX/NVPTXISelDAGToDAG.cpp
M llvm/lib/Target/NVPTX/NVPTXISelDAGToDAG.h
M llvm/lib/Target/NVPTX/NVPTXInstrInfo.td
M llvm/lib/Target/NVPTX/NVPTXIntrinsics.td
M llvm/lib/Target/NVPTX/NVPTXSubtarget.h
M llvm/lib/Target/NVPTX/NVPTXTargetMachine.cpp
M llvm/lib/Target/NVPTX/TargetInfo/NVPTXTargetInfo.cpp
M llvm/lib/Target/PowerPC/AsmParser/PPCAsmParser.cpp
M llvm/lib/Target/PowerPC/Disassembler/PPCDisassembler.cpp
M llvm/lib/Target/PowerPC/MCTargetDesc/PPCMCTargetDesc.cpp
M llvm/lib/Target/PowerPC/PPC.td
M llvm/lib/Target/PowerPC/PPCAsmPrinter.cpp
M llvm/lib/Target/PowerPC/PPCBoolRetToInt.cpp
M llvm/lib/Target/PowerPC/PPCISelLowering.cpp
M llvm/lib/Target/PowerPC/PPCInstrInfo.cpp
M llvm/lib/Target/PowerPC/PPCInstrInfo.h
M llvm/lib/Target/PowerPC/PPCInstrMMA.td
M llvm/lib/Target/PowerPC/PPCRegisterInfo.cpp
M llvm/lib/Target/PowerPC/PPCTargetMachine.cpp
M llvm/lib/Target/PowerPC/PPCTargetTransformInfo.cpp
M llvm/lib/Target/PowerPC/PPCTargetTransformInfo.h
M llvm/lib/Target/PowerPC/TargetInfo/PowerPCTargetInfo.cpp
M llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
M llvm/lib/Target/RISCV/Disassembler/RISCVDisassembler.cpp
M llvm/lib/Target/RISCV/MCA/RISCVCustomBehaviour.cpp
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVAsmBackend.cpp
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVBaseInfo.h
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVELFObjectWriter.cpp
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVFixupKinds.h
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCCodeEmitter.cpp
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCTargetDesc.cpp
M llvm/lib/Target/RISCV/RISCVAsmPrinter.cpp
M llvm/lib/Target/RISCV/RISCVCallingConv.td
M llvm/lib/Target/RISCV/RISCVFeatures.td
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/lib/Target/RISCV/RISCVISelLowering.h
M llvm/lib/Target/RISCV/RISCVInsertVSETVLI.cpp
M llvm/lib/Target/RISCV/RISCVInstrFormats.td
M llvm/lib/Target/RISCV/RISCVInstrInfoXAndes.td
M llvm/lib/Target/RISCV/RISCVInstrInfoXqci.td
M llvm/lib/Target/RISCV/RISCVRegisterInfo.cpp
M llvm/lib/Target/RISCV/RISCVSchedSpacemitX60.td
M llvm/lib/Target/RISCV/RISCVTargetMachine.cpp
M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.h
M llvm/lib/Target/RISCV/RISCVVectorPeephole.cpp
M llvm/lib/Target/RISCV/TargetInfo/RISCVTargetInfo.cpp
M llvm/lib/Target/SPIRV/MCTargetDesc/SPIRVMCTargetDesc.cpp
M llvm/lib/Target/SPIRV/SPIRVAsmPrinter.cpp
M llvm/lib/Target/SPIRV/SPIRVBuiltins.td
M llvm/lib/Target/SPIRV/SPIRVTargetMachine.cpp
M llvm/lib/Target/SPIRV/TargetInfo/SPIRVTargetInfo.cpp
M llvm/lib/Target/Sparc/AsmParser/SparcAsmParser.cpp
M llvm/lib/Target/Sparc/Disassembler/SparcDisassembler.cpp
M llvm/lib/Target/Sparc/MCTargetDesc/SparcELFObjectWriter.cpp
M llvm/lib/Target/Sparc/MCTargetDesc/SparcMCAsmInfo.cpp
M llvm/lib/Target/Sparc/MCTargetDesc/SparcMCAsmInfo.h
M llvm/lib/Target/Sparc/MCTargetDesc/SparcMCCodeEmitter.cpp
M llvm/lib/Target/Sparc/MCTargetDesc/SparcMCExpr.cpp
R llvm/lib/Target/Sparc/MCTargetDesc/SparcMCExpr.h
M llvm/lib/Target/Sparc/MCTargetDesc/SparcMCTargetDesc.cpp
M llvm/lib/Target/Sparc/Sparc.td
M llvm/lib/Target/Sparc/SparcAsmPrinter.cpp
M llvm/lib/Target/Sparc/SparcISelLowering.cpp
M llvm/lib/Target/Sparc/SparcInstrInfo.td
M llvm/lib/Target/Sparc/SparcTargetMachine.cpp
M llvm/lib/Target/Sparc/SparcTargetObjectFile.cpp
M llvm/lib/Target/Sparc/TargetInfo/SparcTargetInfo.cpp
M llvm/lib/Target/SystemZ/AsmParser/SystemZAsmParser.cpp
M llvm/lib/Target/SystemZ/Disassembler/SystemZDisassembler.cpp
M llvm/lib/Target/SystemZ/MCTargetDesc/SystemZMCTargetDesc.cpp
M llvm/lib/Target/SystemZ/SystemZAsmPrinter.cpp
M llvm/lib/Target/SystemZ/SystemZLongBranch.cpp
M llvm/lib/Target/SystemZ/SystemZTargetMachine.cpp
M llvm/lib/Target/SystemZ/TargetInfo/SystemZTargetInfo.cpp
M llvm/lib/Target/VE/AsmParser/VEAsmParser.cpp
M llvm/lib/Target/VE/Disassembler/VEDisassembler.cpp
M llvm/lib/Target/VE/MCTargetDesc/VEMCTargetDesc.cpp
M llvm/lib/Target/VE/TargetInfo/VETargetInfo.cpp
M llvm/lib/Target/VE/VEAsmPrinter.cpp
M llvm/lib/Target/VE/VEISelLowering.cpp
M llvm/lib/Target/VE/VETargetMachine.cpp
M llvm/lib/Target/WebAssembly/AsmParser/WebAssemblyAsmParser.cpp
M llvm/lib/Target/WebAssembly/Disassembler/WebAssemblyDisassembler.cpp
M llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyMCTargetDesc.cpp
M llvm/lib/Target/WebAssembly/TargetInfo/WebAssemblyTargetInfo.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyAsmPrinter.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyRuntimeLibcallSignatures.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyTargetTransformInfo.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyTargetTransformInfo.h
M llvm/lib/Target/X86/X86.td
M llvm/lib/Target/X86/X86AsmPrinter.cpp
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/lib/Target/XCore/Disassembler/XCoreDisassembler.cpp
M llvm/lib/Target/XCore/MCTargetDesc/XCoreMCTargetDesc.cpp
M llvm/lib/Target/XCore/TargetInfo/XCoreTargetInfo.cpp
M llvm/lib/Target/XCore/XCoreAsmPrinter.cpp
M llvm/lib/Target/XCore/XCoreTargetMachine.cpp
M llvm/lib/Target/Xtensa/AsmParser/XtensaAsmParser.cpp
M llvm/lib/Target/Xtensa/Disassembler/XtensaDisassembler.cpp
M llvm/lib/Target/Xtensa/MCTargetDesc/XtensaMCTargetDesc.cpp
M llvm/lib/Target/Xtensa/MCTargetDesc/XtensaMCTargetDesc.h
M llvm/lib/Target/Xtensa/XtensaFeatures.td
M llvm/lib/Target/Xtensa/XtensaInstrInfo.td
M llvm/lib/Target/Xtensa/XtensaRegisterInfo.td
M llvm/lib/Target/Xtensa/XtensaSubtarget.h
M llvm/lib/TargetParser/PPCTargetParser.cpp
M llvm/lib/TargetParser/TargetParser.cpp
M llvm/lib/TargetParser/X86TargetParser.cpp
M llvm/lib/Transforms/AggressiveInstCombine/AggressiveInstCombine.cpp
M llvm/lib/Transforms/IPO/Attributor.cpp
M llvm/lib/Transforms/IPO/AttributorAttributes.cpp
M llvm/lib/Transforms/IPO/ElimAvailExtern.cpp
M llvm/lib/Transforms/IPO/FunctionSpecialization.cpp
M llvm/lib/Transforms/IPO/GlobalOpt.cpp
M llvm/lib/Transforms/IPO/IROutliner.cpp
M llvm/lib/Transforms/IPO/LowerTypeTests.cpp
M llvm/lib/Transforms/IPO/SCCP.cpp
M llvm/lib/Transforms/IPO/SampleProfileProbe.cpp
M llvm/lib/Transforms/IPO/WholeProgramDevirt.cpp
M llvm/lib/Transforms/InstCombine/InstCombineAddSub.cpp
M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
M llvm/lib/Transforms/InstCombine/InstCombineMulDivRem.cpp
M llvm/lib/Transforms/InstCombine/InstCombineNegator.cpp
M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
M llvm/lib/Transforms/Instrumentation/GCOVProfiling.cpp
M llvm/lib/Transforms/Instrumentation/MemorySanitizer.cpp
M llvm/lib/Transforms/Instrumentation/ThreadSanitizer.cpp
M llvm/lib/Transforms/Scalar/ADCE.cpp
M llvm/lib/Transforms/Scalar/GVN.cpp
M llvm/lib/Transforms/Scalar/GVNHoist.cpp
M llvm/lib/Transforms/Scalar/JumpThreading.cpp
M llvm/lib/Transforms/Scalar/LICM.cpp
M llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp
M llvm/lib/Transforms/Scalar/LoopUnrollPass.cpp
M llvm/lib/Transforms/Scalar/LowerMatrixIntrinsics.cpp
M llvm/lib/Transforms/Scalar/MemCpyOptimizer.cpp
M llvm/lib/Transforms/Scalar/SpeculativeExecution.cpp
M llvm/lib/Transforms/Scalar/TailRecursionElimination.cpp
M llvm/lib/Transforms/Utils/CodeExtractor.cpp
M llvm/lib/Transforms/Utils/Debugify.cpp
M llvm/lib/Transforms/Utils/Evaluator.cpp
M llvm/lib/Transforms/Utils/InlineFunction.cpp
M llvm/lib/Transforms/Utils/Local.cpp
M llvm/lib/Transforms/Utils/LoopPeel.cpp
M llvm/lib/Transforms/Utils/LoopRotationUtils.cpp
M llvm/lib/Transforms/Utils/PredicateInfo.cpp
M llvm/lib/Transforms/Utils/SCCPSolver.cpp
M llvm/lib/Transforms/Utils/ScalarEvolutionExpander.cpp
M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
M llvm/lib/Transforms/Vectorize/LoopVectorizationLegality.cpp
M llvm/lib/Transforms/Vectorize/LoopVectorizationPlanner.h
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/lib/Transforms/Vectorize/VPlan.cpp
M llvm/lib/Transforms/Vectorize/VPlan.h
M llvm/lib/Transforms/Vectorize/VPlanPatternMatch.h
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/lib/Transforms/Vectorize/VPlanTransforms.h
M llvm/lib/Transforms/Vectorize/VPlanUnroll.cpp
M llvm/test/Analysis/CostModel/AArch64/cmp.ll
M llvm/test/Analysis/CostModel/AMDGPU/canonicalize.ll
M llvm/test/Analysis/CostModel/AMDGPU/copysign.ll
A llvm/test/Analysis/CostModel/AMDGPU/maximumnum.ll
A llvm/test/Analysis/CostModel/AMDGPU/minimumnum.ll
A llvm/test/Analysis/CostModel/AMDGPU/special-argument-intrinsics.ll
M llvm/test/Analysis/HashRecognize/cyclic-redundancy-check.ll
M llvm/test/Analysis/ValueTracking/phi-known-bits.ll
A llvm/test/CodeGen/AArch64/arm64-zero-cycle-regmov-gpr32.ll
R llvm/test/CodeGen/AArch64/arm64-zero-cycle-regmov.ll
M llvm/test/CodeGen/AArch64/arm64ec-builtins.ll
M llvm/test/CodeGen/AArch64/complex-deinterleaving-splat-scalable.ll
M llvm/test/CodeGen/AArch64/min-jump-table.ll
M llvm/test/CodeGen/AArch64/neon-partial-reduce-dot-product.ll
A llvm/test/CodeGen/AArch64/replace-with-veclib-libmvec-scalable.ll
A llvm/test/CodeGen/AArch64/replace-with-veclib-libmvec.ll
M llvm/test/CodeGen/AArch64/stack-hazard.ll
A llvm/test/CodeGen/AArch64/sve-bf16-reductions.ll
M llvm/test/CodeGen/AArch64/sve-expand-div.ll
M llvm/test/CodeGen/AArch64/sve-fixed-length-sdiv-pow2.ll
A llvm/test/CodeGen/AArch64/sve-fixed-length-splat-segment.ll
M llvm/test/CodeGen/AArch64/sve-sdiv-pow2.ll
A llvm/test/CodeGen/AArch64/sve2p1-vector-shuffles.ll
M llvm/test/CodeGen/AArch64/trampoline.ll
A llvm/test/CodeGen/AArch64/unsupported-cc-call.ll
A llvm/test/CodeGen/AArch64/unsupported-cc-func.ll
A llvm/test/CodeGen/AArch64/vector-ldst-offset.ll
M llvm/test/CodeGen/AArch64/zext-to-tbl.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/insertelement.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-inttoptr.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-ptrtoint.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-select.mir
M llvm/test/CodeGen/AMDGPU/any_extend_vector_inreg.ll
M llvm/test/CodeGen/AMDGPU/buffer-fat-pointers-contents-legalization.ll
M llvm/test/CodeGen/AMDGPU/directive-amdgcn-target.ll
M llvm/test/CodeGen/AMDGPU/elf-header-flags-mach.ll
A llvm/test/CodeGen/AMDGPU/fix-sgpr-copies-f16-gfx12-fake16.mir
A llvm/test/CodeGen/AMDGPU/fix-sgpr-copies-f16-gfx12-true16.mir
M llvm/test/CodeGen/AMDGPU/fneg-combines.new.ll
A llvm/test/CodeGen/AMDGPU/gcn-reg-pressure-true16-integer-overflow.mir
M llvm/test/CodeGen/AMDGPU/idot4s.ll
M llvm/test/CodeGen/AMDGPU/idot4u.ll
M llvm/test/CodeGen/AMDGPU/insert-skips-gfx12.mir
A llvm/test/CodeGen/AMDGPU/llvm.amdgcn.s.barrier.signal.isfirst.ll
M llvm/test/CodeGen/AMDGPU/llvm.frexp.ll
M llvm/test/CodeGen/AMDGPU/llvm.maximum.f16.ll
M llvm/test/CodeGen/AMDGPU/llvm.maximum.f32.ll
M llvm/test/CodeGen/AMDGPU/llvm.minimum.f16.ll
M llvm/test/CodeGen/AMDGPU/llvm.minimum.f32.ll
M llvm/test/CodeGen/AMDGPU/loop_exit_with_xor.ll
M llvm/test/CodeGen/AMDGPU/machine-sink-ignorable-exec-use.mir
M llvm/test/CodeGen/AMDGPU/maximumnum.ll
M llvm/test/CodeGen/AMDGPU/minimumnum.ll
M llvm/test/CodeGen/AMDGPU/move-to-valu-pseudo-scalar-trans-f16-fake16.ll
M llvm/test/CodeGen/AMDGPU/move-to-valu-pseudo-scalar-trans-f16-true16.ll
M llvm/test/CodeGen/AMDGPU/pseudo-scalar-transcendental.ll
A llvm/test/CodeGen/AMDGPU/sext-in-reg-vector-shuffle.ll
M llvm/test/CodeGen/AMDGPU/vector-reduce-smax.ll
M llvm/test/CodeGen/AMDGPU/vector-reduce-smin.ll
A llvm/test/CodeGen/BPF/BTF/map-def-nested.ll
M llvm/test/CodeGen/DirectX/ContainerData/RootSignature-Error-is-not-function.ll
M llvm/test/CodeGen/DirectX/ContainerData/RootSignature-Error-is-not-value.ll
M llvm/test/CodeGen/DirectX/ContainerData/RootSignature-Error-no-root-element-list.ll
M llvm/test/CodeGen/DirectX/ContainerData/RootSignature-Error-root-element-not-mdnode.ll
M llvm/test/CodeGen/DirectX/ContainerData/RootSignature-Flags-Error.ll
M llvm/test/CodeGen/DirectX/ContainerData/RootSignature-Flags.ll
M llvm/test/CodeGen/DirectX/ContainerData/RootSignature-MultipleEntryFunctions.ll
M llvm/test/CodeGen/DirectX/ContainerData/RootSignature-NullFunction-Error.ll
M llvm/test/CodeGen/DirectX/ContainerData/RootSignature-Parameters-Invalid-ParameterIsNotString.ll
M llvm/test/CodeGen/DirectX/ContainerData/RootSignature-Parameters-Validation-Error.ll
M llvm/test/CodeGen/DirectX/ContainerData/RootSignature-Parameters.ll
M llvm/test/CodeGen/DirectX/ContainerData/RootSignature-RootConstants-Invalid-Num32BitValues.ll
M llvm/test/CodeGen/DirectX/ContainerData/RootSignature-RootConstants-Invalid-RegisterSpace.ll
M llvm/test/CodeGen/DirectX/ContainerData/RootSignature-RootConstants-Invalid-ShaderRegister.ll
M llvm/test/CodeGen/DirectX/ContainerData/RootSignature-RootConstants.ll
M llvm/test/CodeGen/DirectX/ContainerData/RootSignature-RootDescriptor-Invalid-Flags.ll
M llvm/test/CodeGen/DirectX/ContainerData/RootSignature-RootDescriptor-Invalid-RegisterKind.ll
M llvm/test/CodeGen/DirectX/ContainerData/RootSignature-RootDescriptor-Invalid-RegisterSpace.ll
M llvm/test/CodeGen/DirectX/ContainerData/RootSignature-RootDescriptor-Invalid-RegisterValue.ll
M llvm/test/CodeGen/DirectX/ContainerData/RootSignature-RootDescriptor.ll
A llvm/test/CodeGen/DirectX/ContainerData/RootSignature-RootDescriptor_V1.ll
M llvm/test/CodeGen/DirectX/ContainerData/RootSignature-RootElement-Error.ll
M llvm/test/CodeGen/DirectX/ContainerData/RootSignature-RootFlags-VisibilityValidationError.ll
M llvm/test/CodeGen/DirectX/llc-vector-load-scalarize.ll
A llvm/test/CodeGen/DirectX/noop_bitcast_global_array_type.ll
M llvm/test/CodeGen/NVPTX/bug26185-2.ll
M llvm/test/CodeGen/NVPTX/bug26185.ll
M llvm/test/CodeGen/NVPTX/i1-ext-load.ll
M llvm/test/CodeGen/NVPTX/ldu-ldg.ll
M llvm/test/CodeGen/NVPTX/sm-version.ll
M llvm/test/CodeGen/NVPTX/variadics-backend.ll
M llvm/test/CodeGen/PowerPC/PR35812-neg-cmpxchg.ll
M llvm/test/CodeGen/PowerPC/aix-cc-abi-mir.ll
M llvm/test/CodeGen/PowerPC/aix-cc-abi.ll
A llvm/test/CodeGen/PowerPC/aix-cc-byval-mir.ll
M llvm/test/CodeGen/PowerPC/aix-cc-byval.ll
M llvm/test/CodeGen/PowerPC/aix-vec-arg-spills-mir.ll
M llvm/test/CodeGen/PowerPC/aix-vec-arg-spills.ll
M llvm/test/CodeGen/PowerPC/aix-vector-vararg-caller.ll
M llvm/test/CodeGen/PowerPC/aix-vector-vararg-fixed-caller.ll
A llvm/test/CodeGen/PowerPC/aix32-cc-abi-vaarg-mir.ll
M llvm/test/CodeGen/PowerPC/aix32-cc-abi-vaarg.ll
A llvm/test/CodeGen/PowerPC/aix64-cc-abi-vaarg-mir.ll
M llvm/test/CodeGen/PowerPC/aix64-cc-abi-vaarg.ll
M llvm/test/CodeGen/PowerPC/all-atomics.ll
M llvm/test/CodeGen/PowerPC/dmr-spill.ll
A llvm/test/CodeGen/PowerPC/dmrp-spill.ll
M llvm/test/CodeGen/PowerPC/f128-arith.ll
M llvm/test/CodeGen/PowerPC/loop-comment.ll
M llvm/test/CodeGen/RISCV/GlobalISel/irtranslator/fallback.ll
M llvm/test/CodeGen/RISCV/O0-pipeline.ll
M llvm/test/CodeGen/RISCV/O3-pipeline.ll
M llvm/test/CodeGen/RISCV/attributes.ll
M llvm/test/CodeGen/RISCV/branch.ll
M llvm/test/CodeGen/RISCV/features-info.ll
A llvm/test/CodeGen/RISCV/icmp-non-byte-sized.ll
M llvm/test/CodeGen/RISCV/interrupt-attr.ll
M llvm/test/CodeGen/RISCV/memcmp-optsize.ll
M llvm/test/CodeGen/RISCV/memcmp.ll
M llvm/test/CodeGen/RISCV/rvv/extract-subvector.ll
M llvm/test/CodeGen/RISCV/rvv/get_vector_length.ll
M llvm/test/CodeGen/RISCV/rvv/insert-subvector.ll
A llvm/test/CodeGen/RISCV/rvv/interrupt-attr-nocall.ll
M llvm/test/CodeGen/RISCV/rvv/legalize-load-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/legalize-store-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/masked-load-int.ll
M llvm/test/CodeGen/RISCV/rvv/setcc-fp-vp.ll
M llvm/test/CodeGen/RISCV/rvv/setcc-fp.ll
M llvm/test/CodeGen/RISCV/rvv/setcc-int-vp.ll
M llvm/test/CodeGen/RISCV/rvv/setcc-integer.ll
M llvm/test/CodeGen/RISCV/rvv/stepvector.ll
M llvm/test/CodeGen/RISCV/rvv/undef-earlyclobber-chain.ll
M llvm/test/CodeGen/RISCV/rvv/vandn-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/vector-deinterleave-fixed.ll
M llvm/test/CodeGen/RISCV/rvv/vector-deinterleave.ll
M llvm/test/CodeGen/RISCV/rvv/vector-interleave-store.ll
M llvm/test/CodeGen/RISCV/rvv/vector-interleave.ll
M llvm/test/CodeGen/RISCV/rvv/vfptoi-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/vl-opt-instrs.ll
M llvm/test/CodeGen/RISCV/rvv/vp-vector-interleaved-access.ll
M llvm/test/CodeGen/RISCV/rvv/vreductions-fp-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/vselect-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vsetvli-insert-crossbb.mir
M llvm/test/CodeGen/RISCV/shifts.ll
A llvm/test/CodeGen/RISCV/xqcibm-cto-clo.ll
M llvm/test/CodeGen/RISCV/xqcibm-extract.ll
M llvm/test/CodeGen/SPARC/ctlz.ll
M llvm/test/CodeGen/SPARC/cttz.ll
M llvm/test/CodeGen/SPARC/inlineasm-v9.ll
M llvm/test/CodeGen/SPARC/inlineasm.ll
A llvm/test/CodeGen/SPIRV/constant/spec-constant.ll
A llvm/test/CodeGen/SPIRV/linkage/link-attribute-vk.ll
A llvm/test/CodeGen/SystemZ/fake-use-size.ll
M llvm/test/CodeGen/Thumb2/mve-shuffle.ll
M llvm/test/CodeGen/Thumb2/mve-vld3.ll
M llvm/test/CodeGen/Thumb2/schedm7-hazard.ll
A llvm/test/CodeGen/X86/fold-masked-merge-demorgan.ll
M llvm/test/CodeGen/X86/horizontal-sum.ll
M llvm/test/CodeGen/X86/kcfi-arity.ll
M llvm/test/CodeGen/X86/movmsk-cmp.ll
M llvm/test/CodeGen/X86/ptest.ll
M llvm/test/CodeGen/X86/remarks-section.ll
M llvm/test/CodeGen/X86/vector-fshl-256.ll
M llvm/test/CodeGen/X86/vector-fshr-256.ll
M llvm/test/CodeGen/X86/vector-shift-lshr-256.ll
M llvm/test/CodeGen/X86/vector-shift-shl-256.ll
M llvm/test/CodeGen/X86/vector-shuffle-combining-avx2.ll
M llvm/test/Instrumentation/AddressSanitizer/asan-masked-load-store.ll
M llvm/test/Instrumentation/AddressSanitizer/asan-vp-load-store.ll
M llvm/test/Instrumentation/AddressSanitizer/vector-load-store.ll
M llvm/test/Instrumentation/BoundsChecking/simple.ll
M llvm/test/Instrumentation/HWAddressSanitizer/vector-load-store.ll
M llvm/test/Instrumentation/MemorySanitizer/partial-poison.ll
M llvm/test/Instrumentation/MemorySanitizer/vector-load-store.ll
M llvm/test/Instrumentation/MemorySanitizer/vscale.ll
M llvm/test/Instrumentation/ThreadSanitizer/atomic-non-integer.ll
M llvm/test/MC/AArch64/coff-function-type-info.ll
M llvm/test/MC/AMDGPU/gfx12_asm_smem.s
M llvm/test/MC/AMDGPU/gfx12_asm_sopk.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop1_dpp16.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop1_dpp8.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop2_dpp16.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop2_dpp8.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop3_from_vop1_dpp16.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop3_from_vop1_dpp8.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop3_from_vop2_dpp16.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop3_from_vop2_dpp8.s
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_smem.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop1_dpp8.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3_from_vop1_dpp16.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3_from_vop1_dpp8.txt
A llvm/test/MC/Disassembler/Xtensa/coprocessor.txt
A llvm/test/MC/Disassembler/Xtensa/debug.txt
A llvm/test/MC/Disassembler/Xtensa/exception.txt
A llvm/test/MC/Disassembler/Xtensa/highinterrupts.txt
A llvm/test/MC/Disassembler/Xtensa/interrupt.txt
A llvm/test/MC/Disassembler/Xtensa/prid.txt
A llvm/test/MC/Disassembler/Xtensa/timer.txt
M llvm/test/MC/LoongArch/Misc/cfi-advance.s
M llvm/test/MC/LoongArch/Relocations/fde-reloc.s
M llvm/test/MC/LoongArch/Relocations/sub-expr.s
M llvm/test/MC/RISCV/custom_reloc.s
M llvm/test/MC/RISCV/vendor-symbol.s
A llvm/test/MC/RISCV/xandesperf-fixups-diagnostics.s
A llvm/test/MC/RISCV/xandesperf-relocation.s
A llvm/test/MC/RISCV/xandesvbfhcvt-valid.s
M llvm/test/MC/RISCV/xqciac-valid.s
M llvm/test/MC/Sparc/Relocations/relocation-specifier.s
M llvm/test/MC/Sparc/sparcv9-instructions.s
M llvm/test/MC/Xtensa/Core/processor-control.s
A llvm/test/MC/Xtensa/coprocessor.s
A llvm/test/MC/Xtensa/debug-invalid.s
A llvm/test/MC/Xtensa/debug.s
A llvm/test/MC/Xtensa/exception.s
A llvm/test/MC/Xtensa/highinterrupts.s
A llvm/test/MC/Xtensa/interrupt.s
A llvm/test/MC/Xtensa/prid.s
A llvm/test/MC/Xtensa/timer.s
M llvm/test/Object/AMDGPU/elf-header-flags-mach.yaml
R llvm/test/Transforms/Attributor/AMDGPU/tag-invariant-loads.ll
M llvm/test/Transforms/Attributor/dereferenceable-1.ll
M llvm/test/Transforms/Attributor/value-simplify-local-remote.ll
M llvm/test/Transforms/DeadStoreElimination/trivial-dse-calls.ll
A llvm/test/Transforms/EliminateAvailableExternally/convert-global-variables-to-local.ll
M llvm/test/Transforms/GVN/opt-remarks.ll
M llvm/test/Transforms/IndVarSimplify/simplify-icmp-operands-order.ll
M llvm/test/Transforms/InstCombine/AArch64/sve-intrinsic-opts-counting-elems.ll
M llvm/test/Transforms/InstCombine/AMDGPU/image-d16.ll
M llvm/test/Transforms/InstCombine/X86/x86-vector-shifts.ll
M llvm/test/Transforms/InstCombine/add.ll
M llvm/test/Transforms/InstCombine/and-or-icmps.ll
M llvm/test/Transforms/InstCombine/apint-shift.ll
A llvm/test/Transforms/InstCombine/bitcast-known-bits.ll
M llvm/test/Transforms/InstCombine/call-cast-target.ll
A llvm/test/Transforms/InstCombine/dead-alloc-elim.ll
A llvm/test/Transforms/InstCombine/fmul-tan-cos.ll
M llvm/test/Transforms/InstCombine/fp-ret-bitcast.ll
M llvm/test/Transforms/InstCombine/gep-vector.ll
M llvm/test/Transforms/InstCombine/gepofconstgepi8.ll
M llvm/test/Transforms/InstCombine/getelementptr.ll
M llvm/test/Transforms/InstCombine/icmp-gep.ll
M llvm/test/Transforms/InstCombine/malloc-free.ll
M llvm/test/Transforms/InstCombine/masked_intrinsics.ll
M llvm/test/Transforms/InstCombine/multiple-uses-load-bitcast-select.ll
M llvm/test/Transforms/InstCombine/objsize.ll
M llvm/test/Transforms/InstCombine/opaque-ptr.ll
M llvm/test/Transforms/InstCombine/scalable-vector-array.ll
M llvm/test/Transforms/InstCombine/scalable-vector-struct.ll
M llvm/test/Transforms/InstCombine/select-load.ll
M llvm/test/Transforms/InstCombine/shift-amount-reassociation.ll
M llvm/test/Transforms/InstCombine/sub-gep.ll
A llvm/test/Transforms/InstCombine/sub-sext-add.ll
M llvm/test/Transforms/InstCombine/vp-reverse.ll
M llvm/test/Transforms/InstCombine/vscale_gep.ll
M llvm/test/Transforms/InstSimplify/ConstProp/loads.ll
M llvm/test/Transforms/LICM/call-hoisting.ll
M llvm/test/Transforms/LICM/funclet.ll
M llvm/test/Transforms/LoopUnroll/peel-last-iteration-minmax.ll
M llvm/test/Transforms/LoopVectorize/AArch64/clamped-trip-count.ll
M llvm/test/Transforms/LoopVectorize/AArch64/conditional-branches-cost.ll
M llvm/test/Transforms/LoopVectorize/AArch64/divs-with-scalable-vfs.ll
M llvm/test/Transforms/LoopVectorize/AArch64/eliminate-tail-predication.ll
M llvm/test/Transforms/LoopVectorize/AArch64/epilog-iv-select-cmp.ll
M llvm/test/Transforms/LoopVectorize/AArch64/gather-do-not-vectorize-addressing.ll
M llvm/test/Transforms/LoopVectorize/AArch64/induction-costs-sve.ll
M llvm/test/Transforms/LoopVectorize/AArch64/low_trip_count_predicates.ll
M llvm/test/Transforms/LoopVectorize/AArch64/masked-call.ll
M llvm/test/Transforms/LoopVectorize/AArch64/optsize_minsize.ll
M llvm/test/Transforms/LoopVectorize/AArch64/outer_loop_prefer_scalable.ll
M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-chained.ll
M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-dot-product-epilogue.ll
M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-dot-product-mixed.ll
M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-dot-product.ll
A llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-interleave.ll
M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-sub.ll
M llvm/test/Transforms/LoopVectorize/AArch64/pr60831-sve-inv-store-crash.ll
M llvm/test/Transforms/LoopVectorize/AArch64/reduction-recurrence-costs-sve.ll
M llvm/test/Transforms/LoopVectorize/AArch64/scalable-avoid-scalarization.ll
M llvm/test/Transforms/LoopVectorize/AArch64/scalable-reduction-inloop-cond.ll
M llvm/test/Transforms/LoopVectorize/AArch64/scalable-strict-fadd.ll
M llvm/test/Transforms/LoopVectorize/AArch64/simple_early_exit.ll
M llvm/test/Transforms/LoopVectorize/AArch64/store-costs-sve.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-epilog-vect-inloop-reductions.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-epilog-vect-no-remaining-iterations.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-epilog-vect-reductions.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-epilog-vect-strict-reductions.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-epilog-vect.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-extract-last-veclane.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-fneg.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-inductions-unusual-types.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-inductions.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-interleaved-accesses.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-interleaved-masked-accesses.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-inv-store.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-live-out-pointer-induction.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-low-trip-count.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-multiexit.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-runtime-check-size-based-threshold.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-tail-folding-forced.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-tail-folding-optsize.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-tail-folding-reductions.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-tail-folding-unroll.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-tail-folding.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-vector-reverse.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-vscale-based-trip-counts.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-widen-gep.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve2-histcnt-epilogue.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve2-histcnt-too-many-deps.ll
M llvm/test/Transforms/LoopVectorize/AArch64/tail-folding-styles.ll
M llvm/test/Transforms/LoopVectorize/AArch64/transform-narrow-interleave-to-widen-memory-remove-loop-region.ll
M llvm/test/Transforms/LoopVectorize/AArch64/uniform-args-call-variants.ll
M llvm/test/Transforms/LoopVectorize/AArch64/veclib-function-calls.ll
M llvm/test/Transforms/LoopVectorize/AArch64/veclib-intrinsic-calls.ll
M llvm/test/Transforms/LoopVectorize/AArch64/vplan-printing.ll
M llvm/test/Transforms/LoopVectorize/AArch64/wider-VF-for-callinst.ll
A llvm/test/Transforms/LoopVectorize/ARM/mve-reductions-interleave.ll
M llvm/test/Transforms/LoopVectorize/ARM/optsize_minsize.ll
M llvm/test/Transforms/LoopVectorize/RISCV/bf16.ll
M llvm/test/Transforms/LoopVectorize/RISCV/blend-any-of-reduction-cost.ll
M llvm/test/Transforms/LoopVectorize/RISCV/blocks-with-dead-instructions.ll
M llvm/test/Transforms/LoopVectorize/RISCV/dead-ops-cost.ll
M llvm/test/Transforms/LoopVectorize/RISCV/defaults.ll
M llvm/test/Transforms/LoopVectorize/RISCV/divrem.ll
M llvm/test/Transforms/LoopVectorize/RISCV/f16.ll
M llvm/test/Transforms/LoopVectorize/RISCV/first-order-recurrence-scalable-vf1.ll
M llvm/test/Transforms/LoopVectorize/RISCV/fminimumnum.ll
M llvm/test/Transforms/LoopVectorize/RISCV/induction-costs.ll
M llvm/test/Transforms/LoopVectorize/RISCV/inloop-reduction.ll
M llvm/test/Transforms/LoopVectorize/RISCV/interleaved-accesses.ll
M llvm/test/Transforms/LoopVectorize/RISCV/interleaved-masked-access.ll
M llvm/test/Transforms/LoopVectorize/RISCV/lmul.ll
M llvm/test/Transforms/LoopVectorize/RISCV/low-trip-count.ll
M llvm/test/Transforms/LoopVectorize/RISCV/mask-index-type.ll
M llvm/test/Transforms/LoopVectorize/RISCV/masked_gather_scatter.ll
M llvm/test/Transforms/LoopVectorize/RISCV/partial-reduce-dot-product.ll
M llvm/test/Transforms/LoopVectorize/RISCV/pr87378-vpinstruction-or-drop-poison-generating-flags.ll
M llvm/test/Transforms/LoopVectorize/RISCV/pr88802.ll
M llvm/test/Transforms/LoopVectorize/RISCV/remark-reductions.ll
M llvm/test/Transforms/LoopVectorize/RISCV/riscv-vector-reverse-output.ll
M llvm/test/Transforms/LoopVectorize/RISCV/riscv-vector-reverse.ll
M llvm/test/Transforms/LoopVectorize/RISCV/safe-dep-distance.ll
M llvm/test/Transforms/LoopVectorize/RISCV/scalable-basics.ll
M llvm/test/Transforms/LoopVectorize/RISCV/scalable-tailfold.ll
M llvm/test/Transforms/LoopVectorize/RISCV/select-cmp-reduction.ll
M llvm/test/Transforms/LoopVectorize/RISCV/strided-accesses.ll
M llvm/test/Transforms/LoopVectorize/RISCV/truncate-to-minimal-bitwidth-cost.ll
M llvm/test/Transforms/LoopVectorize/RISCV/truncate-to-minimal-bitwidth-evl-crash.ll
M llvm/test/Transforms/LoopVectorize/RISCV/type-info-cache-evl-crash.ll
M llvm/test/Transforms/LoopVectorize/RISCV/uniform-load-store.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-bin-unary-ops-args.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-call-intrinsics.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-cast-intrinsics.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-cond-reduction.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-div.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-fixed-order-recurrence.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-inloop-reduction.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-interleave.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-intermediate-store.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-iv32.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-known-no-overflow.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-masked-loadstore.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-ordered-reduction.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-reduction.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-reverse-load-store.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-safe-dep-distance.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-uniform-store.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-vp-intrinsics.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vplan-vp-select-intrinsics.ll
M llvm/test/Transforms/LoopVectorize/X86/constant-fold.ll
M llvm/test/Transforms/LoopVectorize/X86/drop-poison-generating-flags.ll
M llvm/test/Transforms/LoopVectorize/X86/induction-costs.ll
M llvm/test/Transforms/LoopVectorize/X86/interleave-cost.ll
M llvm/test/Transforms/LoopVectorize/X86/outer_loop_test1_no_explicit_vect_width.ll
M llvm/test/Transforms/LoopVectorize/X86/scatter_crash.ll
M llvm/test/Transforms/LoopVectorize/branch-weights.ll
M llvm/test/Transforms/LoopVectorize/dereferenceable-info-from-assumption-constant-size.ll
M llvm/test/Transforms/LoopVectorize/dereferenceable-info-from-assumption-variable-size.ll
M llvm/test/Transforms/LoopVectorize/early_exit_legality.ll
A llvm/test/Transforms/LoopVectorize/early_exit_store_legality.ll
M llvm/test/Transforms/LoopVectorize/epilog-vectorization-any-of-reductions.ll
M llvm/test/Transforms/LoopVectorize/first-order-recurrence-scalable-vf1.ll
M llvm/test/Transforms/LoopVectorize/first-order-recurrence.ll
M llvm/test/Transforms/LoopVectorize/load-deref-pred-poison-ub-ops-feeding-pointer.ll
M llvm/test/Transforms/LoopVectorize/outer_loop_scalable.ll
M llvm/test/Transforms/LoopVectorize/pointer-induction.ll
A llvm/test/Transforms/LoopVectorize/predicatedinst-loop-invariant.ll
M llvm/test/Transforms/LoopVectorize/reduction-inloop-pred.ll
M llvm/test/Transforms/LoopVectorize/scalable-first-order-recurrence.ll
M llvm/test/Transforms/LoopVectorize/scalable-inductions.ll
M llvm/test/Transforms/LoopVectorize/scalable-iv-outside-user.ll
M llvm/test/Transforms/LoopVectorize/scalable-lifetime.ll
M llvm/test/Transforms/LoopVectorize/scalable-loop-unpredicated-body-scalar-tail.ll
M llvm/test/Transforms/LoopVectorize/scalable-reduction-inloop.ll
M llvm/test/Transforms/LoopVectorize/scalable-trunc-min-bitwidth.ll
M llvm/test/Transforms/LoopVectorize/single_early_exit_live_outs.ll
M llvm/test/Transforms/LoopVectorize/uniform-blend.ll
M llvm/test/Transforms/LoopVectorize/vectorize-force-tail-with-evl.ll
M llvm/test/Transforms/LoopVectorize/vplan-iv-transforms.ll
A llvm/test/Transforms/LowerMatrixIntrinsics/phi.ll
M llvm/test/Transforms/LowerMatrixIntrinsics/propagate-backwards-unsupported.ll
M llvm/test/Transforms/LowerTypeTests/blockaddress-2.ll
M llvm/test/Transforms/LowerTypeTests/cfi-icall-alias.ll
M llvm/test/Transforms/LowerTypeTests/export-alias.ll
M llvm/test/Transforms/LowerTypeTests/export-icall.ll
M llvm/test/Transforms/LowerTypeTests/function-disjoint.ll
M llvm/test/Transforms/LowerTypeTests/function.ll
M llvm/test/Transforms/LowerTypeTests/icall-branch-funnel.ll
M llvm/test/Transforms/LowerTypeTests/pr37625.ll
M llvm/test/Transforms/LowerTypeTests/section.ll
M llvm/test/Transforms/MemCpyOpt/memcpy-memcpy-offset.ll
M llvm/test/Transforms/MemCpyOpt/variable-sized-memcpy-memcpy.ll
M llvm/test/Transforms/MemCpyOpt/vscale-crashes.ll
M llvm/test/Transforms/PhaseOrdering/AArch64/sve-interleave-vectorization.ll
A llvm/test/Transforms/PhaseOrdering/X86/fmaddsub.ll
M llvm/test/Transforms/PhaseOrdering/X86/hadd.ll
M llvm/test/Transforms/PhaseOrdering/X86/hsub.ll
M llvm/test/Transforms/PreISelIntrinsicLowering/AArch64/expand-exp.ll
M llvm/test/Transforms/SLPVectorizer/AMDGPU/external-shuffle.ll
M llvm/test/Transforms/SLPVectorizer/AMDGPU/slp-v2f16.ll
A llvm/test/Transforms/SLPVectorizer/SystemZ/non-power-2-subvector-extract.ll
M llvm/test/Transforms/SLPVectorizer/X86/extractelement-single-use-many-nodes.ll
M llvm/test/Transforms/SLPVectorizer/X86/vec_list_bias-inseltpoison.ll
A llvm/test/Transforms/SLPVectorizer/isCommutative.ll
M llvm/test/Transforms/Util/add-TLI-mappings.ll
A llvm/test/Transforms/WholeProgramDevirt/availableexternal-check.ll
A llvm/test/Verifier/NVPTX/fence-proxy.tensormap.ll
M llvm/test/Verifier/NVPTX/setmaxnreg.ll
A llvm/test/tools/llvm-exegesis/RISCV/unsupported-opcode.test
A llvm/test/tools/llvm-mca/AArch64/Cortex/A320-basic-instructions.s
A llvm/test/tools/llvm-mca/AArch64/Cortex/A320-neon-instructions.s
A llvm/test/tools/llvm-mca/AArch64/Cortex/A320-sve-instructions.s
M llvm/test/tools/llvm-mca/RISCV/SpacemitX60/atomic.s
M llvm/test/tools/llvm-mca/RISCV/SpacemitX60/floating-point.s
M llvm/test/tools/llvm-mca/RISCV/SpacemitX60/integer.s
M llvm/test/tools/llvm-objdump/ELF/AMDGPU/subtarget.ll
M llvm/test/tools/llvm-readobj/ELF/AMDGPU/elf-headers.test
A llvm/test/tools/llvm-remarkutil/Inputs/broken-remark-magic.bitstream
M llvm/test/tools/llvm-remarkutil/annotation-count.test
A llvm/test/tools/llvm-remarkutil/broken-bitstream-remark-magic.test
M llvm/test/tools/llvm-remarkutil/empty-file.test
M llvm/test/tools/llvm-remarkutil/instruction-count.test
M llvm/test/tools/llvm-remarkutil/instruction-mix.test
M llvm/test/tools/llvm-remarkutil/size-diff/no-difference.test
A llvm/test/tools/yaml2obj/basic.test
M llvm/tools/llvm-exegesis/lib/Target.cpp
M llvm/tools/llvm-jitlink/llvm-jitlink-executor/CMakeLists.txt
M llvm/tools/llvm-readobj/DwarfCFIEHPrinter.h
M llvm/tools/llvm-readobj/ELFDumper.cpp
M llvm/tools/llvm-remarkutil/RemarkUtilHelpers.h
M llvm/tools/yaml2obj/yaml2obj.cpp
M llvm/unittests/ADT/TestGraph.h
M llvm/unittests/CodeGen/SelectionDAGPatternMatchTest.cpp
M llvm/unittests/Frontend/CMakeLists.txt
M llvm/unittests/Frontend/HLSLRootSignatureDumpTest.cpp
A llvm/unittests/Frontend/HLSLRootSignatureRangesTest.cpp
M llvm/unittests/Remarks/RemarksLinkingTest.cpp
M llvm/unittests/Remarks/YAMLRemarksParsingTest.cpp
M llvm/unittests/Remarks/YAMLRemarksSerializerTest.cpp
M llvm/unittests/Support/Casting.cpp
M llvm/unittests/Target/AArch64/CMakeLists.txt
M llvm/unittests/Target/LoongArch/CMakeLists.txt
M llvm/unittests/Target/RISCV/CMakeLists.txt
M llvm/unittests/Target/SPIRV/CMakeLists.txt
M llvm/unittests/Target/VE/CMakeLists.txt
M llvm/unittests/Target/WebAssembly/CMakeLists.txt
M llvm/unittests/TargetParser/RISCVISAInfoTest.cpp
M llvm/utils/TableGen/Basic/CMakeLists.txt
A llvm/utils/TableGen/Basic/TargetFeaturesEmitter.cpp
A llvm/utils/TableGen/Basic/TargetFeaturesEmitter.h
M llvm/utils/TableGen/Common/CodeGenInstruction.cpp
M llvm/utils/TableGen/Common/CodeGenInstruction.h
M llvm/utils/TableGen/CompressInstEmitter.cpp
M llvm/utils/TableGen/DecoderEmitter.cpp
M llvm/utils/TableGen/SubtargetEmitter.cpp
M llvm/utils/gn/secondary/bolt/unittests/Profile/BUILD.gn
M llvm/utils/gn/secondary/clang-tools-extra/clang-tidy/cppcoreguidelines/BUILD.gn
M llvm/utils/gn/secondary/clang/lib/Driver/BUILD.gn
M llvm/utils/gn/secondary/lldb/source/Commands/BUILD.gn
M llvm/utils/gn/secondary/lldb/source/Core/BUILD.gn
M llvm/utils/gn/secondary/lldb/test/BUILD.gn
M llvm/utils/gn/secondary/llvm/include/llvm/Config/BUILD.gn
M llvm/utils/gn/secondary/llvm/include/llvm/TargetParser/BUILD.gn
M llvm/utils/gn/secondary/llvm/lib/DebugInfo/DWARF/BUILD.gn
M llvm/utils/gn/secondary/llvm/lib/Target/Mips/MCTargetDesc/BUILD.gn
M llvm/utils/gn/secondary/llvm/unittests/Frontend/BUILD.gn
M llvm/utils/gn/secondary/llvm/utils/TableGen/Basic/BUILD.gn
M mlir/docs/Dialects/Vector.md
A mlir/include/mlir/Analysis/DataFlow/Utils.h
M mlir/include/mlir/AsmParser/AsmParserState.h
M mlir/include/mlir/Dialect/AMDGPU/Transforms/Passes.h
M mlir/include/mlir/Dialect/Arith/IR/ArithOps.td
M mlir/include/mlir/Dialect/Arith/Transforms/Passes.h
M mlir/include/mlir/Dialect/Arith/Transforms/Passes.td
M mlir/include/mlir/Dialect/Bufferization/IR/BufferizableOpInterface.h
M mlir/include/mlir/Dialect/Bufferization/IR/BufferizationOps.td
M mlir/include/mlir/Dialect/Bufferization/IR/BufferizationTypeInterfaces.h
M mlir/include/mlir/Dialect/Bufferization/IR/BufferizationTypeInterfaces.td
M mlir/include/mlir/Dialect/Bufferization/IR/UnstructuredControlFlow.h
M mlir/include/mlir/Dialect/ControlFlow/IR/ControlFlowOps.td
M mlir/include/mlir/Dialect/EmitC/IR/CMakeLists.txt
M mlir/include/mlir/Dialect/EmitC/IR/EmitC.h
M mlir/include/mlir/Dialect/EmitC/IR/EmitC.td
A mlir/include/mlir/Dialect/EmitC/IR/EmitCInterfaces.h
A mlir/include/mlir/Dialect/EmitC/IR/EmitCInterfaces.td
R mlir/include/mlir/Dialect/EmitC/IR/EmitCTraits.h
M mlir/include/mlir/Dialect/GPU/IR/GPUOps.td
M mlir/include/mlir/Dialect/LLVMIR/LLVMInterfaces.td
M mlir/include/mlir/Dialect/LLVMIR/LLVMOps.td
M mlir/include/mlir/Dialect/LLVMIR/NVVMOps.td
M mlir/include/mlir/Dialect/Linalg/IR/LinalgInterfaces.td
M mlir/include/mlir/Dialect/Linalg/TransformOps/LinalgTransformOps.td
M mlir/include/mlir/Dialect/Linalg/Transforms/Transforms.h
M mlir/include/mlir/Dialect/Linalg/Utils/Utils.h
M mlir/include/mlir/Dialect/MemRef/IR/MemRefOps.td
M mlir/include/mlir/Dialect/Mesh/IR/MeshOps.h
M mlir/include/mlir/Dialect/Mesh/Transforms/Passes.h
M mlir/include/mlir/Dialect/Mesh/Transforms/Passes.td
M mlir/include/mlir/Dialect/Tensor/Utils/Utils.h
M mlir/include/mlir/Dialect/Vector/IR/VectorOps.td
M mlir/include/mlir/ExecutionEngine/ExecutionEngine.h
M mlir/include/mlir/IR/BlockSupport.h
M mlir/include/mlir/IR/Builders.h
M mlir/include/mlir/IR/BuiltinOps.td
M mlir/include/mlir/IR/BuiltinTypes.td
M mlir/include/mlir/IR/OpBase.td
M mlir/include/mlir/IR/Operation.h
M mlir/include/mlir/IR/PatternMatch.h
M mlir/include/mlir/IR/Region.h
M mlir/include/mlir/IR/SymbolTable.h
M mlir/include/mlir/IR/TypeRange.h
M mlir/include/mlir/IR/ValueRange.h
M mlir/include/mlir/Interfaces/ControlFlowInterfaces.h
M mlir/include/mlir/Interfaces/ControlFlowInterfaces.td
M mlir/include/mlir/Query/Matcher/Marshallers.h
M mlir/include/mlir/Query/Matcher/MatchFinder.h
M mlir/include/mlir/Query/Matcher/MatchersInternal.h
M mlir/include/mlir/Query/Matcher/SliceMatchers.h
M mlir/include/mlir/Query/Matcher/VariantValue.h
M mlir/include/mlir/Rewrite/FrozenRewritePatternSet.h
M mlir/include/mlir/Target/LLVMIR/ModuleTranslation.h
M mlir/include/mlir/Tools/PDLL/AST/Types.h
M mlir/include/mlir/Transforms/DialectConversion.h
M mlir/include/mlir/Transforms/Passes.h
M mlir/lib/Analysis/DataFlow/LivenessAnalysis.cpp
M mlir/lib/Conversion/AMDGPUToROCDL/AMDGPUToROCDL.cpp
M mlir/lib/Conversion/ArithToLLVM/ArithToLLVM.cpp
M mlir/lib/Conversion/ControlFlowToLLVM/ControlFlowToLLVM.cpp
M mlir/lib/Conversion/FuncToLLVM/FuncToLLVM.cpp
M mlir/lib/Conversion/GPUToNVVM/LowerGpuOpsToNVVMOps.cpp
M mlir/lib/Conversion/GPUToSPIRV/GPUToSPIRV.cpp
M mlir/lib/Conversion/MemRefToLLVM/MemRefToLLVM.cpp
M mlir/lib/Dialect/AMDGPU/Transforms/EmulateAtomics.cpp
M mlir/lib/Dialect/AMDGPU/Transforms/ResolveStridedMetadata.cpp
M mlir/lib/Dialect/AMDGPU/Transforms/TransferReadToLoad.cpp
M mlir/lib/Dialect/Arith/IR/ArithCanonicalization.td
M mlir/lib/Dialect/Arith/IR/ArithOps.cpp
M mlir/lib/Dialect/Arith/Transforms/BufferizableOpInterfaceImpl.cpp
M mlir/lib/Dialect/Arith/Transforms/ExpandOps.cpp
M mlir/lib/Dialect/Bufferization/IR/BufferizableOpInterface.cpp
M mlir/lib/Dialect/Bufferization/IR/BufferizationDialect.cpp
M mlir/lib/Dialect/Bufferization/IR/BufferizationOps.cpp
A mlir/lib/Dialect/Bufferization/IR/BufferizationTypeInterfaces.cpp
M mlir/lib/Dialect/Bufferization/IR/CMakeLists.txt
M mlir/lib/Dialect/Bufferization/Transforms/Bufferize.cpp
M mlir/lib/Dialect/Bufferization/Transforms/FuncBufferizableOpInterfaceImpl.cpp
M mlir/lib/Dialect/ControlFlow/IR/ControlFlowOps.cpp
M mlir/lib/Dialect/EmitC/IR/EmitC.cpp
M mlir/lib/Dialect/EmitC/Transforms/FormExpressions.cpp
M mlir/lib/Dialect/EmitC/Transforms/Transforms.cpp
M mlir/lib/Dialect/GPU/Transforms/DecomposeMemRefs.cpp
M mlir/lib/Dialect/LLVMIR/IR/LLVMDialect.cpp
M mlir/lib/Dialect/LLVMIR/IR/TypeDetail.h
M mlir/lib/Dialect/Linalg/TransformOps/LinalgTransformOps.cpp
M mlir/lib/Dialect/Linalg/Transforms/CMakeLists.txt
M mlir/lib/Dialect/Linalg/Transforms/ConvertToDestinationStyle.cpp
A mlir/lib/Dialect/Linalg/Transforms/PadTilingInterface.cpp
M mlir/lib/Dialect/Linalg/Transforms/Padding.cpp
M mlir/lib/Dialect/Linalg/Utils/Utils.cpp
M mlir/lib/Dialect/MemRef/Transforms/ExpandOps.cpp
M mlir/lib/Dialect/Mesh/IR/MeshOps.cpp
M mlir/lib/Dialect/Mesh/Transforms/ShardingPropagation.cpp
M mlir/lib/Dialect/SCF/Transforms/BufferizableOpInterfaceImpl.cpp
M mlir/lib/Dialect/Shape/Transforms/BufferizableOpInterfaceImpl.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/SparseGPUCodegen.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/SparseTensorCodegen.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/SparseTensorConversion.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/SparsificationAndBufferizationPass.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/Utils/CodegenUtils.cpp
M mlir/lib/Dialect/Tensor/Transforms/BufferizableOpInterfaceImpl.cpp
M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
M mlir/lib/Dialect/XeGPU/Transforms/XeGPUBlocking.cpp
M mlir/lib/Dialect/XeGPU/Transforms/XeGPUSubgroupDistribute.cpp
M mlir/lib/Dialect/XeGPU/Transforms/XeGPUUnroll.cpp
M mlir/lib/Dialect/XeGPU/Transforms/XeGPUWgToSgDistribute.cpp
M mlir/lib/Interfaces/ControlFlowInterfaces.cpp
M mlir/lib/Pass/PassManagerOptions.cpp
M mlir/lib/Pass/PassStatistics.cpp
M mlir/lib/Query/Matcher/CMakeLists.txt
A mlir/lib/Query/Matcher/MatchersInternal.cpp
M mlir/lib/Query/Matcher/RegistryManager.cpp
M mlir/lib/Query/Matcher/VariantValue.cpp
M mlir/lib/Query/Query.cpp
M mlir/lib/TableGen/Operator.cpp
M mlir/lib/Target/Cpp/TranslateToCpp.cpp
M mlir/lib/Target/LLVMIR/Dialect/LLVMIR/LLVMIRToLLVMTranslation.cpp
M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
M mlir/lib/Target/LLVMIR/ModuleTranslation.cpp
M mlir/lib/Transforms/Utils/DialectConversion.cpp
M mlir/python/mlir/_mlir_libs/_mlir/ir.pyi
M mlir/test/Conversion/AMDGPUToROCDL/mfma-gfx950.mlir
M mlir/test/Conversion/ArithToLLVM/arith-to-llvm.mlir
M mlir/test/Conversion/ControlFlowToLLVM/branch.mlir
M mlir/test/Conversion/GPUToNVVM/gpu-to-nvvm.mlir
M mlir/test/Conversion/GPUToSPIRV/shuffle.mlir
M mlir/test/Conversion/MemRefToLLVM/memref-to-llvm.mlir
M mlir/test/Dialect/Affine/constant-fold.mlir
M mlir/test/Dialect/Arith/canonicalize.mlir
M mlir/test/Dialect/Arith/expand-ops.mlir
M mlir/test/Dialect/Arith/ops.mlir
M mlir/test/Dialect/Bufferization/Transforms/one-shot-bufferize.mlir
M mlir/test/Dialect/ControlFlow/canonicalize.mlir
M mlir/test/Dialect/ControlFlow/invalid.mlir
M mlir/test/Dialect/ControlFlow/ops.mlir
M mlir/test/Dialect/Linalg/mesh-spmdization.mlir
A mlir/test/Dialect/Linalg/transform-op-pad-tiling-interface-multiple-of.mlir
A mlir/test/Dialect/Linalg/transform-op-pad-tiling-interface.mlir
M mlir/test/Dialect/Linalg/transform-op-pad.mlir
M mlir/test/Dialect/MemRef/expand-ops.mlir
A mlir/test/Dialect/Mesh/backward-sharding-propagation.mlir
A mlir/test/Dialect/Mesh/forward-backward-sharding-propagation.mlir
A mlir/test/Dialect/Mesh/forward-sharding-propagation.mlir
M mlir/test/Dialect/Mesh/spmdization.mlir
M mlir/test/Dialect/Tensor/mesh-spmdization.mlir
M mlir/test/Dialect/Tosa/constant_folding.mlir
M mlir/test/Dialect/Vector/constant-fold.mlir
M mlir/test/Dialect/Vector/invalid.mlir
M mlir/test/Dialect/Vector/ops.mlir
A mlir/test/Dialect/Vector/single-fold.mlir
M mlir/test/Dialect/XeGPU/invalid.mlir
A mlir/test/Dialect/XeGPU/layout.mlir
M mlir/test/Dialect/XeGPU/ops.mlir
M mlir/test/Dialect/XeGPU/subgroup-map-propagation.mlir
M mlir/test/Dialect/XeGPU/xegpu-blocking.mlir
M mlir/test/Dialect/XeGPU/xegpu-unroll-patterns.mlir
A mlir/test/Dialect/XeGPU/xegpu-wg-to-sg-elemwise.mlir
M mlir/test/Dialect/XeGPU/xegpu-wg-to-sg-rr.mlir
M mlir/test/Dialect/XeGPU/xegpu-wg-to-sg.mlir
A mlir/test/Integration/Dialect/Arith/CPU/test-arith-expand-truncf-extf.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/dense_output_bf16.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_sum_bf16.mlir
A mlir/test/Integration/Dialect/Vector/CPU/ArmSVE/vector-contract-i8mm.mlir
M mlir/test/Integration/GPU/CUDA/dump-ptx.mlir
M mlir/test/Target/LLVMIR/Import/metadata-profiling.ll
M mlir/test/Target/LLVMIR/llvmir-invalid.mlir
M mlir/test/Target/LLVMIR/llvmir.mlir
A mlir/test/Target/LLVMIR/omptarget-debug-loop-loc.mlir
M mlir/test/Target/LLVMIR/omptarget-llvm.mlir
M mlir/test/Target/LLVMIR/omptargetdata-nowait-llvm.mlir
M mlir/test/Target/LLVMIR/openmp-data-target-device.mlir
A mlir/test/Target/LLVMIR/openmp-task-charbox.mlir
M mlir/test/Transforms/constant-fold-debuginfo.mlir
M mlir/test/Transforms/constant-fold.mlir
M mlir/test/Transforms/remove-dead-values.mlir
M mlir/test/lib/Analysis/DataFlow/TestDenseBackwardDataFlowAnalysis.cpp
M mlir/test/lib/Analysis/DataFlow/TestDenseForwardDataFlowAnalysis.cpp
M mlir/test/lib/Analysis/DataFlow/TestSparseBackwardDataFlowAnalysis.cpp
M mlir/test/lib/Dialect/Test/TestOpDefs.cpp
M mlir/test/lib/Dialect/Test/TestOps.h
M mlir/test/lib/Dialect/Test/TestOps.td
M mlir/test/lib/Dialect/Test/TestTypeDefs.td
M mlir/test/lib/Dialect/Test/TestTypes.cpp
M mlir/test/lib/Dialect/XeGPU/TestXeGPUTransforms.cpp
M mlir/test/lib/Transforms/CMakeLists.txt
R mlir/test/lib/Transforms/TestConstantFold.cpp
A mlir/test/lib/Transforms/TestSingleFold.cpp
A mlir/test/mlir-opt/local-reproducer-with-threading.mlir
A mlir/test/mlir-query/backward-slice-union.mlir
R mlir/test/mlir-query/complex-test.mlir
A mlir/test/mlir-query/forward-slice-by-predicate.mlir
A mlir/test/mlir-query/logical-operator-test.mlir
A mlir/test/mlir-query/slice-function-extraction.mlir
M mlir/test/mlir-tblgen/op-format.mlir
M mlir/tools/mlir-opt/mlir-opt.cpp
M mlir/tools/mlir-query/mlir-query.cpp
M mlir/tools/mlir-tblgen/OpFormatGen.cpp
M mlir/unittests/IR/OperationSupportTest.cpp
M mlir/unittests/IR/ValueTest.cpp
M mlir/utils/vscode/package-lock.json
M mlir/utils/vscode/package.json
A offload/cmake/caches/AMDGPULibcBot.cmake
M offload/liboffload/API/Common.td
M offload/liboffload/include/OffloadImpl.hpp
M offload/liboffload/src/OffloadImpl.cpp
M offload/liboffload/src/OffloadLib.cpp
M offload/plugins-nextgen/common/include/PluginInterface.h
M offload/tools/offload-tblgen/EntryPointGen.cpp
M offload/unittests/CMakeLists.txt
M offload/unittests/OffloadAPI/CMakeLists.txt
M offload/unittests/OffloadAPI/common/Environment.cpp
M offload/unittests/OffloadAPI/device_code/CMakeLists.txt
A offload/unittests/OffloadAPI/init/olInit.cpp
M runtimes/CMakeLists.txt
M utils/bazel/llvm-project-overlay/lld/BUILD.bazel
M utils/bazel/llvm-project-overlay/llvm/BUILD.bazel
M utils/bazel/llvm-project-overlay/llvm/config.bzl
M utils/bazel/llvm-project-overlay/llvm/include/llvm/Config/config.h
M utils/bazel/llvm-project-overlay/llvm/include/llvm/Config/llvm-config.h
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
M utils/bazel/llvm-project-overlay/mlir/test/BUILD.bazel
M utils/bazel/llvm_configs/config.h.cmake
M utils/bazel/llvm_configs/llvm-config.h.cmake
Log Message:
-----------
[𝘀𝗽𝗿] changes introduced through rebase
Created using spr 1.3.6
[skip ci]
Commit: 0d7cc25ece77b88a3cb5f011397ab177cae068d1
https://github.com/llvm/llvm-project/commit/0d7cc25ece77b88a3cb5f011397ab177cae068d1
Author: Aiden Grossman <agrossman154 at yahoo.com>
Date: 2025-06-20 (Fri, 20 Jun 2025)
Changed paths:
M .github/new-prs-labeler.yml
M .github/workflows/libcxx-restart-preempted-jobs.yaml
M bolt/include/bolt/Passes/PAuthGadgetScanner.h
M bolt/include/bolt/Profile/DataAggregator.h
M bolt/include/bolt/Utils/CommandLineOpts.h
M bolt/lib/Passes/PAuthGadgetScanner.cpp
M bolt/lib/Profile/DataAggregator.cpp
M bolt/lib/Rewrite/LinuxKernelRewriter.cpp
M bolt/test/AArch64/r_aarch64_prelxx.s
M bolt/test/X86/callcont-fallthru.s
M bolt/test/X86/linux-version.S
A bolt/test/binary-analysis/AArch64/gs-pauth-authentication-oracles.s
M bolt/test/binary-analysis/AArch64/gs-pauth-debug-output.s
M bolt/test/link_fdata.py
M bolt/test/lit.local.cfg
A bolt/test/perf2bolt/AArch64/perf2bolt-spe.test
A bolt/test/perf2bolt/X86/perf2bolt-spe.test
M bolt/tools/driver/llvm-bolt.cpp
M bolt/unittests/Profile/CMakeLists.txt
A bolt/unittests/Profile/PerfSpeEvents.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/CMakeLists.txt
M clang-tools-extra/clang-tidy/cppcoreguidelines/CppCoreGuidelinesTidyModule.cpp
A clang-tools-extra/clang-tidy/cppcoreguidelines/UseEnumClassCheck.cpp
A clang-tools-extra/clang-tidy/cppcoreguidelines/UseEnumClassCheck.h
M clang-tools-extra/clang-tidy/performance/UnnecessaryValueParamCheck.cpp
M clang-tools-extra/clang-tidy/performance/UnnecessaryValueParamCheck.h
M clang-tools-extra/clangd/ClangdLSPServer.cpp
M clang-tools-extra/clangd/Protocol.cpp
M clang-tools-extra/clangd/Protocol.h
A clang-tools-extra/clangd/test/positionencoding.test
M clang-tools-extra/docs/ReleaseNotes.rst
A clang-tools-extra/docs/clang-tidy/checks/cppcoreguidelines/use-enum-class.rst
M clang-tools-extra/docs/clang-tidy/checks/list.rst
M clang-tools-extra/docs/clang-tidy/checks/performance/enum-size.rst
M clang-tools-extra/docs/clang-tidy/checks/performance/unnecessary-value-param.rst
A clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/use-enum-class.cpp
A clang-tools-extra/test/clang-tidy/checkers/performance/unnecessary-value-param-coroutine.cpp
M clang/docs/CommandGuide/clang.rst
M clang/docs/ReleaseNotes.rst
M clang/docs/UsersManual.rst
M clang/include/clang/AST/DeclTemplate.h
M clang/include/clang/AST/Expr.h
M clang/include/clang/AST/OpenACCClause.h
M clang/include/clang/AST/OpenMPClause.h
M clang/include/clang/AST/StmtOpenACC.h
M clang/include/clang/AST/StmtOpenMP.h
M clang/include/clang/AST/Type.h
M clang/include/clang/AST/TypeProperties.td
M clang/include/clang/Basic/Attr.td
M clang/include/clang/Basic/AttrDocs.td
M clang/include/clang/Basic/Builtins.td
M clang/include/clang/Basic/BuiltinsPPC.def
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/include/clang/Basic/OffloadArch.h
M clang/include/clang/Basic/PPCTypes.def
M clang/include/clang/CIR/Dialect/Builder/CIRBaseBuilder.h
M clang/include/clang/CIR/Dialect/IR/CIRAttrs.td
M clang/include/clang/CIR/Dialect/IR/CIROps.td
M clang/include/clang/CIR/Interfaces/CIROpInterfaces.td
M clang/include/clang/CIR/MissingFeatures.h
M clang/include/clang/Driver/Options.td
M clang/include/clang/Parse/Parser.h
M clang/include/clang/Sema/Scope.h
M clang/include/clang/Sema/SemaHLSL.h
M clang/include/clang/Sema/SemaObjC.h
M clang/include/clang/Serialization/ASTReader.h
M clang/include/clang/Serialization/ASTRecordWriter.h
M clang/include/clang/Serialization/ASTWriter.h
M clang/include/clang/StaticAnalyzer/Checkers/Checkers.td
M clang/lib/AST/ASTContext.cpp
M clang/lib/AST/ASTDiagnostic.cpp
M clang/lib/AST/ASTImporter.cpp
M clang/lib/AST/ByteCode/ByteCodeEmitter.cpp
M clang/lib/AST/ByteCode/Compiler.cpp
M clang/lib/AST/ByteCode/Compiler.h
M clang/lib/AST/ByteCode/Descriptor.cpp
M clang/lib/AST/ByteCode/Disasm.cpp
M clang/lib/AST/ByteCode/Floating.h
M clang/lib/AST/ByteCode/Integral.h
M clang/lib/AST/ByteCode/IntegralAP.h
M clang/lib/AST/ByteCode/Interp.cpp
M clang/lib/AST/ByteCode/Interp.h
M clang/lib/AST/ByteCode/InterpBlock.cpp
M clang/lib/AST/ByteCode/InterpBuiltin.cpp
M clang/lib/AST/ByteCode/InterpBuiltinBitCast.cpp
M clang/lib/AST/ByteCode/InterpStack.cpp
M clang/lib/AST/ByteCode/InterpState.h
M clang/lib/AST/ByteCode/Opcodes.td
M clang/lib/AST/ByteCode/PrimType.h
M clang/lib/AST/ByteCode/Program.h
M clang/lib/AST/Decl.cpp
M clang/lib/AST/DeclTemplate.cpp
M clang/lib/AST/ExprCXX.cpp
M clang/lib/AST/OpenMPClause.cpp
M clang/lib/AST/QualTypeNames.cpp
M clang/lib/AST/StmtOpenMP.cpp
M clang/lib/AST/StmtProfile.cpp
M clang/lib/AST/Type.cpp
M clang/lib/Basic/OffloadArch.cpp
M clang/lib/Basic/Targets.cpp
M clang/lib/Basic/Targets/NVPTX.cpp
M clang/lib/Basic/Targets/OSTargets.h
M clang/lib/Basic/Targets/PPC.cpp
M clang/lib/Basic/Targets/Xtensa.h
M clang/lib/CIR/CodeGen/CIRGenBuiltin.cpp
M clang/lib/CIR/CodeGen/CIRGenCall.cpp
M clang/lib/CIR/CodeGen/CIRGenCall.h
M clang/lib/CIR/CodeGen/CIRGenExpr.cpp
M clang/lib/CIR/CodeGen/CIRGenExprComplex.cpp
M clang/lib/CIR/CodeGen/CIRGenExprConstant.cpp
M clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
M clang/lib/CIR/CodeGen/CIRGenFunction.h
M clang/lib/CIR/CodeGen/CIRGenModule.h
M clang/lib/CIR/CodeGen/CIRGenRecordLayout.h
M clang/lib/CIR/CodeGen/CIRGenRecordLayoutBuilder.cpp
M clang/lib/CIR/CodeGen/CIRGenStmt.cpp
M clang/lib/CIR/CodeGen/CIRGenTypes.cpp
M clang/lib/CIR/CodeGen/CIRGenValue.h
M clang/lib/CIR/CodeGen/TargetInfo.cpp
M clang/lib/CIR/CodeGen/TargetInfo.h
M clang/lib/CIR/Dialect/IR/CIRDialect.cpp
M clang/lib/CIR/Dialect/Transforms/CIRSimplify.cpp
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.h
M clang/lib/CodeGen/CGBlocks.cpp
M clang/lib/CodeGen/CGBuiltin.cpp
M clang/lib/CodeGen/CGCall.cpp
M clang/lib/CodeGen/CGCleanup.cpp
M clang/lib/CodeGen/CGDeclCXX.cpp
M clang/lib/CodeGen/CGException.cpp
M clang/lib/CodeGen/CGExpr.cpp
M clang/lib/CodeGen/CGExprConstant.cpp
M clang/lib/CodeGen/CGHLSLBuiltins.cpp
M clang/lib/CodeGen/CGHLSLRuntime.cpp
M clang/lib/CodeGen/CGObjC.cpp
M clang/lib/CodeGen/CGObjCGNU.cpp
M clang/lib/CodeGen/CGObjCMac.cpp
M clang/lib/CodeGen/CGObjCRuntime.cpp
M clang/lib/CodeGen/CGOpenMPRuntimeGPU.cpp
M clang/lib/CodeGen/CodeGenFunction.h
M clang/lib/CodeGen/CodeGenModule.cpp
M clang/lib/CodeGen/TargetInfo.cpp
M clang/lib/CodeGen/TargetInfo.h
M clang/lib/CodeGen/Targets/AMDGPU.cpp
M clang/lib/CodeGen/Targets/NVPTX.cpp
M clang/lib/CodeGen/Targets/SPIR.cpp
M clang/lib/Driver/CMakeLists.txt
M clang/lib/Driver/Driver.cpp
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/lib/Driver/ToolChains/Fuchsia.cpp
M clang/lib/Driver/ToolChains/Gnu.cpp
M clang/lib/Driver/ToolChains/HIPAMD.cpp
M clang/lib/Driver/ToolChains/HIPAMD.h
M clang/lib/Driver/ToolChains/Linux.cpp
A clang/lib/Driver/ToolChains/Managarm.cpp
A clang/lib/Driver/ToolChains/Managarm.h
M clang/lib/ExtractAPI/Serialization/SymbolGraphSerializer.cpp
M clang/lib/Headers/bmiintrin.h
M clang/lib/Headers/immintrin.h
M clang/lib/Headers/keylockerintrin.h
M clang/lib/Headers/x86gprintrin.h
M clang/lib/Headers/x86intrin.h
M clang/lib/Lex/InitHeaderSearch.cpp
M clang/lib/Parse/ParseDeclCXX.cpp
M clang/lib/Sema/SemaCast.cpp
M clang/lib/Sema/SemaConcept.cpp
M clang/lib/Sema/SemaDecl.cpp
M clang/lib/Sema/SemaDeclAttr.cpp
M clang/lib/Sema/SemaExpr.cpp
M clang/lib/Sema/SemaExprObjC.cpp
M clang/lib/Sema/SemaHLSL.cpp
M clang/lib/Sema/SemaModule.cpp
M clang/lib/Sema/SemaOpenMP.cpp
M clang/lib/Sema/TreeTransform.h
M clang/lib/Serialization/ASTReader.cpp
M clang/lib/Serialization/ASTReaderDecl.cpp
M clang/lib/Serialization/ASTReaderStmt.cpp
M clang/lib/Serialization/ASTWriter.cpp
M clang/lib/Serialization/ASTWriterDecl.cpp
M clang/lib/StaticAnalyzer/Checkers/DivZeroChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/DynamicTypePropagation.cpp
M clang/lib/StaticAnalyzer/Checkers/MallocChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/NullabilityChecker.cpp
M clang/lib/StaticAnalyzer/Core/Z3CrosscheckVisitor.cpp
M clang/test/AST/ByteCode/builtin-bit-cast-long-double.cpp
M clang/test/AST/ByteCode/builtin-functions.cpp
A clang/test/AST/HLSL/vk.spec-constant.usage.hlsl
M clang/test/AST/ast-dump-ppc-types.c
M clang/test/Analysis/NewDelete-checker-test.cpp
M clang/test/Analysis/analyzer-enabled-checkers.c
M clang/test/Analysis/bugfix-124477.m
M clang/test/Analysis/std-c-library-functions-arg-enabled-checkers.c
M clang/test/Analysis/taint-generic.c
A clang/test/CIR/CodeGen/bitfields.c
A clang/test/CIR/CodeGen/bitfields.cpp
M clang/test/CIR/CodeGen/builtin_call.cpp
M clang/test/CIR/CodeGen/call.c
M clang/test/CIR/CodeGen/complex.cpp
M clang/test/CIR/CodeGen/string-literals.c
A clang/test/CIR/CodeGen/string-literals.cpp
M clang/test/CIR/CodeGen/struct.c
M clang/test/CIR/IR/call.cir
A clang/test/CIR/Transforms/vector-splat.cir
A clang/test/CodeGen/PowerPC/builtins-ppc-dmf.c
A clang/test/CodeGen/PowerPC/ppc-dmf-paired-vec-memops-builtin-err.c
A clang/test/CodeGen/PowerPC/ppc-dmf-types.c
A clang/test/CodeGen/PowerPC/ppc-future-mma-builtin-err.c
M clang/test/CodeGen/builtin_vectorelements.c
M clang/test/CodeGenCXX/cxx11-thread-local-reference.cpp
M clang/test/CodeGenCXX/ppc-mangle-mma-types.cpp
M clang/test/CodeGenHLSL/builtins/firstbithigh.hlsl
M clang/test/CodeGenHLSL/builtins/firstbitlow.hlsl
R clang/test/CodeGenHLSL/inline-spirv/SpirvType.alignment.hlsl
R clang/test/CodeGenHLSL/inline-spirv/SpirvType.hlsl
M clang/test/CodeGenHLSL/semantics/SV_Position.ps.hlsl
A clang/test/CodeGenHLSL/vk-features/SpirvType.alignment.hlsl
A clang/test/CodeGenHLSL/vk-features/SpirvType.hlsl
A clang/test/CodeGenHLSL/vk-features/vk.spec-constant.hlsl
M clang/test/CodeGenOpenCL/amdgpu-features.cl
A clang/test/Driver/Inputs/basic_managarm_tree/lib/aarch64-managarm-mlibc/.keep
A clang/test/Driver/Inputs/basic_managarm_tree/lib/riscv64-managarm-mlibc/.keep
A clang/test/Driver/Inputs/basic_managarm_tree/lib/x86_64-managarm-mlibc/.keep
A clang/test/Driver/Inputs/basic_managarm_tree/lib64/aarch64-managarm-mlibc/.keep
A clang/test/Driver/Inputs/basic_managarm_tree/lib64/riscv64-managarm-mlibc/.keep
A clang/test/Driver/Inputs/basic_managarm_tree/lib64/x86_64-managarm-mlibc/.keep
A clang/test/Driver/Inputs/basic_managarm_tree/usr/include/aarch64-managarm-mlibc/c++/10/.keep
A clang/test/Driver/Inputs/basic_managarm_tree/usr/include/c++/10/.keep
A clang/test/Driver/Inputs/basic_managarm_tree/usr/include/c++/v1/.keep
A clang/test/Driver/Inputs/basic_managarm_tree/usr/include/riscv64-managarm-mlibc/c++/10/.keep
A clang/test/Driver/Inputs/basic_managarm_tree/usr/include/x86_64-managarm-mlibc/c++/10/.keep
A clang/test/Driver/Inputs/basic_managarm_tree/usr/lib/aarch64-managarm-mlibc/.keep
A clang/test/Driver/Inputs/basic_managarm_tree/usr/lib/gcc/aarch64-managarm-mlibc/10/crtbegin.o
A clang/test/Driver/Inputs/basic_managarm_tree/usr/lib/gcc/aarch64-managarm-mlibc/10/crtbeginS.o
A clang/test/Driver/Inputs/basic_managarm_tree/usr/lib/gcc/aarch64-managarm-mlibc/10/crtbeginT.o
A clang/test/Driver/Inputs/basic_managarm_tree/usr/lib/gcc/riscv64-managarm-mlibc/10/crtbegin.o
A clang/test/Driver/Inputs/basic_managarm_tree/usr/lib/gcc/riscv64-managarm-mlibc/10/crtbeginS.o
A clang/test/Driver/Inputs/basic_managarm_tree/usr/lib/gcc/riscv64-managarm-mlibc/10/crtbeginT.o
A clang/test/Driver/Inputs/basic_managarm_tree/usr/lib/gcc/x86_64-managarm-mlibc/10/crtbegin.o
A clang/test/Driver/Inputs/basic_managarm_tree/usr/lib/gcc/x86_64-managarm-mlibc/10/crtbeginS.o
A clang/test/Driver/Inputs/basic_managarm_tree/usr/lib/gcc/x86_64-managarm-mlibc/10/crtbeginT.o
A clang/test/Driver/Inputs/basic_managarm_tree/usr/lib/riscv64-managarm-mlibc/.keep
A clang/test/Driver/Inputs/basic_managarm_tree/usr/lib/x86_64-managarm-mlibc/.keep
A clang/test/Driver/Inputs/basic_managarm_tree/usr/lib64/.keep
M clang/test/Driver/aix-shared-lib-tls-model-opt.c
M clang/test/Driver/aix-small-local-exec-dynamic-tls.c
M clang/test/Driver/amdgpu-macros.cl
M clang/test/Driver/amdgpu-mcpu.cl
M clang/test/Driver/android-link.cpp
M clang/test/Driver/extend-variable-liveness.c
M clang/test/Driver/fveclib.c
M clang/test/Driver/hip-runtime-libs-linux.hip
M clang/test/Driver/hip-thinlto.hip
A clang/test/Driver/ignored-pch.cpp
A clang/test/Driver/managarm.cpp
M clang/test/Driver/openmp-offload-gpu.c
M clang/test/Driver/ppc-crbits.cpp
M clang/test/Driver/ppc-isa-features.cpp
M clang/test/Driver/print-supported-extensions-riscv.c
A clang/test/Driver/spirv-amd-toolchain.c
M clang/test/ExtractAPI/objc_instancetype.m
M clang/test/Misc/loop-opt-setup.c
M clang/test/Misc/target-invalid-cpu-note/amdgcn.c
M clang/test/Misc/target-invalid-cpu-note/nvptx.c
A clang/test/Modules/pr144230.cppm
A clang/test/Modules/preferred_name_header_unit.cpp
A clang/test/PCH/Inputs/ignored-pch.h
A clang/test/PCH/ignored-pch.c
M clang/test/Preprocessor/init.c
M clang/test/Preprocessor/predefined-arch-macros.c
M clang/test/Preprocessor/predefined-macros-no-warnings.c
M clang/test/Preprocessor/riscv-target-features-andes.c
A clang/test/Sema/gh87867.c
A clang/test/Sema/ppc-dmf-types.c
M clang/test/SemaCXX/builtin-is-constant-evaluated.cpp
M clang/test/SemaCXX/class.cpp
M clang/test/SemaCXX/cxx0x-class.cpp
M clang/test/SemaCXX/cxx2a-consteval.cpp
M clang/test/SemaCXX/exception-spec.cpp
A clang/test/SemaHLSL/vk.spec-constant.error.hlsl
M clang/test/SemaObjCXX/arc-type-conversion.mm
M clang/test/SemaTemplate/concepts-out-of-line-def.cpp
M clang/test/SemaTemplate/instantiate-static-var.cpp
M clang/tools/clang-linker-wrapper/ClangLinkerWrapper.cpp
M clang/utils/TableGen/ClangAttrEmitter.cpp
M clang/utils/TableGen/ClangDiagnosticsEmitter.cpp
M compiler-rt/lib/builtins/CMakeLists.txt
M compiler-rt/lib/fuzzer/tests/CMakeLists.txt
M compiler-rt/lib/lsan/lsan_interceptors.cpp
M compiler-rt/lib/msan/msan_interceptors.cpp
M compiler-rt/lib/sanitizer_common/sanitizer_malloc_mac.inc
M compiler-rt/lib/sanitizer_common/sanitizer_platform_interceptors.h
M compiler-rt/lib/scudo/standalone/chunk.h
M compiler-rt/lib/scudo/standalone/combined.h
M compiler-rt/lib/scudo/standalone/report.cpp
M compiler-rt/lib/scudo/standalone/report.h
M compiler-rt/lib/tsan/rtl/tsan_platform.h
M compiler-rt/lib/tsan/rtl/tsan_rtl_access.cpp
M compiler-rt/test/fuzzer/uncaught-exception.test
A compiler-rt/test/profile/Posix/gcov-file-change-line.cpp
M compiler-rt/test/profile/Posix/gcov-file-change.cpp
A compiler-rt/test/sanitizer_common/TestCases/Linux/free_aligned_sized.c
A compiler-rt/test/sanitizer_common/TestCases/Linux/free_sized.c
M flang/include/flang/Evaluate/tools.h
M flang/include/flang/Optimizer/Dialect/FIROps.td
M flang/include/flang/Parser/dump-parse-tree.h
M flang/include/flang/Parser/parse-tree.h
M flang/include/flang/Semantics/dump-expr.h
M flang/include/flang/Semantics/tools.h
M flang/include/flang/Support/Fortran-features.h
M flang/include/flang/Support/OpenMP-features.h
M flang/lib/Evaluate/tools.cpp
M flang/lib/Frontend/CompilerInvocation.cpp
M flang/lib/Lower/CMakeLists.txt
M flang/lib/Lower/OpenACC.cpp
A flang/lib/Lower/OpenMP/Atomic.cpp
A flang/lib/Lower/OpenMP/Atomic.h
M flang/lib/Lower/OpenMP/ClauseProcessor.cpp
M flang/lib/Lower/OpenMP/ClauseProcessor.h
M flang/lib/Lower/OpenMP/Clauses.cpp
M flang/lib/Lower/OpenMP/DataSharingProcessor.cpp
M flang/lib/Lower/OpenMP/OpenMP.cpp
M flang/lib/Optimizer/Builder/FIRBuilder.cpp
M flang/lib/Optimizer/CodeGen/LowerRepackArrays.cpp
M flang/lib/Optimizer/Dialect/FIROps.cpp
M flang/lib/Optimizer/Transforms/ControlFlowConverter.cpp
M flang/lib/Parser/openmp-parsers.cpp
M flang/lib/Semantics/CMakeLists.txt
M flang/lib/Semantics/check-omp-structure.cpp
M flang/lib/Semantics/check-omp-structure.h
M flang/lib/Semantics/dump-expr.cpp
M flang/lib/Semantics/resolve-directives.cpp
M flang/lib/Semantics/resolve-names.cpp
R flang/lib/Semantics/rewrite-directives.cpp
R flang/lib/Semantics/rewrite-directives.h
M flang/lib/Semantics/rewrite-parse-tree.cpp
M flang/lib/Semantics/tools.cpp
M flang/lib/Support/Fortran-features.cpp
M flang/test/Driver/flang-openmp-version-macro.f90
A flang/test/Fir/cfg-conversion-if.fir
M flang/test/Fir/fir-ops.fir
M flang/test/Fir/invalid.fir
A flang/test/HLFIR/fir-local-alloca-block.fir
A flang/test/Integration/cold_array_repacking.f90
A flang/test/Lower/OpenMP/Todo/declare-mapper-iterator.f90
A flang/test/Lower/OpenMP/Todo/omp-clause-indirect.f90
R flang/test/Lower/OpenMP/Todo/omp-doconcurrent.f90
R flang/test/Lower/OpenMP/Todo/target-parallel-private.f90
R flang/test/Lower/OpenMP/Todo/target-teams-private.f90
A flang/test/Lower/OpenMP/copyprivate5.f90
A flang/test/Lower/OpenMP/ignore-target-data.f90
A flang/test/Lower/OpenMP/requires-admo-acqrel.f90
A flang/test/Lower/OpenMP/requires-admo-invalid1.f90
A flang/test/Lower/OpenMP/requires-admo-invalid2.f90
A flang/test/Lower/OpenMP/target-enter-data-default-openmp52.f90
A flang/test/Lower/OpenMP/target-parallel-private.f90
A flang/test/Lower/OpenMP/target-teams-private.f90
R flang/test/Lower/OpenMP/wsloop-linear.f90
A flang/test/Parser/OpenMP/declare-target-indirect-tree.f90
M flang/test/Semantics/OpenMP/allocate-align01.f90
M flang/test/Semantics/OpenMP/allocate01.f90
M flang/test/Semantics/OpenMP/allocate02.f90
M flang/test/Semantics/OpenMP/allocate03.f90
M flang/test/Semantics/OpenMP/allocate05.f90
M flang/test/Semantics/OpenMP/allocate06.f90
M flang/test/Semantics/OpenMP/allocate09.f90
M flang/test/Semantics/OpenMP/atomic-update-only.f90
M flang/test/Semantics/OpenMP/atomic03.f90
M flang/test/Semantics/OpenMP/atomic04.f90
M flang/test/Semantics/OpenMP/clause-validity01.f90
M flang/test/Semantics/OpenMP/deprecation.f90
A flang/test/Semantics/OpenMP/do-concurrent-collapse.f90
M flang/test/Semantics/OpenMP/flush02.f90
M flang/test/Semantics/OpenMP/nested-barrier.f90
M flang/test/Semantics/OpenMP/nested-master.f90
M flang/test/Semantics/OpenMP/nested-teams.f90
M flang/test/Semantics/OpenMP/ordered-simd.f90
M flang/test/Semantics/OpenMP/parallel-master-goto.f90
M flang/test/Semantics/OpenMP/parallel-sections01.f90
R flang/test/Semantics/OpenMP/requires-atomic01.f90
R flang/test/Semantics/OpenMP/requires-atomic02.f90
A flang/test/Semantics/OpenMP/sections-goto.f90
M flang/test/Semantics/OpenMP/sections02.f90
A flang/test/Semantics/indirect01.f90
A flang/test/Semantics/indirect02.f90
M flang/test/Transforms/lower-repack-arrays.fir
M libc/cmake/modules/LLVMLibCCompileOptionRules.cmake
A libc/config/darwin/aarch64/config.json
M libc/config/darwin/aarch64/entrypoints.txt
M libc/config/darwin/aarch64/headers.txt
M libc/src/__support/FPUtil/FEnvImpl.h
M libc/src/__support/FPUtil/dyadic_float.h
M libc/src/__support/FPUtil/x86_64/FEnvImpl.h
M libc/src/__support/HashTable/CMakeLists.txt
M libc/src/__support/HashTable/randomness.h
M libc/src/__support/OSUtil/linux/CMakeLists.txt
A libc/src/__support/OSUtil/linux/getrandom.h
M libc/src/__support/macros/optimization.h
M libc/src/__support/wchar/character_converter.cpp
M libc/src/__support/wchar/character_converter.h
M libc/src/__support/wchar/mbstate.h
M libc/src/math/generic/log2f.cpp
M libc/src/setjmp/CMakeLists.txt
A libc/src/setjmp/darwin/CMakeLists.txt
A libc/src/setjmp/darwin/sigsetjmp_epilogue.cpp
M libc/src/sys/random/linux/getrandom.cpp
M libc/test/src/CMakeLists.txt
M libc/test/src/__support/CMakeLists.txt
M libc/test/src/__support/wchar/CMakeLists.txt
M libc/test/src/__support/wchar/utf32_to_8_test.cpp
A libc/test/src/__support/wchar/utf8_to_32_test.cpp
M libc/test/src/stdio/CMakeLists.txt
M libc/test/src/stdio/fdopen_test.cpp
M libc/test/src/stdio/fgetc_test.cpp
M libc/test/src/stdio/fgetc_unlocked_test.cpp
M libc/test/src/stdio/fgets_test.cpp
M libc/test/src/stdio/fileop_test.cpp
M libc/test/src/stdio/fopencookie_test.cpp
M libc/test/src/stdio/remove_test.cpp
M libc/test/src/stdio/rename_test.cpp
M libc/test/src/stdio/setvbuf_test.cpp
M libc/test/src/stdio/unlocked_fileop_test.cpp
M libc/test/src/stdlib/StrtolTest.h
M libc/test/src/stdlib/strtold_test.cpp
M libcxx/docs/ABIGuarantees.rst
M libcxx/docs/FeatureTestMacroTable.rst
M libcxx/docs/ReleaseNotes/21.rst
M libcxx/include/__algorithm/for_each.h
M libcxx/include/__algorithm/for_each_n.h
M libcxx/include/__algorithm/ranges_for_each.h
M libcxx/include/__algorithm/ranges_for_each_n.h
M libcxx/include/__iterator/iterator_traits.h
M libcxx/include/__math/abs.h
M libcxx/include/__memory/pointer_traits.h
M libcxx/include/experimental/iterator
M libcxx/include/forward_list
M libcxx/include/fstream
M libcxx/include/list
M libcxx/include/math.h
M libcxx/include/mutex
M libcxx/include/shared_mutex
M libcxx/include/stdlib.h
M libcxx/include/streambuf
M libcxx/include/version
M libcxx/test/benchmarks/algorithms/nonmodifying/for_each.bench.cpp
M libcxx/test/benchmarks/algorithms/nonmodifying/for_each_n.bench.cpp
M libcxx/test/libcxx/depr/exception.unexpected/unexpected_disabled_cpp17.verify.cpp
M libcxx/test/libcxx/odr_signature.exceptions.sh.cpp
M libcxx/test/libcxx/odr_signature.hardening.sh.cpp
M libcxx/test/std/algorithms/alg.nonmodifying/alg.foreach/ranges.for_each.pass.cpp
M libcxx/test/std/algorithms/alg.nonmodifying/alg.foreach/ranges.for_each_n.pass.cpp
M libcxx/test/std/containers/sequences/list/compare.pass.cpp
M libcxx/test/std/containers/sequences/list/compare.three_way.pass.cpp
M libcxx/test/std/containers/sequences/list/get_allocator.pass.cpp
M libcxx/test/std/containers/sequences/list/incomplete_type.pass.cpp
M libcxx/test/std/containers/sequences/list/iterators.pass.cpp
M libcxx/test/std/containers/sequences/list/list.capacity/empty.pass.cpp
M libcxx/test/std/containers/sequences/list/list.capacity/max_size.pass.cpp
M libcxx/test/std/containers/sequences/list/list.capacity/resize_size.pass.cpp
M libcxx/test/std/containers/sequences/list/list.capacity/resize_size_value.pass.cpp
M libcxx/test/std/containers/sequences/list/list.capacity/size.pass.cpp
M libcxx/test/std/containers/sequences/list/list.cons/assign_copy.pass.cpp
M libcxx/test/std/containers/sequences/list/list.cons/assign_initializer_list.pass.cpp
M libcxx/test/std/containers/sequences/list/list.cons/assign_move.pass.cpp
M libcxx/test/std/containers/sequences/list/list.cons/copy.pass.cpp
M libcxx/test/std/containers/sequences/list/list.cons/copy_alloc.pass.cpp
M libcxx/test/std/containers/sequences/list/list.cons/default.pass.cpp
M libcxx/test/std/containers/sequences/list/list.cons/default_stack_alloc.pass.cpp
M libcxx/test/std/containers/sequences/list/list.cons/from_range.pass.cpp
M libcxx/test/std/containers/sequences/list/list.cons/initializer_list.pass.cpp
M libcxx/test/std/containers/sequences/list/list.cons/initializer_list_alloc.pass.cpp
M libcxx/test/std/containers/sequences/list/list.cons/input_iterator.pass.cpp
M libcxx/test/std/containers/sequences/list/list.cons/move.pass.cpp
M libcxx/test/std/containers/sequences/list/list.cons/move_alloc.pass.cpp
M libcxx/test/std/containers/sequences/list/list.cons/op_equal_initializer_list.pass.cpp
M libcxx/test/std/containers/sequences/list/list.cons/size_type.pass.cpp
M libcxx/test/std/containers/sequences/list/list.cons/size_value_alloc.pass.cpp
M libcxx/test/std/containers/sequences/list/list.erasure/erase.pass.cpp
M libcxx/test/std/containers/sequences/list/list.erasure/erase_if.pass.cpp
M libcxx/test/std/containers/sequences/list/list.modifiers/append_range.pass.cpp
M libcxx/test/std/containers/sequences/list/list.modifiers/assign_range.pass.cpp
M libcxx/test/std/containers/sequences/list/list.modifiers/clear.pass.cpp
M libcxx/test/std/containers/sequences/list/list.modifiers/emplace.pass.cpp
M libcxx/test/std/containers/sequences/list/list.modifiers/emplace_back.pass.cpp
M libcxx/test/std/containers/sequences/list/list.modifiers/emplace_front.pass.cpp
M libcxx/test/std/containers/sequences/list/list.modifiers/erase_iter.pass.cpp
M libcxx/test/std/containers/sequences/list/list.modifiers/erase_iter_iter.pass.cpp
M libcxx/test/std/containers/sequences/list/list.modifiers/insert_iter_initializer_list.pass.cpp
M libcxx/test/std/containers/sequences/list/list.modifiers/insert_iter_iter_iter.pass.cpp
M libcxx/test/std/containers/sequences/list/list.modifiers/insert_iter_rvalue.pass.cpp
M libcxx/test/std/containers/sequences/list/list.modifiers/insert_iter_size_value.pass.cpp
M libcxx/test/std/containers/sequences/list/list.modifiers/insert_iter_value.pass.cpp
M libcxx/test/std/containers/sequences/list/list.modifiers/insert_range.pass.cpp
M libcxx/test/std/containers/sequences/list/list.modifiers/pop_back.pass.cpp
M libcxx/test/std/containers/sequences/list/list.modifiers/pop_front.pass.cpp
M libcxx/test/std/containers/sequences/list/list.modifiers/prepend_range.pass.cpp
M libcxx/test/std/containers/sequences/list/list.modifiers/push_back.pass.cpp
M libcxx/test/std/containers/sequences/list/list.modifiers/push_back_rvalue.pass.cpp
M libcxx/test/std/containers/sequences/list/list.modifiers/push_front.pass.cpp
M libcxx/test/std/containers/sequences/list/list.modifiers/push_front_rvalue.pass.cpp
M libcxx/test/std/containers/sequences/list/list.ops/merge.pass.cpp
M libcxx/test/std/containers/sequences/list/list.ops/merge_comp.pass.cpp
M libcxx/test/std/containers/sequences/list/list.ops/remove.pass.cpp
M libcxx/test/std/containers/sequences/list/list.ops/remove_if.pass.cpp
M libcxx/test/std/containers/sequences/list/list.ops/reverse.pass.cpp
M libcxx/test/std/containers/sequences/list/list.ops/sort.pass.cpp
M libcxx/test/std/containers/sequences/list/list.ops/sort_comp.pass.cpp
M libcxx/test/std/containers/sequences/list/list.ops/splice_pos_list.pass.cpp
M libcxx/test/std/containers/sequences/list/list.ops/splice_pos_list_iter.pass.cpp
M libcxx/test/std/containers/sequences/list/list.ops/splice_pos_list_iter_iter.pass.cpp
M libcxx/test/std/containers/sequences/list/list.ops/unique.pass.cpp
M libcxx/test/std/containers/sequences/list/list.ops/unique_pred.pass.cpp
M libcxx/test/std/containers/sequences/list/list.special/swap.pass.cpp
M libcxx/test/std/containers/sequences/list/list.special/swap_noexcept.pass.cpp
M libcxx/test/std/input.output/stream.buffers/streambuf/streambuf.protected/streambuf.get.area/setg.assert.pass.cpp
M libcxx/test/std/input.output/stream.buffers/streambuf/streambuf.protected/streambuf.put.area/setp.assert.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/expected.version.compile.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/list.version.compile.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/optional.version.compile.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/tuple.version.compile.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/utility.version.compile.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/variant.version.compile.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/version.version.compile.pass.cpp
M libcxx/test/std/numerics/c.math/abs.pass.cpp
M libcxx/test/std/numerics/c.math/abs.verify.cpp
M libcxx/test/std/utilities/format/format.functions/escaped_output.unicode.pass.cpp
M libcxx/test/std/utilities/format/format.functions/fill.unicode.pass.cpp
M libcxx/test/support/min_allocator.h
M libcxx/utils/generate_feature_test_macro_components.py
M lld/ELF/Thunks.cpp
M lld/MachO/DriverUtils.cpp
M lld/test/ELF/aarch64-thunk-bti-multipass.s
M lld/test/ELF/lto/aarch64-pac-got-func.ll
A lld/test/MachO/reexport-with-symlink.s
M lldb/cmake/modules/FindPythonAndSwig.cmake
M lldb/cmake/modules/LLDBConfig.cmake
M lldb/examples/python/crashlog.py
M lldb/include/lldb/Core/Debugger.h
M lldb/include/lldb/Core/DemangledNameInfo.h
M lldb/include/lldb/Core/PluginManager.h
A lldb/include/lldb/Core/ProtocolServer.h
M lldb/include/lldb/Host/Socket.h
M lldb/include/lldb/Interpreter/CommandOptionArgumentTable.h
M lldb/include/lldb/lldb-enumerations.h
M lldb/include/lldb/lldb-forward.h
M lldb/include/lldb/lldb-private-interfaces.h
M lldb/packages/Python/lldbsuite/test/tools/lldb-dap/dap_server.py
M lldb/source/Breakpoint/Breakpoint.cpp
M lldb/source/Commands/CMakeLists.txt
A lldb/source/Commands/CommandObjectProtocolServer.cpp
A lldb/source/Commands/CommandObjectProtocolServer.h
M lldb/source/Core/CMakeLists.txt
M lldb/source/Core/CoreProperties.td
M lldb/source/Core/Debugger.cpp
M lldb/source/Core/DynamicLoader.cpp
M lldb/source/Core/PluginManager.cpp
A lldb/source/Core/ProtocolServer.cpp
M lldb/source/Host/common/Socket.cpp
M lldb/source/Interpreter/CommandInterpreter.cpp
M lldb/source/Plugins/CMakeLists.txt
M lldb/source/Plugins/ExpressionParser/Clang/IRDynamicChecks.cpp
M lldb/source/Plugins/ExpressionParser/Clang/IRDynamicChecks.h
M lldb/source/Plugins/Language/CPlusPlus/CxxStringTypes.cpp
M lldb/source/Plugins/Language/CPlusPlus/CxxStringTypes.h
M lldb/source/Plugins/Language/CPlusPlus/LibCxx.cpp
M lldb/source/Plugins/Language/CPlusPlus/LibCxxUnorderedMap.cpp
M lldb/source/Plugins/ObjectFile/XCOFF/ObjectFileXCOFF.cpp
M lldb/source/Plugins/Process/AIX/CMakeLists.txt
A lldb/source/Plugins/Process/AIX/NativeRegisterContextAIX.cpp
A lldb/source/Plugins/Process/AIX/NativeRegisterContextAIX.h
M lldb/source/Plugins/Process/Utility/RegisterInfoPOSIX_arm64.cpp
M lldb/source/Plugins/Process/minidump/MinidumpParser.cpp
M lldb/source/Plugins/Process/minidump/MinidumpParser.h
A lldb/source/Plugins/Protocol/CMakeLists.txt
A lldb/source/Plugins/Protocol/MCP/CMakeLists.txt
A lldb/source/Plugins/Protocol/MCP/MCPError.cpp
A lldb/source/Plugins/Protocol/MCP/MCPError.h
A lldb/source/Plugins/Protocol/MCP/Protocol.cpp
A lldb/source/Plugins/Protocol/MCP/Protocol.h
A lldb/source/Plugins/Protocol/MCP/ProtocolServerMCP.cpp
A lldb/source/Plugins/Protocol/MCP/ProtocolServerMCP.h
A lldb/source/Plugins/Protocol/MCP/Tool.cpp
A lldb/source/Plugins/Protocol/MCP/Tool.h
M lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp
M lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.h
M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp
M lldb/source/ValueObject/DILParser.cpp
M lldb/test/API/commands/frame/var-dil/basics/ArraySubscript/TestFrameVarDILArraySubscript.py
M lldb/test/API/commands/frame/var-dil/basics/ArraySubscript/main.cpp
A lldb/test/API/commands/plugin/TestPlugin.py
M lldb/test/API/commands/register/register/aarch64_mte_ctrl_register/TestMTECtrlRegister.py
M lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx/string/TestDataFormatterLibcxxString.py
M lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx/string_view/TestDataFormatterLibcxxStringView.py
M lldb/test/API/lit.cfg.py
M lldb/test/API/lit.site.cfg.py.in
M lldb/test/API/python_api/watchpoint/watchlocation/TestTargetWatchAddress.py
A lldb/test/API/terminal/TestDisabledBreakpoints.py
M lldb/test/API/tools/lldb-dap/breakpoint/TestDAP_setExceptionBreakpoints.py
M lldb/test/API/tools/lldb-dap/exception/objc/Makefile
M lldb/test/API/tools/lldb-dap/exception/objc/TestDAP_exception_objc.py
M lldb/test/API/tools/lldb-dap/exception/objc/main.m
M lldb/test/API/tools/lldb-dap/memory/TestDAP_memory.py
M lldb/test/API/tools/lldb-dap/save-core/TestDAP_save_core.py
M lldb/test/API/tools/lldb-dap/server/TestDAP_server.py
M lldb/test/Shell/Commands/command-plugin-list.test
A lldb/test/Shell/ObjectFile/XCOFF/symbol-info.yaml
A lldb/test/Shell/ObjectFile/XCOFF/symbol-info32.yaml
M lldb/test/Shell/ScriptInterpreter/Python/Crashlog/altered_threadState.test
M lldb/test/Shell/ScriptInterpreter/Python/Crashlog/json.test
M lldb/test/Shell/ScriptInterpreter/Python/Crashlog/no_threadState.test
M lldb/test/Shell/ScriptInterpreter/Python/Crashlog/skipped_status_interactive_crashlog.test
M lldb/test/Shell/ScriptInterpreter/Python/Crashlog/text.test
M lldb/test/Shell/SymbolFile/DWARF/x86/explicit-member-function-quals.cpp
M lldb/test/Shell/lit.cfg.py
M lldb/tools/lldb-dap/DAP.cpp
M lldb/tools/lldb-dap/DAP.h
M lldb/tools/lldb-dap/ExceptionBreakpoint.cpp
M lldb/tools/lldb-dap/ExceptionBreakpoint.h
M lldb/tools/lldb-dap/Handler/InitializeRequestHandler.cpp
M lldb/tools/lldb-dap/Handler/ReadMemoryRequestHandler.cpp
M lldb/tools/lldb-dap/Handler/RequestHandler.h
M lldb/tools/lldb-dap/Handler/SetExceptionBreakpointsRequestHandler.cpp
M lldb/tools/lldb-dap/JSONUtils.cpp
M lldb/tools/lldb-dap/JSONUtils.h
M lldb/tools/lldb-dap/Options.td
M lldb/tools/lldb-dap/Protocol/ProtocolRequests.cpp
M lldb/tools/lldb-dap/Protocol/ProtocolRequests.h
M lldb/tools/lldb-dap/Protocol/ProtocolTypes.cpp
M lldb/tools/lldb-dap/Protocol/ProtocolTypes.h
M lldb/tools/lldb-dap/ProtocolUtils.cpp
M lldb/tools/lldb-dap/ProtocolUtils.h
M lldb/tools/lldb-dap/src-ts/lldb-dap-server.ts
M lldb/tools/lldb-dap/tool/lldb-dap.cpp
M lldb/unittests/CMakeLists.txt
M lldb/unittests/Core/MangledTest.cpp
M lldb/unittests/DAP/ProtocolTypesTest.cpp
A lldb/unittests/Protocol/CMakeLists.txt
A lldb/unittests/Protocol/ProtocolMCPServerTest.cpp
A lldb/unittests/Protocol/ProtocolMCPTest.cpp
M lldb/unittests/SymbolFile/DWARF/DWARFASTParserClangTests.cpp
M lldb/unittests/TestingSupport/TestUtilities.h
M llvm/cmake/config-ix.cmake
M llvm/cmake/modules/AddLLVM.cmake
M llvm/cmake/modules/HandleLLVMOptions.cmake
M llvm/docs/AMDGPUUsage.rst
M llvm/docs/CommandGuide/llvm-opt-report.rst
M llvm/docs/NVPTXUsage.rst
M llvm/docs/RISCVUsage.rst
M llvm/docs/ReleaseNotes.md
M llvm/docs/Remarks.rst
M llvm/docs/TableGen/ProgRef.rst
M llvm/include/llvm-c/ExecutionEngine.h
M llvm/include/llvm/ADT/PointerIntPair.h
M llvm/include/llvm/Analysis/HashRecognize.h
M llvm/include/llvm/Analysis/IRSimilarityIdentifier.h
M llvm/include/llvm/Analysis/PtrUseVisitor.h
M llvm/include/llvm/Analysis/TargetTransformInfo.h
M llvm/include/llvm/Analysis/TargetTransformInfoImpl.h
M llvm/include/llvm/Analysis/VecFuncs.def
M llvm/include/llvm/BinaryFormat/DXContainer.h
M llvm/include/llvm/BinaryFormat/DXContainerConstants.def
M llvm/include/llvm/BinaryFormat/Dwarf.h
M llvm/include/llvm/BinaryFormat/ELF.h
M llvm/include/llvm/BinaryFormat/ELFRelocs/RISCV_nonstandard.def
M llvm/include/llvm/CodeGen/BasicTTIImpl.h
M llvm/include/llvm/CodeGen/FunctionLoweringInfo.h
M llvm/include/llvm/CodeGen/GlobalISel/LegalizationArtifactCombiner.h
M llvm/include/llvm/CodeGen/SDPatternMatch.h
M llvm/include/llvm/CodeGen/TargetLowering.h
M llvm/include/llvm/Config/config.h.cmake
A llvm/include/llvm/DebugInfo/DWARF/DWARFCFIPrinter.h
M llvm/include/llvm/DebugInfo/DWARF/DWARFCFIProgram.h
M llvm/include/llvm/DebugInfo/LogicalView/Core/LVElement.h
M llvm/include/llvm/DebugInfo/LogicalView/Core/LVScope.h
M llvm/include/llvm/DebugInfo/LogicalView/Core/LVSupport.h
M llvm/include/llvm/Frontend/HLSL/HLSLRootSignature.h
M llvm/include/llvm/Frontend/HLSL/HLSLRootSignatureUtils.h
M llvm/include/llvm/Frontend/OpenMP/ClauseT.h
M llvm/include/llvm/Frontend/OpenMP/OMP.td
M llvm/include/llvm/IR/IRBuilder.h
M llvm/include/llvm/IR/InstVisitor.h
M llvm/include/llvm/IR/IntrinsicInst.h
M llvm/include/llvm/IR/IntrinsicsNVVM.td
M llvm/include/llvm/IR/PatternMatch.h
M llvm/include/llvm/IR/RuntimeLibcalls.h
M llvm/include/llvm/MC/MCAsmInfo.h
M llvm/include/llvm/MC/MCExpr.h
M llvm/include/llvm/MC/MCTargetOptions.h
M llvm/include/llvm/Object/ELF.h
M llvm/include/llvm/Option/OptSpecifier.h
M llvm/include/llvm/ProfileData/GCOV.h
M llvm/include/llvm/ProfileData/MemProfReader.h
M llvm/include/llvm/Remarks/RemarkFormat.h
M llvm/include/llvm/Remarks/RemarkLinker.h
M llvm/include/llvm/Remarks/RemarkParser.h
M llvm/include/llvm/Remarks/YAMLRemarkSerializer.h
M llvm/include/llvm/Support/CodeGen.h
M llvm/include/llvm/Target/CGPassBuilderOption.h
M llvm/include/llvm/Target/TargetLoweringObjectFile.h
M llvm/include/llvm/Target/TargetMachine.h
M llvm/include/llvm/Target/TargetOptions.h
M llvm/include/llvm/TargetParser/CMakeLists.txt
M llvm/include/llvm/TargetParser/PPCTargetParser.h
M llvm/include/llvm/TargetParser/SubtargetFeature.h
M llvm/include/llvm/TargetParser/TargetParser.h
M llvm/include/llvm/Transforms/IPO.h
M llvm/include/llvm/Transforms/IPO/Attributor.h
M llvm/include/llvm/Transforms/Scalar/GVN.h
M llvm/include/llvm/Transforms/Scalar/JumpThreading.h
M llvm/include/llvm/Transforms/Utils/Local.h
M llvm/include/llvm/Transforms/Utils/PromoteMemToReg.h
M llvm/include/llvm/Transforms/Utils/SCCPSolver.h
M llvm/lib/Analysis/AliasSetTracker.cpp
M llvm/lib/Analysis/CallGraph.cpp
M llvm/lib/Analysis/ConstantFolding.cpp
M llvm/lib/Analysis/DemandedBits.cpp
M llvm/lib/Analysis/HashRecognize.cpp
M llvm/lib/Analysis/IR2Vec.cpp
M llvm/lib/Analysis/Loads.cpp
M llvm/lib/Analysis/LoopAccessAnalysis.cpp
M llvm/lib/Analysis/MemoryDependenceAnalysis.cpp
M llvm/lib/Analysis/MemoryLocation.cpp
M llvm/lib/Analysis/ScalarEvolution.cpp
M llvm/lib/Analysis/TargetLibraryInfo.cpp
M llvm/lib/Analysis/TargetTransformInfo.cpp
M llvm/lib/Analysis/ValueTracking.cpp
M llvm/lib/BinaryFormat/Dwarf.cpp
M llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
M llvm/lib/CodeGen/CodeGenPrepare.cpp
M llvm/lib/CodeGen/ComplexDeinterleavingPass.cpp
M llvm/lib/CodeGen/GlobalISel/InlineAsmLowering.cpp
M llvm/lib/CodeGen/MachineBlockPlacement.cpp
M llvm/lib/CodeGen/MachineFunction.cpp
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
M llvm/lib/CodeGen/SelectionDAG/FastISel.cpp
M llvm/lib/CodeGen/SelectionDAG/FunctionLoweringInfo.cpp
M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorOps.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.h
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp
M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
M llvm/lib/CodeGen/TargetLoweringBase.cpp
M llvm/lib/DebugInfo/DWARF/CMakeLists.txt
A llvm/lib/DebugInfo/DWARF/DWARFCFIPrinter.cpp
M llvm/lib/DebugInfo/DWARF/DWARFCFIProgram.cpp
M llvm/lib/DebugInfo/DWARF/DWARFDebugFrame.cpp
M llvm/lib/ExecutionEngine/JITLink/COFFDirectiveParser.cpp
M llvm/lib/ExecutionEngine/Orc/UnwindInfoRegistrationPlugin.cpp
M llvm/lib/Frontend/HLSL/HLSLRootSignatureUtils.cpp
M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
M llvm/lib/IR/DebugInfo.cpp
M llvm/lib/IR/DiagnosticInfo.cpp
M llvm/lib/IR/IRBuilder.cpp
M llvm/lib/IR/IntrinsicInst.cpp
M llvm/lib/IR/RuntimeLibcalls.cpp
M llvm/lib/IR/Verifier.cpp
M llvm/lib/Linker/IRMover.cpp
M llvm/lib/MC/MCAsmInfo.cpp
M llvm/lib/MC/MCExpr.cpp
M llvm/lib/Object/ELFObjectFile.cpp
M llvm/lib/Object/IRSymtab.cpp
M llvm/lib/ObjectYAML/ELFYAML.cpp
M llvm/lib/Passes/PassRegistry.def
M llvm/lib/ProfileData/GCOV.cpp
M llvm/lib/Remarks/BitstreamRemarkParser.cpp
M llvm/lib/Remarks/BitstreamRemarkParser.h
M llvm/lib/Remarks/RemarkFormat.cpp
M llvm/lib/Remarks/RemarkLinker.cpp
M llvm/lib/Remarks/RemarkParser.cpp
M llvm/lib/Remarks/RemarkSerializer.cpp
M llvm/lib/Remarks/RemarkStreamer.cpp
M llvm/lib/Remarks/YAMLRemarkParser.cpp
M llvm/lib/Remarks/YAMLRemarkParser.h
M llvm/lib/Remarks/YAMLRemarkSerializer.cpp
M llvm/lib/Support/BLAKE3/CMakeLists.txt
M llvm/lib/Support/Unix/Process.inc
M llvm/lib/Target/AArch64/AArch64.td
M llvm/lib/Target/AArch64/AArch64AsmPrinter.cpp
M llvm/lib/Target/AArch64/AArch64FrameLowering.cpp
M llvm/lib/Target/AArch64/AArch64ISelDAGToDAG.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/AArch64/AArch64InstrInfo.td
M llvm/lib/Target/AArch64/AArch64Processors.td
A llvm/lib/Target/AArch64/AArch64SchedA320.td
M llvm/lib/Target/AArch64/AArch64StackTagging.cpp
M llvm/lib/Target/AArch64/AArch64Subtarget.cpp
M llvm/lib/Target/AArch64/AArch64TargetMachine.cpp
M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.h
M llvm/lib/Target/AArch64/AsmParser/AArch64AsmParser.cpp
M llvm/lib/Target/AArch64/Disassembler/AArch64Disassembler.cpp
M llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCTargetDesc.cpp
M llvm/lib/Target/AArch64/TargetInfo/AArch64TargetInfo.cpp
M llvm/lib/Target/AMDGPU/AMDGPU.h
M llvm/lib/Target/AMDGPU/AMDGPU.td
M llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.cpp
M llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp
M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp
M llvm/lib/Target/AMDGPU/AMDGPUInstCombineIntrinsic.cpp
M llvm/lib/Target/AMDGPU/AMDGPUInstrInfo.cpp
M llvm/lib/Target/AMDGPU/AMDGPUInstrInfo.h
M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
M llvm/lib/Target/AMDGPU/AMDGPUInstructions.td
M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
M llvm/lib/Target/AMDGPU/AMDGPUPromoteAlloca.cpp
M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeHelper.cpp
M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeRules.cpp
M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeRules.h
M llvm/lib/Target/AMDGPU/AMDGPURegisterBankInfo.cpp
M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
M llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.cpp
M llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.h
M llvm/lib/Target/AMDGPU/AMDGPUUnifyMetadata.cpp
M llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
M llvm/lib/Target/AMDGPU/Disassembler/AMDGPUDisassembler.cpp
M llvm/lib/Target/AMDGPU/GCNProcessors.td
M llvm/lib/Target/AMDGPU/GCNRegPressure.cpp
M llvm/lib/Target/AMDGPU/GCNSubtarget.h
M llvm/lib/Target/AMDGPU/MCA/AMDGPUCustomBehaviour.cpp
M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCTargetDesc.cpp
M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUTargetStreamer.cpp
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
M llvm/lib/Target/AMDGPU/SIISelLowering.h
M llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp
M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
M llvm/lib/Target/AMDGPU/SIInstrInfo.td
M llvm/lib/Target/AMDGPU/SIInstructions.td
M llvm/lib/Target/AMDGPU/SOPInstructions.td
M llvm/lib/Target/AMDGPU/TargetInfo/AMDGPUTargetInfo.cpp
M llvm/lib/Target/AMDGPU/VOP1Instructions.td
M llvm/lib/Target/AMDGPU/VOP3Instructions.td
M llvm/lib/Target/AMDGPU/VOPInstructions.td
M llvm/lib/Target/ARM/ARMAsmPrinter.cpp
M llvm/lib/Target/ARM/ARMAsmPrinter.h
M llvm/lib/Target/ARM/ARMFastISel.cpp
M llvm/lib/Target/ARM/ARMISelLowering.cpp
M llvm/lib/Target/ARM/ARMISelLowering.h
M llvm/lib/Target/ARM/ARMSubtarget.cpp
M llvm/lib/Target/ARM/ARMSubtarget.h
M llvm/lib/Target/ARM/ARMTargetMachine.cpp
M llvm/lib/Target/ARM/ARMTargetMachine.h
M llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
M llvm/lib/Target/ARM/Disassembler/ARMDisassembler.cpp
M llvm/lib/Target/ARM/MCTargetDesc/ARMMCTargetDesc.cpp
M llvm/lib/Target/ARM/TargetInfo/ARMTargetInfo.cpp
M llvm/lib/Target/AVR/AVRAsmPrinter.cpp
M llvm/lib/Target/AVR/AVRTargetMachine.cpp
M llvm/lib/Target/AVR/AsmParser/AVRAsmParser.cpp
M llvm/lib/Target/AVR/Disassembler/AVRDisassembler.cpp
M llvm/lib/Target/AVR/MCTargetDesc/AVRMCAsmInfo.cpp
M llvm/lib/Target/AVR/MCTargetDesc/AVRMCAsmInfo.h
M llvm/lib/Target/AVR/MCTargetDesc/AVRMCExpr.cpp
M llvm/lib/Target/AVR/MCTargetDesc/AVRMCExpr.h
M llvm/lib/Target/AVR/MCTargetDesc/AVRMCTargetDesc.cpp
M llvm/lib/Target/AVR/TargetInfo/AVRTargetInfo.cpp
M llvm/lib/Target/BPF/AsmParser/BPFAsmParser.cpp
M llvm/lib/Target/BPF/BPFAsmPrinter.cpp
M llvm/lib/Target/BPF/BPFPreserveStaticOffset.cpp
M llvm/lib/Target/BPF/BPFTargetMachine.cpp
M llvm/lib/Target/BPF/BTFDebug.cpp
M llvm/lib/Target/BPF/Disassembler/BPFDisassembler.cpp
M llvm/lib/Target/BPF/MCTargetDesc/BPFMCTargetDesc.cpp
M llvm/lib/Target/BPF/TargetInfo/BPFTargetInfo.cpp
M llvm/lib/Target/DirectX/DXILPrepare.cpp
M llvm/lib/Target/DirectX/DXILRootSignature.cpp
M llvm/lib/Target/Hexagon/AsmParser/HexagonAsmParser.cpp
M llvm/lib/Target/Hexagon/Disassembler/HexagonDisassembler.cpp
M llvm/lib/Target/Hexagon/HexagonAsmPrinter.cpp
M llvm/lib/Target/Hexagon/HexagonLoopIdiomRecognition.cpp
M llvm/lib/Target/Hexagon/HexagonTargetMachine.cpp
M llvm/lib/Target/Hexagon/MCTargetDesc/HexagonMCTargetDesc.cpp
M llvm/lib/Target/Hexagon/TargetInfo/HexagonTargetInfo.cpp
M llvm/lib/Target/Lanai/AsmParser/LanaiAsmParser.cpp
M llvm/lib/Target/Lanai/Disassembler/LanaiDisassembler.cpp
M llvm/lib/Target/Lanai/LanaiAsmPrinter.cpp
M llvm/lib/Target/Lanai/LanaiTargetMachine.cpp
M llvm/lib/Target/Lanai/MCTargetDesc/LanaiMCTargetDesc.cpp
M llvm/lib/Target/Lanai/TargetInfo/LanaiTargetInfo.cpp
M llvm/lib/Target/LoongArch/AsmParser/LoongArchAsmParser.cpp
M llvm/lib/Target/LoongArch/Disassembler/LoongArchDisassembler.cpp
M llvm/lib/Target/LoongArch/LoongArchAsmPrinter.cpp
M llvm/lib/Target/LoongArch/LoongArchTargetMachine.cpp
M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchAsmBackend.cpp
M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchAsmBackend.h
M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchMCTargetDesc.cpp
M llvm/lib/Target/LoongArch/TargetInfo/LoongArchTargetInfo.cpp
M llvm/lib/Target/MSP430/AsmParser/MSP430AsmParser.cpp
M llvm/lib/Target/MSP430/Disassembler/MSP430Disassembler.cpp
M llvm/lib/Target/MSP430/MCTargetDesc/MSP430MCTargetDesc.cpp
M llvm/lib/Target/MSP430/MSP430AsmPrinter.cpp
M llvm/lib/Target/MSP430/MSP430TargetMachine.cpp
M llvm/lib/Target/MSP430/TargetInfo/MSP430TargetInfo.cpp
M llvm/lib/Target/Mips/AsmParser/MipsAsmParser.cpp
M llvm/lib/Target/Mips/Disassembler/MipsDisassembler.cpp
M llvm/lib/Target/Mips/MCTargetDesc/CMakeLists.txt
M llvm/lib/Target/Mips/MCTargetDesc/MipsELFObjectWriter.cpp
M llvm/lib/Target/Mips/MCTargetDesc/MipsMCAsmInfo.cpp
M llvm/lib/Target/Mips/MCTargetDesc/MipsMCAsmInfo.h
M llvm/lib/Target/Mips/MCTargetDesc/MipsMCCodeEmitter.cpp
R llvm/lib/Target/Mips/MCTargetDesc/MipsMCExpr.cpp
R llvm/lib/Target/Mips/MCTargetDesc/MipsMCExpr.h
M llvm/lib/Target/Mips/MCTargetDesc/MipsMCTargetDesc.cpp
M llvm/lib/Target/Mips/MCTargetDesc/MipsTargetStreamer.cpp
M llvm/lib/Target/Mips/MipsAsmPrinter.cpp
M llvm/lib/Target/Mips/MipsMCInstLower.cpp
M llvm/lib/Target/Mips/MipsTargetMachine.cpp
M llvm/lib/Target/Mips/MipsTargetObjectFile.cpp
M llvm/lib/Target/Mips/TargetInfo/MipsTargetInfo.cpp
M llvm/lib/Target/NVPTX/MCTargetDesc/NVPTXMCTargetDesc.cpp
M llvm/lib/Target/NVPTX/NVPTX.td
M llvm/lib/Target/NVPTX/NVPTXAsmPrinter.cpp
M llvm/lib/Target/NVPTX/NVPTXISelDAGToDAG.cpp
M llvm/lib/Target/NVPTX/NVPTXISelDAGToDAG.h
M llvm/lib/Target/NVPTX/NVPTXInstrInfo.td
M llvm/lib/Target/NVPTX/NVPTXIntrinsics.td
M llvm/lib/Target/NVPTX/NVPTXSubtarget.h
M llvm/lib/Target/NVPTX/NVPTXTargetMachine.cpp
M llvm/lib/Target/NVPTX/TargetInfo/NVPTXTargetInfo.cpp
M llvm/lib/Target/PowerPC/AsmParser/PPCAsmParser.cpp
M llvm/lib/Target/PowerPC/Disassembler/PPCDisassembler.cpp
M llvm/lib/Target/PowerPC/MCTargetDesc/PPCMCTargetDesc.cpp
M llvm/lib/Target/PowerPC/PPC.td
M llvm/lib/Target/PowerPC/PPCAsmPrinter.cpp
M llvm/lib/Target/PowerPC/PPCBoolRetToInt.cpp
M llvm/lib/Target/PowerPC/PPCISelLowering.cpp
M llvm/lib/Target/PowerPC/PPCInstrInfo.cpp
M llvm/lib/Target/PowerPC/PPCInstrInfo.h
M llvm/lib/Target/PowerPC/PPCInstrMMA.td
M llvm/lib/Target/PowerPC/PPCRegisterInfo.cpp
M llvm/lib/Target/PowerPC/PPCTargetMachine.cpp
M llvm/lib/Target/PowerPC/PPCTargetTransformInfo.cpp
M llvm/lib/Target/PowerPC/PPCTargetTransformInfo.h
M llvm/lib/Target/PowerPC/TargetInfo/PowerPCTargetInfo.cpp
M llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
M llvm/lib/Target/RISCV/Disassembler/RISCVDisassembler.cpp
M llvm/lib/Target/RISCV/MCA/RISCVCustomBehaviour.cpp
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVAsmBackend.cpp
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVBaseInfo.h
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVELFObjectWriter.cpp
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVFixupKinds.h
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCCodeEmitter.cpp
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCTargetDesc.cpp
M llvm/lib/Target/RISCV/RISCVAsmPrinter.cpp
M llvm/lib/Target/RISCV/RISCVCallingConv.td
M llvm/lib/Target/RISCV/RISCVFeatures.td
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/lib/Target/RISCV/RISCVISelLowering.h
M llvm/lib/Target/RISCV/RISCVInsertVSETVLI.cpp
M llvm/lib/Target/RISCV/RISCVInstrFormats.td
M llvm/lib/Target/RISCV/RISCVInstrInfoXAndes.td
M llvm/lib/Target/RISCV/RISCVInstrInfoXqci.td
M llvm/lib/Target/RISCV/RISCVRegisterInfo.cpp
M llvm/lib/Target/RISCV/RISCVSchedSpacemitX60.td
M llvm/lib/Target/RISCV/RISCVTargetMachine.cpp
M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.h
M llvm/lib/Target/RISCV/RISCVVectorPeephole.cpp
M llvm/lib/Target/RISCV/TargetInfo/RISCVTargetInfo.cpp
M llvm/lib/Target/SPIRV/MCTargetDesc/SPIRVMCTargetDesc.cpp
M llvm/lib/Target/SPIRV/SPIRVAsmPrinter.cpp
M llvm/lib/Target/SPIRV/SPIRVBuiltins.td
M llvm/lib/Target/SPIRV/SPIRVTargetMachine.cpp
M llvm/lib/Target/SPIRV/TargetInfo/SPIRVTargetInfo.cpp
M llvm/lib/Target/Sparc/AsmParser/SparcAsmParser.cpp
M llvm/lib/Target/Sparc/Disassembler/SparcDisassembler.cpp
M llvm/lib/Target/Sparc/MCTargetDesc/SparcELFObjectWriter.cpp
M llvm/lib/Target/Sparc/MCTargetDesc/SparcMCAsmInfo.cpp
M llvm/lib/Target/Sparc/MCTargetDesc/SparcMCAsmInfo.h
M llvm/lib/Target/Sparc/MCTargetDesc/SparcMCCodeEmitter.cpp
M llvm/lib/Target/Sparc/MCTargetDesc/SparcMCExpr.cpp
R llvm/lib/Target/Sparc/MCTargetDesc/SparcMCExpr.h
M llvm/lib/Target/Sparc/MCTargetDesc/SparcMCTargetDesc.cpp
M llvm/lib/Target/Sparc/Sparc.td
M llvm/lib/Target/Sparc/SparcAsmPrinter.cpp
M llvm/lib/Target/Sparc/SparcISelLowering.cpp
M llvm/lib/Target/Sparc/SparcInstrInfo.td
M llvm/lib/Target/Sparc/SparcTargetMachine.cpp
M llvm/lib/Target/Sparc/SparcTargetObjectFile.cpp
M llvm/lib/Target/Sparc/TargetInfo/SparcTargetInfo.cpp
M llvm/lib/Target/SystemZ/AsmParser/SystemZAsmParser.cpp
M llvm/lib/Target/SystemZ/Disassembler/SystemZDisassembler.cpp
M llvm/lib/Target/SystemZ/MCTargetDesc/SystemZMCTargetDesc.cpp
M llvm/lib/Target/SystemZ/SystemZAsmPrinter.cpp
M llvm/lib/Target/SystemZ/SystemZLongBranch.cpp
M llvm/lib/Target/SystemZ/SystemZTargetMachine.cpp
M llvm/lib/Target/SystemZ/TargetInfo/SystemZTargetInfo.cpp
M llvm/lib/Target/VE/AsmParser/VEAsmParser.cpp
M llvm/lib/Target/VE/Disassembler/VEDisassembler.cpp
M llvm/lib/Target/VE/MCTargetDesc/VEMCTargetDesc.cpp
M llvm/lib/Target/VE/TargetInfo/VETargetInfo.cpp
M llvm/lib/Target/VE/VEAsmPrinter.cpp
M llvm/lib/Target/VE/VEISelLowering.cpp
M llvm/lib/Target/VE/VETargetMachine.cpp
M llvm/lib/Target/WebAssembly/AsmParser/WebAssemblyAsmParser.cpp
M llvm/lib/Target/WebAssembly/Disassembler/WebAssemblyDisassembler.cpp
M llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyMCTargetDesc.cpp
M llvm/lib/Target/WebAssembly/TargetInfo/WebAssemblyTargetInfo.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyAsmPrinter.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyRuntimeLibcallSignatures.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyTargetTransformInfo.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyTargetTransformInfo.h
M llvm/lib/Target/X86/X86.td
M llvm/lib/Target/X86/X86AsmPrinter.cpp
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/lib/Target/XCore/Disassembler/XCoreDisassembler.cpp
M llvm/lib/Target/XCore/MCTargetDesc/XCoreMCTargetDesc.cpp
M llvm/lib/Target/XCore/TargetInfo/XCoreTargetInfo.cpp
M llvm/lib/Target/XCore/XCoreAsmPrinter.cpp
M llvm/lib/Target/XCore/XCoreTargetMachine.cpp
M llvm/lib/Target/Xtensa/AsmParser/XtensaAsmParser.cpp
M llvm/lib/Target/Xtensa/Disassembler/XtensaDisassembler.cpp
M llvm/lib/Target/Xtensa/MCTargetDesc/XtensaMCTargetDesc.cpp
M llvm/lib/Target/Xtensa/MCTargetDesc/XtensaMCTargetDesc.h
M llvm/lib/Target/Xtensa/XtensaFeatures.td
M llvm/lib/Target/Xtensa/XtensaInstrInfo.td
M llvm/lib/Target/Xtensa/XtensaRegisterInfo.td
M llvm/lib/Target/Xtensa/XtensaSubtarget.h
M llvm/lib/TargetParser/PPCTargetParser.cpp
M llvm/lib/TargetParser/TargetParser.cpp
M llvm/lib/TargetParser/X86TargetParser.cpp
M llvm/lib/Transforms/AggressiveInstCombine/AggressiveInstCombine.cpp
M llvm/lib/Transforms/IPO/Attributor.cpp
M llvm/lib/Transforms/IPO/AttributorAttributes.cpp
M llvm/lib/Transforms/IPO/ElimAvailExtern.cpp
M llvm/lib/Transforms/IPO/FunctionSpecialization.cpp
M llvm/lib/Transforms/IPO/GlobalOpt.cpp
M llvm/lib/Transforms/IPO/IROutliner.cpp
M llvm/lib/Transforms/IPO/LowerTypeTests.cpp
M llvm/lib/Transforms/IPO/SCCP.cpp
M llvm/lib/Transforms/IPO/SampleProfileProbe.cpp
M llvm/lib/Transforms/IPO/WholeProgramDevirt.cpp
M llvm/lib/Transforms/InstCombine/InstCombineAddSub.cpp
M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
M llvm/lib/Transforms/InstCombine/InstCombineMulDivRem.cpp
M llvm/lib/Transforms/InstCombine/InstCombineNegator.cpp
M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
M llvm/lib/Transforms/Instrumentation/GCOVProfiling.cpp
M llvm/lib/Transforms/Instrumentation/MemorySanitizer.cpp
M llvm/lib/Transforms/Instrumentation/ThreadSanitizer.cpp
M llvm/lib/Transforms/Scalar/ADCE.cpp
M llvm/lib/Transforms/Scalar/GVN.cpp
M llvm/lib/Transforms/Scalar/GVNHoist.cpp
M llvm/lib/Transforms/Scalar/JumpThreading.cpp
M llvm/lib/Transforms/Scalar/LICM.cpp
M llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp
M llvm/lib/Transforms/Scalar/LoopUnrollPass.cpp
M llvm/lib/Transforms/Scalar/LowerMatrixIntrinsics.cpp
M llvm/lib/Transforms/Scalar/MemCpyOptimizer.cpp
M llvm/lib/Transforms/Scalar/SpeculativeExecution.cpp
M llvm/lib/Transforms/Scalar/TailRecursionElimination.cpp
M llvm/lib/Transforms/Utils/CodeExtractor.cpp
M llvm/lib/Transforms/Utils/Debugify.cpp
M llvm/lib/Transforms/Utils/Evaluator.cpp
M llvm/lib/Transforms/Utils/InlineFunction.cpp
M llvm/lib/Transforms/Utils/Local.cpp
M llvm/lib/Transforms/Utils/LoopPeel.cpp
M llvm/lib/Transforms/Utils/LoopRotationUtils.cpp
M llvm/lib/Transforms/Utils/PredicateInfo.cpp
M llvm/lib/Transforms/Utils/SCCPSolver.cpp
M llvm/lib/Transforms/Utils/ScalarEvolutionExpander.cpp
M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
M llvm/lib/Transforms/Vectorize/LoopVectorizationLegality.cpp
M llvm/lib/Transforms/Vectorize/LoopVectorizationPlanner.h
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/lib/Transforms/Vectorize/VPlan.cpp
M llvm/lib/Transforms/Vectorize/VPlan.h
M llvm/lib/Transforms/Vectorize/VPlanPatternMatch.h
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/lib/Transforms/Vectorize/VPlanTransforms.h
M llvm/lib/Transforms/Vectorize/VPlanUnroll.cpp
M llvm/test/Analysis/CostModel/AArch64/cmp.ll
M llvm/test/Analysis/CostModel/AMDGPU/canonicalize.ll
M llvm/test/Analysis/CostModel/AMDGPU/copysign.ll
A llvm/test/Analysis/CostModel/AMDGPU/maximumnum.ll
A llvm/test/Analysis/CostModel/AMDGPU/minimumnum.ll
A llvm/test/Analysis/CostModel/AMDGPU/special-argument-intrinsics.ll
M llvm/test/Analysis/HashRecognize/cyclic-redundancy-check.ll
M llvm/test/Analysis/ValueTracking/phi-known-bits.ll
A llvm/test/CodeGen/AArch64/arm64-zero-cycle-regmov-gpr32.ll
R llvm/test/CodeGen/AArch64/arm64-zero-cycle-regmov.ll
M llvm/test/CodeGen/AArch64/arm64ec-builtins.ll
M llvm/test/CodeGen/AArch64/complex-deinterleaving-splat-scalable.ll
M llvm/test/CodeGen/AArch64/min-jump-table.ll
M llvm/test/CodeGen/AArch64/neon-partial-reduce-dot-product.ll
A llvm/test/CodeGen/AArch64/replace-with-veclib-libmvec-scalable.ll
A llvm/test/CodeGen/AArch64/replace-with-veclib-libmvec.ll
M llvm/test/CodeGen/AArch64/stack-hazard.ll
A llvm/test/CodeGen/AArch64/sve-bf16-reductions.ll
M llvm/test/CodeGen/AArch64/sve-expand-div.ll
M llvm/test/CodeGen/AArch64/sve-fixed-length-sdiv-pow2.ll
A llvm/test/CodeGen/AArch64/sve-fixed-length-splat-segment.ll
M llvm/test/CodeGen/AArch64/sve-sdiv-pow2.ll
A llvm/test/CodeGen/AArch64/sve2p1-vector-shuffles.ll
M llvm/test/CodeGen/AArch64/trampoline.ll
A llvm/test/CodeGen/AArch64/unsupported-cc-call.ll
A llvm/test/CodeGen/AArch64/unsupported-cc-func.ll
A llvm/test/CodeGen/AArch64/vector-ldst-offset.ll
M llvm/test/CodeGen/AArch64/zext-to-tbl.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/insertelement.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-inttoptr.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-ptrtoint.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-select.mir
M llvm/test/CodeGen/AMDGPU/any_extend_vector_inreg.ll
M llvm/test/CodeGen/AMDGPU/buffer-fat-pointers-contents-legalization.ll
M llvm/test/CodeGen/AMDGPU/directive-amdgcn-target.ll
M llvm/test/CodeGen/AMDGPU/elf-header-flags-mach.ll
A llvm/test/CodeGen/AMDGPU/fix-sgpr-copies-f16-gfx12-fake16.mir
A llvm/test/CodeGen/AMDGPU/fix-sgpr-copies-f16-gfx12-true16.mir
M llvm/test/CodeGen/AMDGPU/fneg-combines.new.ll
A llvm/test/CodeGen/AMDGPU/gcn-reg-pressure-true16-integer-overflow.mir
M llvm/test/CodeGen/AMDGPU/idot4s.ll
M llvm/test/CodeGen/AMDGPU/idot4u.ll
M llvm/test/CodeGen/AMDGPU/insert-skips-gfx12.mir
A llvm/test/CodeGen/AMDGPU/llvm.amdgcn.s.barrier.signal.isfirst.ll
M llvm/test/CodeGen/AMDGPU/llvm.frexp.ll
M llvm/test/CodeGen/AMDGPU/llvm.maximum.f16.ll
M llvm/test/CodeGen/AMDGPU/llvm.maximum.f32.ll
M llvm/test/CodeGen/AMDGPU/llvm.minimum.f16.ll
M llvm/test/CodeGen/AMDGPU/llvm.minimum.f32.ll
M llvm/test/CodeGen/AMDGPU/loop_exit_with_xor.ll
M llvm/test/CodeGen/AMDGPU/machine-sink-ignorable-exec-use.mir
M llvm/test/CodeGen/AMDGPU/maximumnum.ll
M llvm/test/CodeGen/AMDGPU/minimumnum.ll
M llvm/test/CodeGen/AMDGPU/move-to-valu-pseudo-scalar-trans-f16-fake16.ll
M llvm/test/CodeGen/AMDGPU/move-to-valu-pseudo-scalar-trans-f16-true16.ll
M llvm/test/CodeGen/AMDGPU/pseudo-scalar-transcendental.ll
A llvm/test/CodeGen/AMDGPU/sext-in-reg-vector-shuffle.ll
M llvm/test/CodeGen/AMDGPU/vector-reduce-smax.ll
M llvm/test/CodeGen/AMDGPU/vector-reduce-smin.ll
A llvm/test/CodeGen/BPF/BTF/map-def-nested.ll
M llvm/test/CodeGen/DirectX/ContainerData/RootSignature-Error-is-not-function.ll
M llvm/test/CodeGen/DirectX/ContainerData/RootSignature-Error-is-not-value.ll
M llvm/test/CodeGen/DirectX/ContainerData/RootSignature-Error-no-root-element-list.ll
M llvm/test/CodeGen/DirectX/ContainerData/RootSignature-Error-root-element-not-mdnode.ll
M llvm/test/CodeGen/DirectX/ContainerData/RootSignature-Flags-Error.ll
M llvm/test/CodeGen/DirectX/ContainerData/RootSignature-Flags.ll
M llvm/test/CodeGen/DirectX/ContainerData/RootSignature-MultipleEntryFunctions.ll
M llvm/test/CodeGen/DirectX/ContainerData/RootSignature-NullFunction-Error.ll
M llvm/test/CodeGen/DirectX/ContainerData/RootSignature-Parameters-Invalid-ParameterIsNotString.ll
M llvm/test/CodeGen/DirectX/ContainerData/RootSignature-Parameters-Validation-Error.ll
M llvm/test/CodeGen/DirectX/ContainerData/RootSignature-Parameters.ll
M llvm/test/CodeGen/DirectX/ContainerData/RootSignature-RootConstants-Invalid-Num32BitValues.ll
M llvm/test/CodeGen/DirectX/ContainerData/RootSignature-RootConstants-Invalid-RegisterSpace.ll
M llvm/test/CodeGen/DirectX/ContainerData/RootSignature-RootConstants-Invalid-ShaderRegister.ll
M llvm/test/CodeGen/DirectX/ContainerData/RootSignature-RootConstants.ll
M llvm/test/CodeGen/DirectX/ContainerData/RootSignature-RootDescriptor-Invalid-Flags.ll
M llvm/test/CodeGen/DirectX/ContainerData/RootSignature-RootDescriptor-Invalid-RegisterKind.ll
M llvm/test/CodeGen/DirectX/ContainerData/RootSignature-RootDescriptor-Invalid-RegisterSpace.ll
M llvm/test/CodeGen/DirectX/ContainerData/RootSignature-RootDescriptor-Invalid-RegisterValue.ll
M llvm/test/CodeGen/DirectX/ContainerData/RootSignature-RootDescriptor.ll
A llvm/test/CodeGen/DirectX/ContainerData/RootSignature-RootDescriptor_V1.ll
M llvm/test/CodeGen/DirectX/ContainerData/RootSignature-RootElement-Error.ll
M llvm/test/CodeGen/DirectX/ContainerData/RootSignature-RootFlags-VisibilityValidationError.ll
M llvm/test/CodeGen/DirectX/llc-vector-load-scalarize.ll
A llvm/test/CodeGen/DirectX/noop_bitcast_global_array_type.ll
M llvm/test/CodeGen/NVPTX/bug26185-2.ll
M llvm/test/CodeGen/NVPTX/bug26185.ll
M llvm/test/CodeGen/NVPTX/i1-ext-load.ll
M llvm/test/CodeGen/NVPTX/ldu-ldg.ll
M llvm/test/CodeGen/NVPTX/sm-version.ll
M llvm/test/CodeGen/NVPTX/variadics-backend.ll
M llvm/test/CodeGen/PowerPC/PR35812-neg-cmpxchg.ll
M llvm/test/CodeGen/PowerPC/aix-cc-abi-mir.ll
M llvm/test/CodeGen/PowerPC/aix-cc-abi.ll
A llvm/test/CodeGen/PowerPC/aix-cc-byval-mir.ll
M llvm/test/CodeGen/PowerPC/aix-cc-byval.ll
M llvm/test/CodeGen/PowerPC/aix-vec-arg-spills-mir.ll
M llvm/test/CodeGen/PowerPC/aix-vec-arg-spills.ll
M llvm/test/CodeGen/PowerPC/aix-vector-vararg-caller.ll
M llvm/test/CodeGen/PowerPC/aix-vector-vararg-fixed-caller.ll
A llvm/test/CodeGen/PowerPC/aix32-cc-abi-vaarg-mir.ll
M llvm/test/CodeGen/PowerPC/aix32-cc-abi-vaarg.ll
A llvm/test/CodeGen/PowerPC/aix64-cc-abi-vaarg-mir.ll
M llvm/test/CodeGen/PowerPC/aix64-cc-abi-vaarg.ll
M llvm/test/CodeGen/PowerPC/all-atomics.ll
M llvm/test/CodeGen/PowerPC/dmr-spill.ll
A llvm/test/CodeGen/PowerPC/dmrp-spill.ll
M llvm/test/CodeGen/PowerPC/f128-arith.ll
M llvm/test/CodeGen/PowerPC/loop-comment.ll
M llvm/test/CodeGen/RISCV/GlobalISel/irtranslator/fallback.ll
M llvm/test/CodeGen/RISCV/O0-pipeline.ll
M llvm/test/CodeGen/RISCV/O3-pipeline.ll
M llvm/test/CodeGen/RISCV/attributes.ll
M llvm/test/CodeGen/RISCV/branch.ll
M llvm/test/CodeGen/RISCV/features-info.ll
A llvm/test/CodeGen/RISCV/icmp-non-byte-sized.ll
M llvm/test/CodeGen/RISCV/interrupt-attr.ll
M llvm/test/CodeGen/RISCV/memcmp-optsize.ll
M llvm/test/CodeGen/RISCV/memcmp.ll
M llvm/test/CodeGen/RISCV/rvv/extract-subvector.ll
M llvm/test/CodeGen/RISCV/rvv/get_vector_length.ll
M llvm/test/CodeGen/RISCV/rvv/insert-subvector.ll
A llvm/test/CodeGen/RISCV/rvv/interrupt-attr-nocall.ll
M llvm/test/CodeGen/RISCV/rvv/legalize-load-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/legalize-store-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/masked-load-int.ll
M llvm/test/CodeGen/RISCV/rvv/setcc-fp-vp.ll
M llvm/test/CodeGen/RISCV/rvv/setcc-fp.ll
M llvm/test/CodeGen/RISCV/rvv/setcc-int-vp.ll
M llvm/test/CodeGen/RISCV/rvv/setcc-integer.ll
M llvm/test/CodeGen/RISCV/rvv/stepvector.ll
M llvm/test/CodeGen/RISCV/rvv/undef-earlyclobber-chain.ll
M llvm/test/CodeGen/RISCV/rvv/vandn-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/vector-deinterleave-fixed.ll
M llvm/test/CodeGen/RISCV/rvv/vector-deinterleave.ll
M llvm/test/CodeGen/RISCV/rvv/vector-interleave-store.ll
M llvm/test/CodeGen/RISCV/rvv/vector-interleave.ll
M llvm/test/CodeGen/RISCV/rvv/vfptoi-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/vl-opt-instrs.ll
M llvm/test/CodeGen/RISCV/rvv/vp-vector-interleaved-access.ll
M llvm/test/CodeGen/RISCV/rvv/vreductions-fp-sdnode.ll
M llvm/test/CodeGen/RISCV/rvv/vselect-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vsetvli-insert-crossbb.mir
M llvm/test/CodeGen/RISCV/shifts.ll
A llvm/test/CodeGen/RISCV/xqcibm-cto-clo.ll
M llvm/test/CodeGen/RISCV/xqcibm-extract.ll
M llvm/test/CodeGen/SPARC/ctlz.ll
M llvm/test/CodeGen/SPARC/cttz.ll
M llvm/test/CodeGen/SPARC/inlineasm-v9.ll
M llvm/test/CodeGen/SPARC/inlineasm.ll
A llvm/test/CodeGen/SPIRV/constant/spec-constant.ll
A llvm/test/CodeGen/SPIRV/linkage/link-attribute-vk.ll
A llvm/test/CodeGen/SystemZ/fake-use-size.ll
M llvm/test/CodeGen/Thumb2/mve-shuffle.ll
M llvm/test/CodeGen/Thumb2/mve-vld3.ll
M llvm/test/CodeGen/Thumb2/schedm7-hazard.ll
A llvm/test/CodeGen/X86/fold-masked-merge-demorgan.ll
M llvm/test/CodeGen/X86/horizontal-sum.ll
M llvm/test/CodeGen/X86/kcfi-arity.ll
M llvm/test/CodeGen/X86/movmsk-cmp.ll
M llvm/test/CodeGen/X86/ptest.ll
M llvm/test/CodeGen/X86/remarks-section.ll
M llvm/test/CodeGen/X86/vector-fshl-256.ll
M llvm/test/CodeGen/X86/vector-fshr-256.ll
M llvm/test/CodeGen/X86/vector-shift-lshr-256.ll
M llvm/test/CodeGen/X86/vector-shift-shl-256.ll
M llvm/test/CodeGen/X86/vector-shuffle-combining-avx2.ll
M llvm/test/Instrumentation/AddressSanitizer/asan-masked-load-store.ll
M llvm/test/Instrumentation/AddressSanitizer/asan-vp-load-store.ll
M llvm/test/Instrumentation/AddressSanitizer/vector-load-store.ll
M llvm/test/Instrumentation/BoundsChecking/simple.ll
M llvm/test/Instrumentation/HWAddressSanitizer/vector-load-store.ll
M llvm/test/Instrumentation/MemorySanitizer/partial-poison.ll
M llvm/test/Instrumentation/MemorySanitizer/vector-load-store.ll
M llvm/test/Instrumentation/MemorySanitizer/vscale.ll
M llvm/test/Instrumentation/ThreadSanitizer/atomic-non-integer.ll
M llvm/test/MC/AArch64/coff-function-type-info.ll
M llvm/test/MC/AMDGPU/gfx12_asm_smem.s
M llvm/test/MC/AMDGPU/gfx12_asm_sopk.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop1_dpp16.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop1_dpp8.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop2_dpp16.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop2_dpp8.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop3_from_vop1_dpp16.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop3_from_vop1_dpp8.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop3_from_vop2_dpp16.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop3_from_vop2_dpp8.s
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_smem.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop1_dpp8.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3_from_vop1_dpp16.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3_from_vop1_dpp8.txt
A llvm/test/MC/Disassembler/Xtensa/coprocessor.txt
A llvm/test/MC/Disassembler/Xtensa/debug.txt
A llvm/test/MC/Disassembler/Xtensa/exception.txt
A llvm/test/MC/Disassembler/Xtensa/highinterrupts.txt
A llvm/test/MC/Disassembler/Xtensa/interrupt.txt
A llvm/test/MC/Disassembler/Xtensa/prid.txt
A llvm/test/MC/Disassembler/Xtensa/timer.txt
M llvm/test/MC/LoongArch/Misc/cfi-advance.s
M llvm/test/MC/LoongArch/Relocations/fde-reloc.s
M llvm/test/MC/LoongArch/Relocations/sub-expr.s
M llvm/test/MC/RISCV/custom_reloc.s
M llvm/test/MC/RISCV/vendor-symbol.s
A llvm/test/MC/RISCV/xandesperf-fixups-diagnostics.s
A llvm/test/MC/RISCV/xandesperf-relocation.s
A llvm/test/MC/RISCV/xandesvbfhcvt-valid.s
M llvm/test/MC/RISCV/xqciac-valid.s
M llvm/test/MC/Sparc/Relocations/relocation-specifier.s
M llvm/test/MC/Sparc/sparcv9-instructions.s
M llvm/test/MC/Xtensa/Core/processor-control.s
A llvm/test/MC/Xtensa/coprocessor.s
A llvm/test/MC/Xtensa/debug-invalid.s
A llvm/test/MC/Xtensa/debug.s
A llvm/test/MC/Xtensa/exception.s
A llvm/test/MC/Xtensa/highinterrupts.s
A llvm/test/MC/Xtensa/interrupt.s
A llvm/test/MC/Xtensa/prid.s
A llvm/test/MC/Xtensa/timer.s
M llvm/test/Object/AMDGPU/elf-header-flags-mach.yaml
R llvm/test/Transforms/Attributor/AMDGPU/tag-invariant-loads.ll
M llvm/test/Transforms/Attributor/dereferenceable-1.ll
M llvm/test/Transforms/Attributor/value-simplify-local-remote.ll
M llvm/test/Transforms/DeadStoreElimination/trivial-dse-calls.ll
A llvm/test/Transforms/EliminateAvailableExternally/convert-global-variables-to-local.ll
M llvm/test/Transforms/GVN/opt-remarks.ll
M llvm/test/Transforms/IndVarSimplify/simplify-icmp-operands-order.ll
M llvm/test/Transforms/InstCombine/AArch64/sve-intrinsic-opts-counting-elems.ll
M llvm/test/Transforms/InstCombine/AMDGPU/image-d16.ll
M llvm/test/Transforms/InstCombine/X86/x86-vector-shifts.ll
M llvm/test/Transforms/InstCombine/add.ll
M llvm/test/Transforms/InstCombine/and-or-icmps.ll
M llvm/test/Transforms/InstCombine/apint-shift.ll
A llvm/test/Transforms/InstCombine/bitcast-known-bits.ll
M llvm/test/Transforms/InstCombine/call-cast-target.ll
A llvm/test/Transforms/InstCombine/dead-alloc-elim.ll
A llvm/test/Transforms/InstCombine/fmul-tan-cos.ll
M llvm/test/Transforms/InstCombine/fp-ret-bitcast.ll
M llvm/test/Transforms/InstCombine/gep-vector.ll
M llvm/test/Transforms/InstCombine/gepofconstgepi8.ll
M llvm/test/Transforms/InstCombine/getelementptr.ll
M llvm/test/Transforms/InstCombine/icmp-gep.ll
M llvm/test/Transforms/InstCombine/malloc-free.ll
M llvm/test/Transforms/InstCombine/masked_intrinsics.ll
M llvm/test/Transforms/InstCombine/multiple-uses-load-bitcast-select.ll
M llvm/test/Transforms/InstCombine/objsize.ll
M llvm/test/Transforms/InstCombine/opaque-ptr.ll
M llvm/test/Transforms/InstCombine/scalable-vector-array.ll
M llvm/test/Transforms/InstCombine/scalable-vector-struct.ll
M llvm/test/Transforms/InstCombine/select-load.ll
M llvm/test/Transforms/InstCombine/shift-amount-reassociation.ll
M llvm/test/Transforms/InstCombine/sub-gep.ll
A llvm/test/Transforms/InstCombine/sub-sext-add.ll
M llvm/test/Transforms/InstCombine/vp-reverse.ll
M llvm/test/Transforms/InstCombine/vscale_gep.ll
M llvm/test/Transforms/InstSimplify/ConstProp/loads.ll
M llvm/test/Transforms/LICM/call-hoisting.ll
M llvm/test/Transforms/LICM/funclet.ll
M llvm/test/Transforms/LoopUnroll/peel-last-iteration-minmax.ll
M llvm/test/Transforms/LoopVectorize/AArch64/clamped-trip-count.ll
M llvm/test/Transforms/LoopVectorize/AArch64/conditional-branches-cost.ll
M llvm/test/Transforms/LoopVectorize/AArch64/divs-with-scalable-vfs.ll
M llvm/test/Transforms/LoopVectorize/AArch64/eliminate-tail-predication.ll
M llvm/test/Transforms/LoopVectorize/AArch64/epilog-iv-select-cmp.ll
M llvm/test/Transforms/LoopVectorize/AArch64/gather-do-not-vectorize-addressing.ll
M llvm/test/Transforms/LoopVectorize/AArch64/induction-costs-sve.ll
M llvm/test/Transforms/LoopVectorize/AArch64/low_trip_count_predicates.ll
M llvm/test/Transforms/LoopVectorize/AArch64/masked-call.ll
M llvm/test/Transforms/LoopVectorize/AArch64/optsize_minsize.ll
M llvm/test/Transforms/LoopVectorize/AArch64/outer_loop_prefer_scalable.ll
M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-chained.ll
M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-dot-product-epilogue.ll
M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-dot-product-mixed.ll
M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-dot-product.ll
A llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-interleave.ll
M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-sub.ll
M llvm/test/Transforms/LoopVectorize/AArch64/pr60831-sve-inv-store-crash.ll
M llvm/test/Transforms/LoopVectorize/AArch64/reduction-recurrence-costs-sve.ll
M llvm/test/Transforms/LoopVectorize/AArch64/scalable-avoid-scalarization.ll
M llvm/test/Transforms/LoopVectorize/AArch64/scalable-reduction-inloop-cond.ll
M llvm/test/Transforms/LoopVectorize/AArch64/scalable-strict-fadd.ll
M llvm/test/Transforms/LoopVectorize/AArch64/simple_early_exit.ll
M llvm/test/Transforms/LoopVectorize/AArch64/store-costs-sve.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-epilog-vect-inloop-reductions.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-epilog-vect-no-remaining-iterations.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-epilog-vect-reductions.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-epilog-vect-strict-reductions.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-epilog-vect.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-extract-last-veclane.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-fneg.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-inductions-unusual-types.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-inductions.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-interleaved-accesses.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-interleaved-masked-accesses.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-inv-store.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-live-out-pointer-induction.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-low-trip-count.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-multiexit.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-runtime-check-size-based-threshold.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-tail-folding-forced.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-tail-folding-optsize.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-tail-folding-reductions.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-tail-folding-unroll.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-tail-folding.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-vector-reverse.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-vscale-based-trip-counts.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-widen-gep.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve2-histcnt-epilogue.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve2-histcnt-too-many-deps.ll
M llvm/test/Transforms/LoopVectorize/AArch64/tail-folding-styles.ll
M llvm/test/Transforms/LoopVectorize/AArch64/transform-narrow-interleave-to-widen-memory-remove-loop-region.ll
M llvm/test/Transforms/LoopVectorize/AArch64/uniform-args-call-variants.ll
M llvm/test/Transforms/LoopVectorize/AArch64/veclib-function-calls.ll
M llvm/test/Transforms/LoopVectorize/AArch64/veclib-intrinsic-calls.ll
M llvm/test/Transforms/LoopVectorize/AArch64/vplan-printing.ll
M llvm/test/Transforms/LoopVectorize/AArch64/wider-VF-for-callinst.ll
A llvm/test/Transforms/LoopVectorize/ARM/mve-reductions-interleave.ll
M llvm/test/Transforms/LoopVectorize/ARM/optsize_minsize.ll
M llvm/test/Transforms/LoopVectorize/RISCV/bf16.ll
M llvm/test/Transforms/LoopVectorize/RISCV/blend-any-of-reduction-cost.ll
M llvm/test/Transforms/LoopVectorize/RISCV/blocks-with-dead-instructions.ll
M llvm/test/Transforms/LoopVectorize/RISCV/dead-ops-cost.ll
M llvm/test/Transforms/LoopVectorize/RISCV/defaults.ll
M llvm/test/Transforms/LoopVectorize/RISCV/divrem.ll
M llvm/test/Transforms/LoopVectorize/RISCV/f16.ll
M llvm/test/Transforms/LoopVectorize/RISCV/first-order-recurrence-scalable-vf1.ll
M llvm/test/Transforms/LoopVectorize/RISCV/fminimumnum.ll
M llvm/test/Transforms/LoopVectorize/RISCV/induction-costs.ll
M llvm/test/Transforms/LoopVectorize/RISCV/inloop-reduction.ll
M llvm/test/Transforms/LoopVectorize/RISCV/interleaved-accesses.ll
M llvm/test/Transforms/LoopVectorize/RISCV/interleaved-masked-access.ll
M llvm/test/Transforms/LoopVectorize/RISCV/lmul.ll
M llvm/test/Transforms/LoopVectorize/RISCV/low-trip-count.ll
M llvm/test/Transforms/LoopVectorize/RISCV/mask-index-type.ll
M llvm/test/Transforms/LoopVectorize/RISCV/masked_gather_scatter.ll
M llvm/test/Transforms/LoopVectorize/RISCV/partial-reduce-dot-product.ll
M llvm/test/Transforms/LoopVectorize/RISCV/pr87378-vpinstruction-or-drop-poison-generating-flags.ll
M llvm/test/Transforms/LoopVectorize/RISCV/pr88802.ll
M llvm/test/Transforms/LoopVectorize/RISCV/remark-reductions.ll
M llvm/test/Transforms/LoopVectorize/RISCV/riscv-vector-reverse-output.ll
M llvm/test/Transforms/LoopVectorize/RISCV/riscv-vector-reverse.ll
M llvm/test/Transforms/LoopVectorize/RISCV/safe-dep-distance.ll
M llvm/test/Transforms/LoopVectorize/RISCV/scalable-basics.ll
M llvm/test/Transforms/LoopVectorize/RISCV/scalable-tailfold.ll
M llvm/test/Transforms/LoopVectorize/RISCV/select-cmp-reduction.ll
M llvm/test/Transforms/LoopVectorize/RISCV/strided-accesses.ll
M llvm/test/Transforms/LoopVectorize/RISCV/truncate-to-minimal-bitwidth-cost.ll
M llvm/test/Transforms/LoopVectorize/RISCV/truncate-to-minimal-bitwidth-evl-crash.ll
M llvm/test/Transforms/LoopVectorize/RISCV/type-info-cache-evl-crash.ll
M llvm/test/Transforms/LoopVectorize/RISCV/uniform-load-store.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-bin-unary-ops-args.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-call-intrinsics.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-cast-intrinsics.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-cond-reduction.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-div.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-fixed-order-recurrence.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-inloop-reduction.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-interleave.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-intermediate-store.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-iv32.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-known-no-overflow.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-masked-loadstore.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-ordered-reduction.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-reduction.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-reverse-load-store.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-safe-dep-distance.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-uniform-store.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-vp-intrinsics.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vplan-vp-select-intrinsics.ll
M llvm/test/Transforms/LoopVectorize/X86/constant-fold.ll
M llvm/test/Transforms/LoopVectorize/X86/drop-poison-generating-flags.ll
M llvm/test/Transforms/LoopVectorize/X86/induction-costs.ll
M llvm/test/Transforms/LoopVectorize/X86/interleave-cost.ll
M llvm/test/Transforms/LoopVectorize/X86/outer_loop_test1_no_explicit_vect_width.ll
M llvm/test/Transforms/LoopVectorize/X86/scatter_crash.ll
M llvm/test/Transforms/LoopVectorize/branch-weights.ll
M llvm/test/Transforms/LoopVectorize/dereferenceable-info-from-assumption-constant-size.ll
M llvm/test/Transforms/LoopVectorize/dereferenceable-info-from-assumption-variable-size.ll
M llvm/test/Transforms/LoopVectorize/early_exit_legality.ll
A llvm/test/Transforms/LoopVectorize/early_exit_store_legality.ll
M llvm/test/Transforms/LoopVectorize/epilog-vectorization-any-of-reductions.ll
M llvm/test/Transforms/LoopVectorize/first-order-recurrence-scalable-vf1.ll
M llvm/test/Transforms/LoopVectorize/first-order-recurrence.ll
M llvm/test/Transforms/LoopVectorize/load-deref-pred-poison-ub-ops-feeding-pointer.ll
M llvm/test/Transforms/LoopVectorize/outer_loop_scalable.ll
M llvm/test/Transforms/LoopVectorize/pointer-induction.ll
A llvm/test/Transforms/LoopVectorize/predicatedinst-loop-invariant.ll
M llvm/test/Transforms/LoopVectorize/reduction-inloop-pred.ll
M llvm/test/Transforms/LoopVectorize/scalable-first-order-recurrence.ll
M llvm/test/Transforms/LoopVectorize/scalable-inductions.ll
M llvm/test/Transforms/LoopVectorize/scalable-iv-outside-user.ll
M llvm/test/Transforms/LoopVectorize/scalable-lifetime.ll
M llvm/test/Transforms/LoopVectorize/scalable-loop-unpredicated-body-scalar-tail.ll
M llvm/test/Transforms/LoopVectorize/scalable-reduction-inloop.ll
M llvm/test/Transforms/LoopVectorize/scalable-trunc-min-bitwidth.ll
M llvm/test/Transforms/LoopVectorize/single_early_exit_live_outs.ll
M llvm/test/Transforms/LoopVectorize/uniform-blend.ll
M llvm/test/Transforms/LoopVectorize/vectorize-force-tail-with-evl.ll
M llvm/test/Transforms/LoopVectorize/vplan-iv-transforms.ll
A llvm/test/Transforms/LowerMatrixIntrinsics/phi.ll
M llvm/test/Transforms/LowerMatrixIntrinsics/propagate-backwards-unsupported.ll
M llvm/test/Transforms/LowerTypeTests/blockaddress-2.ll
M llvm/test/Transforms/LowerTypeTests/cfi-icall-alias.ll
M llvm/test/Transforms/LowerTypeTests/export-alias.ll
M llvm/test/Transforms/LowerTypeTests/export-icall.ll
M llvm/test/Transforms/LowerTypeTests/function-disjoint.ll
M llvm/test/Transforms/LowerTypeTests/function.ll
M llvm/test/Transforms/LowerTypeTests/icall-branch-funnel.ll
M llvm/test/Transforms/LowerTypeTests/pr37625.ll
M llvm/test/Transforms/LowerTypeTests/section.ll
M llvm/test/Transforms/MemCpyOpt/memcpy-memcpy-offset.ll
M llvm/test/Transforms/MemCpyOpt/variable-sized-memcpy-memcpy.ll
M llvm/test/Transforms/MemCpyOpt/vscale-crashes.ll
M llvm/test/Transforms/PhaseOrdering/AArch64/sve-interleave-vectorization.ll
A llvm/test/Transforms/PhaseOrdering/X86/fmaddsub.ll
M llvm/test/Transforms/PhaseOrdering/X86/hadd.ll
M llvm/test/Transforms/PhaseOrdering/X86/hsub.ll
M llvm/test/Transforms/PreISelIntrinsicLowering/AArch64/expand-exp.ll
M llvm/test/Transforms/SLPVectorizer/AMDGPU/external-shuffle.ll
M llvm/test/Transforms/SLPVectorizer/AMDGPU/slp-v2f16.ll
A llvm/test/Transforms/SLPVectorizer/SystemZ/non-power-2-subvector-extract.ll
M llvm/test/Transforms/SLPVectorizer/X86/extractelement-single-use-many-nodes.ll
M llvm/test/Transforms/SLPVectorizer/X86/vec_list_bias-inseltpoison.ll
A llvm/test/Transforms/SLPVectorizer/isCommutative.ll
M llvm/test/Transforms/Util/add-TLI-mappings.ll
A llvm/test/Transforms/WholeProgramDevirt/availableexternal-check.ll
A llvm/test/Verifier/NVPTX/fence-proxy.tensormap.ll
M llvm/test/Verifier/NVPTX/setmaxnreg.ll
A llvm/test/tools/llvm-exegesis/RISCV/unsupported-opcode.test
A llvm/test/tools/llvm-mca/AArch64/Cortex/A320-basic-instructions.s
A llvm/test/tools/llvm-mca/AArch64/Cortex/A320-neon-instructions.s
A llvm/test/tools/llvm-mca/AArch64/Cortex/A320-sve-instructions.s
M llvm/test/tools/llvm-mca/RISCV/SpacemitX60/atomic.s
M llvm/test/tools/llvm-mca/RISCV/SpacemitX60/floating-point.s
M llvm/test/tools/llvm-mca/RISCV/SpacemitX60/integer.s
M llvm/test/tools/llvm-objdump/ELF/AMDGPU/subtarget.ll
M llvm/test/tools/llvm-readobj/ELF/AMDGPU/elf-headers.test
A llvm/test/tools/llvm-remarkutil/Inputs/broken-remark-magic.bitstream
M llvm/test/tools/llvm-remarkutil/annotation-count.test
A llvm/test/tools/llvm-remarkutil/broken-bitstream-remark-magic.test
M llvm/test/tools/llvm-remarkutil/empty-file.test
M llvm/test/tools/llvm-remarkutil/instruction-count.test
M llvm/test/tools/llvm-remarkutil/instruction-mix.test
M llvm/test/tools/llvm-remarkutil/size-diff/no-difference.test
A llvm/test/tools/yaml2obj/basic.test
M llvm/tools/llvm-exegesis/lib/Target.cpp
M llvm/tools/llvm-jitlink/llvm-jitlink-executor/CMakeLists.txt
M llvm/tools/llvm-readobj/DwarfCFIEHPrinter.h
M llvm/tools/llvm-readobj/ELFDumper.cpp
M llvm/tools/llvm-remarkutil/RemarkUtilHelpers.h
M llvm/tools/yaml2obj/yaml2obj.cpp
M llvm/unittests/ADT/TestGraph.h
M llvm/unittests/CodeGen/SelectionDAGPatternMatchTest.cpp
M llvm/unittests/Frontend/CMakeLists.txt
M llvm/unittests/Frontend/HLSLRootSignatureDumpTest.cpp
A llvm/unittests/Frontend/HLSLRootSignatureRangesTest.cpp
M llvm/unittests/Remarks/RemarksLinkingTest.cpp
M llvm/unittests/Remarks/YAMLRemarksParsingTest.cpp
M llvm/unittests/Remarks/YAMLRemarksSerializerTest.cpp
M llvm/unittests/Support/Casting.cpp
M llvm/unittests/Target/AArch64/CMakeLists.txt
M llvm/unittests/Target/LoongArch/CMakeLists.txt
M llvm/unittests/Target/RISCV/CMakeLists.txt
M llvm/unittests/Target/SPIRV/CMakeLists.txt
M llvm/unittests/Target/VE/CMakeLists.txt
M llvm/unittests/Target/WebAssembly/CMakeLists.txt
M llvm/unittests/TargetParser/RISCVISAInfoTest.cpp
M llvm/utils/TableGen/Basic/CMakeLists.txt
A llvm/utils/TableGen/Basic/TargetFeaturesEmitter.cpp
A llvm/utils/TableGen/Basic/TargetFeaturesEmitter.h
M llvm/utils/TableGen/Common/CodeGenInstruction.cpp
M llvm/utils/TableGen/Common/CodeGenInstruction.h
M llvm/utils/TableGen/CompressInstEmitter.cpp
M llvm/utils/TableGen/DecoderEmitter.cpp
M llvm/utils/TableGen/SubtargetEmitter.cpp
M llvm/utils/gn/secondary/bolt/unittests/Profile/BUILD.gn
M llvm/utils/gn/secondary/clang-tools-extra/clang-tidy/cppcoreguidelines/BUILD.gn
M llvm/utils/gn/secondary/clang/lib/Driver/BUILD.gn
M llvm/utils/gn/secondary/lldb/source/Commands/BUILD.gn
M llvm/utils/gn/secondary/lldb/source/Core/BUILD.gn
M llvm/utils/gn/secondary/lldb/test/BUILD.gn
M llvm/utils/gn/secondary/llvm/include/llvm/Config/BUILD.gn
M llvm/utils/gn/secondary/llvm/include/llvm/TargetParser/BUILD.gn
M llvm/utils/gn/secondary/llvm/lib/DebugInfo/DWARF/BUILD.gn
M llvm/utils/gn/secondary/llvm/lib/Target/Mips/MCTargetDesc/BUILD.gn
M llvm/utils/gn/secondary/llvm/unittests/Frontend/BUILD.gn
M llvm/utils/gn/secondary/llvm/utils/TableGen/Basic/BUILD.gn
M mlir/docs/Dialects/Vector.md
A mlir/include/mlir/Analysis/DataFlow/Utils.h
M mlir/include/mlir/AsmParser/AsmParserState.h
M mlir/include/mlir/Dialect/AMDGPU/Transforms/Passes.h
M mlir/include/mlir/Dialect/Arith/IR/ArithOps.td
M mlir/include/mlir/Dialect/Arith/Transforms/Passes.h
M mlir/include/mlir/Dialect/Arith/Transforms/Passes.td
M mlir/include/mlir/Dialect/Bufferization/IR/BufferizableOpInterface.h
M mlir/include/mlir/Dialect/Bufferization/IR/BufferizationOps.td
M mlir/include/mlir/Dialect/Bufferization/IR/BufferizationTypeInterfaces.h
M mlir/include/mlir/Dialect/Bufferization/IR/BufferizationTypeInterfaces.td
M mlir/include/mlir/Dialect/Bufferization/IR/UnstructuredControlFlow.h
M mlir/include/mlir/Dialect/ControlFlow/IR/ControlFlowOps.td
M mlir/include/mlir/Dialect/EmitC/IR/CMakeLists.txt
M mlir/include/mlir/Dialect/EmitC/IR/EmitC.h
M mlir/include/mlir/Dialect/EmitC/IR/EmitC.td
A mlir/include/mlir/Dialect/EmitC/IR/EmitCInterfaces.h
A mlir/include/mlir/Dialect/EmitC/IR/EmitCInterfaces.td
R mlir/include/mlir/Dialect/EmitC/IR/EmitCTraits.h
M mlir/include/mlir/Dialect/GPU/IR/GPUOps.td
M mlir/include/mlir/Dialect/LLVMIR/LLVMInterfaces.td
M mlir/include/mlir/Dialect/LLVMIR/LLVMOps.td
M mlir/include/mlir/Dialect/LLVMIR/NVVMOps.td
M mlir/include/mlir/Dialect/Linalg/IR/LinalgInterfaces.td
M mlir/include/mlir/Dialect/Linalg/TransformOps/LinalgTransformOps.td
M mlir/include/mlir/Dialect/Linalg/Transforms/Transforms.h
M mlir/include/mlir/Dialect/Linalg/Utils/Utils.h
M mlir/include/mlir/Dialect/MemRef/IR/MemRefOps.td
M mlir/include/mlir/Dialect/Mesh/IR/MeshOps.h
M mlir/include/mlir/Dialect/Mesh/Transforms/Passes.h
M mlir/include/mlir/Dialect/Mesh/Transforms/Passes.td
M mlir/include/mlir/Dialect/Tensor/Utils/Utils.h
M mlir/include/mlir/Dialect/Vector/IR/VectorOps.td
M mlir/include/mlir/ExecutionEngine/ExecutionEngine.h
M mlir/include/mlir/IR/BlockSupport.h
M mlir/include/mlir/IR/Builders.h
M mlir/include/mlir/IR/BuiltinOps.td
M mlir/include/mlir/IR/BuiltinTypes.td
M mlir/include/mlir/IR/OpBase.td
M mlir/include/mlir/IR/Operation.h
M mlir/include/mlir/IR/PatternMatch.h
M mlir/include/mlir/IR/Region.h
M mlir/include/mlir/IR/SymbolTable.h
M mlir/include/mlir/IR/TypeRange.h
M mlir/include/mlir/IR/ValueRange.h
M mlir/include/mlir/Interfaces/ControlFlowInterfaces.h
M mlir/include/mlir/Interfaces/ControlFlowInterfaces.td
M mlir/include/mlir/Query/Matcher/Marshallers.h
M mlir/include/mlir/Query/Matcher/MatchFinder.h
M mlir/include/mlir/Query/Matcher/MatchersInternal.h
M mlir/include/mlir/Query/Matcher/SliceMatchers.h
M mlir/include/mlir/Query/Matcher/VariantValue.h
M mlir/include/mlir/Rewrite/FrozenRewritePatternSet.h
M mlir/include/mlir/Target/LLVMIR/ModuleTranslation.h
M mlir/include/mlir/Tools/PDLL/AST/Types.h
M mlir/include/mlir/Transforms/DialectConversion.h
M mlir/include/mlir/Transforms/Passes.h
M mlir/lib/Analysis/DataFlow/LivenessAnalysis.cpp
M mlir/lib/Conversion/AMDGPUToROCDL/AMDGPUToROCDL.cpp
M mlir/lib/Conversion/ArithToLLVM/ArithToLLVM.cpp
M mlir/lib/Conversion/ControlFlowToLLVM/ControlFlowToLLVM.cpp
M mlir/lib/Conversion/FuncToLLVM/FuncToLLVM.cpp
M mlir/lib/Conversion/GPUToNVVM/LowerGpuOpsToNVVMOps.cpp
M mlir/lib/Conversion/GPUToSPIRV/GPUToSPIRV.cpp
M mlir/lib/Conversion/MemRefToLLVM/MemRefToLLVM.cpp
M mlir/lib/Dialect/AMDGPU/Transforms/EmulateAtomics.cpp
M mlir/lib/Dialect/AMDGPU/Transforms/ResolveStridedMetadata.cpp
M mlir/lib/Dialect/AMDGPU/Transforms/TransferReadToLoad.cpp
M mlir/lib/Dialect/Arith/IR/ArithCanonicalization.td
M mlir/lib/Dialect/Arith/IR/ArithOps.cpp
M mlir/lib/Dialect/Arith/Transforms/BufferizableOpInterfaceImpl.cpp
M mlir/lib/Dialect/Arith/Transforms/ExpandOps.cpp
M mlir/lib/Dialect/Bufferization/IR/BufferizableOpInterface.cpp
M mlir/lib/Dialect/Bufferization/IR/BufferizationDialect.cpp
M mlir/lib/Dialect/Bufferization/IR/BufferizationOps.cpp
A mlir/lib/Dialect/Bufferization/IR/BufferizationTypeInterfaces.cpp
M mlir/lib/Dialect/Bufferization/IR/CMakeLists.txt
M mlir/lib/Dialect/Bufferization/Transforms/Bufferize.cpp
M mlir/lib/Dialect/Bufferization/Transforms/FuncBufferizableOpInterfaceImpl.cpp
M mlir/lib/Dialect/ControlFlow/IR/ControlFlowOps.cpp
M mlir/lib/Dialect/EmitC/IR/EmitC.cpp
M mlir/lib/Dialect/EmitC/Transforms/FormExpressions.cpp
M mlir/lib/Dialect/EmitC/Transforms/Transforms.cpp
M mlir/lib/Dialect/GPU/Transforms/DecomposeMemRefs.cpp
M mlir/lib/Dialect/LLVMIR/IR/LLVMDialect.cpp
M mlir/lib/Dialect/LLVMIR/IR/TypeDetail.h
M mlir/lib/Dialect/Linalg/TransformOps/LinalgTransformOps.cpp
M mlir/lib/Dialect/Linalg/Transforms/CMakeLists.txt
M mlir/lib/Dialect/Linalg/Transforms/ConvertToDestinationStyle.cpp
A mlir/lib/Dialect/Linalg/Transforms/PadTilingInterface.cpp
M mlir/lib/Dialect/Linalg/Transforms/Padding.cpp
M mlir/lib/Dialect/Linalg/Utils/Utils.cpp
M mlir/lib/Dialect/MemRef/Transforms/ExpandOps.cpp
M mlir/lib/Dialect/Mesh/IR/MeshOps.cpp
M mlir/lib/Dialect/Mesh/Transforms/ShardingPropagation.cpp
M mlir/lib/Dialect/SCF/Transforms/BufferizableOpInterfaceImpl.cpp
M mlir/lib/Dialect/Shape/Transforms/BufferizableOpInterfaceImpl.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/SparseGPUCodegen.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/SparseTensorCodegen.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/SparseTensorConversion.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/SparsificationAndBufferizationPass.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/Utils/CodegenUtils.cpp
M mlir/lib/Dialect/Tensor/Transforms/BufferizableOpInterfaceImpl.cpp
M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
M mlir/lib/Dialect/XeGPU/Transforms/XeGPUBlocking.cpp
M mlir/lib/Dialect/XeGPU/Transforms/XeGPUSubgroupDistribute.cpp
M mlir/lib/Dialect/XeGPU/Transforms/XeGPUUnroll.cpp
M mlir/lib/Dialect/XeGPU/Transforms/XeGPUWgToSgDistribute.cpp
M mlir/lib/Interfaces/ControlFlowInterfaces.cpp
M mlir/lib/Pass/PassManagerOptions.cpp
M mlir/lib/Pass/PassStatistics.cpp
M mlir/lib/Query/Matcher/CMakeLists.txt
A mlir/lib/Query/Matcher/MatchersInternal.cpp
M mlir/lib/Query/Matcher/RegistryManager.cpp
M mlir/lib/Query/Matcher/VariantValue.cpp
M mlir/lib/Query/Query.cpp
M mlir/lib/TableGen/Operator.cpp
M mlir/lib/Target/Cpp/TranslateToCpp.cpp
M mlir/lib/Target/LLVMIR/Dialect/LLVMIR/LLVMIRToLLVMTranslation.cpp
M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
M mlir/lib/Target/LLVMIR/ModuleTranslation.cpp
M mlir/lib/Transforms/Utils/DialectConversion.cpp
M mlir/python/mlir/_mlir_libs/_mlir/ir.pyi
M mlir/test/Conversion/AMDGPUToROCDL/mfma-gfx950.mlir
M mlir/test/Conversion/ArithToLLVM/arith-to-llvm.mlir
M mlir/test/Conversion/ControlFlowToLLVM/branch.mlir
M mlir/test/Conversion/GPUToNVVM/gpu-to-nvvm.mlir
M mlir/test/Conversion/GPUToSPIRV/shuffle.mlir
M mlir/test/Conversion/MemRefToLLVM/memref-to-llvm.mlir
M mlir/test/Dialect/Affine/constant-fold.mlir
M mlir/test/Dialect/Arith/canonicalize.mlir
M mlir/test/Dialect/Arith/expand-ops.mlir
M mlir/test/Dialect/Arith/ops.mlir
M mlir/test/Dialect/Bufferization/Transforms/one-shot-bufferize.mlir
M mlir/test/Dialect/ControlFlow/canonicalize.mlir
M mlir/test/Dialect/ControlFlow/invalid.mlir
M mlir/test/Dialect/ControlFlow/ops.mlir
M mlir/test/Dialect/Linalg/mesh-spmdization.mlir
A mlir/test/Dialect/Linalg/transform-op-pad-tiling-interface-multiple-of.mlir
A mlir/test/Dialect/Linalg/transform-op-pad-tiling-interface.mlir
M mlir/test/Dialect/Linalg/transform-op-pad.mlir
M mlir/test/Dialect/MemRef/expand-ops.mlir
A mlir/test/Dialect/Mesh/backward-sharding-propagation.mlir
A mlir/test/Dialect/Mesh/forward-backward-sharding-propagation.mlir
A mlir/test/Dialect/Mesh/forward-sharding-propagation.mlir
M mlir/test/Dialect/Mesh/spmdization.mlir
M mlir/test/Dialect/Tensor/mesh-spmdization.mlir
M mlir/test/Dialect/Tosa/constant_folding.mlir
M mlir/test/Dialect/Vector/constant-fold.mlir
M mlir/test/Dialect/Vector/invalid.mlir
M mlir/test/Dialect/Vector/ops.mlir
A mlir/test/Dialect/Vector/single-fold.mlir
M mlir/test/Dialect/XeGPU/invalid.mlir
A mlir/test/Dialect/XeGPU/layout.mlir
M mlir/test/Dialect/XeGPU/ops.mlir
M mlir/test/Dialect/XeGPU/subgroup-map-propagation.mlir
M mlir/test/Dialect/XeGPU/xegpu-blocking.mlir
M mlir/test/Dialect/XeGPU/xegpu-unroll-patterns.mlir
A mlir/test/Dialect/XeGPU/xegpu-wg-to-sg-elemwise.mlir
M mlir/test/Dialect/XeGPU/xegpu-wg-to-sg-rr.mlir
M mlir/test/Dialect/XeGPU/xegpu-wg-to-sg.mlir
A mlir/test/Integration/Dialect/Arith/CPU/test-arith-expand-truncf-extf.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/dense_output_bf16.mlir
M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_sum_bf16.mlir
A mlir/test/Integration/Dialect/Vector/CPU/ArmSVE/vector-contract-i8mm.mlir
M mlir/test/Integration/GPU/CUDA/dump-ptx.mlir
M mlir/test/Target/LLVMIR/Import/metadata-profiling.ll
M mlir/test/Target/LLVMIR/llvmir-invalid.mlir
M mlir/test/Target/LLVMIR/llvmir.mlir
A mlir/test/Target/LLVMIR/omptarget-debug-loop-loc.mlir
M mlir/test/Target/LLVMIR/omptarget-llvm.mlir
M mlir/test/Target/LLVMIR/omptargetdata-nowait-llvm.mlir
M mlir/test/Target/LLVMIR/openmp-data-target-device.mlir
A mlir/test/Target/LLVMIR/openmp-task-charbox.mlir
M mlir/test/Transforms/constant-fold-debuginfo.mlir
M mlir/test/Transforms/constant-fold.mlir
M mlir/test/Transforms/remove-dead-values.mlir
M mlir/test/lib/Analysis/DataFlow/TestDenseBackwardDataFlowAnalysis.cpp
M mlir/test/lib/Analysis/DataFlow/TestDenseForwardDataFlowAnalysis.cpp
M mlir/test/lib/Analysis/DataFlow/TestSparseBackwardDataFlowAnalysis.cpp
M mlir/test/lib/Dialect/Test/TestOpDefs.cpp
M mlir/test/lib/Dialect/Test/TestOps.h
M mlir/test/lib/Dialect/Test/TestOps.td
M mlir/test/lib/Dialect/Test/TestTypeDefs.td
M mlir/test/lib/Dialect/Test/TestTypes.cpp
M mlir/test/lib/Dialect/XeGPU/TestXeGPUTransforms.cpp
M mlir/test/lib/Transforms/CMakeLists.txt
R mlir/test/lib/Transforms/TestConstantFold.cpp
A mlir/test/lib/Transforms/TestSingleFold.cpp
A mlir/test/mlir-opt/local-reproducer-with-threading.mlir
A mlir/test/mlir-query/backward-slice-union.mlir
R mlir/test/mlir-query/complex-test.mlir
A mlir/test/mlir-query/forward-slice-by-predicate.mlir
A mlir/test/mlir-query/logical-operator-test.mlir
A mlir/test/mlir-query/slice-function-extraction.mlir
M mlir/test/mlir-tblgen/op-format.mlir
M mlir/tools/mlir-opt/mlir-opt.cpp
M mlir/tools/mlir-query/mlir-query.cpp
M mlir/tools/mlir-tblgen/OpFormatGen.cpp
M mlir/unittests/IR/OperationSupportTest.cpp
M mlir/unittests/IR/ValueTest.cpp
M mlir/utils/vscode/package-lock.json
M mlir/utils/vscode/package.json
A offload/cmake/caches/AMDGPULibcBot.cmake
M offload/liboffload/API/Common.td
M offload/liboffload/include/OffloadImpl.hpp
M offload/liboffload/src/OffloadImpl.cpp
M offload/liboffload/src/OffloadLib.cpp
M offload/plugins-nextgen/common/include/PluginInterface.h
M offload/tools/offload-tblgen/EntryPointGen.cpp
M offload/unittests/CMakeLists.txt
M offload/unittests/OffloadAPI/CMakeLists.txt
M offload/unittests/OffloadAPI/common/Environment.cpp
M offload/unittests/OffloadAPI/device_code/CMakeLists.txt
A offload/unittests/OffloadAPI/init/olInit.cpp
M runtimes/CMakeLists.txt
M utils/bazel/llvm-project-overlay/lld/BUILD.bazel
M utils/bazel/llvm-project-overlay/llvm/BUILD.bazel
M utils/bazel/llvm-project-overlay/llvm/config.bzl
M utils/bazel/llvm-project-overlay/llvm/include/llvm/Config/config.h
M utils/bazel/llvm-project-overlay/llvm/include/llvm/Config/llvm-config.h
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
M utils/bazel/llvm-project-overlay/mlir/test/BUILD.bazel
M utils/bazel/llvm_configs/config.h.cmake
M utils/bazel/llvm_configs/llvm-config.h.cmake
Log Message:
-----------
rebase
Created using spr 1.3.6
Compare: https://github.com/llvm/llvm-project/compare/e57b789e49ac...0d7cc25ece77
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