[all-commits] [llvm/llvm-project] d11fd6: [X86] Remove WIDEKL feature from Pantherlake and C...
Alexey Bataev via All-commits
all-commits at lists.llvm.org
Wed Jul 16 07:06:14 PDT 2025
Branch: refs/heads/users/alexey-bataev/spr/slpinitial-fma-support
Home: https://github.com/llvm/llvm-project
Commit: d11fd669598944b8f1204a7e42ae427fc4901ba9
https://github.com/llvm/llvm-project/commit/d11fd669598944b8f1204a7e42ae427fc4901ba9
Author: Phoebe Wang <phoebe.wang at intel.com>
Date: 2025-07-11 (Fri, 11 Jul 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 WIDEKL feature from Pantherlake and Clearwaterforest (#148184)
According to Intel
[SDM088](https://cdrdv2.intel.com/v1/dl/getContent/671200) Volume 1,
Chapter 2.4, Key Locker will be removed from 2025 onwards products.
Commit: 38b9c660a7a3b8947b23acc344521d770c340e48
https://github.com/llvm/llvm-project/commit/38b9c660a7a3b8947b23acc344521d770c340e48
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2025-07-11 (Fri, 11 Jul 2025)
Changed paths:
M clang/lib/AST/ByteCode/Interp.cpp
Log Message:
-----------
[clang][bytecode] Remove needless global check (#148163)
Remove the call to D->hasGlobalStorage(), since we never reach this
point for local variables.
Commit: eee723f928c534dbf55e81539341c0bb0681544b
https://github.com/llvm/llvm-project/commit/eee723f928c534dbf55e81539341c0bb0681544b
Author: Ross Brunton <ross at codeplay.com>
Date: 2025-07-11 (Fri, 11 Jul 2025)
Changed paths:
M offload/liboffload/API/Kernel.td
M offload/liboffload/API/Symbol.td
M offload/liboffload/src/OffloadImpl.cpp
M offload/unittests/OffloadAPI/CMakeLists.txt
M offload/unittests/OffloadAPI/common/Fixtures.hpp
M offload/unittests/OffloadAPI/device_code/global.c
R offload/unittests/OffloadAPI/kernel/olGetKernel.cpp
M offload/unittests/OffloadAPI/kernel/olLaunchKernel.cpp
A offload/unittests/OffloadAPI/symbol/olGetSymbol.cpp
Log Message:
-----------
[Offload] Replace `GetKernel` with `GetSymbol` with global support (#148221)
`olGetKernel` has been replaced by `olGetSymbol` which accepts a
`Kind` parameter. As well as loading information about kernels, it
can now also load information about global variables.
Commit: 0f0079c29da4b4d5bbd43dced1db9ad6c6d11008
https://github.com/llvm/llvm-project/commit/0f0079c29da4b4d5bbd43dced1db9ad6c6d11008
Author: JaydeepChauhan14 <chauhan.jaydeep.ashwinbhai at intel.com>
Date: 2025-07-11 (Fri, 11 Jul 2025)
Changed paths:
M llvm/include/llvm/CodeGen/GlobalISel/MachineIRBuilder.h
M llvm/include/llvm/Support/TargetOpcodes.def
M llvm/include/llvm/Target/GenericOpcodes.td
M llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
M llvm/lib/Target/X86/GISel/X86LegalizerInfo.cpp
M llvm/lib/Target/X86/GISel/X86LegalizerInfo.h
M llvm/lib/Target/X86/X86InstrGISel.td
M llvm/test/CodeGen/AArch64/GlobalISel/legalizer-info-validation.mir
M llvm/test/CodeGen/RISCV/GlobalISel/legalizer-info-validation.mir
M llvm/test/CodeGen/X86/flt-rounds.ll
M llvm/test/MC/ELF/mc-dump.s
M llvm/test/TableGen/GlobalISelEmitter/GlobalISelEmitter.td
Log Message:
-----------
[X86][GlobalISel] Added support for llvm.get.rounding (#147716)
- This implementation is adapted from SDAG
X86TargetLowering::LowerGET_ROUNDING.
- llvm.set.rounding will be added later because it involves MXCSR
updates currently unsupported.
Commit: 13bb3281f355c1d2ca09672c4c84faa5adffd390
https://github.com/llvm/llvm-project/commit/13bb3281f355c1d2ca09672c4c84faa5adffd390
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2025-07-11 (Fri, 11 Jul 2025)
Changed paths:
M libcxx/test/std/utilities/meta/meta.unary/meta.unary.comp/is_bounded_array.pass.cpp
Log Message:
-----------
[libc++] XFAIL is_bounded_array.pass.cpp for Android as well
The Android CI is currently using a compiler that's too old.
Commit: a89021bc83705172b4a4cdac0a95ff50f4f868b1
https://github.com/llvm/llvm-project/commit/a89021bc83705172b4a4cdac0a95ff50f4f868b1
Author: Darren Wihandi <65404740+fairywreath at users.noreply.github.com>
Date: 2025-07-11 (Fri, 11 Jul 2025)
Changed paths:
M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVArithmeticOps.td
M mlir/lib/Dialect/SPIRV/IR/CMakeLists.txt
A mlir/lib/Dialect/SPIRV/IR/DotProductOps.cpp
R mlir/lib/Dialect/SPIRV/IR/IntegerDotProductOps.cpp
M mlir/test/Conversion/VectorToSPIRV/vector-to-spirv.mlir
M mlir/test/Dialect/SPIRV/IR/arithmetic-ops.mlir
M mlir/test/Dialect/SPIRV/IR/availability.mlir
M mlir/test/Target/SPIRV/arithmetic-ops.mlir
Log Message:
-----------
[mlir][spirv] Enable dot operation for bfloat16 (#145409)
Allows dot operations to use vectors of bfloat16 type.
Commit: d7a17540f8b1577367957581355834eefb72a970
https://github.com/llvm/llvm-project/commit/d7a17540f8b1577367957581355834eefb72a970
Author: Baranov Victor <bar.victor.2002 at gmail.com>
Date: 2025-07-11 (Fri, 11 Jul 2025)
Changed paths:
A clang-tools-extra/clang-tidy/.clang-tidy
M clang-tools-extra/clang-tidy/boost/UseRangesCheck.h
M clang-tools-extra/clang-tidy/bugprone/ArgumentCommentCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/CrtpConstructorAccessibilityCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/InfiniteLoopCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/MacroRepeatedSideEffectsCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/SizeofExpressionCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/UnsafeFunctionsCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/MissingStdForwardCheck.cpp
M clang-tools-extra/clang-tidy/misc/RedundantExpressionCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseConstraintsCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseRangesCheck.h
M clang-tools-extra/clang-tidy/modernize/UseScopedLockCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseStdFormatCheck.cpp
M clang-tools-extra/clang-tidy/objc/PropertyDeclarationCheck.cpp
M clang-tools-extra/clang-tidy/readability/ConvertMemberFunctionsToStatic.cpp
M clang-tools-extra/clang-tidy/readability/MakeMemberFunctionConstCheck.cpp
M clang-tools-extra/clang-tidy/readability/SuspiciousCallArgumentCheck.cpp
M clang-tools-extra/clang-tidy/utils/DesignatedInitializers.cpp
M clang-tools-extra/clang-tidy/utils/HeaderGuard.cpp
M clang-tools-extra/clang-tidy/utils/RenamerClangTidyCheck.cpp
M clang-tools-extra/clang-tidy/utils/UseRangesCheck.cpp
M clang-tools-extra/clang-tidy/utils/UseRangesCheck.h
Log Message:
-----------
[clang-tidy][NFC] add '.clang-tidy' config for clang-tidy project (#147793)
Added `.clang-tidy` config as discussed in
[RFC](https://discourse.llvm.org/t/rfc-create-hardened-clang-tidy-config-for-clang-tidy-directory/87247).
Added `bugprone`, `readability`, `modernize`, `performance` checks that
didn't create many warnings.
Fixed minor warnings to make `/clang-tidy` directory complaint with
`clang-tidy-20`.
Disabled checks will be enabled in future PRs after fixing their
warnings.
Commit: 584ef947621b33c45c035cc32c7c10a417fb191c
https://github.com/llvm/llvm-project/commit/584ef947621b33c45c035cc32c7c10a417fb191c
Author: Paul Walker <paul.walker at arm.com>
Date: 2025-07-11 (Fri, 11 Jul 2025)
Changed paths:
M clang/include/clang/Basic/arm_sve.td
M clang/test/CodeGen/AArch64/sme-intrinsics/aarch64-sme-attrs.cpp
M clang/test/CodeGen/AArch64/sme-intrinsics/acle_sme_add-i64.c
M clang/test/CodeGen/AArch64/sme-intrinsics/acle_sme_mopa-za32.c
M clang/test/CodeGen/AArch64/sme-intrinsics/acle_sme_mopa-za64.c
M clang/test/CodeGen/AArch64/sme-intrinsics/acle_sme_mops-za32.c
M clang/test/CodeGen/AArch64/sme-intrinsics/acle_sme_mops-za64.c
M clang/test/CodeGen/AArch64/sme2-intrinsics/aarch64-sme2-attrs.cpp
M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_add.c
M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_add_sub_za16.c
M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_bmop.c
M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_clamp.c
M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_cvt.c
M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_cvtn.c
M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_fmlas16.c
M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_fp_dots.c
M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_frint.c
M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_int_dots.c
M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_luti2_lane_zt.c
M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_luti2_lane_zt_x2.c
M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_luti2_lane_zt_x4.c
M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_luti4_lane_zt.c
M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_luti4_lane_zt_x2.c
M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_luti4_lane_zt_x4.c
M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_max.c
M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_maxnm.c
M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_min.c
M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_minnm.c
M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_mla.c
M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_mlal.c
M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_mlall.c
M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_mls.c
M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_mlsl.c
M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_mop.c
M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_mop4_1x2.c
M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_mop4_2x1.c
M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_mop4_2x2.c
M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_mopa_nonwide.c
M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_read.c
M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_reinterpret_svcount_svbool.c
M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_sqdmulh.c
M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_sub.c
M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_unpkx2.c
M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_unpkx4.c
M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_vdot.c
M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_vector_add.c
M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_vector_qrshr.c
M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_vector_rshl.c
M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_vector_selx2.c
M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_vector_selx4.c
M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_vector_uzpx2.c
M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_vector_uzpx4.c
M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_vector_zipx2.c
M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_vector_zipx4.c
M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_write.c
M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_write_lane_zt.c
M clang/test/CodeGen/AArch64/sme2p1-intrinsics/acle_sme2p1_movaz.c
M clang/test/CodeGen/AArch64/sme2p1-intrinsics/acle_sme2p1_zero.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_clasta-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_clastb-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_cnt-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_create2-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_create3-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_create4-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_dup-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_dupq-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_ext-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_get2-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_get3-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_get4-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_insr-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_lasta-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_lastb-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_ld1-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_ld1ro-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_ld1rq-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_ld2-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_ld2.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_ld3-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_ld3.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_ld4-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_ld4.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_ldff1-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_ldnf1-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_ldnt1-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_len-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_reinterpret-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_rev-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_sel-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_set2-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_set3-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_set4-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_splice-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_st1-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_st2-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_st3-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_st4-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_stnt1-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_tbl-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_trn1-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_trn1-fp64-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_trn2-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_trn2-fp64-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_undef-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_undef2-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_undef2.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_undef3-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_undef3.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_undef4-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_undef4.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_uzp1-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_uzp1-fp64-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_uzp2-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_uzp2-fp64-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_zip1-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_zip1-fp64-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_zip2-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_zip2-fp64-bfloat.c
M clang/test/CodeGen/AArch64/sve2-intrinsics/acle_sve2_luti.c
M clang/test/CodeGen/AArch64/sve2-intrinsics/acle_sve2_revd.c
M clang/test/CodeGen/AArch64/sve2-intrinsics/acle_sve2_tbl2-bfloat.c
M clang/test/CodeGen/AArch64/sve2-intrinsics/acle_sve2_tbx-bfloat.c
M clang/test/CodeGen/AArch64/sve2-intrinsics/acle_sve2_whilerw-bfloat.c
M clang/test/CodeGen/AArch64/sve2-intrinsics/acle_sve2_whilewr-bfloat.c
M clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_bfadd.c
M clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_bfmax.c
M clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_bfmaxnm.c
M clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_bfmin.c
M clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_bfminnm.c
M clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_bfmla.c
M clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_bfmls.c
M clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_bfmlsl.c
M clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_bfmul.c
M clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_bfsub.c
M clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_cntp.c
M clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_create2_bool.c
M clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_create4_bool.c
M clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_dot.c
M clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_dupq.c
M clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_extq.c
M clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_fclamp.c
M clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_get2_bool.c
M clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_get4_bool.c
M clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_ld1.c
M clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_ldnt1.c
M clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_load_struct.c
M clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_loads.c
M clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_pext.c
M clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_pfalse.c
M clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_psel.c
M clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_psel_svcount.c
M clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_ptrue.c
M clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_qcvtn.c
M clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_qrshr.c
M clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_sclamp.c
M clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_set2_bool.c
M clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_set4_bool.c
M clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_st1.c
M clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_stnt1.c
M clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_store.c
M clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_store_struct.c
M clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_tblq.c
M clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_tbxq.c
M clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_uclamp.c
M clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_undef_bool.c
M clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_uzpq1.c
M clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_uzpq2.c
M clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_while_pn.c
M clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_while_x2.c
M clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_zipq1.c
M clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_zipq2.c
A clang/test/Sema/aarch64-sve-intrinsics/acle_sve_bf16.cpp
A clang/test/Sema/aarch64-sve-intrinsics/acle_sve_bf16_non_streaming_only.cpp
R clang/test/Sema/aarch64-sve-intrinsics/acle_sve_bfloat.cpp
R clang/test/Sema/aarch64-sve2-intrinsics/acle_sve2_bfloat.cpp
Log Message:
-----------
[Clang][AArch64] Relax SVE bf16 requirement for opaque builtins. (#147795)
Feature flags protect instructions not datatypes. This means only
builtins associated with +bf16 protected instructions must be guarded.
Those that treat the data as opaque 16-bit values (e.g. loads, store and
shuffles) should be freely available with the underlying SVE feature.
Commit: a386d0e13f7c7f2f894999d9cd56d6aa8fc90d58
https://github.com/llvm/llvm-project/commit/a386d0e13f7c7f2f894999d9cd56d6aa8fc90d58
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2025-07-11 (Fri, 11 Jul 2025)
Changed paths:
M .github/workflows/containers/github-action-ci/Dockerfile
Log Message:
-----------
[Github] Bump CI Container to 20.1.8 (#148104)
This patch bumps the LLVM toolchain version within the CI container to
20.1.8.
Commit: 84e15d08c26eb56ca1edf35a17652ba0456d903b
https://github.com/llvm/llvm-project/commit/84e15d08c26eb56ca1edf35a17652ba0456d903b
Author: Ross Brunton <ross at codeplay.com>
Date: 2025-07-11 (Fri, 11 Jul 2025)
Changed paths:
M offload/liboffload/API/Symbol.td
M offload/liboffload/src/OffloadImpl.cpp
M offload/unittests/OffloadAPI/CMakeLists.txt
M offload/unittests/OffloadAPI/common/Fixtures.hpp
A offload/unittests/OffloadAPI/symbol/olGetSymbolInfo.cpp
A offload/unittests/OffloadAPI/symbol/olGetSymbolInfoSize.cpp
Log Message:
-----------
[Offload] Add `olGetSymbolInfo[Size]` (#147962)
This mirrors the similar functions for other handles. The only
implemented info at the moment is the symbol's kind.
Commit: 77914c96dfc55562404d18c1ab777137055679db
https://github.com/llvm/llvm-project/commit/77914c96dfc55562404d18c1ab777137055679db
Author: Kunwar Grover <groverkss at gmail.com>
Date: 2025-07-11 (Fri, 11 Jul 2025)
Changed paths:
M mlir/lib/Dialect/Vector/Transforms/VectorTransforms.cpp
M mlir/test/Dialect/Vector/vector-sink.mlir
Log Message:
-----------
[mlir][Vector] Do not propagate vector.extract on dynamic position (#148245)
Propagating vector.extract when a dynamic position is present can cause
dominance issues and needs better handling. For now, disable propagation
if there is a dynamic position present.
Commit: b152611cbead7e1ee239b57624734b909cd4212b
https://github.com/llvm/llvm-project/commit/b152611cbead7e1ee239b57624734b909cd4212b
Author: Paul Walker <paul.walker at arm.com>
Date: 2025-07-11 (Fri, 11 Jul 2025)
Changed paths:
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_clasta-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_clasta.c
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_clastb-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_clastb.c
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_cnt-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_cnt.c
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_create2-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_create2.c
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_create3-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_create3.c
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_create4-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_create4.c
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_dup-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_dup.c
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_dupq-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_dupq.c
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_ext-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_ext.c
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_get2-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_get2.c
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_get3-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_get3.c
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_get4-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_get4.c
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_insr-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_insr.c
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_lasta-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_lasta.c
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_lastb-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_lastb.c
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_ld1-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_ld1.c
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_ld1ro-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_ld1ro.c
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_ld1rq-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_ld1rq.c
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_ld2-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_ld2.c
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_ld3-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_ld3.c
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_ld4-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_ld4.c
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_ldff1-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_ldff1.c
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_ldnf1-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_ldnf1.c
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_ldnt1-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_ldnt1.c
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_len-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_len.c
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_reinterpret-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_reinterpret.c
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_rev-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_rev.c
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_sel-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_sel.c
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_set2-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_set2.c
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_set3-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_set3.c
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_set4-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_set4.c
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_splice-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_splice.c
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_st1-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_st1.c
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_st2-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_st2.c
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_st3-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_st3.c
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_st4-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_st4.c
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_stnt1-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_stnt1.c
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_tbl-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_tbl.c
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_trn1-bfloat.c
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_trn1-fp64-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_trn1-fp64.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_trn1.c
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_trn2-bfloat.c
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_trn2-fp64-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_trn2-fp64.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_trn2.c
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_undef-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_undef.c
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_undef2-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_undef2.c
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_undef3-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_undef3.c
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_undef4-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_undef4.c
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_uzp1-bfloat.c
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_uzp1-fp64-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_uzp1-fp64.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_uzp1.c
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_uzp2-bfloat.c
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_uzp2-fp64-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_uzp2-fp64.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_uzp2.c
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_zip1-bfloat.c
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_zip1-fp64-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_zip1-fp64.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_zip1.c
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_zip2-bfloat.c
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_zip2-fp64-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_zip2-fp64.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_zip2.c
R clang/test/CodeGen/AArch64/sve2-intrinsics/acle_sve2_tbl2-bfloat.c
M clang/test/CodeGen/AArch64/sve2-intrinsics/acle_sve2_tbl2.c
R clang/test/CodeGen/AArch64/sve2-intrinsics/acle_sve2_tbx-bfloat.c
M clang/test/CodeGen/AArch64/sve2-intrinsics/acle_sve2_tbx.c
R clang/test/CodeGen/AArch64/sve2-intrinsics/acle_sve2_whilerw-bfloat.c
M clang/test/CodeGen/AArch64/sve2-intrinsics/acle_sve2_whilerw.c
R clang/test/CodeGen/AArch64/sve2-intrinsics/acle_sve2_whilewr-bfloat.c
M clang/test/CodeGen/AArch64/sve2-intrinsics/acle_sve2_whilewr.c
Log Message:
-----------
[NFC][Clang] Merge SVE bfloat specific acle tests with non-bfloat tests.
Commit: 2c0d563a76fcda85d655f39a8fd287bbf0e547ca
https://github.com/llvm/llvm-project/commit/2c0d563a76fcda85d655f39a8fd287bbf0e547ca
Author: peter mckinna <peter.mckinna at gmail.com>
Date: 2025-07-11 (Fri, 11 Jul 2025)
Changed paths:
M llvm/include/llvm-c/DebugInfo.h
M llvm/lib/IR/DebugInfo.cpp
M llvm/test/Bindings/llvm-c/debug_info_new_format.ll
M llvm/tools/llvm-c-test/debuginfo.c
Log Message:
-----------
Add debuginfo C support for a SetType, Subrangetype, dynamic array type and replace arrays (#135607)
This change adds some support to the C DebugInfo capability to create set types,
subrange types, dynamic array types and the ability to replace arrays.
Commit: 2fdeeefacf15b17f3c3c4aa6afd67e9074b172ab
https://github.com/llvm/llvm-project/commit/2fdeeefacf15b17f3c3c4aa6afd67e9074b172ab
Author: Ross Brunton <ross at codeplay.com>
Date: 2025-07-11 (Fri, 11 Jul 2025)
Changed paths:
M offload/liboffload/API/Symbol.td
M offload/liboffload/src/OffloadImpl.cpp
M offload/tools/offload-tblgen/PrintGen.cpp
M offload/unittests/OffloadAPI/memory/olMemcpy.cpp
M offload/unittests/OffloadAPI/symbol/olGetSymbolInfo.cpp
M offload/unittests/OffloadAPI/symbol/olGetSymbolInfoSize.cpp
Log Message:
-----------
[Offload] Add global variable address/size queries (#147972)
Add two new symbol info types for getting the bounds of a global
variable. As well as a number of tests for reading/writing to it.
Commit: 535d6917ec3308ade866f205644b740666312342
https://github.com/llvm/llvm-project/commit/535d6917ec3308ade866f205644b740666312342
Author: Joseph Huber <huberjn at outlook.com>
Date: 2025-07-11 (Fri, 11 Jul 2025)
Changed paths:
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/test/Driver/openmp-offload-gpu.c
M clang/tools/clang-linker-wrapper/ClangLinkerWrapper.cpp
M clang/tools/clang-linker-wrapper/LinkerWrapperOpts.td
Log Message:
-----------
[Clang] Extract offloading code from static libs with 'offload-arch=' (#147823)
Summary:
The semantics of static libraries only extract stuff that's used. We
somewhat extend this behavior with the linker wrapper only doing this to
fat binaries that match any found architectures. However, this has some
unfortunate effects when the user uses static libraries.
This is somewhat of a hack, but we now assume that if the user specified
`--offload-arch=` on the link job, they *definitely* want that
architecture to be used if it exists. This patch just forces extraction
of those libraries which resolves an issue observed with some customers.
The old behavior will still be present if the user does `--offload-link`
with no offloading architecture present, and for the vast, vast majority
of cases this will change nothing.
Fixes: https://github.com/llvm/llvm-project/issues/147788
Commit: 6882a30acec695beab568d5393af9bd15970d0d6
https://github.com/llvm/llvm-project/commit/6882a30acec695beab568d5393af9bd15970d0d6
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-07-11 (Fri, 11 Jul 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVOptWInstrs.cpp
M llvm/test/CodeGen/RISCV/sextw-removal.ll
Log Message:
-----------
[RISCV] Add BREV8 and ORC_B to hasAllNBitUsers in RISCVOptWInstrs. (#148076)
These were removed in #147830 due to ignoring that these instructions
operate on bytes. This patch adds them back with tests including a test
for the byte boundary issue.
I seperated out the commits to show bad optimization if we don't round
Bits to the nearest byte.
Commit: 15c3793cdf947be16a4686d26998143fd6487641
https://github.com/llvm/llvm-project/commit/15c3793cdf947be16a4686d26998143fd6487641
Author: Cyndy Ishida <cyndy_ishida at apple.com>
Date: 2025-07-11 (Fri, 11 Jul 2025)
Changed paths:
M clang/include/clang/Tooling/DependencyScanning/DependencyScanningTool.h
M clang/include/clang/Tooling/DependencyScanning/DependencyScanningWorker.h
M clang/include/clang/Tooling/DependencyScanning/ModuleDepCollector.h
M clang/lib/Tooling/DependencyScanning/DependencyScanningTool.cpp
M clang/lib/Tooling/DependencyScanning/ModuleDepCollector.cpp
A clang/test/ClangScanDeps/visible-modules.c
M clang/tools/clang-scan-deps/ClangScanDeps.cpp
M clang/tools/clang-scan-deps/Opts.td
Log Message:
-----------
[clang][scan-deps] Report a scanned TU's visible modules (#147969)
Clients of the dependency scanning service may need to add dependencies
based on the visibility of importing modules, for example, when
determining whether a Swift overlay dependency should be brought in
based on whether there's a corresponding **visible** clang module for
it.
This patch introduces a new field `VisibleModules` that contains all the
visible top-level modules in a given TU.
Because visibility is determined by which headers or (sub)modules were
imported, and not top-level module dependencies, the scanner now
performs a separate DFS starting from what was directly imported for
this computation.
In my local performance testing, there was no observable performance
impact.
resolves: rdar://151416358
---------
Co-authored-by: Jan Svoboda <jan at svoboda.ai>
Commit: 1cd2165afe18cd35eea443b431964ca334c35c21
https://github.com/llvm/llvm-project/commit/1cd2165afe18cd35eea443b431964ca334c35c21
Author: Arthur Eubanks <aeubanks at google.com>
Date: 2025-07-11 (Fri, 11 Jul 2025)
Changed paths:
M llvm/lib/Analysis/ScalarEvolution.cpp
M llvm/unittests/Analysis/ScalarEvolutionTest.cpp
Log Message:
-----------
[SCEV] Take global variable linkage into account when comparing values (#148071)
Current the comparator is inconsistent when we have two external globals
and one internal globals due to
```
if (IsGVNameSemantic(LGV) && IsGVNameSemantic(RGV))
return LGV->getName().compare(RGV->getName());
```
The internal global compares equal to (not strictly less than) the
external globals, but the external globals are not equal.
Fixes #147862.
Commit: 5c08bfa23a437f6041bd43ee4dc09f532ab7ed77
https://github.com/llvm/llvm-project/commit/5c08bfa23a437f6041bd43ee4dc09f532ab7ed77
Author: Qiongsi Wu <qiongsiwu at gmail.com>
Date: 2025-07-11 (Fri, 11 Jul 2025)
Changed paths:
M clang/lib/Tooling/DependencyScanning/DependencyScanningFilesystem.cpp
M clang/unittests/Tooling/DependencyScanning/DependencyScanningFilesystemTest.cpp
Log Message:
-----------
[clang][Dependency Scanning] Report only Regular File Size Changes When Computing Out-of-Date File System Cache Entries (#148082)
We noticed that when a directory's content changes, its size reported by
`status` can change as well. We do not want to include such "false
positive" cases. This PR revises the computation so that only regular
file size changes are considered out-of-date.
rdar://152247357
Commit: 649347e208d400818988c99074d5248542ea75da
https://github.com/llvm/llvm-project/commit/649347e208d400818988c99074d5248542ea75da
Author: Kazu Hirata <kazu at google.com>
Date: 2025-07-11 (Fri, 11 Jul 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
Log Message:
-----------
[Vectorize] Remove unnecessary casts (NFC) (#148116)
&Ingredient is already of Instruction *.
Commit: 8ba7d805de3a7e1ac339fea27dbafb33ac4304e4
https://github.com/llvm/llvm-project/commit/8ba7d805de3a7e1ac339fea27dbafb33ac4304e4
Author: Kazu Hirata <kazu at google.com>
Date: 2025-07-11 (Fri, 11 Jul 2025)
Changed paths:
M llvm/tools/llvm-dwarfdump/Statistics.cpp
Log Message:
-----------
[llvm-dwarfdump] Remove an unnecessary cast (NFC) (#148117)
&DICtx is already of DWARFContext *.
Commit: a265829c906d1579bcb32c2512a3c022d8a1a963
https://github.com/llvm/llvm-project/commit/a265829c906d1579bcb32c2512a3c022d8a1a963
Author: Kazu Hirata <kazu at google.com>
Date: 2025-07-11 (Fri, 11 Jul 2025)
Changed paths:
M llvm/tools/llvm-readobj/ObjDumper.cpp
Log Message:
-----------
[llvm-readobj] Remove an unnecessary cast (NFC) (#148118)
TmpSecPtr is already of const uint8_t *.
Commit: 13c897093fd8d40ee3a5b13ff9c0b38c89e72bf1
https://github.com/llvm/llvm-project/commit/13c897093fd8d40ee3a5b13ff9c0b38c89e72bf1
Author: Andy Kaylor <akaylor at nvidia.com>
Date: 2025-07-11 (Fri, 11 Jul 2025)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenClass.cpp
M clang/lib/CIR/CodeGen/CIRGenExpr.cpp
M clang/lib/CIR/CodeGen/CIRGenExprAggregate.cpp
M clang/lib/CIR/CodeGen/CIRGenFunction.h
M clang/test/CIR/CodeGen/ctor.cpp
Log Message:
-----------
[CIR] Add support for non-virtual base class initialization (#148080)
This change adds support for initializing non-virtual base classes
during the prologue of a derived class' constructor.
Commit: 9adc8ddad02d062e0b395d8079f051e8ae4552b4
https://github.com/llvm/llvm-project/commit/9adc8ddad02d062e0b395d8079f051e8ae4552b4
Author: jimingham <jingham at apple.com>
Date: 2025-07-11 (Fri, 11 Jul 2025)
Changed paths:
M lldb/include/lldb/Host/HostThread.h
M lldb/include/lldb/Target/Process.h
M lldb/source/Host/common/HostThread.cpp
M lldb/source/Target/Process.cpp
M lldb/source/Target/StackFrameList.cpp
M lldb/test/API/functionalities/plugins/python_os_plugin/operating_system.py
A lldb/test/API/functionalities/plugins/python_os_plugin/os_plugin_in_dsym/Makefile
A lldb/test/API/functionalities/plugins/python_os_plugin/os_plugin_in_dsym/TestOSIndSYM.py
A lldb/test/API/functionalities/plugins/python_os_plugin/os_plugin_in_dsym/main.c
A lldb/test/API/functionalities/plugins/python_os_plugin/os_plugin_in_dsym/operating_system.py
Log Message:
-----------
When running OS Plugins from dSYM's, make sure start state is correct (#146441)
This is an odd corner case of the use of scripts loaded from dSYM's - a
macOS only feature, which can load OS Plugins that re-present the thread
state of the program we attach to. If we find out about and load the
dSYM scripts when we discover a target in the course of attaching to it,
we can end up running the OS plugin before we've started up the private
state thread. However, the os_plugin in that case will be running before
we broadcast the stop event to the public event listener. So it should
formally use the private state and not the public state for the Python
code environment.
This patch says that if we have not yet started up the private state
thread, then any thread that is servicing events is doing so on behalf
of the private state machinery, and should see the private state, not
the public state.
Most of the patch is getting a test that will actually reproduce the
error. Only the test `test_python_os_plugin_remote` actually reproduced
the error. In `test_python_os_plugin` we actually do start up the
private state thread before handling the event. `test_python_os_plugin`
is there for completeness sake.
Commit: b9d8d1e4167699de3027ceac94d29253162158c3
https://github.com/llvm/llvm-project/commit/b9d8d1e4167699de3027ceac94d29253162158c3
Author: Hui <hui.xie1990 at gmail.com>
Date: 2025-07-11 (Fri, 11 Jul 2025)
Changed paths:
M libcxx/src/atomic.cpp
Log Message:
-----------
[libc++][NFC] atomic::wait use public API on macOS (#147146)
At the moment, we use the os internal functions `__ulock_wait`. This
patch updates the code on macOS to use the public API
`os_sync_wait_on_address`.
Fixes #146142
Commit: df10df8b0caec9e649dd8c4415610038b7926060
https://github.com/llvm/llvm-project/commit/df10df8b0caec9e649dd8c4415610038b7926060
Author: Amr Hesham <amr96 at programmer.net>
Date: 2025-07-11 (Fri, 11 Jul 2025)
Changed paths:
M clang/lib/CIR/Dialect/IR/CIRDialect.cpp
M clang/test/CIR/Transforms/complex-imag-fold.cir
Log Message:
-----------
[CIR] Fold ComplexImagOp from ComplexCreateOp (#148010)
Folding ComplexImagOp if the operand is ComplexCreateOp, inspired by
MLIR Complex dialect
https://github.com/llvm/llvm-project/issues/141365
Commit: a0fcb50bf99d1d48458ee27ca92e5cd54e9910d5
https://github.com/llvm/llvm-project/commit/a0fcb50bf99d1d48458ee27ca92e5cd54e9910d5
Author: Jon Roelofs <jonathan_roelofs at apple.com>
Date: 2025-07-11 (Fri, 11 Jul 2025)
Changed paths:
M clang/utils/TableGen/NeonEmitter.cpp
Log Message:
-----------
[ARM] Improve arm_neon.h header diagnostic when included on unsupported targets (#147817)
The footgun here was that the preprocessor diagnostic that looks for
__ARM_FP would fire when included on targets like x86_64, but the
suggestion it gives in that case is totally bogus. Avoid giving bad
advice, by first checking whether we're being built for an appropriate
target, and only then do the soft-fp check.
rdar://155449666
Commit: 53183be294e92093a37f3875a8c586c74fbd4d7c
https://github.com/llvm/llvm-project/commit/53183be294e92093a37f3875a8c586c74fbd4d7c
Author: Amr Hesham <amr96 at programmer.net>
Date: 2025-07-11 (Fri, 11 Jul 2025)
Changed paths:
M clang/lib/CIR/Dialect/IR/CIRDialect.cpp
M clang/test/CIR/Transforms/complex-real-fold.cir
Log Message:
-----------
[CIR] Fold ComplexRealOp from ComplexCreateOp (#147592)
Folding ComplexRealOp if the operand is ComplexCreateOp, inspired by
MLIR Complex dialect
https://github.com/llvm/llvm-project/issues/141365
Commit: bfd6bb1641109ec5e2eb284565656a7c0b493f89
https://github.com/llvm/llvm-project/commit/bfd6bb1641109ec5e2eb284565656a7c0b493f89
Author: Stanislav Mekhanoshin <rampitec at users.noreply.github.com>
Date: 2025-07-11 (Fri, 11 Jul 2025)
Changed paths:
M llvm/test/MC/AMDGPU/gfx1250_asm_vopd.s
M llvm/test/MC/AMDGPU/gfx1250_asm_vopd3.s
Log Message:
-----------
[AMDGPU] Autogenerate gfx1250 vopd tests. NFC. (#147918)
Commit: 6dc193a8c0dfd06be434eff1a544e727cc9876a1
https://github.com/llvm/llvm-project/commit/6dc193a8c0dfd06be434eff1a544e727cc9876a1
Author: Stanislav Mekhanoshin <rampitec at users.noreply.github.com>
Date: 2025-07-11 (Fri, 11 Jul 2025)
Changed paths:
M llvm/test/MC/AMDGPU/gfx1250_err.s
Log Message:
-----------
[AMDGPU] Negative gfx1250 v_dual_cndmask_b32 tests. NFC. (#148057)
Commit: 3ab95e434428661f16c3c4bb416e7f97f926fa50
https://github.com/llvm/llvm-project/commit/3ab95e434428661f16c3c4bb416e7f97f926fa50
Author: David Green <david.green at arm.com>
Date: 2025-07-11 (Fri, 11 Jul 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/test/CodeGen/AArch64/vecreduce-fadd.ll
Log Message:
-----------
[AArch64] Scalarize v2f16 vecreduce.fadd (#147783)
This adds a custom lowering for v2f16 vecreduce.fadd to scalarize as
opposed to padding with zeroes. This allows it to generate the more
efficient faddp. Helps with #147583.
Commit: 44baef98431e21309a4b364fa7b3704a7b687ad6
https://github.com/llvm/llvm-project/commit/44baef98431e21309a4b364fa7b3704a7b687ad6
Author: Amr Hesham <amr96 at programmer.net>
Date: 2025-07-11 (Fri, 11 Jul 2025)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenExprComplex.cpp
M clang/test/CIR/CodeGen/complex.cpp
Log Message:
-----------
[CIR] Use ZeroAttr as zeroinitializer for ComplexType (#148033)
Use ZeroAttr as a zeroinitializer for ComplexType, similar to what we
did in CXXScalarValueInitExpr
https://github.com/llvm/llvm-project/issues/141365
Commit: 6563c795cd3f4fdfaba644897dada97be8f57e5b
https://github.com/llvm/llvm-project/commit/6563c795cd3f4fdfaba644897dada97be8f57e5b
Author: Luke Lau <luke at igalia.com>
Date: 2025-07-12 (Sat, 12 Jul 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVVectorPeephole.cpp
M llvm/test/CodeGen/RISCV/rvv/vmerge-peephole.mir
Log Message:
-----------
[RISCV] Handle implicit defs when ensuring pseudo dominates in peephole (#148181)
Previously we just assumed that no instruction that needed to be moved
would have an implicit def, but vnclip pseudos will.
We can still try to move them but we just need to check that no
instructions between have any reads or writes to the physical register.
Fixes #147986
Commit: bf94c8ddb321696956365830bf23dd232ef90e74
https://github.com/llvm/llvm-project/commit/bf94c8ddb321696956365830bf23dd232ef90e74
Author: Min-Yih Hsu <min.hsu at sifive.com>
Date: 2025-07-11 (Fri, 11 Jul 2025)
Changed paths:
M llvm/lib/Target/RISCV/CMakeLists.txt
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/lib/Target/RISCV/RISCVISelLowering.h
A llvm/lib/Target/RISCV/RISCVInterleavedAccess.cpp
Log Message:
-----------
[RISCV][NFC] Split InterleavedAccess related TLI hooks into a separate file (#148040)
There have been discussions on splitting RISCVISelLowering.cpp. I think
InterleavedAccess related TLI hooks would be some of the low hanging
fruit as it's relatively isolated and also because X86 is already doing
it.
NFC.
Commit: 67588d3075f3dc05b4a08c04ed5f4203e9855519
https://github.com/llvm/llvm-project/commit/67588d3075f3dc05b4a08c04ed5f4203e9855519
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2025-07-11 (Fri, 11 Jul 2025)
Changed paths:
M llvm/utils/gn/secondary/llvm/lib/Target/RISCV/BUILD.gn
Log Message:
-----------
[gn build] Port bf94c8ddb321
Commit: 4b738387aeba477aa3c7c7d688fa9982cf1f2722
https://github.com/llvm/llvm-project/commit/4b738387aeba477aa3c7c7d688fa9982cf1f2722
Author: Peiming Liu <geticliu at gmail.com>
Date: 2025-07-11 (Fri, 11 Jul 2025)
Changed paths:
M llvm/lib/CodeGen/TargetInstrInfo.cpp
M llvm/test/CodeGen/X86/coalesce-commutative-implicit-def.mir
Log Message:
-----------
[CodeGen] Do not use subsituteRegister to update implicit def (#148068)
It seems `subsituteRegister` checks `FromReg == ToReg` instead of
`TRI->isSubRegisterEq`.
This PR simply reverts the original PR
(https://github.com/llvm/llvm-project/pull/131361) to its initial
implementation (without using `subsituteRegister`).
Not sure whether it is a desired fix (and by no means that I am an
expert on LLVM backend), but it does fix a numeric error on our internal
workload.
Original author: @sdesmalen-arm
Commit: ac39d26dc4a8bf442ad59d0df742ae38a4ff9aba
https://github.com/llvm/llvm-project/commit/ac39d26dc4a8bf442ad59d0df742ae38a4ff9aba
Author: Teresa Johnson <tejohnson at google.com>
Date: 2025-07-11 (Fri, 11 Jul 2025)
Changed paths:
M llvm/lib/Transforms/IPO/MemProfContextDisambiguation.cpp
A llvm/test/ThinLTO/X86/memprof_callee_type_mismatch.ll
Log Message:
-----------
[MemProf] Don't mutate the function type when calling clone (#147829)
In rare cases the declaration of a function may not match its callsite
after function importing, when the declaration was imported from a
module where the function had void return type (presumably due to
incomplete types). Instead of using setCalledFunction() to change a call
to call its clone, which updates the call's function type as well, just
call setCalledOperand directly so the only thing changed is the function
target.
Note this can't happen for the other places where we call
setCalledFunction: FullLTO requires the cloned callee to be defined in
the same FullLTO merged module; ThinLTO memprof ICP calls an ICP
facility to first perform the promotion and that will be blocked if the
function type doesn't match the callsite (the new test explicitly tests
this latter case).
Commit: 0a343098b0ea300b75f16596db2dc32a55007546
https://github.com/llvm/llvm-project/commit/0a343098b0ea300b75f16596db2dc32a55007546
Author: Sang Ik Lee <sang.ik.lee at intel.com>
Date: 2025-07-11 (Fri, 11 Jul 2025)
Changed paths:
M mlir/include/mlir/Conversion/Passes.h
M mlir/include/mlir/Conversion/Passes.td
A mlir/include/mlir/Conversion/XeVMToLLVM/XeVMToLLVM.h
M mlir/include/mlir/InitAllExtensions.h
M mlir/lib/Conversion/CMakeLists.txt
A mlir/lib/Conversion/XeVMToLLVM/CMakeLists.txt
A mlir/lib/Conversion/XeVMToLLVM/XeVMToLLVM.cpp
A mlir/test/Conversion/XeVMToLLVM/xevm-to-llvm.mlir
Log Message:
-----------
[MLIR][Conversion] Add convert-xevm-to-llvm pass. [Re-attempt] (#148103)
Although XeVM is an LLVM extension dialect,
SPIR-V backend relies on [function
calls](https://llvm.org/docs/SPIRVUsage.html#instructions-as-function-calls)
instead of defining LLVM intrinsics to represent SPIR-V instructions.
convert-xevm-to-llvm pass lowers xevm ops to function declarations and
calls using the above naming convention.
In the future, most part of the pass should be replaced with llvmBuilder
and handled as part of translation to LLVM instead.
---------
Co-authored-by: Artem Kroviakov <artem.kroviakov at intel.com>
Commit: 1fdbe6984976d9e85ab3b1a93e8de434a85c5646
https://github.com/llvm/llvm-project/commit/1fdbe6984976d9e85ab3b1a93e8de434a85c5646
Author: Princeton Ferro <pferro at nvidia.com>
Date: 2025-07-11 (Fri, 11 Jul 2025)
Changed paths:
M llvm/lib/Target/NVPTX/NVPTXISelDAGToDAG.cpp
M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
M llvm/lib/Target/NVPTX/NVPTXInstrInfo.td
M llvm/lib/Target/NVPTX/NVPTXRegisterInfo.td
M llvm/lib/Target/NVPTX/NVPTXSubtarget.h
M llvm/lib/Target/NVPTX/NVPTXTargetTransformInfo.h
M llvm/lib/Target/NVPTX/NVPTXUtilities.h
M llvm/test/CodeGen/NVPTX/aggregate-return.ll
M llvm/test/CodeGen/NVPTX/bf16-instructions.ll
M llvm/test/CodeGen/NVPTX/bf16x2-instructions.ll
M llvm/test/CodeGen/NVPTX/f16x2-instructions.ll
A llvm/test/CodeGen/NVPTX/f32x2-instructions.ll
A llvm/test/CodeGen/NVPTX/fp-contract-f32x2.ll
M llvm/test/CodeGen/NVPTX/i16x2-instructions.ll
M llvm/test/CodeGen/NVPTX/i8x4-instructions.ll
M llvm/test/CodeGen/NVPTX/ldparam-v4.ll
M llvm/test/CodeGen/NVPTX/load-store-256-addressing-invariant.ll
M llvm/test/CodeGen/NVPTX/load-store-256-addressing.ll
M llvm/test/CodeGen/NVPTX/load-store-vectors-256.ll
M llvm/test/CodeGen/NVPTX/load-with-non-coherent-cache.ll
M llvm/test/CodeGen/NVPTX/misaligned-vector-ldst.ll
M llvm/test/CodeGen/NVPTX/read-global-variable-constant.ll
M llvm/test/CodeGen/NVPTX/reduction-intrinsics.ll
M llvm/test/CodeGen/NVPTX/vec-param-load.ll
M llvm/test/CodeGen/NVPTX/vector-args.ll
M llvm/test/CodeGen/NVPTX/vector-loads.ll
M llvm/test/CodeGen/NVPTX/vector-stores.ll
Log Message:
-----------
[NVPTX] support f32x2 instructions for sm_100+ (#126337)
Lower `fadd`, `fsub`, `fmul`, and `fma` to f32x2 variants introduced in
PTX 8.6 for sm_100+. Adds a new register class for v2f32 as a b64
register in PTX. This causes other vector operations like loads and
stores to lower as .b64 instead of .v2.b32 as appropriate.
Also update test cases to use the autogenerator.
Commit: 9693056aace285c2dcf619217dd5879862c48f1b
https://github.com/llvm/llvm-project/commit/9693056aace285c2dcf619217dd5879862c48f1b
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-07-11 (Fri, 11 Jul 2025)
Changed paths:
M llvm/include/llvm/Analysis/LoopAccessAnalysis.h
M llvm/lib/Analysis/LoopAccessAnalysis.cpp
Log Message:
-----------
[LAA] Move code to check if access are completely before/after (NFC).
Factor out code to check if access are completely before/after each
other. This reduces the diff for an upcoming re-commit and moving to a
function also helps to reduce the nesting level via early exits.
Commit: e12957080ce145fa137ed6a1b16b660719a9cbb5
https://github.com/llvm/llvm-project/commit/e12957080ce145fa137ed6a1b16b660719a9cbb5
Author: Jim M. R. Teichgräber <Jim.Teichgraber at amd.com>
Date: 2025-07-11 (Fri, 11 Jul 2025)
Changed paths:
M llvm/lib/Analysis/UniformityAnalysis.cpp
Log Message:
-----------
[Uniformity] Legacy PM: Set UniformityInfoWrapperPass isCFGOnly to false (#148165)
Currently, Uniformity Analysis is preserved in the Legacy PM when a pass
sets `setPreservesCFG()`. This is incorrect: any values' uniformity not
only depends on the CFG, but also on the uniformity of other values, so
a CFG-preserving change in many cases doesn't preserve uniformity
analysis.
This corrected behavior also matches the behavior of the new PM.
---
On its own, this change does not affect the pass pipeline because of the
happenstance of pass ordering. I also created a PR to change
AMDGPULateCodeGenPrepare (#148167), this will have an actual impact on
pass executions. That PR also includes changes to the
`amdgpu/llc-pipeline.ll` test in order to check that this change works,
but if this is preferred, I would also be happy to try to extend this PR
to add an isolated test case; though my personal opinion is that the
test in #148167 should suffice, as it should also accurately pinpoint
failures related to this change.
---
I ran `git-clang-format` on my changes. I tested them using the
`check-llvm` target; no unexpected failures occurred.
Commit: 5e0de68626828009c4cc09e2ce984f9c9634f6f6
https://github.com/llvm/llvm-project/commit/5e0de68626828009c4cc09e2ce984f9c9634f6f6
Author: Kazu Hirata <kazu at google.com>
Date: 2025-07-11 (Fri, 11 Jul 2025)
Changed paths:
M mlir/lib/Dialect/Tensor/Extensions/MeshShardingExtensions.cpp
M mlir/lib/Dialect/Tensor/IR/TensorDialect.cpp
M mlir/lib/Dialect/Tensor/IR/TensorInferTypeOpInterfaceImpl.cpp
M mlir/lib/Dialect/Tensor/IR/TensorOps.cpp
M mlir/lib/Dialect/Tensor/IR/TensorTilingInterfaceImpl.cpp
M mlir/lib/Dialect/Tensor/Transforms/BufferizableOpInterfaceImpl.cpp
M mlir/lib/Dialect/Tensor/Transforms/ConcatOpPatterns.cpp
M mlir/lib/Dialect/Tensor/Transforms/EmptyOpPatterns.cpp
M mlir/lib/Dialect/Tensor/Transforms/ExtractSliceFromReshapeUtils.cpp
M mlir/lib/Dialect/Tensor/Transforms/FoldTensorSubsetOps.cpp
M mlir/lib/Dialect/Tensor/Transforms/IndependenceTransforms.cpp
M mlir/lib/Dialect/Tensor/Transforms/ReshapePatterns.cpp
M mlir/lib/Dialect/Tensor/Transforms/RuntimeOpVerification.cpp
M mlir/lib/Dialect/Tensor/Utils/Utils.cpp
M mlir/lib/Dialect/Tosa/IR/ShardingInterfaceImpl.cpp
M mlir/lib/Dialect/Tosa/IR/TosaCanonicalizations.cpp
M mlir/lib/Dialect/Tosa/IR/TosaOps.cpp
M mlir/lib/Dialect/Tosa/Transforms/TosaDecomposeDepthwise.cpp
M mlir/lib/Dialect/Tosa/Transforms/TosaDecomposeTransposeConv.cpp
M mlir/lib/Dialect/Tosa/Transforms/TosaFolders.cpp
M mlir/lib/Dialect/Tosa/Transforms/TosaInferShapes.cpp
M mlir/lib/Dialect/Tosa/Transforms/TosaLayerwiseConstantFoldPass.cpp
M mlir/lib/Dialect/Tosa/Transforms/TosaMakeBroadcastable.cpp
M mlir/lib/Dialect/Tosa/Transforms/TosaOptionalDecompositions.cpp
M mlir/lib/Dialect/Tosa/Transforms/TosaReduceTransposes.cpp
M mlir/lib/Dialect/Transform/DebugExtension/DebugExtensionOps.cpp
M mlir/lib/Dialect/Transform/IR/TransformDialect.cpp
M mlir/lib/Dialect/Transform/IR/TransformOps.cpp
M mlir/lib/Dialect/Transform/LoopExtension/LoopExtensionOps.cpp
M mlir/lib/Dialect/Transform/PDLExtension/PDLExtensionOps.cpp
M mlir/lib/Dialect/Transform/Transforms/CheckUses.cpp
M mlir/lib/Dialect/Transform/Transforms/InferEffects.cpp
M mlir/lib/Dialect/Transform/Transforms/TransformInterpreterUtils.cpp
Log Message:
-----------
[mlir] Remove unused includes (NFC) (#148119)
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: ed8548796f8538df420eccc6fa57d06d238996ed
https://github.com/llvm/llvm-project/commit/ed8548796f8538df420eccc6fa57d06d238996ed
Author: Amr Hesham <amr96 at programmer.net>
Date: 2025-07-11 (Fri, 11 Jul 2025)
Changed paths:
M clang/include/clang/CIR/Dialect/IR/CIROps.td
M clang/include/clang/CIR/Dialect/IR/CIRTypeConstraints.td
M clang/lib/CIR/CodeGen/CIRGenBuilder.h
M clang/lib/CIR/CodeGen/CIRGenExpr.cpp
M clang/lib/CIR/Dialect/IR/CIRDialect.cpp
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.h
M clang/test/CIR/CodeGen/complex.cpp
M clang/test/CIR/IR/invalid-complex.cir
Log Message:
-----------
[CIR] Upstream ComplexRealPtrOp for ComplexType (#144235)
This change adds support for ComplexRealPtrOp for ComplexType
https://github.com/llvm/llvm-project/issues/141365
Commit: a999a1b88c225be060dfeb2375a8546cc0236339
https://github.com/llvm/llvm-project/commit/a999a1b88c225be060dfeb2375a8546cc0236339
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2025-07-11 (Fri, 11 Jul 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/test/Transforms/PhaseOrdering/X86/fmaddsub.ll
M llvm/test/Transforms/SLPVectorizer/AArch64/InstructionsState-is-invalid-0.ll
M llvm/test/Transforms/SLPVectorizer/AArch64/alternate-vectorization-split-node.ll
M llvm/test/Transforms/SLPVectorizer/AArch64/getelementptr.ll
M llvm/test/Transforms/SLPVectorizer/AArch64/loadorder.ll
M llvm/test/Transforms/SLPVectorizer/AArch64/multiple_reduction.ll
M llvm/test/Transforms/SLPVectorizer/AArch64/reduce-fadd.ll
M llvm/test/Transforms/SLPVectorizer/AArch64/scalarization-overhead.ll
M llvm/test/Transforms/SLPVectorizer/AArch64/shuffle-vectors-mask-size.ll
M llvm/test/Transforms/SLPVectorizer/AArch64/vec3-calls.ll
M llvm/test/Transforms/SLPVectorizer/AArch64/vectorizable-selects-uniform-cmps.ll
M llvm/test/Transforms/SLPVectorizer/RISCV/combined-loads-stored.ll
M llvm/test/Transforms/SLPVectorizer/RISCV/complex-loads.ll
M llvm/test/Transforms/SLPVectorizer/RISCV/gather-insert-point-restore.ll
M llvm/test/Transforms/SLPVectorizer/RISCV/gather-node-with-no-users.ll
M llvm/test/Transforms/SLPVectorizer/RISCV/horizontal-list.ll
M llvm/test/Transforms/SLPVectorizer/RISCV/loads-ordering.ll
M llvm/test/Transforms/SLPVectorizer/RISCV/reductions.ll
M llvm/test/Transforms/SLPVectorizer/RISCV/revec-getGatherCost.ll
M llvm/test/Transforms/SLPVectorizer/RISCV/revec.ll
M llvm/test/Transforms/SLPVectorizer/RISCV/unordered-loads-operands.ll
M llvm/test/Transforms/SLPVectorizer/SystemZ/pr34619.ll
M llvm/test/Transforms/SLPVectorizer/SystemZ/reuse-non-power-of-2-reorder.ll
M llvm/test/Transforms/SLPVectorizer/SystemZ/revec-fix-128169.ll
M llvm/test/Transforms/SLPVectorizer/X86/alternate-cast-inseltpoison.ll
M llvm/test/Transforms/SLPVectorizer/X86/alternate-cast.ll
M llvm/test/Transforms/SLPVectorizer/X86/alternate-fp-inseltpoison.ll
M llvm/test/Transforms/SLPVectorizer/X86/alternate-fp.ll
M llvm/test/Transforms/SLPVectorizer/X86/alternate-int-inseltpoison.ll
M llvm/test/Transforms/SLPVectorizer/X86/alternate-int.ll
M llvm/test/Transforms/SLPVectorizer/X86/bool-mask.ll
M llvm/test/Transforms/SLPVectorizer/X86/buildvector-reused-with-bv-subvector.ll
M llvm/test/Transforms/SLPVectorizer/X86/buildvector-schedule-for-subvector.ll
M llvm/test/Transforms/SLPVectorizer/X86/cast-operand-extracted.ll
M llvm/test/Transforms/SLPVectorizer/X86/entry-no-bundle-but-extra-use-on-vec.ll
M llvm/test/Transforms/SLPVectorizer/X86/ext-used-scalar-different-bitwidth.ll
M llvm/test/Transforms/SLPVectorizer/X86/external-reduced-value-vectorized.ll
M llvm/test/Transforms/SLPVectorizer/X86/extractelemets-extended-by-poison.ll
M llvm/test/Transforms/SLPVectorizer/X86/full-match-with-poison-scalar.ll
M llvm/test/Transforms/SLPVectorizer/X86/full-matched-bv-with-subvectors.ll
M llvm/test/Transforms/SLPVectorizer/X86/gather-node-same-as-vect-but-order.ll
M llvm/test/Transforms/SLPVectorizer/X86/horizontal-list.ll
M llvm/test/Transforms/SLPVectorizer/X86/horizontal-minmax.ll
M llvm/test/Transforms/SLPVectorizer/X86/identity-match-splat-less-defined.ll
M llvm/test/Transforms/SLPVectorizer/X86/insert-subvector.ll
M llvm/test/Transforms/SLPVectorizer/X86/inst_size_bug.ll
M llvm/test/Transforms/SLPVectorizer/X86/landing-pad-for-split-node.ll
M llvm/test/Transforms/SLPVectorizer/X86/malformed_phis.ll
M llvm/test/Transforms/SLPVectorizer/X86/matched-nodes-updated.ll
M llvm/test/Transforms/SLPVectorizer/X86/matched-shuffled-entries.ll
M llvm/test/Transforms/SLPVectorizer/X86/minbitwidth-transformed-operand.ll
M llvm/test/Transforms/SLPVectorizer/X86/multi-node-reuse-in-bv.ll
M llvm/test/Transforms/SLPVectorizer/X86/non-load-reduced-as-part-of-bv.ll
M llvm/test/Transforms/SLPVectorizer/X86/non-power-2-num-elems-reused.ll
M llvm/test/Transforms/SLPVectorizer/X86/non-power-of-2-order-detection.ll
M llvm/test/Transforms/SLPVectorizer/X86/non-power-of-2-subvectors-insert.ll
M llvm/test/Transforms/SLPVectorizer/X86/non-schedulable-instructions-become-schedulable.ll
M llvm/test/Transforms/SLPVectorizer/X86/non-schedulable-split-node.ll
M llvm/test/Transforms/SLPVectorizer/X86/phi-node-reshuffled-part.ll
M llvm/test/Transforms/SLPVectorizer/X86/phi-nodes-incoming-same-blocks.ll
M llvm/test/Transforms/SLPVectorizer/X86/reduced-value-vectorized-later.ll
M llvm/test/Transforms/SLPVectorizer/X86/reduction-logical.ll
M llvm/test/Transforms/SLPVectorizer/X86/reduction-with-removed-extracts.ll
M llvm/test/Transforms/SLPVectorizer/X86/remark-partial-loads-vectorize.ll
M llvm/test/Transforms/SLPVectorizer/X86/reorder-possible-strided-node.ll
M llvm/test/Transforms/SLPVectorizer/X86/reorder-reused-subvector.ll
M llvm/test/Transforms/SLPVectorizer/X86/replaced-external-in-reduction.ll
M llvm/test/Transforms/SLPVectorizer/X86/resched.ll
M llvm/test/Transforms/SLPVectorizer/X86/resized-bv-values-non-power-of2-node.ll
M llvm/test/Transforms/SLPVectorizer/X86/revec-SplitVectorize.ll
M llvm/test/Transforms/SLPVectorizer/X86/revec-getStoreMinimumVF.ll
M llvm/test/Transforms/SLPVectorizer/X86/revec-load-compress.ll
M llvm/test/Transforms/SLPVectorizer/X86/revec-reduced-value-vectorized-later.ll
M llvm/test/Transforms/SLPVectorizer/X86/same-values-sub-node-with-poisons.ll
M llvm/test/Transforms/SLPVectorizer/X86/split-load8_2-unord.ll
M llvm/test/Transforms/SLPVectorizer/X86/split-node-full-match.ll
M llvm/test/Transforms/SLPVectorizer/X86/split-node-no-reorder-copy.ll
M llvm/test/Transforms/SLPVectorizer/X86/split-node-parent-operands-in-spill.ll
M llvm/test/Transforms/SLPVectorizer/X86/split-node-reorder-node-with-ops.ll
M llvm/test/Transforms/SLPVectorizer/X86/split-vector-operand-with-reuses.ll
M llvm/test/Transforms/SLPVectorizer/X86/subvector-minbitwidth-unsigned-value.ll
M llvm/test/Transforms/SLPVectorizer/X86/tiny-tree.ll
M llvm/test/Transforms/SLPVectorizer/X86/trunc-node-reused.ll
M llvm/test/Transforms/SLPVectorizer/X86/vec3-calls.ll
M llvm/test/Transforms/SLPVectorizer/extract-many-users-buildvector.ll
M llvm/test/Transforms/SLPVectorizer/gathered-consecutive-loads-different-types.ll
M llvm/test/Transforms/SLPVectorizer/partial-register-extract.ll
M llvm/test/Transforms/SLPVectorizer/reduction-whole-regs-loads.ll
M llvm/test/Transforms/SLPVectorizer/resized-alt-shuffle-after-minbw.ll
M llvm/test/Transforms/SLPVectorizer/revec-insertelement.ll
M llvm/test/Transforms/SLPVectorizer/revec-reduction-logical.ll
M llvm/test/Transforms/SLPVectorizer/revec-shufflevector.ll
M llvm/test/Transforms/SLPVectorizer/revec.ll
Log Message:
-----------
[SLP]Remove emission of vector_insert/vector_extract intrinsics
Replaced by the regular shuffles.
Fixes #145512
Reviewers: RKSimon
Reviewed By: RKSimon
Pull Request: https://github.com/llvm/llvm-project/pull/148007
Commit: fee27b33373c126c2205f49c8fc9b8c9fd2f3dca
https://github.com/llvm/llvm-project/commit/fee27b33373c126c2205f49c8fc9b8c9fd2f3dca
Author: Deric C. <cheung.deric at gmail.com>
Date: 2025-07-11 (Fri, 11 Jul 2025)
Changed paths:
M llvm/lib/Target/DirectX/DXILPrepare.cpp
M llvm/lib/Target/DirectX/DXILShaderFlags.cpp
M llvm/lib/Target/DirectX/DXILWriter/DXILBitcodeWriter.cpp
A llvm/test/CodeGen/DirectX/ShaderFlags/lifetimes-noint64op.ll
M llvm/test/CodeGen/DirectX/legalize-lifetimes-valver-1.6.ll
A llvm/test/tools/dxil-dis/lifetimes.ll
Log Message:
-----------
[DirectX] Legalize lifetime intrinsics for DXIL (#148003)
Fixes #147395
This PR legalizes lifetime intrinsics for DXIL by
- Adding a bitcast for the lifetime intrinsics' pointer operand in
dxil-prepare to ensure it gets cast to an `i8*` when written to DXIL
- Removing the memory attribute from lifetime intrinsics in dxil-prepare
to match DXIL
- Making the DXIL bitcode writer write the base/demangled name of
lifetime intrinsics to the symbol table
- Making lifetime intrinsics an exception to Int64Ops shader flag
analysis (otherwise we get `error: Flags must match usage.` from the
validator)
Commit: a0895d0574959de4e448bd68882a90640351460f
https://github.com/llvm/llvm-project/commit/a0895d0574959de4e448bd68882a90640351460f
Author: Changpeng Fang <changpeng.fang at amd.com>
Date: 2025-07-11 (Fri, 11 Jul 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/GCNProcessors.td
M llvm/test/CodeGen/AMDGPU/gds-atomic.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.ds.ordered.add.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.ds.ordered.swap.ll
Log Message:
-----------
AMDGPU: Remove "gds" feature from generic targets (#148269)
Commit: 3092b765ba0b2d20bd716944dda86ea8e4ad12e3
https://github.com/llvm/llvm-project/commit/3092b765ba0b2d20bd716944dda86ea8e4ad12e3
Author: Charitha Saumya <136391709+charithaintc at users.noreply.github.com>
Date: 2025-07-11 (Fri, 11 Jul 2025)
Changed paths:
M mlir/lib/Dialect/Vector/Transforms/VectorDistribute.cpp
M mlir/lib/Dialect/XeGPU/Transforms/XeGPUSubgroupDistribute.cpp
M mlir/test/Dialect/Vector/vector-warp-distribute.mlir
Log Message:
-----------
[mlir][vector] Refactor WarpOpScfForOp to support unused or swapped forOp results. (#147620)
Current implementation generates incorrect code or crashes in the
following valid cases.
1. At least one of the for op results are not yielded by the warpOp.
Example:
```
%0 = gpu.warp_execute_on_lane_0(%arg0)[32] -> (vector<4xf32>) {
....
%3:2 = scf.for %arg3 = %c0 to %c128 step %c1 iter_args(%arg4 = %ini, %arg5 = %ini1) -> (vector<128xf32>, vector<128xf32>) {
%1 = ...
%acc = ....
scf.yield %acc, %1 : vector<128xf32>, vector<128xf32>
}
gpu.yield %3#0 : vector<128xf32> // %3#1 is not used but can not be removed as dead code (loop carried).
}
"some_use"(%0) : (vector<4xf32>) -> ()
return
```
2. Enclosing warpOp yields the forOp results in different order compared
to the forOp results.
Example:
```
%0:3 = gpu.warp_execute_on_lane_0(%arg0)[32] -> (vector<4xf32>, vector<4xf32>, vector<8xf32>) {
....
%3:3 = scf.for %arg3 = %c0 to %c128 step %c1 iter_args(%arg4 = %ini1, %arg5 = %ini2, %arg6 = %ini3) -> (vector<256xf32>, vector<128xf32>, vector<128xf32>) {
.....
scf.yield %acc1, %acc2, %acc3 : vector<256xf32>, vector<128xf32>, vector<128xf32>
}
gpu.yield %3#2, %3#1, %3#0 : vector<128xf32>, vector<128xf32>, vector<256xf32> // swapped order
}
"some_use_1"(%0#0) : (vector<4xf32>) -> ()
"some_use_2"(%0#1) : (vector<4xf32>) -> ()
"some_use_3"(%0#2) : (vector<8xf32>) -> ()
```
Commit: 89193640f48e0711c973cd83addd7d3b12e498ca
https://github.com/llvm/llvm-project/commit/89193640f48e0711c973cd83addd7d3b12e498ca
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-07-11 (Fri, 11 Jul 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
Log Message:
-----------
[VPlan] Remove unused argument from canNarrowLoad (NFC).
The WideMember argument is unused, remove it.
Commit: 1d33bbab577a2bf3e0ac00481f33935042ea7960
https://github.com/llvm/llvm-project/commit/1d33bbab577a2bf3e0ac00481f33935042ea7960
Author: Charitha Saumya <136391709+charithaintc at users.noreply.github.com>
Date: 2025-07-11 (Fri, 11 Jul 2025)
Changed paths:
M mlir/lib/Dialect/Vector/Transforms/VectorDistribute.cpp
M mlir/lib/Dialect/XeGPU/Transforms/XeGPUSubgroupDistribute.cpp
M mlir/test/Dialect/Vector/vector-warp-distribute.mlir
Log Message:
-----------
Revert "[mlir][vector] Refactor WarpOpScfForOp to support unused or swapped forOp results." (#148291)
Reverts llvm/llvm-project#147620
Reverting due to build failure:
https://lab.llvm.org/buildbot/#/builders/116/builds/15477
Commit: 136558bab23af94fd23b9b8ce39632085b21a4ca
https://github.com/llvm/llvm-project/commit/136558bab23af94fd23b9b8ce39632085b21a4ca
Author: Markus Böck <markus.boeck02 at gmail.com>
Date: 2025-07-11 (Fri, 11 Jul 2025)
Changed paths:
M llvm/cmake/modules/TableGen.cmake
M mlir/cmake/modules/AddMLIR.cmake
Log Message:
-----------
[mlir][cmake] Fix missing entries in `tablegen_compile_commands.yml` (#147516)
Depending on the order of CMake includes the
`tablegen_compile_commands.yml` was previously missing entries due to
being deleted after a `tablegen` commands.
This PR fixes this by 1) making sure `AddMLIR` includes `TableGen` such
that new compile commands are added to a fresh YML file and 2) using an
include guard to ensure the file is cleared exactly once
Commit: 94bb9e12ec4ec243aac747910c5ae6359f354642
https://github.com/llvm/llvm-project/commit/94bb9e12ec4ec243aac747910c5ae6359f354642
Author: Erick Velez <erickvelez7 at gmail.com>
Date: 2025-07-11 (Fri, 11 Jul 2025)
Changed paths:
M clang-tools-extra/clang-doc/BitcodeReader.cpp
M clang-tools-extra/clang-doc/BitcodeWriter.cpp
M clang-tools-extra/clang-doc/BitcodeWriter.h
M clang-tools-extra/clang-doc/JSONGenerator.cpp
M clang-tools-extra/clang-doc/Representation.cpp
M clang-tools-extra/clang-doc/Representation.h
M clang-tools-extra/clang-doc/Serialize.cpp
M clang-tools-extra/test/clang-doc/json/class-requires.cpp
A clang-tools-extra/test/clang-doc/json/class-specialization.cpp
M clang-tools-extra/test/clang-doc/json/class-template.cpp
M clang-tools-extra/test/clang-doc/json/class.cpp
M clang-tools-extra/test/clang-doc/json/compound-constraints.cpp
M clang-tools-extra/test/clang-doc/json/concept.cpp
M clang-tools-extra/test/clang-doc/json/function-requires.cpp
M clang-tools-extra/test/clang-doc/json/function-specifiers.cpp
M clang-tools-extra/test/clang-doc/json/method-template.cpp
M clang-tools-extra/test/clang-doc/json/namespace.cpp
M clang-tools-extra/test/clang-doc/json/nested-namespace.cpp
M clang-tools-extra/unittests/clang-doc/JSONGeneratorTest.cpp
Log Message:
-----------
[clang-doc] Serialize record files with mangled name (#148021)
This patch changes JSON file serialization. Now, files are serialized
to a single directory instead of nesting them based on namespaces. The
global namespace retains the "index.json" name.
This solves the problem of class template specializations being serialized to the
same file as its base template. This is also planned as part of
future integration with the Mustache generator which will consume the JSON files.
Commit: 2807866fffca9d604f18c4cb86fca4e8c5d57d9f
https://github.com/llvm/llvm-project/commit/2807866fffca9d604f18c4cb86fca4e8c5d57d9f
Author: Rahman Lavaee <rahmanl at google.com>
Date: 2025-07-11 (Fri, 11 Jul 2025)
Changed paths:
M llvm/include/llvm/Object/ELFTypes.h
Log Message:
-----------
[NFC, SHT_LLVM_BB_ADDR_MAP] Introduce BBEntry::getID to be used downstream. (#148294)
Commit: 9e90788a3ea776f6ba8baa2de30fb8845ac1916f
https://github.com/llvm/llvm-project/commit/9e90788a3ea776f6ba8baa2de30fb8845ac1916f
Author: Andrew Gontarek <agontarek at users.noreply.github.com>
Date: 2025-07-11 (Fri, 11 Jul 2025)
Changed paths:
M lldb/include/lldb/Utility/LLDBLog.h
M lldb/source/Plugins/Disassembler/LLVMC/DisassemblerLLVMC.cpp
M lldb/source/Utility/LLDBLog.cpp
Log Message:
-----------
[LLDB][NVIDIA] Add Disassembler log channel (#148290)
This commit introduces a new log channel for the disassembler in LLDB,
allowing for better logging of disassembler related activities. The
`LLDBLOG` enum has been updated to include the `Disassembler` channel,
and the relevant logging in the `DisassemblerLLVMC` plugin has been
modified to utilize this new channel. This is in preparation for adding
additional disassembler implementations.
Key Changes:
- Added `Disassembler` to the `LLDBLog` enum.
- Updated logging in `DisassemblerLLVMC.cpp` to use the new
`Disassembler` log channel.
Commit: 15d36aa4ce6f78579c6a6a44226502621bb0c241
https://github.com/llvm/llvm-project/commit/15d36aa4ce6f78579c6a6a44226502621bb0c241
Author: jofrn <jofernau at amd.com>
Date: 2025-07-11 (Fri, 11 Jul 2025)
Changed paths:
M clang/lib/CodeGen/CGBuiltin.cpp
M clang/test/CodeGenOpenCL/amdgpu-enqueue-kernel.cl
Log Message:
-----------
[clang][CodeGen] Preserve addrspace of enqueue_kernel builtin. (#148062)
__enqueue_kernel_varargs' last parameter is in addrspace(5), but CodeGen
currently misses this qualifier. This commit fixes the code to preserve
the qualifier by referencing Alloca, which has its casts removed, rather
than TmpPtr.
Commit: 8f37fb21177e4bf1895a35e036eb8db13942435b
https://github.com/llvm/llvm-project/commit/8f37fb21177e4bf1895a35e036eb8db13942435b
Author: Razvan Lupusoru <razvan.lupusoru at gmail.com>
Date: 2025-07-11 (Fri, 11 Jul 2025)
Changed paths:
M mlir/include/mlir/Dialect/OpenACC/OpenACCTypeInterfaces.td
Log Message:
-----------
[mlir][acc] Add MappableType API for generating private recipe init (#148293)
This introduces the first in a series of APIs that will allow a
MappableType to generate the body of the recipes. The current API does
not actually generate the recipe itself - it generates the body of it.
So it can either be placed in a recipe or inlined directly as needed.
Commit: 27ccb962c109e01e77fcb469d7f0ce3d0c787db0
https://github.com/llvm/llvm-project/commit/27ccb962c109e01e77fcb469d7f0ce3d0c787db0
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2025-07-11 (Fri, 11 Jul 2025)
Changed paths:
M libcxx/test/configs/stdlib-libstdc++.cfg.in
Log Message:
-----------
[libc++][NFC] Fix documentation for using the libstdc++ test config
Commit: f09055435965fb084afb51edf09dfc4d0cfcce4f
https://github.com/llvm/llvm-project/commit/f09055435965fb084afb51edf09dfc4d0cfcce4f
Author: Stanislav Mekhanoshin <rampitec at users.noreply.github.com>
Date: 2025-07-11 (Fri, 11 Jul 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPU.td
M llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
M llvm/lib/Target/AMDGPU/Disassembler/AMDGPUDisassembler.cpp
M llvm/lib/Target/AMDGPU/Disassembler/AMDGPUDisassembler.h
M llvm/lib/Target/AMDGPU/GCNSubtarget.h
M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUInstPrinter.cpp
M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUInstPrinter.h
M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCCodeEmitter.cpp
M llvm/lib/Target/AMDGPU/SIDefines.h
M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
M llvm/lib/Target/AMDGPU/SIInstrInfo.td
M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.h
M llvm/lib/Target/AMDGPU/VOP2Instructions.td
A llvm/test/MC/AMDGPU/gfx1250_asm_vop2.s
A llvm/test/MC/AMDGPU/gfx1250_asm_vop2_err.s
M llvm/test/MC/AMDGPU/gfx1250_err.s
A llvm/test/MC/Disassembler/AMDGPU/gfx1250_dasm_vop2.txt
Log Message:
-----------
[AMDGPU] MC support for v_fmaak_f64/v_fmamk_f64 gfx1250 intructions (#148282)
Commit: aa7bf60618d627332a80eee68f3166a6faed03ea
https://github.com/llvm/llvm-project/commit/aa7bf60618d627332a80eee68f3166a6faed03ea
Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
Date: 2025-07-11 (Fri, 11 Jul 2025)
Changed paths:
M flang/lib/Evaluate/tools.cpp
M flang/test/Lower/CUDA/cuda-data-transfer.cuf
Log Message:
-----------
[flang][cuda] Fix false positive on unsupported CUDA data transfer (#148295)
The switch to `GetSymbolVector` introduced a regression on detecting
implicit data transfer when the rhs is a function call.
Make sure the symbol we are looking at are of interest to detect data
transfer.
Commit: f9d3278901cfef8e6a998eb9ebd17d97fc31291e
https://github.com/llvm/llvm-project/commit/f9d3278901cfef8e6a998eb9ebd17d97fc31291e
Author: aankit-ca <quic_aankit at quicinc.com>
Date: 2025-07-11 (Fri, 11 Jul 2025)
Changed paths:
M llvm/lib/Target/Hexagon/HexagonISelLowering.cpp
M llvm/lib/Target/Hexagon/HexagonISelLoweringHVX.cpp
M llvm/lib/Target/Hexagon/HexagonPatterns.td
M llvm/lib/Target/Hexagon/HexagonPatternsHVX.td
A llvm/test/CodeGen/Hexagon/addsat.ll
Log Message:
-----------
[Hexagon] Add saturating add instructions (#148132)
Generate the saturating add instructions for sadd.sat for scalar and
vector instructions
Co-authored-by: aankit-quic <aankit at quicinc.com>
Co-authored-by: Jyotsna Verma <jverma at quicinc.com>
Commit: 8c1b5169484533a41d6a05603315a092c364975d
https://github.com/llvm/llvm-project/commit/8c1b5169484533a41d6a05603315a092c364975d
Author: Changpeng Fang <changpeng.fang at amd.com>
Date: 2025-07-11 (Fri, 11 Jul 2025)
Changed paths:
M clang/include/clang/Basic/BuiltinsAMDGPU.def
M clang/test/CodeGenOpenCL/builtins-amdgcn-gfx1250.cl
M clang/test/SemaOpenCL/builtins-amdgcn-error-gfx1250-param.cl
M llvm/include/llvm/IR/IntrinsicsAMDGPU.td
M llvm/lib/Target/AMDGPU/SOPInstructions.td
A llvm/test/CodeGen/AMDGPU/llvm.amdgcn.s.wait.gfx1250.ll
M llvm/test/MC/AMDGPU/gfx1250_asm_sopp.s
M llvm/test/MC/Disassembler/AMDGPU/gfx1250_dasm_sopp.txt
Log Message:
-----------
AMDGPU: Implement s_wait_asynccnt and s_wait_tensorcnt for gfx1250 (#148292)
Co-authored-by: Stanislav Mekhanoshin <Stanislav.Mekhanoshin at amd.com>
Co-authored-by: Vang Thao <Vang.Thao at amd.com>
Commit: 4ce34f173866827b69b861c93112521516740bc7
https://github.com/llvm/llvm-project/commit/4ce34f173866827b69b861c93112521516740bc7
Author: Ashley Coleman <ascoleman at microsoft.com>
Date: 2025-07-11 (Fri, 11 Jul 2025)
Changed paths:
M clang/lib/Sema/HLSLBuiltinTypeDeclBuilder.cpp
M clang/lib/Sema/HLSLBuiltinTypeDeclBuilder.h
M clang/test/AST/HLSL/StructuredBuffers-AST.hlsl
M clang/test/AST/HLSL/TypedBuffers-AST.hlsl
M clang/test/SemaHLSL/BuiltIns/Buffers.hlsl
M clang/test/SemaHLSL/BuiltIns/StructuredBuffers.hlsl
Log Message:
-----------
[HLSL] Disallow writing to readonly resources (#147806)
Fixes #141842
Only add the non-const subscript operator to write resources
Commit: f642b6341219921ecf646042b3bdec8259dc21a0
https://github.com/llvm/llvm-project/commit/f642b6341219921ecf646042b3bdec8259dc21a0
Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
Date: 2025-07-11 (Fri, 11 Jul 2025)
Changed paths:
M flang-rt/lib/cuda/memory.cpp
Log Message:
-----------
[flang][cuda] Update condition in descriptor data transfer (#148306)
When the two descriptor have the same number of elements and are
contiguous, the transfer can be done via pointers.
Commit: 48115529e1660d6762f538626cff271a9574257d
https://github.com/llvm/llvm-project/commit/48115529e1660d6762f538626cff271a9574257d
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2025-07-11 (Fri, 11 Jul 2025)
Changed paths:
M lldb/include/lldb/API/SBDebugger.h
Log Message:
-----------
[lldb] Document the SBDebugger public interface (#147621)
Despite our best efforts, improved documentation of the public API
remains a common request amongst its users. We have the Docstrings files
in the bindings directory, but coverage and quality varies greatly by
class.
I've noticed that we a bunch of Doxygen comments throughout LLDB, but
relatively few in the SB API, which might be explained by the
aforementioned Docstrings files. With #147617, we can leverage the
Doxygen documentation to automatically generate Pydoc documentation for
the Python bindings using SWIG.
Going forward, I'd like to invest in the Doxygen documentation for the
public API. This PR is a first step in that direction. The Doxygen
comments will benefit both C++ and Python clients. Additionally, the
compiler (through the -Wdocumentation flag) can help catch quality and
correctness issues.
Commit: 3c4c2fada26f479be7c2f9744f5b7364f7612446
https://github.com/llvm/llvm-project/commit/3c4c2fada26f479be7c2f9744f5b7364f7612446
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2025-07-11 (Fri, 11 Jul 2025)
Changed paths:
M lldb/include/lldb/Core/Debugger.h
M lldb/include/lldb/Target/Target.h
M lldb/source/Plugins/Protocol/MCP/CMakeLists.txt
M lldb/source/Plugins/Protocol/MCP/MCPError.cpp
M lldb/source/Plugins/Protocol/MCP/MCPError.h
M lldb/source/Plugins/Protocol/MCP/Protocol.cpp
M lldb/source/Plugins/Protocol/MCP/Protocol.h
M lldb/source/Plugins/Protocol/MCP/ProtocolServerMCP.cpp
M lldb/source/Plugins/Protocol/MCP/ProtocolServerMCP.h
A lldb/source/Plugins/Protocol/MCP/Resource.cpp
A lldb/source/Plugins/Protocol/MCP/Resource.h
M lldb/source/Plugins/Protocol/MCP/Tool.cpp
M lldb/source/Plugins/Protocol/MCP/Tool.h
M lldb/unittests/Protocol/ProtocolMCPServerTest.cpp
M lldb/unittests/Protocol/ProtocolMCPTest.cpp
Log Message:
-----------
[lldb] Expose debuggers and target as resources through MCP (#148075)
Expose debuggers and target as resources through MCP. This has two
advantages:
1. Enables returning data in a structured way. Although tools can return
structured data with the latest revision of the protocol, we might not
be able to update before the majority of clients has adopted it.
2. Enables the user to specify a resource themselves, rather than
letting the model guess which debugger instance it should use.
This PR exposes a resource for debuggers and targets.
The following URI returns information about a given debugger instance:
```
lldb://debugger/<debugger id>
```
For example:
```
{
uri: "lldb://debugger/0"
mimeType: "application/json"
text: "{"debugger_id":0,"num_targets":2}"
}
```
The following URI returns information about a given target:
```
lldb://debugger/<debugger id>/target/<target id>
```
For example:
```
{
uri: "lldb://debugger/0/target/0"
mimeType: "application/json"
text: "{"arch":"arm64-apple-macosx26.0.0","debugger_id":0,"path":"/Users/jonas/llvm/build-ra/bin/count","target_id":0}"
}
```
Commit: aec3016b643f03b25309f7f0e9fdc587e42366a3
https://github.com/llvm/llvm-project/commit/aec3016b643f03b25309f7f0e9fdc587e42366a3
Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
Date: 2025-07-11 (Fri, 11 Jul 2025)
Changed paths:
M flang-rt/lib/cuda/CMakeLists.txt
Log Message:
-----------
[flang][cuda] Use minor version in flang_rt.cuda lib name (#148085)
Add minor version in the lib name to be able to distinguish between
specific version.
Commit: ace1c838ca91c83c7a271d9378b86ea56051e83f
https://github.com/llvm/llvm-project/commit/ace1c838ca91c83c7a271d9378b86ea56051e83f
Author: Diego Caballero <dieg0ca6aller0 at gmail.com>
Date: 2025-07-11 (Fri, 11 Jul 2025)
Changed paths:
M mlir/lib/Dialect/Vector/Transforms/VectorLinearize.cpp
M mlir/test/Dialect/Vector/linearize.mlir
Log Message:
-----------
[mlir][Vector] Support scalar `vector.extract` in VectorLinearize (#147440)
It generates a linearized version of the `vector.extract` for scalar cases.
Commit: 93d94690c9eda6fb9fc249839237b304c8757584
https://github.com/llvm/llvm-project/commit/93d94690c9eda6fb9fc249839237b304c8757584
Author: John Harrison <harjohn at google.com>
Date: 2025-07-11 (Fri, 11 Jul 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/variables/TestDAP_variables.py
M lldb/tools/lldb-dap/Handler/DisassembleRequestHandler.cpp
M lldb/tools/lldb-dap/Handler/ReadMemoryRequestHandler.cpp
M lldb/tools/lldb-dap/Handler/SetVariableRequestHandler.cpp
M lldb/tools/lldb-dap/Handler/WriteMemoryRequestHandler.cpp
M lldb/tools/lldb-dap/Protocol/ProtocolRequests.cpp
M lldb/tools/lldb-dap/Protocol/ProtocolRequests.h
M lldb/tools/lldb-dap/Protocol/ProtocolTypes.cpp
M lldb/unittests/DAP/ProtocolTypesTest.cpp
Log Message:
-----------
[lldb-dap] Updating protocol memory references to `lldb::addr_t`. (#148037)
This updates all the existing memory reference fields to use
`lldb::addr_t` directly.
A few places were using `std::string` and decoding the value in the
request handler and other places had unique ways of parsing addresses.
This unifies all of these references with the `DecodeMemoryReference`
helper in JSONUtils.h.
Additionally, for the types I updated, I tried to simplify the POD types
some and moved default values out of RequestHandlers and into the
protocol POD types.
Commit: ba0df98aa9095df89e7f7819c5b3814ce061387e
https://github.com/llvm/llvm-project/commit/ba0df98aa9095df89e7f7819c5b3814ce061387e
Author: quanwanandy <quanwanandy at google.com>
Date: 2025-07-11 (Fri, 11 Jul 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
Log Message:
-----------
Fix build for 0a34309 (#148314)
Commit: 18a182b8ddcc8008d552e34c6d5c5953c8493dbe
https://github.com/llvm/llvm-project/commit/18a182b8ddcc8008d552e34c6d5c5953c8493dbe
Author: Adrian Vogelsgesang <avogelsgesang at salesforce.com>
Date: 2025-07-12 (Sat, 12 Jul 2025)
Changed paths:
M llvm/lib/Transforms/Coroutines/CoroSplit.cpp
M llvm/test/Transforms/Coroutines/coro-split-dbg-labels.ll
Log Message:
-----------
[coro] Fix crash due to DILabel in `LineTableOnly` mode (#148095)
Since the recent commit de3c8410d8, the `CoroSplit` pass adds `DILabel`s
to help find the location of a suspension point from its suspension
point id. Those labels are added in both `DebugEmissionKind::FullDebug`
and `DebugEmissionKind::LineTableOnly` mode. The idea was that this
information is necessary to reconstruct async stack traces and should
hence also be available for LineTableOnly.
Unfortunately, it turns out that the DWARF backend does not expect to
find any DILabel debug metadata if the emission kind is set to
LineTableOnly. The Dwarf backend simply runs into an assertion in that
case.
This commit fixes the issue by only adding `DILabel` for FullDebug.
Commit: 794698031c20307f3cdb153b721f4fd8e81fbadf
https://github.com/llvm/llvm-project/commit/794698031c20307f3cdb153b721f4fd8e81fbadf
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-07-11 (Fri, 11 Jul 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfoXqci.td
Log Message:
-----------
[RISCV] Use i32 instead of XLenVT in Xqci patterns. NFC (#148271)
This allows the i64 RV64 patterns to be filtered out of
RISCVGenDAGISel.inc. This saves about 1500 bytes.
Commit: 5a95ec6dc17e15354f7e1fa0e9d8531d67e22348
https://github.com/llvm/llvm-project/commit/5a95ec6dc17e15354f7e1fa0e9d8531d67e22348
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-07-11 (Fri, 11 Jul 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
Log Message:
-----------
[RISCV] Add riscv_vlm/vsm to RISCVTargetLowering::getTgtMemIntrinsic. (#148265)
Commit: 6fea3da40447514102118f2aeece590af0e16e5c
https://github.com/llvm/llvm-project/commit/6fea3da40447514102118f2aeece590af0e16e5c
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2025-07-11 (Fri, 11 Jul 2025)
Changed paths:
M lldb/source/Plugins/Protocol/MCP/Protocol.cpp
M lldb/source/Plugins/Protocol/MCP/Protocol.h
M lldb/source/Plugins/Protocol/MCP/Tool.cpp
M lldb/unittests/Protocol/ProtocolMCPTest.cpp
Log Message:
-----------
[lldb] Simplify handling of empty strings for MCP (NFC) (#148317)
Instead of storing a `std::optional<std::string>`, directly use a
`std::string` and treat a missing value the same was as an empty string.
Commit: a7438d6dfe0aa45f3c4f0e0aeb23934619c8702b
https://github.com/llvm/llvm-project/commit/a7438d6dfe0aa45f3c4f0e0aeb23934619c8702b
Author: Florian Mayer <fmayer at google.com>
Date: 2025-07-11 (Fri, 11 Jul 2025)
Changed paths:
M clang/include/clang/Basic/Features.def
M clang/test/Lexer/has_feature_undefined_behavior_sanitizer.cpp
Log Message:
-----------
[clang] [ubsan] add __has_feature for UBSan checks (#148310)
Before, we could only condition code on whether *any* UBSan check is
enabled. Add separate features for each of them, now we can do e.g.
__has_feature(array_bounds_sanitizer).
Commit: 102c15ad28d3c312ea8926c85dbf907ca0d07b84
https://github.com/llvm/llvm-project/commit/102c15ad28d3c312ea8926c85dbf907ca0d07b84
Author: Florian Mayer <fmayer at google.com>
Date: 2025-07-11 (Fri, 11 Jul 2025)
Changed paths:
M clang/include/clang/Basic/Features.def
M clang/test/Lexer/has_feature_undefined_behavior_sanitizer.cpp
Log Message:
-----------
Revert "[clang] [ubsan] add __has_feature for UBSan checks" (#148322)
Reverts llvm/llvm-project#148310
Some targets don't support the flags passed in the test
Commit: be7a21622e368c20af7fbc4e73a5afc97ecc9b17
https://github.com/llvm/llvm-project/commit/be7a21622e368c20af7fbc4e73a5afc97ecc9b17
Author: Peter Collingbourne <peter at pcc.me.uk>
Date: 2025-07-11 (Fri, 11 Jul 2025)
Changed paths:
M .github/new-prs-labeler.yml
Log Message:
-----------
Improve file patterns for some backends.
I noticed that one of my PRs, #147624, did not get automatically
labelled with `backend:RISC-V` when it touched a test under
`llvm/test/CodeGen/RISCV`. This seems to be because the pattern only
looks for files named `*RISCV*` or `*riscv* and not necessarily files
in a directory named like that. To fix that, let's make RISC-V use
a more accepting pattern, similar to AMDGPU, and do the same for two
other backends.
Reviewers: tstellar, arsenm
Reviewed By: arsenm
Pull Request: https://github.com/llvm/llvm-project/pull/147633
Commit: 11325fd0c910abad959f4b81aa4e6cb5445a3623
https://github.com/llvm/llvm-project/commit/11325fd0c910abad959f4b81aa4e6cb5445a3623
Author: Peter Collingbourne <peter at pcc.me.uk>
Date: 2025-07-11 (Fri, 11 Jul 2025)
Changed paths:
M llvm/lib/Transforms/IPO/LowerTypeTests.cpp
Log Message:
-----------
LowerTypeTests: Remove unused variables.
Commit: 2f1673eaa0e3b0c98cdd66429849ec27e220055b
https://github.com/llvm/llvm-project/commit/2f1673eaa0e3b0c98cdd66429849ec27e220055b
Author: Owen Pan <owenpiano at gmail.com>
Date: 2025-07-11 (Fri, 11 Jul 2025)
Changed paths:
M clang/lib/AST/ExprConstant.cpp
M clang/lib/Format/Format.cpp
Log Message:
-----------
Follow up on #147623
Commit: a742ee6a43151e973ecc61346d29f235ca669e91
https://github.com/llvm/llvm-project/commit/a742ee6a43151e973ecc61346d29f235ca669e91
Author: Jake Egan <Jake.egan at ibm.com>
Date: 2025-07-11 (Fri, 11 Jul 2025)
Changed paths:
M compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_posix.h
Log Message:
-----------
[sanitizer_common][NFC] Fix sanitizer_platform_limits_posix.h formatting (#147864)
>From running `clang-format` on the whole file.
Commit: 7ecb37b703b7c675d1be6c4194c50f6f8dd9ac9c
https://github.com/llvm/llvm-project/commit/7ecb37b703b7c675d1be6c4194c50f6f8dd9ac9c
Author: Finn Plummer <finn.c.plum at gmail.com>
Date: 2025-07-11 (Fri, 11 Jul 2025)
Changed paths:
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/include/clang/Parse/ParseHLSLRootSignature.h
M clang/include/clang/Sema/SemaHLSL.h
M clang/lib/Parse/ParseDeclCXX.cpp
M clang/lib/Parse/ParseHLSLRootSignature.cpp
M clang/lib/Sema/SemaHLSL.cpp
M clang/test/SemaHLSL/RootSignature-resource-ranges-err.hlsl
M clang/unittests/Parse/ParseHLSLRootSignatureTest.cpp
M llvm/include/llvm/Frontend/HLSL/RootSignatureValidations.h
M llvm/lib/Frontend/HLSL/RootSignatureValidations.cpp
Log Message:
-----------
[HLSL][RootSignature] Retain `SourceLocation` of `RootElement` for `SemaHLSL` diagnostics (#147115)
At the moment, when we report diagnostics from `SemaHLSL` we only
provide the source location of the root signature attr. This allows for
significantly less helpful diagnostics (for eg. reporting resource range
overlaps).
This pr implements a way to retain the source location of a root element
when it is parsed, so that we can output the `SourceLocation` of each
root element that causes the overlap in the diagnostics during semantic
analysis.
This pr defines a wrapper struct `clang::hlsl::RootSignatureElement` in
`SemaHLSL` that will contain the underlying `RootElement` and can hold
any additional diagnostic information. This struct will be what is used
in `HLSLRootSignatureParser` and in `SemaHLSL`. Then the diagnostic
information will be stripped and the underlying element will be stored
in the `RootSignatureDecl`.
For the reporting of diagnostics, we can now use the retained
`SourceLocation` of each `RootElement` when reporting the range overlap,
and we can add a `note` diagnostic to highlight the other root element
as well.
- Defines `RootSignatureElement` in the `hlsl` namespace in `SemaHLSL`
(defined in `SemaHLSL` because `Parse` has a dependency on `Sema`)
- Updates parsing logic to construct `RootSignatureElement`s and retain
the source loction in `ParseHLSLRootSignature`
- Updates `SemaHLSL` when it constructs the `RootSignatureDecl` to take
the new `RootSignatureElement` and store the underlying `RootElement`
- Updates the current tests to ensure the new `note` diagnostic is
produced and that the `SourceLocation` is seen
- Slight update to the `RootSignatureValidations` api to ensure the
caller sorts and owns the memory of the passed in `RangeInfo`
- Adds a test to demonstrate the `SourceLocation` of both elements being
correctly pointed out
Resolves: https://github.com/llvm/llvm-project/issues/145819
Commit: f03bcb7594254b91098f16a339dd6ba4c55a0c8e
https://github.com/llvm/llvm-project/commit/f03bcb7594254b91098f16a339dd6ba4c55a0c8e
Author: Finn Plummer <finn.c.plum at gmail.com>
Date: 2025-07-11 (Fri, 11 Jul 2025)
Changed paths:
M clang/include/clang/Basic/DiagnosticParseKinds.td
M clang/include/clang/Parse/ParseHLSLRootSignature.h
M clang/lib/Parse/ParseHLSLRootSignature.cpp
M clang/test/SemaHLSL/RootSignature-err.hlsl
M clang/unittests/Parse/ParseHLSLRootSignatureTest.cpp
Log Message:
-----------
[HLSL][RootSignature] Audit `RootSignatureParser` diagnostic production (#147800)
This pr audits the diagnostics produced in `RootSignatureParser`
diagnostics.
First, it has been noted more than once that the current
`diag::err_hlsl_unexpected_end_of_params` is not direct and can be
misleading. For instance,
[here](https://github.com/llvm/llvm-project/pull/147350#discussion_r2193717272)
and
[here](https://github.com/llvm/llvm-project/pull/145827#discussion_r2169406679).
This pr address this by removing this diagnostic and replacing it with a
more direct `diag::err_expected_either`. However, doing so removes the
nuance between the case where it is a missing comma and when it was an
invalid parameter.
Hence, we introduce the `diag::err_hlsl_invalid_token` for the latter
case, which does so in a direct way. Further, we can apply the same
diagnostic to the parsing of parameter values.
As part of this, we see that there was a test gap in testing the
diagnostics produced from `diag::err_expected_after` and for the parsing
of enum/flag values. As such, these are also addressed here to provide
sufficient unit/sema test coverage.
- Removes all uses of `diag::err_hlsl_unexpected_end_of_params` in
`RootSigantureParser`
- Introduce `diag::err_hlsl_invalid_token` to provide a direct
diagnostic
- In each of these cases, replace the diagnostic with either a
`diag::err_hlsl_invalid_token` or `diag::err_expected_either`
accordingly
- Update `HLSLRootSignatureParserTest` to account for diagnostic changes
- Increase test coverage of `HLSLRootSignatureParserTest` for enum/flag
diagnostics
- Increase test coverage of `RootSignatures-err` for enum/flag
diagnostics
- Small fix-up of the `diag::err_expected_after` and add test to
demonstrate usage
Resolves: https://github.com/llvm/llvm-project/issues/147799
Commit: af6500d14c9c01bf1d01f13a9004ee2709cebd78
https://github.com/llvm/llvm-project/commit/af6500d14c9c01bf1d01f13a9004ee2709cebd78
Author: Muhammad Bassiouni <60100307+bassiounix at users.noreply.github.com>
Date: 2025-07-11 (Fri, 11 Jul 2025)
Changed paths:
M libc/shared/math.h
A libc/shared/math/frexpf128.h
M libc/src/__support/math/CMakeLists.txt
A libc/src/__support/math/frexpf128.h
M libc/src/math/generic/CMakeLists.txt
M libc/src/math/generic/frexpf128.cpp
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
Log Message:
-----------
[libc][math] Refactor frexpf128 implementation to header-only in src/… (#147822)
Part of #147386
in preparation for:
https://discourse.llvm.org/t/rfc-make-clang-builtin-math-functions-constexpr-with-llvm-libc-to-support-c-23-constexpr-math-functions/86450
Commit: 1d5758705dade80baf509dab5ea1808a38608ee0
https://github.com/llvm/llvm-project/commit/1d5758705dade80baf509dab5ea1808a38608ee0
Author: Fangrui Song <i at maskray.me>
Date: 2025-07-11 (Fri, 11 Jul 2025)
Changed paths:
M llvm/lib/Target/X86/MCTargetDesc/X86ATTInstPrinter.cpp
M llvm/lib/Target/X86/MCTargetDesc/X86ATTInstPrinter.h
M llvm/lib/Target/X86/MCTargetDesc/X86InstPrinterCommon.cpp
M llvm/lib/Target/X86/MCTargetDesc/X86InstPrinterCommon.h
A llvm/test/CodeGen/X86/dollar-name-asm.ll
M llvm/test/CodeGen/X86/dollar-name.ll
M llvm/tools/llc/llc.cpp
Log Message:
-----------
X86: Support dollar symbol for AT&T syntax and add output-asm-variant to llc
'$' indicates immediate values in AT&T syntax, so symbol names starting
with '$' need to be quoted or wrapped in parentheses. Parentheses are
preferred to support expressions with relocation specifiers without
modifying MCExpr internals, aligning with GCC (https://gcc.gnu.org/PR91298).
Add `-output-asm-variant` to llc for testing Intel syntax, avoiding
`-x86-asm-syntax` which affects MCAsmInfo used by input assembly
(-x86-asm-syntax=intel doesn't work with AT&T module asm)
Note: In these positions the symbol name cannot be quoted: `$var:`
`.globl $var` `.type $var, @object`
Close #147587
Pull Request: https://github.com/llvm/llvm-project/pull/147876
Commit: d02c85a29b12d10045a28d050e7f3a26fb4e5687
https://github.com/llvm/llvm-project/commit/d02c85a29b12d10045a28d050e7f3a26fb4e5687
Author: Muhammad Bassiouni <60100307+bassiounix at users.noreply.github.com>
Date: 2025-07-11 (Fri, 11 Jul 2025)
Changed paths:
M libc/shared/math/frexpf128.h
M libc/src/__support/FPUtil/ManipulationFunctions.h
Log Message:
-----------
[libc] Fix frexpf128 build failure. (#148332)
Commit: 265fb3605d1d070a004fd4d9db54ad2ae6f722c7
https://github.com/llvm/llvm-project/commit/265fb3605d1d070a004fd4d9db54ad2ae6f722c7
Author: Sirui Mu <msrlancern at gmail.com>
Date: 2025-07-12 (Sat, 12 Jul 2025)
Changed paths:
M clang/include/clang/CIR/Dialect/IR/CIROps.td
M clang/lib/CIR/CodeGen/CIRGenBuiltin.cpp
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.h
M clang/test/CIR/CodeGen/builtin_bit.cpp
Log Message:
-----------
[CIR] Add bit reverse and byte reverse operations (#147200)
This patch adds support for the following two builtin functions:
- `__builtin_bswap`, represented by the `cir.byte_swap` operation.
- `__builtin_bitreverse`, represented by the `cir.bit.reverse`
operation.
Commit: c3abe3ff22635172aea5162929433c55909822af
https://github.com/llvm/llvm-project/commit/c3abe3ff22635172aea5162929433c55909822af
Author: Connector Switch <c8ef at outlook.com>
Date: 2025-07-12 (Sat, 12 Jul 2025)
Changed paths:
M libc/config/darwin/aarch64/entrypoints.txt
M libc/config/linux/aarch64/entrypoints.txt
M libc/config/linux/arm/entrypoints.txt
M libc/config/linux/riscv/entrypoints.txt
M libc/config/linux/x86_64/entrypoints.txt
M libc/config/windows/entrypoints.txt
M libc/docs/headers/math/index.rst
M libc/include/math.yaml
M libc/src/math/CMakeLists.txt
M libc/src/math/generic/CMakeLists.txt
A libc/src/math/generic/tanpif.cpp
A libc/src/math/tanpif.h
M libc/test/src/math/CMakeLists.txt
M libc/test/src/math/exhaustive/CMakeLists.txt
A libc/test/src/math/exhaustive/tanpif_test.cpp
M libc/test/src/math/smoke/CMakeLists.txt
A libc/test/src/math/smoke/tanpif_test.cpp
A libc/test/src/math/tanpif_test.cpp
Log Message:
-----------
[libc][math][c23] implement C23 math function `tanpif` (#147192)
The smoke test and exhaustive test pass on x86_64 Linux.
Closes #94895.
Commit: 395643e60b5d4e07c20a25db943a72d25fcba857
https://github.com/llvm/llvm-project/commit/395643e60b5d4e07c20a25db943a72d25fcba857
Author: Muhammad Bassiouni <60100307+bassiounix at users.noreply.github.com>
Date: 2025-07-12 (Sat, 12 Jul 2025)
Changed paths:
M libc/shared/math.h
A libc/shared/math/frexpf16.h
M libc/src/__support/math/CMakeLists.txt
A libc/src/__support/math/frexpf16.h
M libc/src/math/generic/CMakeLists.txt
M libc/src/math/generic/frexpf16.cpp
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
Log Message:
-----------
[libc][math] Refactor frexpf16 implementation to header-only in src/__support/math folder. (#147889)
Part of #147386
in preparation for:
https://discourse.llvm.org/t/rfc-make-clang-builtin-math-functions-constexpr-with-llvm-libc-to-support-c-23-constexpr-math-functions/86450
Commit: 22b21f34b233630f6adcdb60fe41fcbce322b68c
https://github.com/llvm/llvm-project/commit/22b21f34b233630f6adcdb60fe41fcbce322b68c
Author: Florian Mayer <fmayer at google.com>
Date: 2025-07-11 (Fri, 11 Jul 2025)
Changed paths:
M clang/include/clang/Basic/Features.def
M clang/test/Lexer/has_feature_undefined_behavior_sanitizer.cpp
Log Message:
-----------
Reapply "[clang] [ubsan] add __has_feature for UBSan checks" (#148322) (#148323)
This reverts commit 102c15ad28d3c312ea8926c85dbf907ca0d07b84.
Commit: d0a0a1ae638fb99ae4fe9f1c4082dbe5a560ec0a
https://github.com/llvm/llvm-project/commit/d0a0a1ae638fb99ae4fe9f1c4082dbe5a560ec0a
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-07-11 (Fri, 11 Jul 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfoXqci.td
Log Message:
-----------
[RISCV] Remove unneeded AddedComplexity from Xqcibi patterns. NFCI (#148301)
We don't have any tests that show why this AddedComplexity is needed.
ImmLeafs are automatically ranked higher than register operands so there
is no ambgiuity with the base ISA here.
Commit: d1e3ab9c4b80763c6bc260bbf62598f92e63f8fe
https://github.com/llvm/llvm-project/commit/d1e3ab9c4b80763c6bc260bbf62598f92e63f8fe
Author: Stanislav Mekhanoshin <rampitec at users.noreply.github.com>
Date: 2025-07-11 (Fri, 11 Jul 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/GCNSubtarget.h
M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
M llvm/test/CodeGen/AMDGPU/copy_phys_vgpr64.mir
M llvm/test/CodeGen/AMDGPU/global-load-xcnt.ll
M llvm/test/CodeGen/AMDGPU/v_mov_b64_expansion.mir
Log Message:
-----------
[AMDGPU] Use v_mov_b64 in codegen on gfx1250 (#148272)
Commit: 390fbe664c8549b8015203eb2d0042cafe223676
https://github.com/llvm/llvm-project/commit/390fbe664c8549b8015203eb2d0042cafe223676
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-07-11 (Fri, 11 Jul 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVFeatures.td
M llvm/lib/Target/RISCV/RISCVInstrInfoXqci.td
Log Message:
-----------
[RISCV] Use Predicates instead of Added Complexity to prefer QC_SELECTEQI over QC_MVEQI. NFC (#148312)
IMHO AddedComplexity should be used as a last resort. We should use
other mechanism like Predicates and PatFrag predicates to give priority.
Commit: cc9b5c34807ccf9158ebe02e2d85aa900546f841
https://github.com/llvm/llvm-project/commit/cc9b5c34807ccf9158ebe02e2d85aa900546f841
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-07-11 (Fri, 11 Jul 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVFeatures.td
Log Message:
-----------
[RISCV] Remove unused Predicates. NFC
Commit: 593fd44a9dcf77db8348c37d70cfecef57c392c7
https://github.com/llvm/llvm-project/commit/593fd44a9dcf77db8348c37d70cfecef57c392c7
Author: Dmitry Chestnykh <dm.chestnykh at gmail.com>
Date: 2025-07-12 (Sat, 12 Jul 2025)
Changed paths:
M clang/lib/Driver/SanitizerArgs.cpp
M clang/test/Driver/sanitizer-ld.c
Log Message:
-----------
[clang] Don't pass sanitizers' rtlibs to linker with `-r` (#147905)
If clang is invoked with `-r` (relocatable linking) then we shouldn't
construct sanitizer arguments and then pass sanitizer runtime libs to
the linker
GCC also skips runtime linking if `-r` is also here
Commit: 2f4a804e6eb597e792cf069726c6190127c478fb
https://github.com/llvm/llvm-project/commit/2f4a804e6eb597e792cf069726c6190127c478fb
Author: Baranov Victor <bar.victor.2002 at gmail.com>
Date: 2025-07-12 (Sat, 12 Jul 2025)
Changed paths:
M clang-tools-extra/clang-tidy/llvm/CMakeLists.txt
M clang-tools-extra/clang-tidy/llvm/LLVMTidyModule.cpp
A clang-tools-extra/clang-tidy/llvm/PreferStaticOverAnonymousNamespaceCheck.cpp
A clang-tools-extra/clang-tidy/llvm/PreferStaticOverAnonymousNamespaceCheck.h
M clang-tools-extra/docs/ReleaseNotes.rst
M clang-tools-extra/docs/clang-tidy/checks/list.rst
A clang-tools-extra/docs/clang-tidy/checks/llvm/prefer-static-over-anonymous-namespace.rst
A clang-tools-extra/test/clang-tidy/checkers/llvm/prefer-static-over-anonymous-namespace.cpp
Log Message:
-----------
[clang-tidy] Add new check `llvm-prefer-static-over-anonymous-namespace` (#142839)
Finds function and variable declarations inside anonymous namespace and
suggests replacing them with ``static`` declarations.
The check will enforce that
[restrict-visibility](https://llvm.org/docs/CodingStandards.html#restrict-visibility)
rule in LLVM Coding Standards is followed correctly (by adding `static`
to functions instead of putting them in anonimous namespace).
The check has additional levels of "strictness" represented by Options.
By default, the check works in the most relaxed way by giving warning
only for methods and functions defined in anonymous namespaces. Also, It
finds `static` functions that are placed inside anonymous namespace -
there is no point in keeping them inside.
Commit: f6c927e8dbe8e760c5d21c52f0c211ab3fb58735
https://github.com/llvm/llvm-project/commit/f6c927e8dbe8e760c5d21c52f0c211ab3fb58735
Author: Baranov Victor <bar.victor.2002 at gmail.com>
Date: 2025-07-12 (Sat, 12 Jul 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/lib/Sema/SemaExprCXX.cpp
M clang/test/SemaCXX/new-delete.cpp
Log Message:
-----------
[Clang] Improve diagnostics for 'placement new' with const storage argument (#144270)
Before this patch, the following code gave misleading diagnostics about
absence of `#include <new>`:
```cpp
#include <new>
struct X { int n; };
int foo() {
const X cx = {5};
// error: no matching 'operator new' function for non-allocating placement new expression; include <new>
(void)new(&cx) X{10};
};
```
Now it gives correct diagnostics about constness of passed argument:
```cpp
#include <new>
struct X { int n; };
int foo() {
const X cx = {5};
// error: placement new expression with a const-qualified argument of type 'const X *' is not allowed
(void)new(&cx) X{10};
};
```
Fixes https://github.com/llvm/llvm-project/issues/143708.
---------
Co-authored-by: Corentin Jabot <corentinjabot at gmail.com>
Commit: d2ad63a193216d008c8161879a59c5f42e0125cc
https://github.com/llvm/llvm-project/commit/d2ad63a193216d008c8161879a59c5f42e0125cc
Author: Dmitry Vasilyev <dvassiliev at accesssoftek.com>
Date: 2025-07-12 (Sat, 12 Jul 2025)
Changed paths:
M llvm/include/llvm-c/blake3.h
M llvm/lib/Support/BLAKE3/README.md
M llvm/lib/Support/BLAKE3/blake3.c
M llvm/lib/Support/BLAKE3/blake3_avx2.c
M llvm/lib/Support/BLAKE3/blake3_avx2_x86-64_windows_gnu.S
M llvm/lib/Support/BLAKE3/blake3_avx512.c
M llvm/lib/Support/BLAKE3/blake3_avx512_x86-64_unix.S
M llvm/lib/Support/BLAKE3/blake3_avx512_x86-64_windows_gnu.S
M llvm/lib/Support/BLAKE3/blake3_dispatch.c
M llvm/lib/Support/BLAKE3/blake3_impl.h
M llvm/lib/Support/BLAKE3/blake3_neon.c
M llvm/lib/Support/BLAKE3/blake3_sse2.c
M llvm/lib/Support/BLAKE3/blake3_sse2_x86-64_windows_gnu.S
M llvm/lib/Support/BLAKE3/blake3_sse41.c
M llvm/lib/Support/BLAKE3/blake3_sse41_x86-64_windows_gnu.S
Log Message:
-----------
[Support/BLAKE3] Make g_cpu_features thread safe (#147948)
`g_cpu_features` can be updated multiple times by `get_cpu_features()`,
which reports a thread sanitizer error when used with multiple lld
threads.
This PR updates BLAKE3 to v1.8.2.
Commit: f2e244f443c99f814216bef37a82f1b8d3e5975d
https://github.com/llvm/llvm-project/commit/f2e244f443c99f814216bef37a82f1b8d3e5975d
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2025-07-12 (Sat, 12 Jul 2025)
Changed paths:
M llvm/utils/gn/secondary/clang-tools-extra/clang-tidy/llvm/BUILD.gn
Log Message:
-----------
[gn build] Port 2f4a804e6eb5
Commit: 0db197adefa4f8e2901786db81fbedd9792cdab3
https://github.com/llvm/llvm-project/commit/0db197adefa4f8e2901786db81fbedd9792cdab3
Author: Trevor Gross <tmgross at umich.edu>
Date: 2025-07-12 (Sat, 12 Jul 2025)
Changed paths:
M llvm/test/CodeGen/AArch64/fsincos.ll
M llvm/test/CodeGen/AArch64/llvm.frexp.ll
M llvm/test/CodeGen/AArch64/llvm.sincos.ll
M llvm/test/CodeGen/Mips/ldexp.ll
M llvm/test/CodeGen/PowerPC/exp10-libcall.ll
M llvm/test/CodeGen/PowerPC/ldexp-libcall.ll
M llvm/test/CodeGen/PowerPC/ldexp.ll
M llvm/test/CodeGen/PowerPC/llvm.frexp.ll
M llvm/test/CodeGen/SystemZ/fp-half-libcall.ll
M llvm/test/CodeGen/X86/exp10-libcall.ll
M llvm/test/CodeGen/X86/ldexp-f80.ll
M llvm/test/CodeGen/X86/ldexp-libcall.ll
M llvm/test/CodeGen/X86/ldexp-not-readonly.ll
M llvm/test/CodeGen/X86/ldexp-strict.ll
M llvm/test/CodeGen/X86/ldexp-wrong-signature.ll
M llvm/test/CodeGen/X86/ldexp-wrong-signature2.ll
M llvm/test/CodeGen/X86/ldexp.ll
M llvm/test/CodeGen/X86/llvm.frexp.f80.ll
M llvm/test/CodeGen/X86/llvm.frexp.ll
M llvm/test/CodeGen/X86/sincos-stack-args.ll
M llvm/test/CodeGen/X86/sincos.ll
Log Message:
-----------
[Test] Mark a number of libcall tests `nounwind` (#148329)
Many tests for floating point libcalls include CFI directives, which
isn't needed for the purpose of these tests. Mark some of the relevant
test functions `nounwind` in order to remove this noise.
Commit: 007fc77cfc3c4ac629682ec9d81b212c683e97bc
https://github.com/llvm/llvm-project/commit/007fc77cfc3c4ac629682ec9d81b212c683e97bc
Author: JaydeepChauhan14 <chauhan.jaydeep.ashwinbhai at intel.com>
Date: 2025-07-12 (Sat, 12 Jul 2025)
Changed paths:
M llvm/test/CodeGen/MLRegAlloc/dev-mode-extra-features-logging.ll
Log Message:
-----------
[mlgo] Fix test post - #147716 (#148259)
Commit: b71756852f5a41b35a74918374a11ae00365ee04
https://github.com/llvm/llvm-project/commit/b71756852f5a41b35a74918374a11ae00365ee04
Author: Anatoly Trosinenko <atrosinenko at accesssoftek.com>
Date: 2025-07-12 (Sat, 12 Jul 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64FrameLowering.cpp
M llvm/test/CodeGen/AArch64/sign-return-address.ll
Log Message:
-----------
[AArch64] Fix the emission of WinCFI for pac-ret+leaf and SCS (#147518)
This commit fixes WinCFI opcodes being incorrectly emitted for test
cases in sign-return-address.ll.
Emit SEH_Nop opcode in emitShadowCallStackEpilogue the same way it is
done in emitShadowCallStackPrologue function - this fixes
12 bytes of instructions in range, but .seh directives corresponding to 8 bytes
error being reported for the epilogue of non_leaf_scs function.
Emit SEH_PrologEnd on the code path in emitPrologue function that may be
taken when pac-ret protection is emitted for a leaf function - this
fixes errors like the following:
starting epilogue (.seh_startepilogue) before prologue has ended (.seh_endprologue) in leaf_sign_all_v83
Stray .seh_endepilogue in leaf_sign_all_v83
Commit: 4326f68acbb12d21bc0c139c9b7f0a74a9ec8b69
https://github.com/llvm/llvm-project/commit/4326f68acbb12d21bc0c139c9b7f0a74a9ec8b69
Author: Victor Chernyakin <chernyakin.victor.j at outlook.com>
Date: 2025-07-12 (Sat, 12 Jul 2025)
Changed paths:
M clang-tools-extra/clang-tidy/utils/Matchers.h
M clang/include/clang/ASTMatchers/ASTMatchersInternal.h
M clang/include/clang/ASTMatchers/ASTMatchersMacros.h
M clang/lib/Tooling/Transformer/RewriteRule.cpp
Log Message:
-----------
[ASTMatchers][NFC] Replace `makeMatcher` function with CTAD (#147197)
C++17's CTAD obsoletes `makeMatcher` (and many `make*` functions like
it).
The deduction guide is written out explicitly to avoid
`-Wctad-maybe-unsupported` warnings.
Commit: bd7a6bfdf4d71f62ce7b536d543592ce73646366
https://github.com/llvm/llvm-project/commit/bd7a6bfdf4d71f62ce7b536d543592ce73646366
Author: Baranov Victor <bar.victor.2002 at gmail.com>
Date: 2025-07-12 (Sat, 12 Jul 2025)
Changed paths:
M clang-tools-extra/docs/ReleaseNotes.rst
Log Message:
-----------
[clang-tidy][NFC] fixed invalid formatting in 'ReleaseNotes.rst' (#148352)
Commit: 7b43c6c6a729bde8b20143f9620e6323812f1694
https://github.com/llvm/llvm-project/commit/7b43c6c6a729bde8b20143f9620e6323812f1694
Author: Sirraide <aeternalmail at gmail.com>
Date: 2025-07-12 (Sat, 12 Jul 2025)
Changed paths:
M clang-tools-extra/test/clang-tidy/infrastructure/file-filter-symlinks.cpp
M clang/include/clang/Basic/SourceManager.h
M clang/lib/Basic/SourceManager.cpp
M clang/lib/Frontend/SARIFDiagnostic.cpp
M clang/lib/Frontend/TextDiagnostic.cpp
M clang/test/Frontend/absolute-paths.c
R clang/test/Frontend/simplify-paths.c
Log Message:
-----------
Revert "[Clang] [Diagnostics] Simplify filenames that contain '..'" (#148367)
Revert llvm/llvm-project#143520 for now since it’s causing issues for
people who are using symlinks and prefer to preserve the original path
(i.e. looks like we’ll have to make this configurable after all; I just
need to figure out how to pass `-no-canonical-prefixes` down through the
driver); I’m planning to refactor this a bit and reland it in a few
days.
Commit: c4cc3573d144831d2815433646ffcab62cc9ea40
https://github.com/llvm/llvm-project/commit/c4cc3573d144831d2815433646ffcab62cc9ea40
Author: Yanzuo Liu <zwuis at outlook.com>
Date: 2025-07-12 (Sat, 12 Jul 2025)
Changed paths:
M clang-tools-extra/clangd/CodeComplete.cpp
M clang-tools-extra/clangd/Quality.cpp
M clang-tools-extra/clangd/SemanticHighlighting.cpp
M clang/include/clang/AST/Decl.h
M clang/include/clang/AST/DeclCXX.h
M clang/lib/AST/Decl.cpp
M clang/lib/AST/DeclCXX.cpp
M clang/lib/Sema/SemaAccess.cpp
M lldb/source/Plugins/ExpressionParser/Clang/ClangASTImporter.cpp
M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp
Log Message:
-----------
[Clang][AST][NFC] (`RecordDecl` -> `CXXRecordDecl`)`::isInjectedClassName` (#148195)
Move `RecordDecl::isInjectedClassName` to
`CXXRecordDecl::isInjectedClassName`. C language doesn't have the term
"injected class name".
Co-authored-by: Matheus Izvekov <mizvekov at gmail.com>
Commit: 4cca22ffaedc59488f7756a1d9c33d83a14bad3a
https://github.com/llvm/llvm-project/commit/4cca22ffaedc59488f7756a1d9c33d83a14bad3a
Author: Matthias Springer <me at m-sp.org>
Date: 2025-07-12 (Sat, 12 Jul 2025)
Changed paths:
M mlir/lib/Conversion/MemRefToLLVM/MemRefToLLVM.cpp
Log Message:
-----------
[mlir][memref] Do not access erased op in `memref.global` lowering (#148355)
Do not access the erased `memref.global` operation in the lowering
pattern. That won't work anymore in a One-Shot Dialect Conversion and
triggers a use-after-free sanitizer error.
After the One-Shot Dialect Conversion refactoring, a
`ConversionPatternRewriter` will behave more like a normal
`PatternRewriter`.
Commit: 7f7cf2743a80848fb6a02814dfa82251efd3631a
https://github.com/llvm/llvm-project/commit/7f7cf2743a80848fb6a02814dfa82251efd3631a
Author: Matthias Springer <me at m-sp.org>
Date: 2025-07-12 (Sat, 12 Jul 2025)
Changed paths:
M mlir/lib/Conversion/SCFToControlFlow/SCFToControlFlow.cpp
Log Message:
-----------
[mlir][SCF] Do not access erased op in `scf.while` lowering (#148356)
Do not access the erased `scf.condition` operation in the lowering
pattern. That won't work anymore in a One-Shot Dialect Conversion and
triggers a use-after-free sanitizer error.
After the One-Shot Dialect Conversion refactoring, a
`ConversionPatternRewriter` will behave more like a normal
`PatternRewriter`.
Commit: 96d57dea0326acb5a529d2a5aff0f3117bbe8dbc
https://github.com/llvm/llvm-project/commit/96d57dea0326acb5a529d2a5aff0f3117bbe8dbc
Author: Matthias Springer <me at m-sp.org>
Date: 2025-07-12 (Sat, 12 Jul 2025)
Changed paths:
M mlir/lib/Conversion/ControlFlowToLLVM/ControlFlowToLLVM.cpp
Log Message:
-----------
[mlir][cf] Do not access erased operation in `cf.cond_br` lowering (#148358)
Do not access the erased `cf.cond_br` operation in the lowering pattern.
That won't work anymore in a One-Shot Dialect Conversion and triggers a
use-after-free sanitizer error.
After the One-Shot Dialect Conversion refactoring, a
`ConversionPatternRewriter` will behave more like a normal
`PatternRewriter`.
---------
Co-authored-by: Markus Böck <markus.boeck02 at gmail.com>
Commit: 67db34863cefb4ddb71babbe22416c89cf743564
https://github.com/llvm/llvm-project/commit/67db34863cefb4ddb71babbe22416c89cf743564
Author: Matthias Springer <me at m-sp.org>
Date: 2025-07-12 (Sat, 12 Jul 2025)
Changed paths:
M mlir/lib/Transforms/Utils/DialectConversion.cpp
Log Message:
-----------
[mlir][Transforms][NFC] Dialect Conversion: Earlier `isIgnored` check (#148360)
When legalizing an operation, the conversion driver skips "ignored" ops.
Ops are ignored if they are inside of a recursively legal operation or
if they were erased.
This commit moves the "is ignored" check a bit earlier: it is now
checked before checking if the op is recursively legal. This is in
preparation of the One-Shot Dialect Conversion refactoring: erased ops
should not be accessed, not even for checking recursive legality.
This commit is NFC: When an op is erased, it is added to the set of
ignored ops and we don't want to process it, regardless of legality.
Nested ops are also added to the set of ignored ops when erasing an
enclosing op.
Commit: d06e9ce1dd69d53a2a2afd06c027ca8af87a7d7e
https://github.com/llvm/llvm-project/commit/d06e9ce1dd69d53a2a2afd06c027ca8af87a7d7e
Author: Muhammad Bassiouni <60100307+bassiounix at users.noreply.github.com>
Date: 2025-07-12 (Sat, 12 Jul 2025)
Changed paths:
M libc/shared/math.h
A libc/shared/math/frexpf.h
M libc/src/__support/math/CMakeLists.txt
A libc/src/__support/math/frexpf.h
M libc/src/math/generic/CMakeLists.txt
M libc/src/math/generic/frexpf.cpp
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
Log Message:
-----------
[libc][math] Refactor frexpf implementation to header-only in src/__support/math folder. (#147893)
Part of #147386
in preparation for:
https://discourse.llvm.org/t/rfc-make-clang-builtin-math-functions-constexpr-with-llvm-libc-to-support-c-23-constexpr-math-functions/86450
Commit: 647f02a02a90038b7af1879cf96565f204a2c949
https://github.com/llvm/llvm-project/commit/647f02a02a90038b7af1879cf96565f204a2c949
Author: Amr Hesham <amr96 at programmer.net>
Date: 2025-07-12 (Sat, 12 Jul 2025)
Changed paths:
M clang/include/clang/CIR/Dialect/IR/CIROps.td
M clang/lib/CIR/CodeGen/CIRGenExprComplex.cpp
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.h
M clang/test/CIR/CodeGen/complex-arithmetic.cpp
Log Message:
-----------
[CIR] Implement SubOp for ComplexType (#148025)
This change adds support for SubOp for ComplexType
https://github.com/llvm/llvm-project/issues/141365
Commit: 7cb84392fd4abb2190c09045d25abc98571a1396
https://github.com/llvm/llvm-project/commit/7cb84392fd4abb2190c09045d25abc98571a1396
Author: Abdullah Mohammad Amin <67847674+UltimateForce21 at users.noreply.github.com>
Date: 2025-07-12 (Sat, 12 Jul 2025)
Changed paths:
M lldb/include/lldb/Expression/DWARFExpressionList.h
M lldb/source/Expression/DWARFExpressionList.cpp
Log Message:
-----------
[lldb] Add DWARFExpressionEntry and GetExpressionEntryAtAddress() to … (#144238)
This patch introduces a new struct and helper API in
`DWARFExpressionList` to expose
variable location metadata (base address, end address, and
DWARFExpression pointer) for
a given PC address. It will be used in later patches to annotate
disassembly instructions
with source-level variable locations.
## New struct
```
/// Represents one entry in a DWARFExpressionList, with its range and expr.
struct DWARFExpressionEntry {
lldb::addr_t base; // file‐address start of this location range
lldb::addr_t end; // file‐address end of this range (exclusive)
const DWARFExpression *expr; // the DWARF expression for this range
};
```
## New API
```
/// Retrieve the DWARFExpressionEntry covering a particular instruction.
///
/// \param func_load_addr
/// The load address of the start of the function containing this location list;
/// used to translate between file offsets and load addresses. If this is
/// LLDB_INVALID_ADDRESS, the stored CU base (m_func_file_addr) is used.
///
/// \param load_addr
/// The load address of the *current* PC (i.e., the instruction for which
/// we want its variable‐location entry). We first convert this back into
/// the function’s file‐address space to find the correct DWARF range.
///
/// \returns
/// On success, an entry whose `[base,end)` covers this PC; else an Error.
llvm::Expected<DWARFExpressionEntry>
GetExpressionEntryAtAddress(lldb::addr_t func_load_addr,
lldb::addr_t load_addr) const;
```
## Rationale
LLDB already provides:
```
const DWARFExpression *
GetExpressionAtAddress(lldb::addr_t func_load_addr,
lldb::addr_t load_addr) const;
```
However, this only returns the DWARF expression itself, without the
file‐address start (base) and end (end) of the location range. Those
bounds are crucial for:
1) Detecting range beginnings: render a var = <location> annotation
exactly when a variable’s live‐range starts.
2) Detecting range continuation: optionally display a “|” on subsequent
instructions in the same range.
3) Detecting state changes: know when a variable moves (e.g. from one
register to another), becomes a constant, or goes out of scope.
These primitives form the foundation for the Rich Disassembler feature
proposed for GSoC 25.
---------
Co-authored-by: Jonas Devlieghere <jonas at devlieghere.com>
Co-authored-by: Adrian Prantl <adrian.prantl at gmail.com>
Commit: 45f7285d0ef35615cc9ba665ed54fdb4c6d1c711
https://github.com/llvm/llvm-project/commit/45f7285d0ef35615cc9ba665ed54fdb4c6d1c711
Author: Baranov Victor <bar.victor.2002 at gmail.com>
Date: 2025-07-12 (Sat, 12 Jul 2025)
Changed paths:
M clang-tools-extra/clang-tidy/llvm/PreferStaticOverAnonymousNamespaceCheck.cpp
M clang-tools-extra/test/clang-tidy/checkers/llvm/prefer-static-over-anonymous-namespace.cpp
Log Message:
-----------
[clang-tidy] Use lexical anon-ns matcher in llvm-prefer-static-over-anonymous-namespace (#148357)
When having this code:
```cpp
namespace {
class MyClassOutOfAnon {
public:
MyClassOutOfAnon();
} // namespace
MyClassOutOfAnon::MyClassOutOfAnon() {}
```
`MyClassOutOfAnon::MyClassOutOfAnon` is located in anonymous namespace
in `DeclContext` but outside anonymous namespace in
`LexicalDeclContext`.
For this check to work correctly, we need to check if definition is
located inside `LexicalDeclContext`.
Commit: 490e50090440a20e9b63963061a67c04e2b2b901
https://github.com/llvm/llvm-project/commit/490e50090440a20e9b63963061a67c04e2b2b901
Author: Connector Switch <c8ef at outlook.com>
Date: 2025-07-13 (Sun, 13 Jul 2025)
Changed paths:
M libc/test/src/math/exhaustive/tanf_test.cpp
Log Message:
-----------
[libc][NFC] Revise file header for tanf exhaustive test. (#148348)
Commit: cf10a09394795eac3b873395f1905cd0ca40beda
https://github.com/llvm/llvm-project/commit/cf10a09394795eac3b873395f1905cd0ca40beda
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2025-07-12 (Sat, 12 Jul 2025)
Changed paths:
M llvm/Maintainers.md
Log Message:
-----------
[Maintainers] Fix flang maintainers file name (#148382)
Commit: bce3cbc74e6026e69b181080bd90fb6b61ee34cd
https://github.com/llvm/llvm-project/commit/bce3cbc74e6026e69b181080bd90fb6b61ee34cd
Author: Petr Hosek <phosek at google.com>
Date: 2025-07-12 (Sat, 12 Jul 2025)
Changed paths:
M libc/config/baremetal/aarch64/entrypoints.txt
M libc/config/baremetal/arm/entrypoints.txt
M libc/config/baremetal/riscv/entrypoints.txt
M libc/src/time/baremetal/CMakeLists.txt
A libc/src/time/baremetal/clock.cpp
Log Message:
-----------
[libc] Baremetal version of clock (#146417)
This is analogous to the baremetal version of timespec_get using the
__llvm_libc_timespec_get_active embedding interface.
Commit: 170578d400b6b6975d33c0598fdcf2a94123734f
https://github.com/llvm/llvm-project/commit/170578d400b6b6975d33c0598fdcf2a94123734f
Author: Matthias Springer <me at m-sp.org>
Date: 2025-07-12 (Sat, 12 Jul 2025)
Changed paths:
M mlir/lib/Conversion/SPIRVToLLVM/SPIRVToLLVM.cpp
Log Message:
-----------
[mlir][SPIRV] Do not access erased op in SPIRV->LLVM lowering (#148373)
This commit fixes two occurrences where an erased op was accessed at a
later point of time. That won't work anymore in a One-Shot Dialect
Conversion and triggers a use-after-free sanitizer error.
After the One-Shot Dialect Conversion refactoring, a
`ConversionPatternRewriter` will behave more like a normal
`PatternRewriter`.
---------
Co-authored-by: Markus Böck <markus.boeck02 at gmail.com>
Commit: 6d98f67f318757ec4f75b7e9842958ccfb524e1b
https://github.com/llvm/llvm-project/commit/6d98f67f318757ec4f75b7e9842958ccfb524e1b
Author: Tom Vijlbrief <tvijlbrief at gmail.com>
Date: 2025-07-12 (Sat, 12 Jul 2025)
Changed paths:
M llvm/lib/Target/AVR/README.md
Log Message:
-----------
[AVR] Fix broken link in README.md (#146821)
Fix broken link
Commit: 78c12d380c369b53416518776ae53c3ba168cf7b
https://github.com/llvm/llvm-project/commit/78c12d380c369b53416518776ae53c3ba168cf7b
Author: Kazu Hirata <kazu at google.com>
Date: 2025-07-12 (Sat, 12 Jul 2025)
Changed paths:
M clang/lib/Sema/SemaExprCXX.cpp
M clang/lib/Sema/SemaType.cpp
Log Message:
-----------
[Sema] Remove unnecessary casts (NFC) (#148338)
NumElts, a member variable of ArrayTypeInfo, is already of Expr *.
Commit: eca6f8acd09bf41bbc1c37a7a9a255532928aee0
https://github.com/llvm/llvm-project/commit/eca6f8acd09bf41bbc1c37a7a9a255532928aee0
Author: Kazu Hirata <kazu at google.com>
Date: 2025-07-12 (Sat, 12 Jul 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64FalkorHWPFFix.cpp
M llvm/lib/Target/AArch64/AArch64LoadStoreOptimizer.cpp
M llvm/lib/Target/AArch64/AArch64StorePairSuppress.cpp
Log Message:
-----------
[AArch64] Remove unnecessary casts (NFC) (#148339)
getInstrInfo() already returns const AArch64InstrInfo *.
Commit: f1791c0ae3eafba1476ac1b39eedf09c1a577f5a
https://github.com/llvm/llvm-project/commit/f1791c0ae3eafba1476ac1b39eedf09c1a577f5a
Author: Kazu Hirata <kazu at google.com>
Date: 2025-07-12 (Sat, 12 Jul 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
Log Message:
-----------
[AMDGPU] Remove unnecessary casts (NFC) (#148340)
getRegisterInfo() already returns const SIRegisterInfo *.
Likewise, getInstrInfo() already returns const SIInstrInfo *.
Commit: 854cce2d0a3c695e024b5ba83ab747919710b7a8
https://github.com/llvm/llvm-project/commit/854cce2d0a3c695e024b5ba83ab747919710b7a8
Author: Kazu Hirata <kazu at google.com>
Date: 2025-07-12 (Sat, 12 Jul 2025)
Changed paths:
M llvm/lib/ProfileData/SampleProfReader.cpp
Log Message:
-----------
[ProfileData] Remove an unnecessary cast (NFC) (#148341)
getBufferStart() already returns const char *.
Commit: d5def016b6ee3dcf4e1848ba39aba07e80714b75
https://github.com/llvm/llvm-project/commit/d5def016b6ee3dcf4e1848ba39aba07e80714b75
Author: Kazu Hirata <kazu at google.com>
Date: 2025-07-12 (Sat, 12 Jul 2025)
Changed paths:
M mlir/lib/Dialect/LLVMIR/IR/LLVMAttrs.cpp
M mlir/lib/Dialect/LLVMIR/IR/LLVMDialect.cpp
M mlir/lib/Dialect/LLVMIR/IR/LLVMInterfaces.cpp
M mlir/lib/Dialect/LLVMIR/IR/LLVMTypes.cpp
M mlir/lib/Dialect/LLVMIR/IR/NVVMDialect.cpp
M mlir/lib/Dialect/LLVMIR/IR/ROCDLDialect.cpp
M mlir/lib/Dialect/LLVMIR/Transforms/DIExpressionRewriter.cpp
M mlir/lib/Dialect/LLVMIR/Transforms/DIScopeForLLVMFuncOp.cpp
M mlir/lib/Dialect/LLVMIR/Transforms/LegalizeForExport.cpp
M mlir/lib/Dialect/MemRef/IR/MemRefDialect.cpp
M mlir/lib/Dialect/MemRef/IR/MemRefMemorySlot.cpp
M mlir/lib/Dialect/MemRef/TransformOps/MemRefTransformOps.cpp
M mlir/lib/Dialect/MemRef/Transforms/ComposeSubView.cpp
M mlir/lib/Dialect/MemRef/Transforms/ExpandOps.cpp
M mlir/lib/Dialect/MemRef/Transforms/FlattenMemRefs.cpp
M mlir/lib/Dialect/MemRef/Transforms/FoldMemRefAliasOps.cpp
M mlir/lib/Dialect/MemRef/Transforms/IndependenceTransforms.cpp
M mlir/lib/Dialect/MemRef/Transforms/MultiBuffer.cpp
M mlir/lib/Dialect/MemRef/Transforms/NormalizeMemRefs.cpp
M mlir/lib/Dialect/MemRef/Transforms/RuntimeOpVerification.cpp
M mlir/lib/Dialect/MemRef/Utils/MemRefUtils.cpp
Log Message:
-----------
[llvm] Remove unused includes (NFC) (#148342)
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: 00311cf6040604a2654cafd8f0d175d3b85d29d4
https://github.com/llvm/llvm-project/commit/00311cf6040604a2654cafd8f0d175d3b85d29d4
Author: Amir Ayupov <aaupov at fb.com>
Date: 2025-07-12 (Sat, 12 Jul 2025)
Changed paths:
M bolt/include/bolt/Core/MCPlusBuilder.h
M bolt/include/bolt/Profile/DataAggregator.h
M bolt/lib/Profile/DataAggregator.cpp
Log Message:
-----------
[BOLT] Impute missing trace fall-through (#145258)
Commit: 8afab759d471b60863b8304e39bf6a8b415221dc
https://github.com/llvm/llvm-project/commit/8afab759d471b60863b8304e39bf6a8b415221dc
Author: Michael Buch <michaelbuch12 at gmail.com>
Date: 2025-07-12 (Sat, 12 Jul 2025)
Changed paths:
M lldb/source/Core/FormatEntity.cpp
A lldb/test/Shell/Settings/TestCxxFrameFormatEmpty.test
Log Message:
-----------
[lldb][Format] Fall back to old function.name-with-args if language frame format is emtpy (#148235)
There is currently no way to prevent `${function.name-with-args}` from
using the `plugin.cplusplus.display.function-name-format` setting. Even
if the setting is set to an empty string. As a way to disable formatting
by language plugin, this patch makes it so
`plugin.cplusplus.display.function-name-format` falls back to the old
way of printing `${function.name-with-args}`. Even if we didn't want to
add a fallback, making the setting an empty string shouldn't really
"succeed".
Commit: bc2cc8b56e2444339ffa58e83a457d15ae18241d
https://github.com/llvm/llvm-project/commit/bc2cc8b56e2444339ffa58e83a457d15ae18241d
Author: Amy Huang <akhuang at google.com>
Date: 2025-07-12 (Sat, 12 Jul 2025)
Changed paths:
M libc/cmake/modules/LLVMLibCTestRules.cmake
Log Message:
-----------
Change binary path in libc test cmake file from relative to absolute (#148315)
For some reason cmake usually turns this path into an absolute path, but
sometimes
it doesn't do it and stays as a relative path, which means the command
will fail.
Specify it as an absolute path always so this doesn't happen any more.
Commit: 94fc76a360575fd32011792fd07482fbfbd3983b
https://github.com/llvm/llvm-project/commit/94fc76a360575fd32011792fd07482fbfbd3983b
Author: Kazu Hirata <kazu at google.com>
Date: 2025-07-12 (Sat, 12 Jul 2025)
Changed paths:
M llvm/lib/Target/ARM/ARMFastISel.cpp
M llvm/lib/Target/ARM/ARMLowOverheadLoops.cpp
Log Message:
-----------
[ARM] Remove unnecessary casts (NFC) (#148391)
getRegisterInfo() already returns const ARMBaseRegisterInfo *.
Likewise, getInstrInfo() already returns const ARMBaseInstrInfo *.
Commit: 4462a420f8130e19f04c8ac5703669384285e91a
https://github.com/llvm/llvm-project/commit/4462a420f8130e19f04c8ac5703669384285e91a
Author: Kazu Hirata <kazu at google.com>
Date: 2025-07-12 (Sat, 12 Jul 2025)
Changed paths:
M llvm/lib/Target/Mips/MicroMipsSizeReduction.cpp
M llvm/lib/Target/Mips/MipsBranchExpansion.cpp
M llvm/lib/Target/Mips/MipsSEFrameLowering.cpp
Log Message:
-----------
[Mips] Remove unnecessary casts (NFC) (#148392)
getRegisterInfo() already returns const MipsRegisterInfo *.
Likewise, getInstrInfo() already returns const MipsInstrInfo *.
Commit: 49e021ccccf2b4f54dc697ff3332b57ff6dbe6d3
https://github.com/llvm/llvm-project/commit/49e021ccccf2b4f54dc697ff3332b57ff6dbe6d3
Author: Kazu Hirata <kazu at google.com>
Date: 2025-07-12 (Sat, 12 Jul 2025)
Changed paths:
M llvm/lib/Target/PowerPC/PPCAsmPrinter.cpp
Log Message:
-----------
[PowerPC] Remove an unnecessary cast (NFC) (#148393)
getRegisterInfo() already returns const PPCRegisterInfo *.
Commit: ce663b604342d5d117fba38d08881719605fece9
https://github.com/llvm/llvm-project/commit/ce663b604342d5d117fba38d08881719605fece9
Author: Kazu Hirata <kazu at google.com>
Date: 2025-07-12 (Sat, 12 Jul 2025)
Changed paths:
M llvm/lib/Target/X86/X86CallFrameOptimization.cpp
Log Message:
-----------
[X86] Remove unnecessary casts (NFC) (#148395)
getRegisterInfo() already returns const X86RegisterInfo *.
Commit: 433a5a7c203dc2a7da4747fae95fcacb8844e9d1
https://github.com/llvm/llvm-project/commit/433a5a7c203dc2a7da4747fae95fcacb8844e9d1
Author: Kazu Hirata <kazu at google.com>
Date: 2025-07-12 (Sat, 12 Jul 2025)
Changed paths:
M mlir/lib/Dialect/SPIRV/IR/CooperativeMatrixOps.cpp
M mlir/lib/Dialect/SPIRV/IR/SPIRVCanonicalization.cpp
M mlir/lib/Dialect/SPIRV/IR/SPIRVDialect.cpp
M mlir/lib/Dialect/SPIRV/IR/SPIRVEnums.cpp
M mlir/lib/Dialect/SPIRV/IR/SPIRVOps.cpp
M mlir/lib/Dialect/SPIRV/IR/SPIRVTypes.cpp
M mlir/lib/Dialect/SPIRV/IR/TargetAndABI.cpp
M mlir/lib/Dialect/SPIRV/Linking/ModuleCombiner/ModuleCombiner.cpp
M mlir/lib/Dialect/SPIRV/Transforms/CanonicalizeGLPass.cpp
M mlir/lib/Dialect/SPIRV/Transforms/LowerABIAttributesPass.cpp
M mlir/lib/Dialect/SPIRV/Transforms/RewriteInsertsPass.cpp
M mlir/lib/Dialect/SPIRV/Transforms/SPIRVConversion.cpp
M mlir/lib/Dialect/SPIRV/Transforms/UnifyAliasedResourcePass.cpp
M mlir/lib/Dialect/SPIRV/Transforms/UpdateVCEPass.cpp
M mlir/lib/Dialect/SPIRV/Utils/LayoutUtils.cpp
M mlir/lib/Dialect/SparseTensor/IR/SparseTensorDialect.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/BufferizableOpInterfaceImpl.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/SparseAssembler.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/SparseReinterpretMap.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/SparseVectorization.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/Sparsification.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/SparsificationAndBufferizationPass.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/StageSparseOperations.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/Utils/CodegenUtils.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/Utils/IterationGraphSorter.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/Utils/LoopEmitter.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/Utils/SparseTensorDescriptor.cpp
Log Message:
-----------
[mlir] Remove unused includes (NFC) (#148396)
Commit: 7299250c030546b6811f5a1e0c4fd86f4380192e
https://github.com/llvm/llvm-project/commit/7299250c030546b6811f5a1e0c4fd86f4380192e
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-07-13 (Sun, 13 Jul 2025)
Changed paths:
M llvm/include/llvm/IR/RuntimeLibcalls.td
M llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
M llvm/lib/IR/RuntimeLibcalls.cpp
A llvm/test/CodeGen/Hexagon/fast-math-libcalls.ll
Log Message:
-----------
DAG: Use fast variants of fast math libcalls (#147481)
Hexagon currently has an untested global flag to control fast
math variants of libcalls. Add fast variants as explicit libcall
options so this can be a flag based lowering decision, and implement
it. I have no idea what fast math flags the hexagon case requires,
so I picked the maximally potentially relevant set of flags although
this probably is refinable per call. Looking in compiler-rt, I'm not
sure if the fast variants are anything more than aliases.
Commit: 83632788c9351f08d7a231f9cf3eada717b8b597
https://github.com/llvm/llvm-project/commit/83632788c9351f08d7a231f9cf3eada717b8b597
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-07-13 (Sun, 13 Jul 2025)
Changed paths:
M llvm/include/llvm/IR/RuntimeLibcalls.td
M llvm/lib/IR/RuntimeLibcalls.cpp
Log Message:
-----------
Hexagon: Move runtime libcall configuration to tablegen (#147482)
Commit: 77bcde657b6107ed8f0918ea5aea9005b08817ab
https://github.com/llvm/llvm-project/commit/77bcde657b6107ed8f0918ea5aea9005b08817ab
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-07-13 (Sun, 13 Jul 2025)
Changed paths:
M llvm/include/llvm/IR/RuntimeLibcalls.td
Log Message:
-----------
RuntimeLibcalls: Stop using defset for default calls (#147651)
This is redundant with the IsDefault field, so avoid a really
long enclosing pair of braces. This will make it easier to gradually
remove calls from the default set.
Commit: d92e6f0e81a4699c205d5cf023d9daeac1118cc5
https://github.com/llvm/llvm-project/commit/d92e6f0e81a4699c205d5cf023d9daeac1118cc5
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-07-13 (Sun, 13 Jul 2025)
Changed paths:
M llvm/include/llvm/IR/RuntimeLibcalls.td
Log Message:
-----------
RISCV: Start moving runtime libcall config to tablegen (#147652)
This doesn't yet attempt to move the OS dependent configuration
shared with other targets. Removes __riscv_flush_icache from the
default set so it's no longer falsely reported as available for
other targets.
Commit: 0537f17dfc2e5989ff9d3ee2fe9999d360ed5de6
https://github.com/llvm/llvm-project/commit/0537f17dfc2e5989ff9d3ee2fe9999d360ed5de6
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-07-13 (Sun, 13 Jul 2025)
Changed paths:
M llvm/include/llvm/IR/RuntimeLibcalls.td
Log Message:
-----------
RuntimeLibcalls: Avoid adding ppcf128 calls to non-ppc targets (#147656)
Filter out PPCF128 calls from the default set, and only add them
back to PPC.
Commit: 4d0141811908a137d993800239f39269e8c79065
https://github.com/llvm/llvm-project/commit/4d0141811908a137d993800239f39269e8c79065
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-07-13 (Sun, 13 Jul 2025)
Changed paths:
M llvm/include/llvm/IR/RuntimeLibcalls.td
Log Message:
-----------
RuntimeLibcalls: Avoid adding f80 calls to default set (#147658)
Starts adding a stub X86 configuration which doesn't attempt
the system specific pieces yet. This is mostly to have a point
to add back in the f80 calls so they can be removed from every
other target.
Commit: e2ddd147a518b151f764a6b4e9ef99ae9e2050a3
https://github.com/llvm/llvm-project/commit/e2ddd147a518b151f764a6b4e9ef99ae9e2050a3
Author: Michał Górny <mgorny at gentoo.org>
Date: 2025-07-13 (Sun, 13 Jul 2025)
Changed paths:
M third-party/unittest/CMakeLists.txt
Log Message:
-----------
[unittest] Add missing LLVM include directory to target (#148362)
Add the top-level LLVM include directory to the `llvm_gtest` target, as
it requires `llvm/Support/raw_os_ostream.h` header. This fixes a
flang-rt unittest build failure introduced in #143682.
Commit: 6f923134ddf4afc4266c4c32854d7cc2793c23a1
https://github.com/llvm/llvm-project/commit/6f923134ddf4afc4266c4c32854d7cc2793c23a1
Author: Jason Rice <ricejasonf at gmail.com>
Date: 2025-07-13 (Sun, 13 Jul 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Sema/SemaTemplateInstantiate.cpp
A clang/test/SemaCXX/local-class-template-param-crash.cpp
Log Message:
-----------
[Clang][P1061] Fix template arguments in local classes (#121225)
In the development of P1061 (Structured Bindings Introduce a Patch), I
found this bug in the template instantiation of a
local class. The issue is caused by the instantiation of the original
template and not the partially instantiated template. In
the example (sans the fix) the instantiation uses the first template
parameter from the previous instantiation and not the current one so the
error hits an assertion when it is expecting an NTTP. If they were both
types then it might gladly accept the type from the wrong template which
is kind of scary.
In the test, the reference to `i` is substituted with a placeholder AST
object that represents the resolved value when instantiating `g`.
However, since the old template is used, the instantiation sees an AST
object that only contains the template argument index in the context of
instantiating the lambda which has a type template parameter (ie auto).
I question if we should use `getTemplateInstantiationPattern` at all
here. Other errors involving local classes in nested templates could
also be caused by the misuse of this function (because it gets the
uninstantiated template).
Commit: 267b136359d8448c73432b4f3ceeefbf4c35e00b
https://github.com/llvm/llvm-project/commit/267b136359d8448c73432b4f3ceeefbf4c35e00b
Author: Fangrui Song <i at maskray.me>
Date: 2025-07-12 (Sat, 12 Jul 2025)
Changed paths:
M llvm/include/llvm/MC/MCSection.h
M llvm/lib/MC/MCExpr.cpp
M llvm/lib/MC/MCObjectStreamer.cpp
Log Message:
-----------
MCFragment: Refactor code for MCFragment
To prepare for moving content and fixup member variables from
MCEncodedFragment to MCFragment and removing
MCDataFragment/MCRelaxableFragment classes, replace dyn_cast with
getKind() tests.
Commit: d3b339e36debf208229e86bee3164bdf2ec24052
https://github.com/llvm/llvm-project/commit/d3b339e36debf208229e86bee3164bdf2ec24052
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2025-07-13 (Sun, 13 Jul 2025)
Changed paths:
M libcxx/include/unordered_map
M libcxx/test/std/containers/associative/multimap/incomplete_type.pass.cpp
M libcxx/test/std/containers/unord/unord.map/incomplete_type.pass.cpp
M libcxx/test/std/containers/unord/unord.multimap/incomplete.pass.cpp
Log Message:
-----------
[libc++] Don't instantiate allocators in __hash_table on an incomplete type (#148353)
Currently, we try to instantiate the allocator on `__hash_value_type`,
which we don't define anymore. Instead, just use the
`map::allocator_type` to instantiate `__tree`, since that's what we
actually want anyways.
Commit: 9d0ac3980d2a3ccab90ab49ac2f8359d4c4752c7
https://github.com/llvm/llvm-project/commit/9d0ac3980d2a3ccab90ab49ac2f8359d4c4752c7
Author: David Green <david.green at arm.com>
Date: 2025-07-13 (Sun, 13 Jul 2025)
Changed paths:
M llvm/lib/Target/ARM/ARMTargetTransformInfo.cpp
Log Message:
-----------
[ARM] Use CostKind in getShuffleCost getMVEVectorCostFactor.
These calls pre-date CostKind being added to getShuffleCost in
5263155d5be64b435a97fd4fa12f7f0aa97f88a8.
Commit: a647fd7ddae8c43d8483d00cb303841ad5b937b0
https://github.com/llvm/llvm-project/commit/a647fd7ddae8c43d8483d00cb303841ad5b937b0
Author: David Green <david.green at arm.com>
Date: 2025-07-13 (Sun, 13 Jul 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
M llvm/test/Analysis/CostModel/AArch64/reduce-add.ll
Log Message:
-----------
[AArch64] Add a cost for v2i32 vecreduce.add.
These can lower to a addp. The score does not alter with this patch, but this
should help keep the scores the same with #146526.
Commit: 58c0bd196e566f20a6b5e35ff0b57db8fe6b34ca
https://github.com/llvm/llvm-project/commit/58c0bd196e566f20a6b5e35ff0b57db8fe6b34ca
Author: Matthias Springer <me at m-sp.org>
Date: 2025-07-13 (Sun, 13 Jul 2025)
Changed paths:
M mlir/lib/Transforms/Utils/DialectConversion.cpp
Log Message:
-----------
[mlir][Transforms] Dialect Conversion: `allowPatternRollback` to check foldings (#148394)
When an operation is folded to an attribute, the attribute must be
materialized as a constant operation. That operation must then be
legalized. If such a legalization fails, the entire folding is rolled
back. This is not supported in a One-Shot Dialect Conversion. (Support
for rolling back foldings could be added at a later point of time.)
This commit improves the `allowPatternRollback` flag handling, such that
a fatal error is reported when a folder is attempted to be rolled back.
Commit: d86c63d8e3ec135aadfb2dd2651f95ba2d74a6ab
https://github.com/llvm/llvm-project/commit/d86c63d8e3ec135aadfb2dd2651f95ba2d74a6ab
Author: Koakuma <koachan at protonmail.com>
Date: 2025-07-13 (Sun, 13 Jul 2025)
Changed paths:
M llvm/lib/Target/Sparc/Sparc.td
A llvm/lib/Target/Sparc/SparcInstrCrypto.td
M llvm/lib/Target/Sparc/SparcInstrInfo.td
A llvm/test/MC/Disassembler/Sparc/sparc-crypto.txt
A llvm/test/MC/Sparc/sparc-crypto.s
Log Message:
-----------
[SPARC][IAS] Add definitions for cryptographic instructions
Reviewers: brad0, rorth, s-barannikov
Reviewed By: s-barannikov
Pull Request: https://github.com/llvm/llvm-project/pull/139451
Commit: 21491ed7519c093fff0794bc90078a9c2b628401
https://github.com/llvm/llvm-project/commit/21491ed7519c093fff0794bc90078a9c2b628401
Author: Harald van Dijk <harald.vandijk at codeplay.com>
Date: 2025-07-13 (Sun, 13 Jul 2025)
Changed paths:
M llvm/cmake/config-ix.cmake
Log Message:
-----------
Turn off uninitialized warnings for GCC up to 14. (#147968)
Although the false positives that caused it to be disabled originally
may have been fixed in GCC 12, GCC also suffers from a problem where
-Wuninitialized may cause the build to hang on some platforms (GCC
#120729). This has been fixed in GCC 15, so turn on -Wuninitialized for
GCC 15+ instead of GCC 12+.
Commit: cc65da0fb115b9029c94f278d5e8f1a3b64f41e1
https://github.com/llvm/llvm-project/commit/cc65da0fb115b9029c94f278d5e8f1a3b64f41e1
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-07-13 (Sun, 13 Jul 2025)
Changed paths:
M llvm/test/Transforms/LoopVectorize/AArch64/fmax-without-fast-math-flags.ll
M llvm/test/Transforms/LoopVectorize/fmax-without-fast-math-flags-interleave.ll
M llvm/test/Transforms/LoopVectorize/fmax-without-fast-math-flags.ll
Log Message:
-----------
[LV] Update fmax tests to include ogt/olt/ole/ugt predicates.
Adjust and update tests as per feedback in
https://github.com/llvm/llvm-project/pull/146711.
Commit: 43a9ec2ecdf4aac8966e3b02e4e92c794f5b6a27
https://github.com/llvm/llvm-project/commit/43a9ec2ecdf4aac8966e3b02e4e92c794f5b6a27
Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
Date: 2025-07-13 (Sun, 13 Jul 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
A llvm/test/Transforms/InstCombine/AArch64/aarch64-sme-in-streaming-mode.ll
Log Message:
-----------
[AArch64][SME] Instcombine `llvm.aarch64.sme.in.streaming.mode()` (#147930)
This can fold away in functions with known streaming modes.
Commit: 1db33f1034aa758ff7a04d09641232d2ce1a2a2b
https://github.com/llvm/llvm-project/commit/1db33f1034aa758ff7a04d09641232d2ce1a2a2b
Author: Matthias Springer <me at m-sp.org>
Date: 2025-07-13 (Sun, 13 Jul 2025)
Changed paths:
M mlir/lib/Transforms/Utils/DialectConversion.cpp
Log Message:
-----------
[mlir][Transforms] Report all `allowPatternRollback` violations as fatal errors (#148416)
Report all `allowPatternRollback` API violations as fatal errors. If
violated, the IR is potentially in an invalid/inconsistent state from
which the driver cannot recover.
Commit: 59b39c0031eded7c46e554b161382187cb2d0ca5
https://github.com/llvm/llvm-project/commit/59b39c0031eded7c46e554b161382187cb2d0ca5
Author: Victor Chernyakin <chernyakin.victor.j at outlook.com>
Date: 2025-07-13 (Sun, 13 Jul 2025)
Changed paths:
M clang-tools-extra/clang-tidy/readability/CMakeLists.txt
M clang-tools-extra/clang-tidy/readability/ReadabilityTidyModule.cpp
A clang-tools-extra/clang-tidy/readability/UseConcisePreprocessorDirectivesCheck.cpp
A clang-tools-extra/clang-tidy/readability/UseConcisePreprocessorDirectivesCheck.h
M clang-tools-extra/docs/ReleaseNotes.rst
M clang-tools-extra/docs/clang-tidy/checks/list.rst
A clang-tools-extra/docs/clang-tidy/checks/readability/use-concise-preprocessor-directives.rst
A clang-tools-extra/test/clang-tidy/checkers/readability/use-concise-preprocessor-directives.cpp
Log Message:
-----------
[clang-tidy] Add new check: `readability-use-concise-preprocessor-directives` (#146830)
Closes #132561.
This is a check that rewrites `#if`s and `#elif`s like so:
```cpp
#if defined(MEOW) // -> #ifdef MEOW
#if !defined(MEOW) // -> #ifndef MEOW
```
And, since C23 and C++23:
```cpp
#elif defined(MEOW) // -> #elifdef MEOW
#elif !defined(MEOW) // -> #elifndef MEOW
```
Commit: b6313b381ac0e83012ea11b4549cd8cb39b686d2
https://github.com/llvm/llvm-project/commit/b6313b381ac0e83012ea11b4549cd8cb39b686d2
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2025-07-13 (Sun, 13 Jul 2025)
Changed paths:
M llvm/utils/gn/secondary/clang-tools-extra/clang-tidy/readability/BUILD.gn
Log Message:
-----------
[gn build] Port 59b39c0031ed
Commit: 7ccdc595f8ecca0bc477c3e17683c52dca440845
https://github.com/llvm/llvm-project/commit/7ccdc595f8ecca0bc477c3e17683c52dca440845
Author: Finn Plummer <finn.c.plum at gmail.com>
Date: 2025-07-13 (Sun, 13 Jul 2025)
Changed paths:
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/lib/Sema/SemaHLSL.cpp
M clang/test/AST/HLSL/RootSignatures-AST.hlsl
M clang/test/CodeGenHLSL/RootSignature.hlsl
M clang/test/SemaHLSL/RootSignature-err.hlsl
A clang/test/SemaHLSL/RootSignature-flags-err.hlsl
Log Message:
-----------
[HLSL][RootSignature] Add basic parameter validations of Root Elements (#145795)
In this pr we go through and enforce the various bounded parameter
values for non-flag values and the valid flag combinations for
`RootDescriptor` and `DescriptorRange` flags.
For reference of the required checks, please see here:
https://github.com/llvm/wg-hlsl/blob/main/proposals/0002-root-signature-in-clang.md#validations-in-sema.
- Updates `SemaHLSL` to iterate through `RootElement`s and verify that
all non-flag parameters are within their bounds
- Updates `SemaHLSL` to iterate through `RootElement`s and verify that
all flag parameters are a valid combination
- Extends `RootSignature-err.hlsl` with testcases for all invalid
specifications
- Adds `RootSignature-flags-err.hlsl` with testcase for invalid flag
specifications
Resolves: https://github.com/llvm/llvm-project/issues/129940
Commit: f168175d01247af53e3ab243486065facc18fa49
https://github.com/llvm/llvm-project/commit/f168175d01247af53e3ab243486065facc18fa49
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-07-13 (Sun, 13 Jul 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlanConstruction.cpp
Log Message:
-----------
[VPlan] Move using namespace VPlanPatternMatch to top level (NFC).
VPlanConstruction.cpp doesn't use IR pattern matching, so using
VPlanPatternMatch can be moved to the top-level, to slightly reduce the
diff in follow-up changes.
Commit: f4c7cc26b65912c9951f0cb09b3a5ba082096687
https://github.com/llvm/llvm-project/commit/f4c7cc26b65912c9951f0cb09b3a5ba082096687
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-07-13 (Sun, 13 Jul 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
A llvm/test/Transforms/LoopVectorize/AArch64/predicated-costs.ll
Log Message:
-----------
[LV] Use more precise isPredicatedInst in legacy CCH (NFC).
Legal::isMaskRequired may be overly conservative and also return true
when no mask is actually required.
Use isPredicatedInst from the cost model instead, which fixes a
cost-model divergence between legacy and VPlan cost model where the
legacy cost model incorrectly assumed some loads were predicated.
Fixes https://github.com/llvm/llvm-project/issues/148431.
Commit: 047552600bd9fac5a6ae63d6e4d44cc174cc3da6
https://github.com/llvm/llvm-project/commit/047552600bd9fac5a6ae63d6e4d44cc174cc3da6
Author: Kazu Hirata <kazu at google.com>
Date: 2025-07-13 (Sun, 13 Jul 2025)
Changed paths:
M clang/lib/Sema/SemaExprCXX.cpp
Log Message:
-----------
[Sema] Remove an unnecessary cast (NFC) (#148531)
Dtor is already of CXXDestructorDecl *.
Commit: b97fad1b4155b984fc463905c637f1d17ccf322b
https://github.com/llvm/llvm-project/commit/b97fad1b4155b984fc463905c637f1d17ccf322b
Author: Kazu Hirata <kazu at google.com>
Date: 2025-07-13 (Sun, 13 Jul 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64FrameLowering.cpp
Log Message:
-----------
[AArch64] Remove an unnecessary cast (NFC) (#148532)
getRegisterInfo() already returns const AArch64RegisterInfo *.
Commit: ebaadb1f163c6f1b314af8934a96937b0da43b54
https://github.com/llvm/llvm-project/commit/ebaadb1f163c6f1b314af8934a96937b0da43b54
Author: Kazu Hirata <kazu at google.com>
Date: 2025-07-13 (Sun, 13 Jul 2025)
Changed paths:
M llvm/lib/Target/ARM/Disassembler/ARMDisassembler.cpp
Log Message:
-----------
[ARM] Remove unnecessary casts (NFC) (#148533)
Decoder is already of const MCDisassembler *.
Commit: 3f78e91340601cb51b737015eb65636ccf02d71d
https://github.com/llvm/llvm-project/commit/3f78e91340601cb51b737015eb65636ccf02d71d
Author: Kazu Hirata <kazu at google.com>
Date: 2025-07-13 (Sun, 13 Jul 2025)
Changed paths:
M llvm/lib/Target/SystemZ/SystemZFrameLowering.cpp
Log Message:
-----------
[SystemZ] Remove unnecessary casts (NFC) (#148534)
getInstrInfo() already returns const SystemZInstrInfo *.
Commit: cac806bcc5b3367ca7573c2c5ae590379d89b84f
https://github.com/llvm/llvm-project/commit/cac806bcc5b3367ca7573c2c5ae590379d89b84f
Author: Kazu Hirata <kazu at google.com>
Date: 2025-07-13 (Sun, 13 Jul 2025)
Changed paths:
M mlir/lib/Dialect/AMDGPU/Transforms/EmulateAtomics.cpp
M mlir/lib/Dialect/AMX/Transforms/LegalizeForLLVMExport.cpp
M mlir/lib/Dialect/Arith/IR/ArithOps.cpp
M mlir/lib/Dialect/Arith/IR/InferIntRangeInterfaceImpls.cpp
M mlir/lib/Dialect/Arith/Transforms/EmulateNarrowType.cpp
M mlir/lib/Dialect/Arith/Transforms/ExpandOps.cpp
M mlir/lib/Dialect/Arith/Transforms/ShardingInterfaceImpl.cpp
M mlir/lib/Dialect/ArmNeon/IR/ArmNeonDialect.cpp
M mlir/lib/Dialect/ArmNeon/Transforms/LowerContractionToNeonI8MMPattern.cpp
M mlir/lib/Dialect/ArmSME/IR/ArmSME.cpp
M mlir/lib/Dialect/ArmSME/IR/Utils.cpp
M mlir/lib/Dialect/ArmSME/Transforms/TileAllocation.cpp
M mlir/lib/Dialect/ArmSVE/IR/ArmSVEDialect.cpp
M mlir/lib/Dialect/ArmSVE/Transforms/LegalizeForLLVMExport.cpp
M mlir/lib/Dialect/ArmSVE/Transforms/LowerContractionToSVEI8MMPattern.cpp
M mlir/lib/Dialect/Async/IR/Async.cpp
M mlir/lib/Dialect/Async/Transforms/AsyncRuntimeRefCounting.cpp
M mlir/lib/Dialect/Async/Transforms/AsyncRuntimeRefCountingOpt.cpp
M mlir/lib/Dialect/Async/Transforms/AsyncToAsyncRuntime.cpp
M mlir/lib/Dialect/Complex/IR/ComplexDialect.cpp
M mlir/lib/Dialect/ControlFlow/Transforms/BufferizableOpInterfaceImpl.cpp
M mlir/lib/Dialect/DLTI/DLTI.cpp
M mlir/lib/Dialect/EmitC/IR/EmitC.cpp
M mlir/lib/Dialect/EmitC/Transforms/Transforms.cpp
M mlir/lib/Dialect/Func/IR/FuncOps.cpp
M mlir/lib/Dialect/Func/TransformOps/FuncTransformOps.cpp
M mlir/lib/Dialect/IRDL/IR/IRDL.cpp
M mlir/lib/Dialect/IRDL/IRDLLoading.cpp
M mlir/lib/Dialect/Index/IR/IndexOps.cpp
M mlir/lib/Dialect/MLProgram/Transforms/PipelineGlobalOps.cpp
M mlir/lib/Dialect/MPI/IR/MPI.cpp
M mlir/lib/Dialect/Math/IR/MathDialect.cpp
M mlir/lib/Dialect/Math/Transforms/ExpandPatterns.cpp
M mlir/lib/Dialect/Math/Transforms/PolynomialApproximation.cpp
M mlir/lib/Dialect/Mesh/IR/MeshOps.cpp
M mlir/lib/Dialect/Mesh/Transforms/ShardingPropagation.cpp
M mlir/lib/Dialect/Mesh/Transforms/Simplifications.cpp
M mlir/lib/Dialect/Mesh/Transforms/Spmdization.cpp
M mlir/lib/Dialect/NVGPU/IR/NVGPUDialect.cpp
M mlir/lib/Dialect/NVGPU/Transforms/CreateAsyncGroups.cpp
M mlir/lib/Dialect/NVGPU/Transforms/MmaSyncTF32Transform.cpp
M mlir/lib/Dialect/NVGPU/Transforms/OptimizeSharedMemory.cpp
M mlir/lib/Dialect/NVGPU/Utils/MMAUtils.cpp
Log Message:
-----------
[mlir] Remove unused includes (NFC) (#148535)
Commit: b56aebaf82f250ac35d18bcb4d4bf6806af91f49
https://github.com/llvm/llvm-project/commit/b56aebaf82f250ac35d18bcb4d4bf6806af91f49
Author: Baranov Victor <bar.victor.2002 at gmail.com>
Date: 2025-07-13 (Sun, 13 Jul 2025)
Changed paths:
M clang-tools-extra/clang-tidy/ClangTidy.cpp
M clang-tools-extra/clang-tidy/ClangTidy.h
M clang-tools-extra/clang-tidy/tool/ClangTidyMain.cpp
M clang-tools-extra/docs/ReleaseNotes.rst
A clang-tools-extra/test/clang-tidy/infrastructure/dump-config-filtering.cpp
Log Message:
-----------
[clang-tidy] Add filtering of check options by enabled checks in '--dump-config' (#147142)
Added function to filter out `CheckOptions` that come from
`ClangTidyOptions::getDefaults()`, but does not have a corresponding
check enabled in the `Checks` configuration.
Fixes https://github.com/llvm/llvm-project/issues/146693.
Commit: 1fbfa333f64bf714efa84db6b1075fc864d53bf8
https://github.com/llvm/llvm-project/commit/1fbfa333f64bf714efa84db6b1075fc864d53bf8
Author: Fangrui Song <i at maskray.me>
Date: 2025-07-13 (Sun, 13 Jul 2025)
Changed paths:
M llvm/include/llvm/MC/MCELFStreamer.h
M llvm/include/llvm/MC/MCObjectStreamer.h
M llvm/include/llvm/MC/MCSection.h
M llvm/include/llvm/MC/MCStreamer.h
M llvm/lib/MC/MCAsmStreamer.cpp
M llvm/lib/MC/MCAssembler.cpp
M llvm/lib/MC/MCELFStreamer.cpp
M llvm/lib/MC/MCFragment.cpp
M llvm/lib/MC/MCObjectStreamer.cpp
M llvm/lib/MC/MCParser/AsmParser.cpp
M llvm/lib/MC/MCStreamer.cpp
M llvm/lib/MC/WasmObjectWriter.cpp
M llvm/lib/Target/SystemZ/MCTargetDesc/SystemZHLASMAsmStreamer.cpp
M llvm/lib/Target/SystemZ/MCTargetDesc/SystemZHLASMAsmStreamer.h
M llvm/test/MC/ELF/mc-dump.s
M llvm/test/MC/RISCV/Relocations/mc-dump.s
M llvm/tools/llvm-exegesis/lib/SnippetFile.cpp
Log Message:
-----------
MCAlignFragment: Rename fields and use uint8_t FillLen
* Rename the vague `Value` to `Fill`.
* FillLen is at most 8. Making the field smaller to facilitate encoding
MCAlignFragment as a MCFragment union member.
* Replace an unreachable report_fatal_error with assert.
Commit: c384ec431dd7f771c9dd7c462cec5301ac0f32bb
https://github.com/llvm/llvm-project/commit/c384ec431dd7f771c9dd7c462cec5301ac0f32bb
Author: Owen Pan <owenpiano at gmail.com>
Date: 2025-07-13 (Sun, 13 Jul 2025)
Changed paths:
M clang/docs/ClangFormatStyleOptions.rst
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Format/Format.h
M clang/lib/Format/Format.cpp
M clang/lib/Format/FormatToken.h
M clang/lib/Format/FormatTokenLexer.cpp
M clang/lib/Format/FormatTokenLexer.h
M clang/lib/Format/TokenAnnotator.cpp
M clang/lib/Format/UnwrappedLineParser.cpp
M clang/lib/Format/UnwrappedLineParser.h
M clang/unittests/Format/ConfigParseTest.cpp
M clang/unittests/Format/FormatTest.cpp
Log Message:
-----------
[clang-format] Add MacrosSkippedByRemoveParentheses option (#148345)
This allows RemoveParentheses to skip the invocations of function-like
macros.
Fixes #68354.
Fixes #147780.
Commit: 86203b6b33e49cc1a8ce6d7d69e7df4970d8f7bd
https://github.com/llvm/llvm-project/commit/86203b6b33e49cc1a8ce6d7d69e7df4970d8f7bd
Author: Alex MacLean <amaclean at nvidia.com>
Date: 2025-07-13 (Sun, 13 Jul 2025)
Changed paths:
M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
M llvm/lib/Target/NVPTX/NVPTXISelLowering.h
M llvm/lib/Target/NVPTX/NVPTXInstrInfo.td
M llvm/test/CodeGen/NVPTX/LoadStoreVectorizer.ll
M llvm/test/CodeGen/NVPTX/extractelement.ll
M llvm/test/CodeGen/NVPTX/i8x4-instructions.ll
M llvm/test/CodeGen/NVPTX/ldg-invariant-256.ll
M llvm/test/CodeGen/NVPTX/ldg-invariant.ll
M llvm/test/CodeGen/NVPTX/load-store-vectors.ll
M llvm/test/CodeGen/NVPTX/sext-setcc.ll
Log Message:
-----------
[NVPTX] Use PRMT more widely, and improve folding around this instruction (#148261)
Replace uses of BFE with PRMT when lowering v4i8 vectors. This will
generally lead to equivalent or better SASS and reduces the number of
target specific operations we need to represent.
(https://cuda.godbolt.org/z/M75W6f8xd) Also implement KnownBits tracking
for PRMT allowing elimination of redundant AND instructions when
lowering various i8 operations.
Commit: bfb686bb5ba503e9386dc899e1ebbe2488e6a0a8
https://github.com/llvm/llvm-project/commit/bfb686bb5ba503e9386dc899e1ebbe2488e6a0a8
Author: Aaron Puchert <aaronpuchert at alice-dsl.net>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M clang/include/clang/Analysis/Analyses/ThreadSafetyTraverse.h
Log Message:
-----------
Thread Safety Analysis: Move opcode comparison to Comparator (NFC)
The switch assumes that both operands have the same opcode, so it's
probably cleaner if we do the comparison there. This also deduplicates
the comparison.
Commit: cffe7cb745a1d18508b620c5e6d339fe51b8f9bf
https://github.com/llvm/llvm-project/commit/cffe7cb745a1d18508b620c5e6d339fe51b8f9bf
Author: Eli Friedman <efriedma at quicinc.com>
Date: 2025-07-13 (Sun, 13 Jul 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/AST/Expr.cpp
M clang/test/CodeGenCXX/const-init-cxx11.cpp
M clang/test/SemaCXX/compound-literal.cpp
Log Message:
-----------
[clang] Fix isConstantInitializer handling of transparent init lists. (#148030)
Transparent InitListExprs have different semantics, so special-case them
in Expr::isConstantInitializer.
We probably should move away from isConstantInitializer, in favor of
relying more directly on constant evaluation, but this is an easy fix.
Fixes #147949
Commit: 4f5d67b3e414cf5f2c9f7440e97837b718bda4cc
https://github.com/llvm/llvm-project/commit/4f5d67b3e414cf5f2c9f7440e97837b718bda4cc
Author: Eli Friedman <efriedma at quicinc.com>
Date: 2025-07-13 (Sun, 13 Jul 2025)
Changed paths:
M llvm/include/llvm/CodeGen/TargetRegisterInfo.h
M llvm/lib/CodeGen/AsmPrinter/CodeViewDebug.cpp
M llvm/lib/Target/AArch64/AArch64FrameLowering.cpp
M llvm/lib/Target/AArch64/AArch64RegisterInfo.cpp
M llvm/lib/Target/AArch64/AArch64RegisterInfo.h
A llvm/test/DebugInfo/COFF/AArch64/codeview-sve.ll
Log Message:
-----------
[AArch64] "Support" debug info for SVE types on Windows. (#147865)
There isn't any way to encode a variable in an SVE register, and there
isn't any way to encode a scalable offset, and as far as I know that's
unlikely to change in the near future. So suppress any debug info which
would require those encodings.
This isn't ideal, but we need to ship something which doesn't crash.
Alternatively, for Z registers, we could emit debug info assuming the
vector length is 128 bits, but that seems like it would lead to
unintuitive results.
The change to AArch64FrameLowering is needed to avoid a crash. But we
can't actually test that the returned offset is correct: LiveDebugValues
performs the query, then discards the result.
Commit: 2886d30dd68f798deda7093d00bf9fc52dabcdd7
https://github.com/llvm/llvm-project/commit/2886d30dd68f798deda7093d00bf9fc52dabcdd7
Author: Jim Lin <jim at andestech.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVSchedAndes45.td
Log Message:
-----------
[RISCV] Add short forward branch scheduling for Andes45 (#147890)
Commit: 60b168c1469730a6db915d0ece38bc9088e2034b
https://github.com/llvm/llvm-project/commit/60b168c1469730a6db915d0ece38bc9088e2034b
Author: Tom Vijlbrief <tvijlbrief at gmail.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M llvm/lib/Target/AVR/AVRExpandPseudoInsts.cpp
A llvm/test/CodeGen/AVR/pseudo/SPWRITE.mir
Log Message:
-----------
[AVR] Simplify SPWRITE on XMEGA (#147210)
It is unnecessary to disable/restore interrupt when writing to the SPH/SPL
pair on XMEGA devices, as the manual indicates:
```
To prevent corruption when updating the stack pointer from software,
a write to SPL will automatically disable interrupts for up to four instructions
or until the next I/O memory write.
```
Commit: 089106fdfb853c83cf5d35a37bdd8e663094e6a2
https://github.com/llvm/llvm-project/commit/089106fdfb853c83cf5d35a37bdd8e663094e6a2
Author: Shan Huang <shan.huang at stu.ecnu.edu.cn>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp
M llvm/test/Transforms/LoopStrengthReduce/optimizemax_debugloc.ll
Log Message:
-----------
[DebugInfo][LoopStrengthReduce] Salvage the debug value of the dead cmp instruction (#147241)
Fix #147238
Commit: 16534d19bf50bde879a83f0ae62875e2c5120e64
https://github.com/llvm/llvm-project/commit/16534d19bf50bde879a83f0ae62875e2c5120e64
Author: Ryotaro Kasuga <kasuga.ryotaro at fujitsu.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M llvm/test/Analysis/DependenceAnalysis/FlipFlopBaseAddress.ll
Log Message:
-----------
[DA] Add test cases where base ptr is not loop-invariant (#148240)
Add test cases where DA yields incorrect results because it makes an
assumption that the base pointer is loop-invariant, which doesn't hold
in these cases.
Will be fixed by #148241.
Commit: e08833443256f8dde2f864853fa9491ffa7112d5
https://github.com/llvm/llvm-project/commit/e08833443256f8dde2f864853fa9491ffa7112d5
Author: YongKang Zhu <yongzhu at fb.com>
Date: 2025-07-13 (Sun, 13 Jul 2025)
Changed paths:
M bolt/runtime/instr.cpp
Log Message:
-----------
[BOLT][NFC] Add const qualifier to certain pointers to read-only objects (#148543)
Commit: b79c763e91ac5e0991eea004b2c4117c8c766718
https://github.com/llvm/llvm-project/commit/b79c763e91ac5e0991eea004b2c4117c8c766718
Author: Owen Pan <owenpiano at gmail.com>
Date: 2025-07-13 (Sun, 13 Jul 2025)
Changed paths:
M clang/lib/Format/BreakableToken.cpp
Log Message:
-----------
[clang-format][NFC] Simplify some logic in BreakableLineCommentSection (#148324)
Commit: 3de59f79d816e97851bb492dcb61ed5f46702163
https://github.com/llvm/llvm-project/commit/3de59f79d816e97851bb492dcb61ed5f46702163
Author: Uday Bondhugula <uday at polymagelabs.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
R mlir/test/Dialect/Affine/loop-fusion-transformation.mlir
A mlir/test/Dialect/Affine/loop-fusion-utilities.mlir
M mlir/test/lib/Dialect/Affine/TestLoopFusion.cpp
Log Message:
-----------
[MLIR][Affine] Rename/update affine fusion test pass options to avoid confusion (#148320)
This test pass is meant to test various affine fusion utilities as
opposed to being a pass to perform valid fusion. Rename an option to
avoid confusion.
Fixes: https://github.com/llvm/llvm-project/issues/132172
Commit: 3d1140a5e4097c9f7601341743e941ef84d60d38
https://github.com/llvm/llvm-project/commit/3d1140a5e4097c9f7601341743e941ef84d60d38
Author: Vikram Hegde <115221833+vikramRH at users.noreply.github.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUPassRegistry.def
M llvm/test/CodeGen/AMDGPU/llc-pipeline-npm.ll
Log Message:
-----------
[AMDGPU][NPM] Register AMDGPUWaitSGPRHazards pass (#148106)
this stack upstreams original stack of patches by @optimisan, same as
https://github.com/llvm/llvm-project/pull/138496 (original stack).
Co-authored-by : Oke, Akshat
<[Akshat.Oke at amd.com](mailto:Akshat.Oke at amd.com)>
Commit: 03c540e360ee5b9ca3e8df95e4a4b17c2bdb7e6f
https://github.com/llvm/llvm-project/commit/03c540e360ee5b9ca3e8df95e4a4b17c2bdb7e6f
Author: Jim Lin <jim at andestech.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/xsfvcp-x-rv64.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/xsfvcp-x.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/xsfvcp-xv-rv64.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/xsfvcp-xv.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/xsfvcp-xvv-rv64.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/xsfvcp-xvv.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/xsfvcp-xvw.c
A clang/test/CodeGen/RISCV/sifive-intrinsics/non-policy/non-overloaded/xsfvcp-x-rv64.c
A clang/test/CodeGen/RISCV/sifive-intrinsics/non-policy/non-overloaded/xsfvcp-x.c
A clang/test/CodeGen/RISCV/sifive-intrinsics/non-policy/non-overloaded/xsfvcp-xv-rv64.c
A clang/test/CodeGen/RISCV/sifive-intrinsics/non-policy/non-overloaded/xsfvcp-xv.c
A clang/test/CodeGen/RISCV/sifive-intrinsics/non-policy/non-overloaded/xsfvcp-xvv-rv64.c
A clang/test/CodeGen/RISCV/sifive-intrinsics/non-policy/non-overloaded/xsfvcp-xvv.c
A clang/test/CodeGen/RISCV/sifive-intrinsics/non-policy/non-overloaded/xsfvcp-xvw.c
Log Message:
-----------
[RISCV] Move intrinsic tests for Xsfvcp to sifive-intrinsics sub-directory. NFC.
Commit: ef48b7fae58506ced9deae6f73ce6cd67bd6b144
https://github.com/llvm/llvm-project/commit/ef48b7fae58506ced9deae6f73ce6cd67bd6b144
Author: Kazu Hirata <kazu at google.com>
Date: 2025-07-13 (Sun, 13 Jul 2025)
Changed paths:
M libcxx/docs/ReleaseNotes/21.rst
Log Message:
-----------
[libcxx] Fix a typo in documentation (#148557)
Commit: a6494a3bbf0620ec472d44db4e79c4c508618a61
https://github.com/llvm/llvm-project/commit/a6494a3bbf0620ec472d44db4e79c4c508618a61
Author: Finn Plummer <finn.c.plum at gmail.com>
Date: 2025-07-13 (Sun, 13 Jul 2025)
Changed paths:
M clang/include/clang/Parse/ParseHLSLRootSignature.h
M clang/lib/Parse/ParseHLSLRootSignature.cpp
M clang/test/SemaHLSL/RootSignature-err.hlsl
Log Message:
-----------
[HLSL][RootSignature] Allow for multiple parsing errors in `RootSignatureParser` (#147832)
This pr implements returning multiple parsing errors at the granularity
of a `RootElement`
This is achieved by adding a new interface onto `RootSignatureParser`,
namely, `skipUntilExpectedToken`. This will be used to consume all the
intermediate tokens between when an error has occurred and when the next
`RootElement` begins.
At this granularity, the implementation is somewhat straight forward, as
we can just implement this `skip` function when we return from a
`parse[RootElement]` method and continue in the main `parse` loop. With
the exception that the `parseDescriptorTable` will also have to skip
ahead to the next expected closing `')'`.
If we want to provide any finer granularity, then the skip logic becomes
significantly more complicated. Skipping to the next root element will
provide a good ratio of user experience benefit to complexity of
implementation.
For more context see linked issue.
- Updates `HLSLRootSignatureParser` with a `skipUntilExpectedToken` and `skipUntilClosedParen`
interface
- Updates the `parse` loops to use the skip interface when an error is
found on parsing a root element
- Updates `parseDescriptorTable` to skip ahead to the next `')'` if it
was inside a clause
- Adds test-case to demonstrate multiple error being reported
Resolves: https://github.com/llvm/llvm-project/issues/145818
Commit: 374d5da214ba8017614c350e9fe4688cdc79d5f5
https://github.com/llvm/llvm-project/commit/374d5da214ba8017614c350e9fe4688cdc79d5f5
Author: Christian Ulmann <christianulmann at gmail.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M flang/test/Fir/invalid.fir
M mlir/include/mlir/Interfaces/ControlFlowInterfaces.td
M mlir/lib/Interfaces/ControlFlowInterfaces.cpp
M mlir/test/Dialect/ControlFlow/invalid.mlir
Log Message:
-----------
[MLIR][Interfaces] Remove negative branch weight verifier (#148234)
This commit removes the verifier that checked if branch weights are
negative. This check was too strict because weights are interpreted as
unsigned integers.
This showed up when running the verifier on LLVM dialect modules that
were imported from LLVM IR.
Commit: 8983b22ca1026156da1039263398c6540f4eee98
https://github.com/llvm/llvm-project/commit/8983b22ca1026156da1039263398c6540f4eee98
Author: Fangrui Song <i at maskray.me>
Date: 2025-07-13 (Sun, 13 Jul 2025)
Changed paths:
M lld/docs/ReleaseNotes.rst
Log Message:
-----------
ReleaseNotes: add lld/ELF notes
Move linker script changes to the middle and target-specific
options/behavior changes to the end.
Commit: 040e7ad8281dcb52507070fbeec59421af78c5ca
https://github.com/llvm/llvm-project/commit/040e7ad8281dcb52507070fbeec59421af78c5ca
Author: Younan Zhang <zyn7109 at gmail.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Sema/SemaTemplateDeductionGuide.cpp
M clang/test/SemaCXX/cxx20-ctad-type-alias.cpp
Log Message:
-----------
[Clang] Consider default template arguments when synthesizing CTAD guides (#147675)
We copy arguments from different template parameter lists depending on
the deducibility of the template parameters. In particular, we may lose
the default template argument from the original alias declaration, and
this patch helps preserve that.
Fixes https://github.com/llvm/llvm-project/issues/133132
Commit: cad62df49a79df5e5136cfad280c5abc9f62c60b
https://github.com/llvm/llvm-project/commit/cad62df49a79df5e5136cfad280c5abc9f62c60b
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M llvm/include/llvm/Analysis/AssumeBundleQueries.h
M llvm/lib/Analysis/AssumeBundleQueries.cpp
M llvm/lib/Analysis/Loads.cpp
M llvm/lib/IR/Verifier.cpp
A llvm/test/Transforms/LoopVectorize/dereferenceable-info-from-assumption-variable-size.ll
M llvm/test/Transforms/LoopVectorize/early_exit_store_legality.ll
M llvm/test/Transforms/LoopVectorize/single-early-exit-deref-assumptions.ll
M llvm/test/Verifier/assume-bundles.ll
Log Message:
-----------
[Loads] Support dereferenceable assumption with variable size. (#128436)
Update isDereferenceableAndAlignedPointer to make use of dereferenceable
assumptions with variable sizes via SCEV.
To do so, factor out the logic to check via an assumption to a helper,
and use SE to check if the access size is less than the dereferenceable
size.
PR: https://github.com/llvm/llvm-project/pull/128436
Commit: a6e1700fa622f75436c3c3ead23b1eefb67e88ea
https://github.com/llvm/llvm-project/commit/a6e1700fa622f75436c3c3ead23b1eefb67e88ea
Author: Kunqiu Chen <camsyn at foxmail.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M llvm/lib/Transforms/Utils/Local.cpp
M llvm/test/Transforms/GVN/metadata.ll
Log Message:
-----------
[Utils][Local] Preserve !nosanitize in combineMetadata when merging instructions (#148376)
`combineMetadata` helper currently drops `!nosanitize` metadata when
merging two instructions, even if both originally carried `!nosanitize`.
This is problematic because `!nosanitize` is a key mechanism used by
sanitizer (e.g., ASan) to suppress instrumentation. Removing it can lead
to unintended sanitizer behavior.
This patch adds `nosanitize` to the whitelist in combineMetadata,
preserving it only if both instructions carry `!nosanitize`; otherwise,
it is dropped. This patch also adds corresponding tests in a test file
and regenerates it.
---
### Details
**Example (see [Godbolt](https://godbolt.org/z/83P5eWczx) for
details**):
```llvm
%v1 = load i32, ptr %p, !nosanitize
%v2 = load i32, ptr %p, !nosanitize
```
When merged via `combineMetadata(%v1, %v2, ...)`, the resulting
instruction loses its `!nosanitize` metadata.
Tools such as UBSan and AFL rely on `nosanitize` to prevent unwanted
transformations or checks. However, the current implementation of
combineMetadata mistakenly drops !nosanitize. This may lead to
unintended behavior during optimization.
For example, under `-fsanitize=address,undefined -O2`, IR emitted by
UBSan may lose its `!nosanitize` metadata due to the incorrect metadata
merging in optimization. As a result, ASan could unexpectedly instrument
those instructions.
> Note: due to the current UBSan handlers having relatively
coarse-grained attributes, this specific case is difficult to reproduce
end-to-end from source code—UBSan currently inhibits such optimizations
(refer to #135135 for details).
Still, I believe it's necessary to fix this now, to support future
versions of UBSan that might allow such optimizations, and to support
third-party tools (such as AFL-based fuzzers) that rely on the presence
of !nosanitize.
Commit: 484417abe1fdf4ac1e027ffd10cc65b0e74e59b1
https://github.com/llvm/llvm-project/commit/484417abe1fdf4ac1e027ffd10cc65b0e74e59b1
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M llvm/lib/Analysis/Loads.cpp
Log Message:
-----------
[Loads] Keep using constant max BTCs for loops w/o computable BTCs.
Follow-up to cad62df49a to preserve the existing behavior for early-exit
loops, to fix vec.stats.ll test failure.
Commit: d64938b2baa826e749220c8a9cd1c5d03f28a2a5
https://github.com/llvm/llvm-project/commit/d64938b2baa826e749220c8a9cd1c5d03f28a2a5
Author: Jim Lin <jim at andestech.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vaesdf.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vaesdm.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vaesef.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vaesem.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vaeskf1.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vaeskf2.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vaesz.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vandn.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vbrev.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vbrev8.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vclmul.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vclmulh.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vclz.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vcpopv.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vctz.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vghsh.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vgmul.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vrev8.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vrol.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vror.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsha2ch.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsha2cl.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsha2ms.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsm3c.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsm3me.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsm4k.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsm4r.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vwsll.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vaesdf.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vaesdm.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vaesef.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vaesem.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vaeskf1.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vaeskf2.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vaesz.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vandn.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vbrev.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vbrev8.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vclmul.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vclmulh.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vclz.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vcpopv.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vctz.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vghsh.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vgmul.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vrev8.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vrol.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vror.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsha2ch.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsha2cl.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsha2ms.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsm3c.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsm3me.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsm4k.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsm4r.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vwsll.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vaesdf.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vaesdm.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vaesef.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vaesem.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vaeskf1.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vaeskf2.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vaesz.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vandn.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vbrev.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vbrev8.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vclmul.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vclmulh.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vclz.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vcpopv.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vctz.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vghsh.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vgmul.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vrev8.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vrol.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vror.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vsha2ch.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vsha2cl.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vsha2ms.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vsm3c.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vsm3me.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vsm4k.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vsm4r.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vwsll.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vaesdf.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vaesdm.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vaesef.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vaesem.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vaeskf1.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vaeskf2.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vaesz.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vandn.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vbrev.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vbrev8.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vclmul.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vclmulh.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vclz.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vcpopv.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vctz.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vghsh.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vgmul.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vrev8.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vrol.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vror.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vsha2ch.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vsha2cl.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vsha2ms.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vsm3c.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vsm3me.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vsm4k.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vsm4r.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vwsll.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/non-overloaded/vaesdf.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/non-overloaded/vaesdm.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/non-overloaded/vaesef.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/non-overloaded/vaesem.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/non-overloaded/vaeskf1.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/non-overloaded/vaeskf2.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/non-overloaded/vaesz.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/non-overloaded/vandn.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/non-overloaded/vbrev.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/non-overloaded/vbrev8.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/non-overloaded/vclmul.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/non-overloaded/vclmulh.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/non-overloaded/vclz.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/non-overloaded/vcpopv.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/non-overloaded/vctz.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/non-overloaded/vghsh.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/non-overloaded/vgmul.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/non-overloaded/vrev8.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/non-overloaded/vrol.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/non-overloaded/vror.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/non-overloaded/vsha2ch.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/non-overloaded/vsha2cl.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/non-overloaded/vsha2ms.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/non-overloaded/vsm3c.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/non-overloaded/vsm3me.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/non-overloaded/vsm4k.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/non-overloaded/vsm4r.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/non-overloaded/vwsll.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/overloaded/vaesdf.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/overloaded/vaesdm.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/overloaded/vaesef.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/overloaded/vaesem.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/overloaded/vaeskf1.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/overloaded/vaeskf2.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/overloaded/vaesz.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/overloaded/vandn.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/overloaded/vbrev.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/overloaded/vbrev8.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/overloaded/vclmul.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/overloaded/vclmulh.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/overloaded/vclz.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/overloaded/vcpopv.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/overloaded/vctz.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/overloaded/vghsh.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/overloaded/vgmul.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/overloaded/vrev8.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/overloaded/vrol.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/overloaded/vror.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/overloaded/vsha2ch.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/overloaded/vsha2cl.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/overloaded/vsha2ms.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/overloaded/vsm3c.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/overloaded/vsm3me.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/overloaded/vsm4k.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/overloaded/vsm4r.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/overloaded/vwsll.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/non-overloaded/vaesdf.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/non-overloaded/vaesdm.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/non-overloaded/vaesef.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/non-overloaded/vaesem.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/non-overloaded/vaeskf1.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/non-overloaded/vaeskf2.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/non-overloaded/vaesz.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/non-overloaded/vandn.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/non-overloaded/vbrev.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/non-overloaded/vbrev8.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/non-overloaded/vclmul.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/non-overloaded/vclmulh.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/non-overloaded/vclz.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/non-overloaded/vcpopv.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/non-overloaded/vctz.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/non-overloaded/vghsh.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/non-overloaded/vgmul.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/non-overloaded/vrev8.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/non-overloaded/vrol.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/non-overloaded/vror.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/non-overloaded/vsha2ch.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/non-overloaded/vsha2cl.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/non-overloaded/vsha2ms.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/non-overloaded/vsm3c.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/non-overloaded/vsm3me.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/non-overloaded/vsm4k.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/non-overloaded/vsm4r.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/non-overloaded/vwsll.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/overloaded/vaesdf.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/overloaded/vaesdm.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/overloaded/vaesef.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/overloaded/vaesem.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/overloaded/vaeskf1.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/overloaded/vaeskf2.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/overloaded/vaesz.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/overloaded/vandn.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/overloaded/vbrev.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/overloaded/vbrev8.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/overloaded/vclmul.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/overloaded/vclmulh.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/overloaded/vclz.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/overloaded/vcpopv.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/overloaded/vctz.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/overloaded/vghsh.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/overloaded/vgmul.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/overloaded/vrev8.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/overloaded/vrol.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/overloaded/vror.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/overloaded/vsha2ch.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/overloaded/vsha2cl.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/overloaded/vsha2ms.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/overloaded/vsm3c.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/overloaded/vsm3me.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/overloaded/vsm4k.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/overloaded/vsm4r.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/overloaded/vwsll.c
Log Message:
-----------
[RISCV] Split the intrinsic test for vector crypto to seperate directory. NFC.
Commit: e091f264b7e4d4aeaf5c569e6251d462395ad702
https://github.com/llvm/llvm-project/commit/e091f264b7e4d4aeaf5c569e6251d462395ad702
Author: Vikram Hegde <115221833+vikramRH at users.noreply.github.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M llvm/include/llvm/CodeGen/VirtRegMap.h
M llvm/lib/CodeGen/VirtRegMap.cpp
Log Message:
-----------
[CodeGen][NPM] VirtRegRewriter: Set VirtReg flag (#148107)
same as https://github.com/llvm/llvm-project/pull/138660,
Co-authored-by : Oke, Akshat
<[Akshat.Oke at amd.com](mailto:Akshat.Oke at amd.com)>
Commit: 695825589dc1e91272f1997ad92ab58cd8f7ca70
https://github.com/llvm/llvm-project/commit/695825589dc1e91272f1997ad92ab58cd8f7ca70
Author: Matthias Springer <me at m-sp.org>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M mlir/lib/Conversion/TosaToLinalg/TosaToLinalgNamed.cpp
M mlir/lib/Conversion/TosaToTensor/TosaToTensor.cpp
Log Message:
-----------
[mlir][TOSA] Do not access erased operation (#148374)
This commit fixes two occurrences where an erased op was accessed at a
later point of time. That won't work anymore in a One-Shot Dialect
Conversion and triggers a use-after-free sanitizer error.
After the One-Shot Dialect Conversion refactoring, a
`ConversionPatternRewriter` will behave more like a normal
`PatternRewriter`.
---------
Co-authored-by: Markus Böck <markus.boeck02 at gmail.com>
Commit: df54961d1654d9f7881612423438cd5351e643bb
https://github.com/llvm/llvm-project/commit/df54961d1654d9f7881612423438cd5351e643bb
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M llvm/lib/Target/Sparc/SparcISelLowering.cpp
Log Message:
-----------
SPARC: Remove subtarget checks on setLibcallImpl (#147667)
Remove the subtarget dependent useSoftMulDiv check on the mul/div
libcall configuration. The libcall still needs to exist with the
given ABI for the module regardless of the subtarget dependent
lowering decision which is separately controlled.
Also the f128<->i64 conversion calls were set twice, so eliminate
the redundant setting and always do it for sparc32.
Commit: 29d8c346c58cc6601e8551c235f957e3cceabd84
https://github.com/llvm/llvm-project/commit/29d8c346c58cc6601e8551c235f957e3cceabd84
Author: David Spickett <david.spickett at linaro.org>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M flang/include/flang/Common/format.h
Log Message:
-----------
Reland "[flang] Avoid undefined behaviour when parsing format expressions (#147539)" (#148169)
This reverts commit e8e5d07767c444913f837dd35846a92fcf520eab.
This previously failed because the flang-rt build could not find the
llvm header file. It passed on some machines but only because they
had globally installed copies of older llvm.
To fix this, I've copied the required routines from llvm into flang.
With the following justification:
* Flang can, and does, use llvm headers.
* Some Flang headers are also used in Flang-rt.
* Flang-rt cannot use llvm headers.
* Therefore any Flang header using in Flang-rt cannot use llvm headers
either.
To support that conclusion,
https://flang.llvm.org/docs/IORuntimeInternals.html
states:
"The Fortran I/O runtime support library is written in C++17, and uses
some C++17 standard library facilities, but it is intended to not have
any link-time dependences on the C++ runtime support library or any LLVM
libraries."
This talks about libraries but I assume it applies to llvm in general.
Nothing in flang/include/flang/Common, or flang/include/flang/Common
includes any llvm header, and I see some very similar headers there
that duplicate llvm functionality. Like float128.h.
I can only assume this means these files must remain free of
dependencies
on LLVM.
I have copied the two routines literally and put them in the
flang::common
namespace, for lack of a better place for them. So they don't clash with
something.
I have specialised the function to the 1 type flang needs, as it might
save a bit of compile time.
Commit: 51c89f385430d50275f44382a05c74aec147f1e8
https://github.com/llvm/llvm-project/commit/51c89f385430d50275f44382a05c74aec147f1e8
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M llvm/include/llvm/IR/RuntimeLibcalls.td
M llvm/lib/Target/Sparc/SparcISelLowering.cpp
Log Message:
-----------
SPARC: Start moving runtime libcall config to tablegen (#147672)
Commit: ffb2da25c2ee290d78bcec12d65b8374f889191c
https://github.com/llvm/llvm-project/commit/ffb2da25c2ee290d78bcec12d65b8374f889191c
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M llvm/test/CodeGen/SPARC/llvm.sincos.ll
Log Message:
-----------
SPARC: Add gnu run line to sincos test (#147714)
Make sure we have tests that emit the sincos call instead of
the separate sin and cos.
Commit: 51d3bc67d0e11bacf6566690a07779f238845cc7
https://github.com/llvm/llvm-project/commit/51d3bc67d0e11bacf6566690a07779f238845cc7
Author: Tom Eccles <tom.eccles at arm.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
A flang/test/Driver/tco-test-gen.fir
M flang/tools/tco/tco.cpp
Log Message:
-----------
[flang][tco] Add more flags for generating codegen tests (#148171)
Built on top of https://github.com/llvm/llvm-project/pull/146533
Adding some more options I use to generate minimal testcases for
MLIR->LLVMIR conversion.
Hopefully this will save us all some time when writing these tests.
The following options are added
- `-simplify-mlir` runs CSE and canonicalization at the end of the MLIR
pipeline
- `-enable-aa` allows toggling whether TBAA is enabled
- `-test-gen` is shorthand for `-emit-final-mlir -simplify-mlir
-enable-aa=false`
Commit: d4516c7013856dd0352b3eaf6b67c9e9a1351372
https://github.com/llvm/llvm-project/commit/d4516c7013856dd0352b3eaf6b67c9e9a1351372
Author: David Spickett <david.spickett at linaro.org>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M llvm/utils/release/github-upload-release.py
Log Message:
-----------
[llvm][release] Mark gh commands in package verify example
Commit: 6d4a50272f19c1db65dcf0349b6905f12442f80b
https://github.com/llvm/llvm-project/commit/6d4a50272f19c1db65dcf0349b6905f12442f80b
Author: Adrian Kuegel <akuegel at google.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M llvm/include/llvm/ADT/Hashing.h
M llvm/include/llvm/ADT/SmallVector.h
Log Message:
-----------
[ADT] Avoid ambiguity by using std::memcpy instead of memcpy (NFC).
Commit: 0a357e92ca3ebfd68710b58413cac21e2cb9d8ad
https://github.com/llvm/llvm-project/commit/0a357e92ca3ebfd68710b58413cac21e2cb9d8ad
Author: Hemang Gadhavi <hemang.gadhavi at ibm.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M lldb/source/Plugins/SymbolFile/DWARF/DWARFUnit.cpp
M lldb/unittests/SymbolFile/DWARF/DWARF64UnitTest.cpp
Log Message:
-----------
[lldb] Update the String table offset based on the DWARF format (#147054)
This PR is updating the string table offset (DW_AT_str_offsets_base
which is introduced in `DWARF5`) based on the DWARF format, as per the
DWARF specification; For the 32-bit DWARF format, each offset is 4 bytes
long; for the 64-bit DWARF format, each offset is 8 bytes long.
Commit: 81ad8e6345a4b5d46ca19c95746d6f906fe485cd
https://github.com/llvm/llvm-project/commit/81ad8e6345a4b5d46ca19c95746d6f906fe485cd
Author: Peter Waller <peter.waller at arm.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M bolt/runtime/CMakeLists.txt
Log Message:
-----------
[BOLT] Force frame pointers off for runtimes (#148009)
Distributions are making the choice to turn frame pointers on by
default. Nixpkgs recently turned them on, and the method they use to do
so implies that everything is built with them on by default.
https://github.com/NixOS/nixpkgs/pull/399014
Assuming that a well behaved distribution doing this puts
`-fno-omit-frame-pointer` at the beginning of the compiler invocation,
we can still re-enable omission by supplying `-fomit-frame-pointer`
during compilation.
This fixes some segfaults from stack corruption in binaries rewritten by
bolt with `llvm-bolt -instrument`.
See also: #147569
Fixes: #148595
Commit: 1b4a1a072da2fa74d20ab02dd90ad547b0f296a8
https://github.com/llvm/llvm-project/commit/1b4a1a072da2fa74d20ab02dd90ad547b0f296a8
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M llvm/test/CodeGen/AMDGPU/inflate-reg-class-vgpr-mfma-to-av-with-load-source.mir
M llvm/test/CodeGen/AMDGPU/inflate-reg-class-vgpr-mfma-to-av.mir
Log Message:
-----------
AMDGPU: Add more baseline tests for VGPR MFMA rewrite pass (#148173)
Also some cosmetic renumbering of an existing test. Probably more
to come, there are a lot of edge cases in the pending patch.
Commit: a716cc0961d1b0fa76aba78a2509253d0646f41d
https://github.com/llvm/llvm-project/commit/a716cc0961d1b0fa76aba78a2509253d0646f41d
Author: Kareem Ergawy <kareem.ergawy at amd.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M flang/lib/Lower/Support/ReductionProcessor.cpp
M flang/test/Lower/OpenMP/parallel-reduction-array-lb.f90
M flang/test/Lower/OpenMP/reduction-array-intrinsic.f90
M flang/test/Lower/OpenMP/sections-array-reduction.f90
M flang/test/Lower/OpenMP/taskgroup-task-array-reduction.f90
M flang/test/Lower/OpenMP/wsloop-reduction-array-assumed-shape.f90
A flang/test/Lower/do_concurrent_reduce_associate.f90
Log Message:
-----------
[flang] Support `do concurrent ... reduce` for associating names (#148597)
Extends reduction support for `do concurrent`, in particular, for
associating names. Consider the following input:
```fortran
subroutine dc_associate_reduce
integer :: i
real, allocatable, dimension(:) :: x
associate(x_associate => x)
do concurrent (i = 1:10) reduce(+: x_associate)
end do
end associate
end subroutine
```
The declaration of `x_associate` is emitted as follows:
```mlir
%13:2 = hlfir.declare %10(%12) {uniq_name = "...."} : (!fir.heap<!fir.array<?xf32>>, !fir.shapeshift<1>) -> (!fir.box<!fir.array<?xf32>>, !fir.heap<!fir.array<?xf32>>)
```
where the HLFIR base type is an array descriptor (i.e. the
allocatable/heap attribute is dropped as stipulated by the spec; section
11.1.3.3).
The problem here is that `declare_reduction` ops accept only reference
types. This restriction is already partially handled for
`fir::BaseBoxType`'s by allocating a stack slot for the descriptor and
storing the box in that stack allocation. We have to modify this a
littble bit for `associate` since the HLFIR and FIR base types are
different (unlike most scenarios).
Commit: da68e72b1bd1c2e6a38b42c49941b3541e1b9a67
https://github.com/llvm/llvm-project/commit/da68e72b1bd1c2e6a38b42c49941b3541e1b9a67
Author: nerix <nerixdev at outlook.de>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M lldb/source/Plugins/Language/CPlusPlus/CPlusPlusLanguage.cpp
M lldb/source/Plugins/Language/CPlusPlus/MsvcStl.h
M lldb/source/Plugins/Language/CPlusPlus/MsvcStlSmartPointer.cpp
M lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic/unique_ptr/TestDataFormatterStdUniquePtr.py
Log Message:
-----------
[LLDB] Add formatters for MSVC STL std::unique_ptr (#148248)
This PR adds a summary and synthetic children for `std::unique_ptr` from
MSVC's STL
([NatVis](https://github.com/microsoft/STL/blob/313964b78a8fd5a52e7965e13781f735bcce13c5/stl/debugger/STL.natvis#L285-L303)).
As with libc++, the deleter is only shown if it's non-empty.
Tested both the shared_ptr and unique_ptr tests on Windows.
Towards #24834.
Commit: 34bb38ffbf12539bd403794ac2f7c29e50094d5f
https://github.com/llvm/llvm-project/commit/34bb38ffbf12539bd403794ac2f7c29e50094d5f
Author: Orlando Cazalet-Hyams <orlando.hyams at sony.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Driver/Options.td
M clang/test/DebugInfo/KeyInstructions/flag.cpp
Log Message:
-----------
[KeyInstr] Add release note & update option (#148244)
Make the option visible, improve the help text, and add a release note.
Commit: 65d20bb0ab27f1b0078cc8811d02f7b47eb779bf
https://github.com/llvm/llvm-project/commit/65d20bb0ab27f1b0078cc8811d02f7b47eb779bf
Author: Jeremy Morse <jeremy.morse at sony.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M clang/lib/CodeGen/CGDebugInfo.cpp
A clang/test/DebugInfo/KeyInstructions/coro-dwarf-key-instrs.cpp
Log Message:
-----------
[KeyInstr] Disable key-instructions for coroutine scopes (#147551)
At this time (immediately prior to llvm21 branching) we haven't
instrumented coroutine generation to identify the "key" instructions of
things like co_return and similar. This will lead to worse stepping
behaviours, as there won't be any key instruction for those lines.
This patch removes the key-instructions flag from the DISubprograms for
coroutines, which will cause AsmPrinter to use the "old" / existing
linetable stepping behaviour, avoiding a regression until we can
instrument these constructs.
(I'm going to post on discourse about whether this is a good idea or not
in a moment)
Commit: fa143619b1e9831e750ff74900b424a3b33c352e
https://github.com/llvm/llvm-project/commit/fa143619b1e9831e750ff74900b424a3b33c352e
Author: Michael Buch <michaelbuch12 at gmail.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M lldb/test/API/functionalities/process_save_core_minidump/TestProcessSaveCoreMinidump.py
Log Message:
-----------
[lldb][test] TestProcessSaveCoreMinidump: Rename duplicate test-case (#148600)
Ran my python script from
https://github.com/llvm/llvm-project/pull/97043 over the repo again and
there was 1 duplicate test-case that has been introduced since I last
did this.
This patch renames that test.
Commit: 70bc7d1b0893f1d28aaf31ccffb07d51320885cb
https://github.com/llvm/llvm-project/commit/70bc7d1b0893f1d28aaf31ccffb07d51320885cb
Author: YafetBeyene <127161378+yafet-a at users.noreply.github.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64SchedNeoverseV2.td
M llvm/test/tools/llvm-mca/AArch64/Neoverse/V2-neon-instructions.s
Log Message:
-----------
[AArch64] Corrected Latency Descriptions for NeoverseV2 (#147339)
Update the Neoverse V2 Scheduler to reflect the correct
latencies along with having updated the relevant mca tests.
Commit: 6c2e26aebf4633a65b45c438e811151a41f85e1f
https://github.com/llvm/llvm-project/commit/6c2e26aebf4633a65b45c438e811151a41f85e1f
Author: Paul Walker <paul.walker at arm.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/test/CodeGen/AArch64/active_lane_mask.ll
Log Message:
-----------
[LLVM][CodeGen] Ensure optimizeIncrementingWhile only accepts scalable vectors. (#148351)
Fixes https://github.com/llvm/llvm-project/issues/148347
Commit: 0ae1506847ee9516630fe08f74d0db516eeaa993
https://github.com/llvm/llvm-project/commit/0ae1506847ee9516630fe08f74d0db516eeaa993
Author: Sudharsan Veeravalli <quic_svs at quicinc.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/lib/Target/RISCV/RISCVInstrInfo.cpp
M llvm/lib/Target/RISCV/RISCVInstrInfoXqci.td
M llvm/test/CodeGen/RISCV/xqciac.ll
Log Message:
-----------
[RISCV] Add ISel patterns for Xqciac QC_SHLADD instruction (#148256)
Add a couple of patterns to generate the Xqciac QC_SHLADD shift left and
add immediate instruction.
Commit: c4c56a067d0f3890cf21de1fab682d7d8a63272e
https://github.com/llvm/llvm-project/commit/c4c56a067d0f3890cf21de1fab682d7d8a63272e
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M llvm/include/llvm/IR/RuntimeLibcalls.td
Log Message:
-----------
RuntimeLibcalls: Remove unused variable for atomic libcalls (#148599)
This was obsoleted by ed1ee9a9bf6deb5ec147e79a156e2f8d9465616d
Commit: 87e39c399c96128307a826fd9168679f7c8c8d10
https://github.com/llvm/llvm-project/commit/87e39c399c96128307a826fd9168679f7c8c8d10
Author: Jack Frankland <jack.frankland at arm.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVBase.td
M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVImageOps.td
M mlir/lib/Dialect/SPIRV/IR/ImageOps.cpp
M mlir/test/Dialect/SPIRV/IR/image-ops.mlir
M mlir/test/Target/SPIRV/image-ops.mlir
Log Message:
-----------
[mlir][spirv]: Add `OpImageFetch` (#145873)
At the missing `spirv::ImageFetchOp` operation to the SPIR-V MLIR
dialect ODS with appropriate testing including negative testing of the
verifiers.
Signed-off-by: Jack Frankland <jack.frankland at arm.com>
Commit: afffa0d334bf33c89f1f921ef950e14744e0f0e4
https://github.com/llvm/llvm-project/commit/afffa0d334bf33c89f1f921ef950e14744e0f0e4
Author: Corentin Jabot <corentinjabot at gmail.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M clang/lib/Sema/SemaDeclAttr.cpp
M clang/test/SemaCXX/wmissing-noreturn-suggestion.cpp
Log Message:
-----------
[Clang] Do not emit -Wmissing-noreturn when [[noreturn]] is present (#148552)
Fix a false positve warning which was introduced by #146234.
Commit: d214f07f0935a8c4fb254cbb4f4062860fc26bb7
https://github.com/llvm/llvm-project/commit/d214f07f0935a8c4fb254cbb4f4062860fc26bb7
Author: Trevor Gross <tmgross at umich.edu>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
A llvm/test/CodeGen/Generic/fp128-math-libcalls.ll
Log Message:
-----------
[IR] Add a test for `f128` libm libcall lowering (NFC) (#148308)
`f128` intrinsic functions from libm sometimes lower to `long double`
library calls when they instead need to be `f128` versions. Add a
generic test demonstrating current behavior.
Commit: b520d21c02ba5a6ad1804ab92c44093e77f83dd4
https://github.com/llvm/llvm-project/commit/b520d21c02ba5a6ad1804ab92c44093e77f83dd4
Author: Kenneth Benzie (Benie) <k.benzie83 at gmail.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M offload/tools/offload-tblgen/DocGen.cpp
Log Message:
-----------
[Offload] Add tagged type to enumerator docs (#147998)
When `EnumRec::isTyped()` is true, include the
`EnumValueRec::getTaggedType()` to the documentation.
Commit: efa30f496f3e96af73db655c744a5a163f4466ca
https://github.com/llvm/llvm-project/commit/efa30f496f3e96af73db655c744a5a163f4466ca
Author: lonely eagle <2020382038 at qq.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M mlir/docs/Tutorials/transform/Ch1.md
Log Message:
-----------
[mlir][transform] Fix transform dialect tutorial chapter 1 (#147983)
In the transform dialect tutorial chapter 1, there were some errors that
prevented the example from running. This PR fixes them.
---------
Co-authored-by: Renato Golin <rengolin at systemcall.eu>
Commit: eb4de577dab92b9b3d878cb5f9c88d9e67bb1fe3
https://github.com/llvm/llvm-project/commit/eb4de577dab92b9b3d878cb5f9c88d9e67bb1fe3
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M llvm/test/Transforms/SLPVectorizer/AArch64/gather-buildvector-with-minbitwidth-user.ll
Log Message:
-----------
[SLP,AArch64] Update build-vector test to actually build vectors.
Update test with all zero constant input values which get folded during
IR construction to actually use different input values, which require
materializing build vectors.
Commit: a71187e9763f0a5c87d9e2622fae029aac28ea91
https://github.com/llvm/llvm-project/commit/a71187e9763f0a5c87d9e2622fae029aac28ea91
Author: Ross Brunton <ross at codeplay.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M offload/plugins-nextgen/cuda/src/rtl.cpp
Log Message:
-----------
[Offload] Return error rather than dropping it (#148609)
Commit: 7e03c46624fd340471914021e800f250128260a6
https://github.com/llvm/llvm-project/commit/7e03c46624fd340471914021e800f250128260a6
Author: Walter Lee <49250218+googlewalt at users.noreply.github.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
Log Message:
-----------
[mlir][bazel] Port 0a34309
Commit: b9ccc0ca38dc1c0b8569c4a859bb258b79bb8bc8
https://github.com/llvm/llvm-project/commit/b9ccc0ca38dc1c0b8569c4a859bb258b79bb8bc8
Author: David Spickett <david.spickett at linaro.org>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M llvm/lib/Target/SystemZ/Disassembler/SystemZDisassembler.cpp
M llvm/unittests/MC/SystemZ/CMakeLists.txt
A llvm/unittests/MC/SystemZ/SystemZMCDisassemblerTest.cpp
Log Message:
-----------
[llvm][SystemZ] Set comment stream in SystemZDisassembler::getInstruction (#148614)
This is done by other backends at the start of this function, for
example AArch64Disassembler::getInstruction. Not setting it means you
hit asserts in MCDisassembler::tryAddingSymbolicOperand and
MCDisassembler::tryAddingPcLoadReferenceComment when there is a
symbolizer set.
Which happened to me while debugging a SystemZ program using LLDB.
As the only good way to hit this path is from C++, I've copied X86's
disassembler unit tests and added just enough to hit an assert if the
comment stream is not set.
Commit: d8aa4a6721c9cd09864fc1a7c5af7aaadec60b67
https://github.com/llvm/llvm-project/commit/d8aa4a6721c9cd09864fc1a7c5af7aaadec60b67
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M llvm/test/CodeGen/ARM/fp16-promote.ll
Log Message:
-----------
[ARM][ fp16-promote.ll - cleanup CHECKS to be consistently inside each test. NFC.
Commit: ea8ff792e33bb3ff3c8c6e79b8bf47cb0d7761b4
https://github.com/llvm/llvm-project/commit/ea8ff792e33bb3ff3c8c6e79b8bf47cb0d7761b4
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M llvm/utils/gn/secondary/llvm/unittests/MC/SystemZ/BUILD.gn
Log Message:
-----------
[gn build] Port b9ccc0ca38dc
Commit: e35b01da11ade0f89c0dafb8e723af3ae8be5c01
https://github.com/llvm/llvm-project/commit/e35b01da11ade0f89c0dafb8e723af3ae8be5c01
Author: zebullax <zebullax at gmail.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Sema/SemaDeclAttr.cpp
M clang/test/SemaCXX/warn-unused-result.cpp
Log Message:
-----------
[clang] Build argument string for clang::warn_unused_result (#148090)
Preserve the argument-clause for `warn-unused-result` when under clang::
scope.
We are not touching gnu:: scope for now as it's an error for GCC to have
that string. Personally I think it would be ok to relax it here too as
we are not introducing breakage to currently passing code, but feedback
is to go slowly about it.
Commit: 5951c44573203710901c6bdb06a382efbcc907fa
https://github.com/llvm/llvm-project/commit/5951c44573203710901c6bdb06a382efbcc907fa
Author: Konstantin Varlamov <varconsteq at gmail.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M libcxx/include/CMakeLists.txt
A libcxx/include/__cxx03/__verbose_trap
A libcxx/include/__verbose_trap
M libcxx/include/module.modulemap.in
M libcxx/vendor/llvm/default_assertion_handler.in
Log Message:
-----------
[libc++] Introduce the _LIBCPP_VERBOSE_TRAP macro (#148262)
Split out the calls to __builtin_verbose_trap into a separate header.
This is just a refactoring to make the code a bit more structured.
Commit: df387661c4ab53938ea73cbd77a44f98c8f96083
https://github.com/llvm/llvm-project/commit/df387661c4ab53938ea73cbd77a44f98c8f96083
Author: Luke Lau <luke at igalia.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M llvm/test/Transforms/LoopVectorize/RISCV/divrem.ll
M llvm/test/Transforms/LoopVectorize/RISCV/force-vect-msg.ll
M llvm/test/Transforms/LoopVectorize/RISCV/low-trip-count.ll
M llvm/test/Transforms/LoopVectorize/RISCV/masked_gather_scatter.ll
M llvm/test/Transforms/LoopVectorize/RISCV/reg-usage.ll
M llvm/test/Transforms/LoopVectorize/RISCV/riscv-interleaved.ll
M llvm/test/Transforms/LoopVectorize/RISCV/riscv-unroll.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-reductions.ll
M llvm/test/Transforms/LoopVectorize/RISCV/uniform-load-store.ll
M llvm/test/Transforms/LoopVectorize/RISCV/unroll-in-loop-vectorizer.ll
Log Message:
-----------
[RISCV] Remove -riscv-v-vector-bits-min from LoopVectorize tests. NFC (#148565)
If I understand correctly there was a point where we used to need this
before it was implied by Zvl*b.
Now that it is though and we use -mattr=+v in pretty much every test we
can remove it.
In unroll-in-loop-vectorizer.ll we can force a VF of 1 instead by using
-force-vector-width=1, and in scalable-basics.ll the two RUN lines were
the same so I merged them.
Commit: 806028add1fb2a5912b78c23c37aa51bc9a8e96a
https://github.com/llvm/llvm-project/commit/806028add1fb2a5912b78c23c37aa51bc9a8e96a
Author: jyli0116 <yu.li at arm.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M llvm/include/llvm/CodeGen/GlobalISel/CombinerHelper.h
M llvm/include/llvm/Target/GlobalISel/Combine.td
M llvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp
M llvm/test/CodeGen/AArch64/GlobalISel/combine-sdiv.mir
M llvm/test/CodeGen/AArch64/arm64-neon-mul-div-cte.ll
A llvm/test/CodeGen/AArch64/combine-sdiv.ll
M llvm/test/CodeGen/AArch64/select_const.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-fold-binop-into-select.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/sdiv.i32.ll
M llvm/test/CodeGen/RISCV/GlobalISel/div-by-constant.ll
Log Message:
-----------
[GlobaISel] Allow expanding of sdiv -> mul by constant (#146504)
Allows expand of sdiv->mul by constant combine for the general case.
Previously this was only occurring in the exact case. This is part of
the resolution to issue #118090
Commit: e074044a120d5fd2f7aef8f868e8618c6909e568
https://github.com/llvm/llvm-project/commit/e074044a120d5fd2f7aef8f868e8618c6909e568
Author: Augie Fackler <augie at google.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M clang/test/ClangScanDeps/visible-modules.c
Log Message:
-----------
[clang][scan-deps] fix new test for readonly work trees
Our setup runs tests with bazel in such a way that the work tree is
readonly, which was causing this test to fail because it couldn't write
the .o file. This fixes that, which was new in 15c3793cdf94 when this
test was introduced.
Commit: 0ad2574de776f59b53b397c46f2bc9cf9d463313
https://github.com/llvm/llvm-project/commit/0ad2574de776f59b53b397c46f2bc9cf9d463313
Author: Muhammad Bassiouni <60100307+bassiounix at users.noreply.github.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M libc/shared/math.h
A libc/shared/math/ldexpf128.h
M libc/src/__support/math/CMakeLists.txt
A libc/src/__support/math/ldexpf128.h
M libc/src/math/generic/CMakeLists.txt
M libc/src/math/generic/ldexpf128.cpp
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
Log Message:
-----------
[libc][math] Refactor ldexpf128 implementation to header-only in src/__support/math folder. (#147895)
Part of #147386
in preparation for:
https://discourse.llvm.org/t/rfc-make-clang-builtin-math-functions-constexpr-with-llvm-libc-to-support-c-23-constexpr-math-functions/86450
Commit: 508f9a02748e44ff981ebe8b3ee944d21cc36117
https://github.com/llvm/llvm-project/commit/508f9a02748e44ff981ebe8b3ee944d21cc36117
Author: Kenneth Benzie (Benie) <k.benzie83 at gmail.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M offload/unittests/OffloadAPI/common/Fixtures.hpp
M offload/unittests/OffloadAPI/event/olWaitEvent.cpp
Log Message:
-----------
[Offload] Skip event tests on AMDGPU (#148632)
Add `OffloadDeviceTest::getPlatformBackend()` and use it to skip event
tests which currently fail on AMDGPU due to:
```
OL_ERRC_UNIMPLEMENTED: synchronize event not implemented
```
Commit: 090e6125336f9a76ac8ed4af1290409967da6dff
https://github.com/llvm/llvm-project/commit/090e6125336f9a76ac8ed4af1290409967da6dff
Author: Sirui Mu <msrlancern at gmail.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M clang/include/clang/CIR/Dialect/IR/CIROps.td
M clang/test/CIR/CodeGen/builtin_bit.cpp
Log Message:
-----------
[CIR][NFC] Resolve various nits for builtin bit operations (#148378)
This patch contains fixes for various nits mentioned in #147200:
- This patch removes the `bit.` prefix in the op mnemonic. The operation
names now directly correspond to the builtin function names except for
`bswap` which is represented by `cir.byte_swap` for more clarity.
- Since all bit operations are `SameOperandsAndResultType`, this patch
updates their assembly format and avoids spelling out the operand type
twice.
Commit: 4177bfdb466855fed5e498774ac517b5cad2a995
https://github.com/llvm/llvm-project/commit/4177bfdb466855fed5e498774ac517b5cad2a995
Author: A. Jiang <de34 at live.cn>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M libcxx/docs/ReleaseNotes/21.rst
M libcxx/docs/Status/Cxx20Papers.csv
Log Message:
-----------
[libc++][docs] Confirm that P2372R3 has been implemented (#148573)
In #125921, the changes requested by P2372R3 were completed and tested
together with corresponding `chrono` types. But that PR didn't mention
P2372R3. The `__cpp_lib_format` FTM was even bumped by an earlier PR
#98275.
This PR confirms that P2372R3 was completed in LLVM 21 (together with P1361R2).
Closes #100043
Commit: b22b103c3dd5ba4c20fba2a77e0c38896cd45901
https://github.com/llvm/llvm-project/commit/b22b103c3dd5ba4c20fba2a77e0c38896cd45901
Author: woruyu <99597449+woruyu at users.noreply.github.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
M llvm/test/CodeGen/PowerPC/copysignl.ll
Log Message:
-----------
[DAG] SelectionDAG::canCreateUndefOrPoison - add ISD::FCOPYSIGN (#148617)
### Summary
This PR resolves https://github.com/llvm/llvm-project/issues/147694
Commit: e10db1594feefbeb0a9642d83b00f4a164f0104c
https://github.com/llvm/llvm-project/commit/e10db1594feefbeb0a9642d83b00f4a164f0104c
Author: David Spickett <david.spickett at linaro.org>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M llvm/lib/Target/SystemZ/Disassembler/SystemZDisassembler.cpp
M llvm/unittests/MC/SystemZ/CMakeLists.txt
R llvm/unittests/MC/SystemZ/SystemZMCDisassemblerTest.cpp
Log Message:
-----------
Revert "[llvm][SystemZ] Set comment stream in SystemZDisassembler::getInstruction" (#148639)
Reverts llvm/llvm-project#148614
Has some missing library dependencies -
https://lab.llvm.org/buildbot/#/builders/76/builds/11262/steps/11/logs/stdio.
Commit: 2eb733b5a6ab17a3ae812bb55c1c7c64569cadcd
https://github.com/llvm/llvm-project/commit/2eb733b5a6ab17a3ae812bb55c1c7c64569cadcd
Author: Maksim Levental <maksim.levental at gmail.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M mlir/include/mlir/IR/Builders.h
M mlir/include/mlir/IR/ImplicitLocOpBuilder.h
M mlir/include/mlir/IR/OpDefinition.h
M mlir/include/mlir/TableGen/Class.h
M mlir/test/mlir-tblgen/op-decl-and-defs.td
M mlir/tools/mlir-tblgen/OpDefinitionsGen.cpp
Log Message:
-----------
[mlir][tblgen] add concrete create methods (#147168)
Currently `builder.create<...>` does not in any meaningful way hint/show
the various builders an op supports (arg names/types) because [`create`
forwards the args to
`build`](https://github.com/llvm/llvm-project/blob/887222e3526fbe08e748a33f740296ac22bf1ab1/mlir/include/mlir/IR/Builders.h#L503).
To improve QoL, this PR adds static create methods to the ops themselves
like
```c++
static arith::ConstantIntOp create(OpBuilder& builder, Location location, int64_t value, unsigned width);
```
Now if one types `arith::ConstantIntO::create(builder,...` instead of
`builder.create<arith::ConstantIntO>(...` auto-complete/hints will pop
up.
See
https://discourse.llvm.org/t/rfc-building-mlir-operation-observed-caveats-and-proposed-solution/87204/13
for more info.
Commit: d36769520014a5005a76c491a530048fc2d7ddb5
https://github.com/llvm/llvm-project/commit/d36769520014a5005a76c491a530048fc2d7ddb5
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
A llvm/test/CodeGen/XCore/llvm.exp10.ll
A llvm/test/CodeGen/XCore/llvm.sincos.ll
Log Message:
-----------
XCore: Add test for sincos and exp10 intrinsics (#148621)
Commit: d749095b94e7b0361f224e6291cb2d5c6d2f366b
https://github.com/llvm/llvm-project/commit/d749095b94e7b0361f224e6291cb2d5c6d2f366b
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
A llvm/test/Analysis/LoopAccessAnalysis/accesses-completely-before-or-after.ll
Log Message:
-----------
[LAA] Add tests where we could derive NoDep due to no overlap.
Add additional tests where we can prove that the accesses are either
completely before or after each other.
Commit: c5c0da8f41afe87db9bceb9d070fb73e5ad6c10a
https://github.com/llvm/llvm-project/commit/c5c0da8f41afe87db9bceb9d070fb73e5ad6c10a
Author: David Spickett <david.spickett at linaro.org>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M llvm/lib/Target/SystemZ/Disassembler/SystemZDisassembler.cpp
M llvm/unittests/MC/SystemZ/CMakeLists.txt
A llvm/unittests/MC/SystemZ/SystemZMCDisassemblerTest.cpp
Log Message:
-----------
Reland "[llvm][SystemZ] Set comment stream in SystemZDisassembler::getInstruction" (#148639)"
This reverts commit e10db1594feefbeb0a9642d83b00f4a164f0104c.
This adds the MCDisassembler which was missing, breaking shared library builds.
Commit: 074218dd1071722ab0dea2a1acb71079ff212bb4
https://github.com/llvm/llvm-project/commit/074218dd1071722ab0dea2a1acb71079ff212bb4
Author: Muhammad Bassiouni <60100307+bassiounix at users.noreply.github.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M libc/shared/math.h
A libc/shared/math/ldexpf16.h
M libc/src/__support/math/CMakeLists.txt
A libc/src/__support/math/ldexpf16.h
M libc/src/math/generic/CMakeLists.txt
M libc/src/math/generic/ldexpf16.cpp
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
Log Message:
-----------
[libc][math] Refactor ldexpf16 implementation to header-only in src/__support/math folder. (#147901)
Part of #147386
in preparation for:
https://discourse.llvm.org/t/rfc-make-clang-builtin-math-functions-constexpr-with-llvm-libc-to-support-c-23-constexpr-math-functions/86450
Please merge #147895 first
Commit: 47c9609a8637b68c0170744ce5c06902512e71ca
https://github.com/llvm/llvm-project/commit/47c9609a8637b68c0170744ce5c06902512e71ca
Author: Callum Fare <callum at codeplay.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M offload/liboffload/src/OffloadImpl.cpp
Log Message:
-----------
[Offload] Check plugins aren't already deinitialized when tearing down (#148642)
This is a hotfix for #148615 - it fixes the issue for me locally.
I think a broader issue is that in the test environment we're calling
olShutDown from a global destructor in the test binaries. We should do
something more controlled, either calling olInit/olShutDown in every
test, or move those to a GTest global environment. I didn't do that
originally because it looked like it needed changes to LLVM's GTest
wrapper.
Commit: b1ef5a8890f26b6430d95696d8ff4e99e270a80e
https://github.com/llvm/llvm-project/commit/b1ef5a8890f26b6430d95696d8ff4e99e270a80e
Author: Quinn Dawkins <quinn.dawkins at gmail.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M mlir/lib/Dialect/MemRef/Transforms/EmulateNarrowType.cpp
M mlir/lib/Dialect/Vector/Transforms/VectorEmulateNarrowType.cpp
M mlir/test/Dialect/MemRef/emulate-narrow-type.mlir
M mlir/test/Dialect/Vector/vector-emulate-narrow-type.mlir
Log Message:
-----------
[mlir][MemRef] Add support for emulating narrow floats (#148036)
This enables memref.load/store + vector.load/store support for sub-byte
float types. Since the memref types don't matter for loads/stores, we
still use the same types as integers with equivalent widths, with a few
extra bitcasts needed around certain operations.
There is no direct change needed for vector.load/store support. The
tests added for them are to verify that float types are
supported as well.
Commit: b1369b603076542ca5ca251b62d3a5e614827f9e
https://github.com/llvm/llvm-project/commit/b1369b603076542ca5ca251b62d3a5e614827f9e
Author: Jonathan Thackray <jonathan.thackray at arm.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64SystemOperands.td
M llvm/test/MC/AArch64/armv9.6a-ras.s
M llvm/test/MC/Disassembler/AArch64/armv9.6a-ras.txt
Log Message:
-----------
[AArch64][llvm] Fix DC CIGDVAPS instruction to require FEAT_MTE2 (#148636)
Commit: 3e43915be62ef355029b61bebe78637a885b8b6c
https://github.com/llvm/llvm-project/commit/3e43915be62ef355029b61bebe78637a885b8b6c
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M .github/workflows/build-ci-container-windows.yml
M .github/workflows/containers/github-action-ci-windows/Dockerfile
Log Message:
-----------
[CI][Github] Bump Windows Container to Server 2022
This patch bumps the windows CI container to windows server 2022 from
windows server 2019. This is necessary as Github has sunsetted support
for sever 2019, so we cannot build the container through GHA without
updating. Using more recent versions is just good practice anyways.
This will not roll out immediately and we'll have to make some TF
changes to get deployed, but some additional validation first will be
good anyways.
Reviewers: lnihlen, tstellar, cmtice
Reviewed By: cmtice
Pull Request: https://github.com/llvm/llvm-project/pull/148318
Commit: cfcda5d0ffd9e714ef10b33f7028a0d8bb11df7c
https://github.com/llvm/llvm-project/commit/cfcda5d0ffd9e714ef10b33f7028a0d8bb11df7c
Author: Muhammad Bassiouni <60100307+bassiounix at users.noreply.github.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M libc/shared/math.h
A libc/shared/math/ldexpf.h
M libc/src/__support/math/CMakeLists.txt
A libc/src/__support/math/ldexpf.h
M libc/src/math/generic/CMakeLists.txt
M libc/src/math/generic/ldexpf.cpp
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
Log Message:
-----------
[libc][math] Refactor ldexpf implementation to header-only in src/__support/math folder (#147906)
Part of #147386
in preparation for:
https://discourse.llvm.org/t/rfc-make-clang-builtin-math-functions-constexpr-with-llvm-libc-to-support-c-23-constexpr-math-functions/86450
Please merge #147901 first
@lntue
Commit: f8c2c4f161a6a98f623a6263a248fb24927eeaec
https://github.com/llvm/llvm-project/commit/f8c2c4f161a6a98f623a6263a248fb24927eeaec
Author: John Brawn <john.brawn at arm.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp
A llvm/test/CodeGen/Thumb2/LowOverheadLoops/lsr-le-cost.ll
M llvm/test/CodeGen/Thumb2/LowOverheadLoops/sibling-loops.ll
M llvm/test/DebugInfo/ARM/hardware-loop-phi-insertion.ll
Log Message:
-----------
[LSR] Account for hardware loop instructions (#147958)
A hardware loop instruction combines a subtract, compare with zero, and
branch. We currently account for the compare and branch being combined
into one in Cost::RateFormula, as part of more general handling for
compare-branch-zero, but don't account for the subtract, leading to
suboptimal decisions in some cases.
Fix this in Cost::RateRegister by noticing when we have such a subtract
and discounting the AddRecCost in such a case.
Commit: 735736fbad93ec640c8585a6f8a0610d93fa9cbb
https://github.com/llvm/llvm-project/commit/735736fbad93ec640c8585a6f8a0610d93fa9cbb
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/test/CodeGen/Mips/ldexp.ll
Log Message:
-----------
Mips: Remove test for ldexp with x86_fp80 (#148641)
This was a copy paste error from the x86 test, and
it compiled accidentally to ldexpl. Delete this
since it will start to error in a future change.
Commit: 91d017a7c0af8fb0251363ad1289e0a1c55026ad
https://github.com/llvm/llvm-project/commit/91d017a7c0af8fb0251363ad1289e0a1c55026ad
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/include/llvm/IR/RuntimeLibcalls.td
M llvm/lib/IR/RuntimeLibcalls.cpp
Log Message:
-----------
RuntimeLibcalls: Remove __muloti4 from default libcall set (#148562)
The current logic says it's only available on wasm, so only
explicitly add it there. Also fix a misnomer in the compiler-rt
call list.
Commit: 301a1d565fccaf517d1c587d1599d595407c178b
https://github.com/llvm/llvm-project/commit/301a1d565fccaf517d1c587d1599d595407c178b
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/include/llvm/IR/RuntimeLibcalls.td
M llvm/lib/IR/RuntimeLibcalls.cpp
Log Message:
-----------
RuntimeLibcalls: Invert handling of 64-bit only libcalls (#148571)
Switch the default set to exclude these conditionally available
calls, so they are opt-in instead of opt-out.
Commit: d5ac1b5e2872fdafca7804d486c55334b228aaf6
https://github.com/llvm/llvm-project/commit/d5ac1b5e2872fdafca7804d486c55334b228aaf6
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVOptWInstrs.cpp
M llvm/test/CodeGen/RISCV/sextw-removal.ll
Log Message:
-----------
[RISCV] Improve hasAllNBitUsers for SLLIW. (#148344)
Commit: 96096550a112426c4110ee3fced6f3128df49aa7
https://github.com/llvm/llvm-project/commit/96096550a112426c4110ee3fced6f3128df49aa7
Author: Yi Zhang <cathyzhyi at google.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/mlir/python/BUILD.bazel
Log Message:
-----------
[bazel] Add targets for transform.tune python extension (#148656)
Commit: a76dfde9366d022307d9f45ec21b4016b46c9e0c
https://github.com/llvm/llvm-project/commit/a76dfde9366d022307d9f45ec21b4016b46c9e0c
Author: Muhammad Bassiouni <60100307+bassiounix at users.noreply.github.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M libc/shared/math.h
A libc/shared/math/exp.h
M libc/src/__support/math/CMakeLists.txt
A libc/src/__support/math/exp.h
A libc/src/__support/math/exp_constants.h
A libc/src/__support/math/exp_utils.h
M libc/src/math/generic/CMakeLists.txt
M libc/src/math/generic/common_constants.cpp
M libc/src/math/generic/common_constants.h
M libc/src/math/generic/exp.cpp
M libc/src/math/generic/explogxf.h
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
Log Message:
-----------
[libc][math] Refactor exp implementation to header-only in src/__support/math folder. (#148091)
Part of #147386
in preparation for:
https://discourse.llvm.org/t/rfc-make-clang-builtin-math-functions-constexpr-with-llvm-libc-to-support-c-23-constexpr-math-functions/86450
Commit: 1f97c9432d010c7c5eefc5ebe2648af2d9d5863d
https://github.com/llvm/llvm-project/commit/1f97c9432d010c7c5eefc5ebe2648af2d9d5863d
Author: sribee8 <sriya.pratipati at gmail.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M libc/fuzzing/math/CMakeLists.txt
A libc/fuzzing/math/exp10_fuzz.cpp
A libc/fuzzing/math/exp2_fuzz.cpp
A libc/fuzzing/math/exp_fuzz.cpp
A libc/fuzzing/math/expm1_fuzz.cpp
Log Message:
-----------
[libc] exp fuzz tests (#148086)
Created fuzz tests for exp functions
---------
Co-authored-by: Sriya Pratipati <sriyap at google.com>
Commit: fc99ef7411e7f33e03e639a22f83a271ea8aaaa8
https://github.com/llvm/llvm-project/commit/fc99ef7411e7f33e03e639a22f83a271ea8aaaa8
Author: Slava Zakharin <szakharin at nvidia.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M flang/include/flang/Optimizer/Dialect/FIRCG/CGOps.td
M flang/include/flang/Optimizer/Dialect/FIROps.td
M flang/include/flang/Optimizer/Dialect/FIRTypes.td
M flang/test/Fir/fir-ops.fir
Log Message:
-----------
[flang] Allow embox's source_box to be a !fir.box. (#148305)
In order to create temporary copies of assumed-type arrays
(e.g. for `-frepack-arrays`), we have to allow the source_box
to be a !fir.box.
This patch replaces #147618.
Commit: 9e56d0d2ab125377740245599e3cc950fcf406bc
https://github.com/llvm/llvm-project/commit/9e56d0d2ab125377740245599e3cc950fcf406bc
Author: Slava Zakharin <szakharin at nvidia.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M flang/lib/Optimizer/Transforms/AddAliasTags.cpp
A flang/test/Transforms/tbaa-derived-with-descriptor.fir
Log Message:
-----------
[flang] Fixed TBAA tags for derived types with descriptors. (#148093)
We cannot attach any "data" or "descriptor" tag to accesses
of derived types that contain descriptors, because this
will make them non-aliasing with any generic "data" or "descriptor"
accesses, which is not correct. We have to skip TBAA tags attachment
for such accesses same way we do it for boxes.
Commit: 4775b9689844e1ec7b425e039aff4fcbb758b4d4
https://github.com/llvm/llvm-project/commit/4775b9689844e1ec7b425e039aff4fcbb758b4d4
Author: Slava Zakharin <szakharin at nvidia.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M flang/include/flang/Optimizer/Builder/HLFIRTools.h
M flang/include/flang/Optimizer/Dialect/FIROpsSupport.h
M flang/include/flang/Optimizer/Transforms/Passes.h
M flang/include/flang/Optimizer/Transforms/Passes.td
M flang/lib/Optimizer/Builder/HLFIRTools.cpp
M flang/lib/Optimizer/Dialect/FIROps.cpp
M flang/lib/Optimizer/Passes/Pipelines.cpp
M flang/lib/Optimizer/Transforms/CMakeLists.txt
M flang/lib/Optimizer/Transforms/LoopVersioning.cpp
A flang/lib/Optimizer/Transforms/OptimizeArrayRepacking.cpp
M flang/test/Driver/bbc-mlir-pass-pipeline.f90
M flang/test/Driver/mlir-pass-pipeline.f90
M flang/test/Fir/basic-program.fir
M flang/test/HLFIR/simplify-hlfir-intrinsics-cshift.fir
M flang/test/HLFIR/simplify-hlfir-intrinsics-matmul.fir
A flang/test/Transforms/optimize-array-repacking.fir
Log Message:
-----------
[flang] Optimize redundant array repacking. (#147881)
This patch allows optimizing redundant array repacking, when
the source array is statically known to be contiguous.
This is part of the implementation plan for the array repacking
feature, though, it does not affect any real life use case
as long as FIR inlining is not a thing. I experimented with
simple cases of FIR inling using `-inline-all`, and I recorded
these cases in optimize-array-repacking.fir tests.
Commit: f4630baaa2aad34a76d376b06dd44b42d08c6e95
https://github.com/llvm/llvm-project/commit/f4630baaa2aad34a76d376b06dd44b42d08c6e95
Author: lntue <lntue at google.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M libc/shared/math.h
R libc/shared/math/exp.h
M libc/src/__support/math/CMakeLists.txt
R libc/src/__support/math/exp.h
R libc/src/__support/math/exp_constants.h
R libc/src/__support/math/exp_utils.h
M libc/src/math/generic/CMakeLists.txt
M libc/src/math/generic/common_constants.cpp
M libc/src/math/generic/common_constants.h
M libc/src/math/generic/exp.cpp
M libc/src/math/generic/explogxf.h
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
Log Message:
-----------
Revert "[libc][math] Refactor exp implementation to header-only in src/__support/math folder." (#148668)
Reverts llvm/llvm-project#148091
Full build bots are failing.
Commit: 6640b0a293c07c9a6e4ea3476453781f979726b7
https://github.com/llvm/llvm-project/commit/6640b0a293c07c9a6e4ea3476453781f979726b7
Author: jjasmine <jjasmine at igalia.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/include/llvm/Target/TargetSelectionDAG.td
M llvm/lib/Target/ARM/ARMInstrInfo.td
M llvm/lib/Target/WebAssembly/WebAssemblyInstrSIMD.td
A llvm/test/CodeGen/WebAssembly/simd-relaxed-fma.ll
Log Message:
-----------
[WebAssembly] Add patterns for relaxed madd (#147487)
[WebAssembly] Fold fadd contract (fmul contract) to relaxed madd w/
-mattr=+simd128,+relaxed-simd
Fixes #121311
- Precommit test for #121311
- Fold fadd contract (fmul contract) to relaxed madd w/
-mattr=+simd128,+relaxed-simd
- Move PatFrag of fadd_contract in ARM.td and WebAssembly.td to
TargetSelectionDAG.td for reuse of pattern
Commit: 3d6aac31fcb5f7a988be5e484e44bdc9033265c5
https://github.com/llvm/llvm-project/commit/3d6aac31fcb5f7a988be5e484e44bdc9033265c5
Author: Tom Eccles <tom.eccles at arm.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M flang/lib/Lower/Support/ReductionProcessor.cpp
Log Message:
-----------
[flang][Lower] fix warning (#148667)
GCC 9.3.0
```
.../flang/lib/Lower/Support/ReductionProcessor.cpp:137:1: error: control reaches end of non-void function [-Werror=return-type]
```
Commit: f78d6caadc60b58a6cf390efc2b3d2da7a21caef
https://github.com/llvm/llvm-project/commit/f78d6caadc60b58a6cf390efc2b3d2da7a21caef
Author: Morris Hafner <mmha at users.noreply.github.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M clang/include/clang/CIR/MissingFeatures.h
M clang/lib/CIR/CodeGen/CIRGenCXXABI.cpp
M clang/lib/CIR/CodeGen/CIRGenCXXABI.h
M clang/lib/CIR/CodeGen/CIRGenFunction.cpp
M clang/lib/CIR/CodeGen/CIRGenFunction.h
M clang/lib/CIR/CodeGen/CIRGenItaniumCXXABI.cpp
M clang/lib/CIR/CodeGen/CIRGenModule.cpp
A clang/test/CIR/CodeGen/destructors.cpp
Log Message:
-----------
[CIR] Add Minimal Destructor Definition Support (#144719)
This patch upstreams support for writing inline and out of line C++
destructor definitions. Calling a destructor implcitly or explicitly is
left for a future patch.
Because of that restriction complete destructors (D2 in Itanium
mangling) do not call into the base (D1) destructors yet but simply
behave like a base destructor. Deleting (D0) destructor support is not
part of this patch.
Destructor aliases aren't supported, either. Because of this compilation
with -mno-constructor-aliases may be required to avoid running into NYI
errors.
Commit: 76f1ddc79cc00c78354bfae0a5cb08fae41dc4fd
https://github.com/llvm/llvm-project/commit/76f1ddc79cc00c78354bfae0a5cb08fae41dc4fd
Author: Finn Plummer <finn.c.plum at gmail.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M clang/test/SemaHLSL/RootSignature-resource-ranges-err.hlsl
Log Message:
-----------
[NFC][SemaHLSL] Remove check dependent on non-deterministic root element association (#148649)
- when there are duplicate (equivalent) `RangeInfo`s created we will
attempt to `llvm::sort` or `llvm::stable_sort` them, it does not appear
deterministic in which order they will be sorted (because they are
equivalent)
- when `DLLVM_ENABLE_EXSTENSIVE_CHECKS` is enabled, it appears to deal
with this tie-breaker sorting the list differently than when it is not
enabled, this causes one of the test cases to fail because the
diagnostic is produced, not in a different order, but with a different
root element associated with an identical `RangeInfo`
- functionally this makes no difference to the diagnostic being produced
and the removed test-case was added just as a nicety to demonstrate how
the diagnostics might look
- the test above the removed will correctly demonstrate that the
`SourceLocation` will be set to the correct column, and, the `-verify`
portion of this testcase will ensure that we still generate a diagnostic
for each duplicate
- therefore, it is safe to remove this portion of the test-case that can
have a non-deterministic association of root element
This resolves the build issues reported
[here](https://github.com/llvm/llvm-project/pull/147115#issuecomment-3069543491)
and
[here](https://github.com/llvm/llvm-project/pull/147800#issuecomment-3069797406)
Commit: 6862afa00897821ed9459eb2d564932ae44ba68d
https://github.com/llvm/llvm-project/commit/6862afa00897821ed9459eb2d564932ae44ba68d
Author: Walter Lee <49250218+googlewalt at users.noreply.github.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/mlir/python/BUILD.bazel
Log Message:
-----------
[mlir][bazel] Fix 9609655
Commit: 2244f57130a5bc01f1c7713b6d7d55da926814cf
https://github.com/llvm/llvm-project/commit/2244f57130a5bc01f1c7713b6d7d55da926814cf
Author: Bogdan Vetrenko <b.vetrenko at yandex.ru>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M clang/lib/AST/ASTDiagnostic.cpp
Log Message:
-----------
[clang][NFC] Fix typos and grammar in comments in ASTDiagnostic (#148359)
Commit: 968b2389ce521e7730e4069760c278c8d2abf0f3
https://github.com/llvm/llvm-project/commit/968b2389ce521e7730e4069760c278c8d2abf0f3
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M .github/workflows/containers/github-action-ci-windows/Dockerfile
Log Message:
-----------
[CI][Github] Version pin packages in windows container
I spent several hours debugging failures in the server 2022 container
today that turned out to be related to a new ninja release from a couple
weeks ago. This patch version pins all the packages so they do not
spuriously upgrade and we can control the process to waste less effort
debugging changes due to version changes.
Reviewers: cmtice, tstellar, lnihlen
Reviewed By: cmtice
Pull Request: https://github.com/llvm/llvm-project/pull/148319
Commit: 22b221d4b7dfc719638614b08c49cd7a6450a989
https://github.com/llvm/llvm-project/commit/22b221d4b7dfc719638614b08c49cd7a6450a989
Author: Amr Hesham <amr96 at programmer.net>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M clang/include/clang/CIR/Dialect/IR/CIROps.td
M clang/lib/CIR/CodeGen/CIRGenBuilder.h
M clang/lib/CIR/CodeGen/CIRGenExpr.cpp
M clang/lib/CIR/Dialect/IR/CIRDialect.cpp
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.h
M clang/test/CIR/CodeGen/complex.cpp
Log Message:
-----------
[CIR] Upstream ComplexImagPtrOp for ComplexType (#144236)
This change adds support for ComplexImagPtrOp for ComplexType
https://github.com/llvm/llvm-project/issues/141365
Commit: b54cfa46a7eba293b6f2086856a36cc553444939
https://github.com/llvm/llvm-project/commit/b54cfa46a7eba293b6f2086856a36cc553444939
Author: Razvan Lupusoru <razvan.lupusoru at gmail.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M flang/include/flang/Optimizer/OpenACC/FIROpenACCTypeInterfaces.h
M flang/lib/Lower/CMakeLists.txt
M flang/lib/Lower/OpenACC.cpp
M flang/lib/Optimizer/OpenACC/FIROpenACCTypeInterfaces.cpp
Log Message:
-----------
[flang][acc] Implement MappableType's generatePrivateInit (#148302)
The recipe body generation was moved from lowering into FIR's
implementation of MappableType API. And now since all Fortran variable
types implement this type, lowering of OpenACC was updated to use this
API directly. No test changes were needed - all of the private,
firstprivate, and recipe tests get the same body as before.
Commit: fdbd9c19c9baf9c6007161a4ac6d961e1e0474f2
https://github.com/llvm/llvm-project/commit/fdbd9c19c9baf9c6007161a4ac6d961e1e0474f2
Author: Andres-Salamanca <andrealebarbaritos at gmail.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
M clang/test/CIR/CodeGen/bitfields.c
Log Message:
-----------
[CIR] Add support for unary operations on bitfield members (#148083)
This PR introduces support for unary operations on bitfield members.
Support for binary operations is planned for a future PR.
Commit: 4328b69df6fd52815fd934350ef4d4ce3966045a
https://github.com/llvm/llvm-project/commit/4328b69df6fd52815fd934350ef4d4ce3966045a
Author: Victor Chernyakin <chernyakin.victor.j at outlook.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M clang-tools-extra/clang-tidy/misc/ConfusableTable/confusables.txt
Log Message:
-----------
[clang-tidy] Update `confusables.txt` in `misc-confusable-identifiers` (#148399)
We're currently on Unicode 14.0.0. This PR updates it to Unicode 16.0.0.
Commit: e86bd05bdc110abcf6c6d2b6b48ede4361ce42e4
https://github.com/llvm/llvm-project/commit/e86bd05bdc110abcf6c6d2b6b48ede4361ce42e4
Author: S. VenkataKeerthy <31350914+svkeerthy at users.noreply.github.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M llvm/include/llvm/Analysis/FunctionPropertiesAnalysis.h
M llvm/include/llvm/Analysis/IR2Vec.h
M llvm/lib/Analysis/FunctionPropertiesAnalysis.cpp
M llvm/lib/Analysis/IR2Vec.cpp
M llvm/lib/Analysis/models/seedEmbeddingVocab75D.json
M llvm/test/Analysis/IR2Vec/Inputs/dummy_2D_vocab.json
A llvm/test/Analysis/IR2Vec/Inputs/dummy_3D_nonzero_arg_vocab.json
A llvm/test/Analysis/IR2Vec/Inputs/dummy_3D_nonzero_opc_vocab.json
A llvm/test/Analysis/IR2Vec/Inputs/dummy_3D_nonzero_type_vocab.json
A llvm/test/Analysis/IR2Vec/Inputs/reference_default_vocab_print.txt
A llvm/test/Analysis/IR2Vec/Inputs/reference_wtd1_vocab_print.txt
A llvm/test/Analysis/IR2Vec/Inputs/reference_wtd2_vocab_print.txt
M llvm/test/Analysis/IR2Vec/basic.ll
M llvm/test/Analysis/IR2Vec/dbg-inst.ll
M llvm/test/Analysis/IR2Vec/if-else.ll
M llvm/test/Analysis/IR2Vec/unreachable.ll
M llvm/test/Analysis/IR2Vec/vocab-test.ll
M llvm/unittests/Analysis/FunctionPropertiesAnalysisTest.cpp
M llvm/unittests/Analysis/IR2VecTest.cpp
Log Message:
-----------
[IR2Vec] Restructuring Vocabulary (#145119)
This PR restructures the vocabulary.
* String based look-ups are removed. Vocabulary is changed from a map to vector. (#141832)
* Grouped all the vocabulary related methods under a single class - `ir2vec::Vocabulary`. This replaces `IR2VecVocabResult`.
* `ir2vec::Vocabulary` effectively abstracts out the _layout_ and other internal details of the vector structure. Exposes necessary APIs for accessing the Vocabulary.
These changes ensure that _all_ known opcodes and types are present in the vocabulary. We have retained the original operands. This can be extended going forward.
(Tracking issue - #141817)
Commit: 4dceb25dd1b96c93a7bd302c5d81bb1aacf75f4d
https://github.com/llvm/llvm-project/commit/4dceb25dd1b96c93a7bd302c5d81bb1aacf75f4d
Author: Peter Klausler <pklausler at nvidia.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M flang/include/flang/Parser/char-block.h
M flang/lib/Parser/preprocessor.cpp
M flang/lib/Parser/unparse.cpp
M flang/lib/Semantics/expression.cpp
M flang/lib/Semantics/resolve-names.cpp
M flang/lib/Semantics/tools.cpp
A flang/test/Preprocessing/bug1126.F90
Log Message:
-----------
[flang] Don't create bogus tokens from token pasting (##) (#147596)
When blank tokens arise from macro replacement in token sequences with
token pasting (##), the preprocessor is producing some bogus tokens
(e.g., "name(") that can lead to subtle bugs later when macro names are
not recognized as such.
The fix is to not paste tokens together when the result would not be a
valid Fortran or C token in the preprocessing context.
Commit: 69f38443e5f96913d85650b2f73fb472b54cad24
https://github.com/llvm/llvm-project/commit/69f38443e5f96913d85650b2f73fb472b54cad24
Author: Peter Klausler <pklausler at nvidia.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M flang/docs/Extensions.md
M flang/include/flang/Support/Fortran-features.h
M flang/lib/Evaluate/fold.cpp
M flang/lib/Evaluate/intrinsics.cpp
M flang/lib/Support/Fortran-features.cpp
A flang/test/Evaluate/transfer-boz.f90
Log Message:
-----------
[flang] Extension: TRANSFER(boz, integer or real scalar) (#147604)
Interpret TRANSFER(SOURCE=BOZ literal, MOLD=integer or real scalar) as
if it had been a reference to the standard INT or REAL intrinsic
functions, for which a BOZ literal is an acceptable argument, with a
warning about non-conformance. It's a needless extension that has
somehow crept into some other compilers and real applications.
Commit: 18286e0c2a079e3b2bea9e9f6763333b5e855a2e
https://github.com/llvm/llvm-project/commit/18286e0c2a079e3b2bea9e9f6763333b5e855a2e
Author: jjasmine <jjasmine at igalia.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/lib/Analysis/ConstantFolding.cpp
A llvm/test/Transforms/InstSimplify/ConstProp/WebAssembly/any_all_true.ll
Log Message:
-----------
[WebAssembly] Constant fold SIMD intrinsics: any/alltrue (#148074)
Constant fold SIMD wasm intrinsics: any/alltrue
Added test in `llvm/test/Transforms/InstSimplify`
Commit: 2e53a68c09b1bb4bc6c31146c8e69789ae9848ae
https://github.com/llvm/llvm-project/commit/2e53a68c09b1bb4bc6c31146c8e69789ae9848ae
Author: Peter Klausler <pklausler at nvidia.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M flang-rt/include/flang-rt/runtime/descriptor.h
M flang-rt/include/flang-rt/runtime/type-info.h
M flang-rt/include/flang-rt/runtime/work-queue.h
M flang-rt/lib/runtime/assign.cpp
M flang-rt/lib/runtime/derived.cpp
M flang-rt/lib/runtime/descriptor.cpp
M flang-rt/lib/runtime/pointer.cpp
M flang-rt/lib/runtime/work-queue.cpp
Log Message:
-----------
[flang][runtime] Speed up initialization & destruction (#148087)
Rework derived type initialization in the runtime to just initialize the
first element of any array, and then memcpy it to the others, rather
than exercising the per-component paths for each element.
Reword derived type destruction in the runtime to detect and exploit a
fast path for allocatable components whose types themselves don't need
nested destruction.
Small tweaks were made in hot paths exposed by profiling in descriptor
operations and derived type assignment.
Commit: 309bb1ed6844a5936158a2a8406d1b77bda37b94
https://github.com/llvm/llvm-project/commit/309bb1ed6844a5936158a2a8406d1b77bda37b94
Author: Christopher Ferris <cferris1000 at users.noreply.github.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M compiler-rt/lib/scudo/standalone/tests/wrappers_c_test.cpp
Log Message:
-----------
[scudo] Fix c wrappers double free test. (#148066)
The previous test simply tried to double free the pointer in the
EXPECT_DEATH macro. Unfortunately, the gtest infrastructure can allocate
a pointer that happens to be the previously freed pointer. Thus the free
doesn't fail since the spawned process does not attempt to free all of
the pointers allocated in the original test.
NOTE: Scudo should be checked to make sure that the TSD is not always
returning pointers in the same order they are freed. Although this
appears to be a problem with a program that only does a small number of
allocations.
Commit: f25fc5fe1ea1efd18a18d5cf58ee483fd33ccfc3
https://github.com/llvm/llvm-project/commit/f25fc5fe1ea1efd18a18d5cf58ee483fd33ccfc3
Author: Utkarsh Saxena <usx at google.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M clang/lib/Analysis/LifetimeSafety.cpp
M clang/test/Sema/warn-lifetime-safety-dataflow.cpp
Log Message:
-----------
[LifetimeSafety] Implement dataflow analysis for loan propagation (#148065)
This patch introduces the core dataflow analysis infrastructure for the C++ Lifetime Safety checker. This change implements the logic to propagate "loan" information across the control-flow graph. The primary goal is to compute a fixed-point state that accurately models which pointer (Origin) can hold which borrow (Loan) at any given program point.
Key components
* `LifetimeLattice`: Defines the dataflow state, mapping an `OriginID` to a `LoanSet` using `llvm::ImmutableMap`.
* `Transferer`: Implements the transfer function, which updates the `LifetimeLattice` by applying the lifetime facts (Issue, AssignOrigin, etc.) generated for each basic block.
* `LifetimeDataflow`: A forward dataflow analysis driver that uses a worklist algorithm to iterate over the CFG until the lattice state converges.
The existing test suite has been extended to check the final dataflow results.
This work is a prerequisite for the final step of the analysis: consuming these results to identify and report lifetime violations.
Commit: 7615503409f19ad7e2e2f946437919d0689d4b3e
https://github.com/llvm/llvm-project/commit/7615503409f19ad7e2e2f946437919d0689d4b3e
Author: Utkarsh Saxena <usx at google.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
A clang/test/Analysis/LifetimeSafety/CMakeLists.txt
A clang/test/Analysis/LifetimeSafety/benchmark.py
A clang/test/Analysis/LifetimeSafety/requirements.txt
M clang/test/CMakeLists.txt
Log Message:
-----------
[LifetimeSafety] Add script for performance benchmarking (#147315)
This patch introduces a new Python-based benchmarking tool for Clang's Lifetime Safety analysis. This script automates the process of generating targeted C++ test cases, measuring the performance of the analysis, and determining its empirical computational complexity.
The tool helps track and validate the performance of the dataflow analysis, ensuring that future optimizations have a measurable impact and that the analysis scales efficiently.
Components:
* **Generate**: Creates pathological C++ test cases with specific patterns (pointer cycles and CFG merges) designed to stress-test the analysis.
* **Compile & Trace**: Compiles the generated code using `-ftime-trace`.
* **Analyze & Report**: Performs a curve-fit on the timing data to determine the empirical complexity ( **O(n<sup>k</sup>)**) and outputs a markdown report.
---
**Usage**:
<details>
<summary>ninja benchmark_lifetime_safety_analysis</summary>
[12/13] Running Lifetime Analysis performance benchmarks...
Benchmark files will be saved in: <BUILD_DIR_REDACTED>/tools/clang/test/Analysis/LifetimeSafety/benchmark_results
Running performance benchmarks...
--- Running Test: Cycle with N=10 ---
Total: 10.11 ms | Analysis: 2.70 ms
--- Running Test: Cycle with N=25 ---
Total: 61.51 ms | Analysis: 53.05 ms
--- Running Test: Cycle with N=50 ---
Total: 688.56 ms | Analysis: 677.32 ms
--- Running Test: Cycle with N=75 ---
Total: 3.09 s | Analysis: 3.07 s
--- Running Test: Cycle with N=100 ---
Total: 9.31 s | Analysis: 9.30 s
--- Running Test: Cycle with N=150 ---
Total: 44.92 s | Analysis: 44.91 s
--- Running Test: Merge with N=10 ---
Total: 8.54 ms | Analysis: 0.00 ms
--- Running Test: Merge with N=50 ---
Total: 38.79 ms | Analysis: 27.13 ms
--- Running Test: Merge with N=100 ---
Total: 219.45 ms | Analysis: 205.20 ms
--- Running Test: Merge with N=200 ---
Total: 1.67 s | Analysis: 1.65 s
--- Running Test: Merge with N=400 ---
Total: 12.57 s | Analysis: 12.55 s
--- Running Test: Merge with N=800 ---
Total: 100.48 s | Analysis: 100.43 s
Generating Markdown Report...
</details>
<details>
<summary>Sample Report: </summary>
# Lifetime Analysis Performance Report
> Generated on: 2025-07-08 14:18:52
---
## Test Case: Pointer Cycle in Loop
| N | Analysis Time | Total Clang Time |
|:----|--------------:|-----------------:|
| 10 | 2.70 ms | 10.11 ms |
| 25 | 53.05 ms | 61.51 ms |
| 50 | 677.32 ms | 688.56 ms |
| 75 | 3.07 s | 3.09 s |
| 100 | 9.30 s | 9.31 s |
| 150 | 44.91 s | 44.92 s |
**Complexity Analysis:**
- The performance for this case scales approx. as **O(n<sup>3.88</sup>)**.
- **95% Confidence interval for exponent:** `[3.86, 3.90]`.
---
## Test Case: CFG Merges
| N | Analysis Time | Total Clang Time |
|:----|--------------:|-----------------:|
| 10 | 0.00 ms | 8.54 ms |
| 50 | 27.13 ms | 38.79 ms |
| 100 | 205.20 ms | 219.45 ms |
| 200 | 1.65 s | 1.67 s |
| 400 | 12.55 s | 12.57 s |
| 800 | 100.43 s | 100.48 s |
**Complexity Analysis:**
- The performance for this case scales approx. as **O(n<sup>3.00</sup>)**.
- **95% Confidence interval for exponent:** `[2.99, 3.01]`.
---
</details>
Commit: ec2e21a14d3685cdfa953ede3627aaa23f26f5ec
https://github.com/llvm/llvm-project/commit/ec2e21a14d3685cdfa953ede3627aaa23f26f5ec
Author: Michael Kruse <llvm-project at meinersbur.de>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M llvm/docs/LangRef.rst
Log Message:
-----------
[LangRef] No target-specific size limit for atomics (#136864)
According to the current LangRef, atomics of sizes larger than a
target-dependent limit are non-conformant IR. Presumably, that size
limit is `TargetLoweringBase::getMaxAtomicSizeInBitsSupported()`. As a
consequence, one would not even know whether IR is valid without
instantiating the Target backend.
To get around this, Clang's CGAtomic uses a constant "16 bytes" for the
maximally supported atomic. The verifier only checks the power-of-two
requirement.
In a discussion with jyknight, the intention is rather that the
AtomicExpandPass will just lower everything larger than the
target-supported atomic sizes to libcall (such as `__atomic_load`).
According to this interpretation, the size limit needs only be known by
the lowering and does not affect the IR specification.
The original "target-specific size limit" had been added in
59b66883eacbc62a09c09f08bcbfdce7af46cf31. The LangRef change is needed
for #134455 because otherwise frontends need to pass a TargetLowering
object to the helper functions just to know what the target-specific
limit is.
This also changes the LangRef for atomicrmw. Are there libatomic
fallbacks for these? If not, LLVM-IR validity still depends on
instantiating the actual backend. There are also some intrinsics such as
`llvm.memcpy.element.unordered.atomic` that have this constraint but do
not change in this PR.
Commit: ce8c19ffc591f069dad72d03697f67f7ecb87524
https://github.com/llvm/llvm-project/commit/ce8c19ffc591f069dad72d03697f67f7ecb87524
Author: Naveen Seth Hanig <naveen.hanig at outlook.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M clang/lib/Lex/DependencyDirectivesScanner.cpp
M clang/unittests/Lex/DependencyDirectivesScannerTest.cpp
Log Message:
-----------
[clang][deps] Fix dependency scanner misidentifying 'import::' as module partition (#148674)
The dependency directive scanner was incorrectly classifying namespaces
such as `import::inner xi` as directives. According to P1857R3, `import` should
not be treated as a directive when followed by `::`.
This change fixes that behavior.
Commit: 6ac286cd491b419dd18a6e8de3aaef4caa44e093
https://github.com/llvm/llvm-project/commit/6ac286cd491b419dd18a6e8de3aaef4caa44e093
Author: Baranov Victor <bar.victor.2002 at gmail.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M clang-tools-extra/clang-tidy/bugprone/ExceptionEscapeCheck.cpp
M clang-tools-extra/clang-tidy/utils/ExceptionAnalyzer.cpp
M clang-tools-extra/clang-tidy/utils/ExceptionAnalyzer.h
M clang-tools-extra/docs/ReleaseNotes.rst
M clang-tools-extra/test/clang-tidy/checkers/bugprone/exception-escape-coro.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/exception-escape-rethrow.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/exception-escape-throw.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/exception-escape.cpp
Log Message:
-----------
[clang-tidy] Improve `bugprone-exception-escape`: add stacktrace of escaped exception (#134375)
This PR add stacktrace of escaped exception to
`bugprone-exception-escape` check.
Changes:
1. Modified `ExceptionAnalyzer` and `ExceptionInfo` classes to hold
stacktrace of escaped exception in `llvm::MapVector`. `llvm::MapVector`
is needed to hold relative positions of functions in stack as well as
have fast lookup.
2. Added new diagnostics based of `misc-no-recursion` check.
Fixes https://github.com/llvm/llvm-project/issues/87422.
Commit: 0c2560b29b3d15eca766eea306d8525b1c71d4ae
https://github.com/llvm/llvm-project/commit/0c2560b29b3d15eca766eea306d8525b1c71d4ae
Author: Cyndy Ishida <cyndy_ishida at apple.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M llvm/lib/TextAPI/TextStubV5.cpp
A llvm/test/tools/llvm-readtapi/stubify-v4-to-v5.test
Log Message:
-----------
[TextAPI] print symbols in a stable order in v5 format (#148687)
resolves: rdar://151765704
Commit: d4f5ed6a23464cbe831820cb695aa1d39b11e4aa
https://github.com/llvm/llvm-project/commit/d4f5ed6a23464cbe831820cb695aa1d39b11e4aa
Author: Michael Buch <michaelbuch12 at gmail.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M libcxx/src/atomic.cpp
Log Message:
-----------
Revert "[libc++][NFC] atomic::wait use public API on macOS" (#148705)
Reverts llvm/llvm-project#147146
This is failing to build on our public macOS CI:
https://green.lab.llvm.org/job/llvm.org/view/LLDB/job/lldb-cmake-sanitized/
```
06:48:56 FAILED: libcxx/src/CMakeFiles/cxx_shared.dir/atomic.cpp.o
06:48:56 /Users/ec2-user/jenkins/workspace/llvm.org/lldb-cmake-sanitized/lldb-build/bin/clang++ --target=arm64-apple-darwin23.1.0 -DLIBCXX_BUILDING_LIBCXXABI -DLIBC_NAMESPACE=__llvm_libc_common_utils -D_DEBUG -D_GLIBCXX_ASSERTIONS -D_LIBCPP_BUILDING_LIBRARY -D_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER -D_LIBCPP_REMOVE_TRANSITIVE_INCLUDES -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -I/Users/ec2-user/jenkins/workspace/llvm.org/lldb-cmake-sanitized/llvm-project/libcxx/src -I/Users/ec2-user/jenkins/workspace/llvm.org/lldb-cmake-sanitized/lldb-build/include/c++/v1 -I/Users/ec2-user/jenkins/workspace/llvm.org/lldb-cmake-sanitized/llvm-project/libcxxabi/include -I/Users/ec2-user/jenkins/workspace/llvm.org/lldb-cmake-sanitized/llvm-project/cmake/Modules/../../libc -fPIC -fvisibility-inlines-hidden -Werror=date-time -Werror=unguarded-availability-new -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -Wimplicit-fallthrough -Wcovered-switch-default -Wno-noexcept-type -Wnon-virtual-dtor -Wdelete-non-virtual-dtor -Wsuggest-override -Wstring-conversion -Wmisleading-indentation -Wctad-maybe-unsupported -fdiagnostics-color -O3 -DNDEBUG -std=c++23 -isysroot /Applications/Xcode-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX14.2.sdk -mmacosx-version-min=14.1 -fPIC -UNDEBUG -faligned-allocation -nostdinc++ -fvisibility-inlines-hidden -fvisibility=hidden -fsized-deallocation -Wall -Wextra -Wnewline-eof -Wshadow -Wwrite-strings -Wno-unused-parameter -Wno-long-long -Werror=return-type -Wextra-semi -Wundef -Wunused-template -Wformat-nonliteral -Wzero-length-array -Wdeprecated-redundant-constexpr-static-def -Wno-nullability-completeness -Wno-user-defined-literals -Wno-covered-switch-default -Wno-suggest-override -Wno-error -fdebug-prefix-map=/Users/ec2-user/jenkins/workspace/llvm.org/lldb-cmake-sanitized/lldb-build/include/c++/v1=/Users/ec2-user/jenkins/workspace/llvm.org/lldb-cmake-sanitized/llvm-project/libcxx/include -MD -MT libcxx/src/CMakeFiles/cxx_shared.dir/atomic.cpp.o -MF libcxx/src/CMakeFiles/cxx_shared.dir/atomic.cpp.o.d -o libcxx/src/CMakeFiles/cxx_shared.dir/atomic.cpp.o -c /Users/ec2-user/jenkins/workspace/llvm.org/lldb-cmake-sanitized/llvm-project/libcxx/src/atomic.cpp
06:48:56 /Users/ec2-user/jenkins/workspace/llvm.org/lldb-cmake-sanitized/llvm-project/libcxx/src/atomic.cpp:46:12: fatal error: 'os/os_sync_wait_on_address.h' file not found
06:48:56 46 | # include <os/os_sync_wait_on_address.h>
06:48:56 | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
06:48:56 1 error generated.
```
This is the configuration the failing bots are running:
```
06:25:12 + sw_vers
06:25:12 ProductName: macOS
06:25:12 ProductVersion: 14.1
06:25:12 BuildVersion: 23B74
06:25:12 + xcodebuild -version
06:25:12 Xcode 15.2
06:25:12 Build version 15C5500c
```
The Intel bots are building fine though. Probably because they're on a
newer OS where the headers are available?
```
10:03:35 + sw_vers
10:03:35 ProductName: macOS
10:03:35 ProductVersion: 15.1.1
10:03:35 BuildVersion: 24B91
10:03:35 + xcodebuild -version
10:03:39 Xcode 16.2
10:03:39 Build version 16C5031c
10:03:39 + cmake --version
10:03:39 cmake version 3.30.2
```
Commit: ae810dde5d83cc61a48b30ae7de36364215b4a24
https://github.com/llvm/llvm-project/commit/ae810dde5d83cc61a48b30ae7de36364215b4a24
Author: Min-Yih Hsu <min.hsu at sifive.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M llvm/include/llvm/Analysis/VectorUtils.h
M llvm/lib/Analysis/VectorUtils.cpp
M llvm/lib/CodeGen/InterleavedAccessPass.cpp
Log Message:
-----------
[IA][NFC] Factoring out helper functions that extract (de)interleaving factors (#148689)
Factoring out and combining `isInterleaveIntrinsic`,
`isDeinterleaveIntrinsic`, and `getIntrinsicFactor` into
`getInterleaveIntrinsicFactor` and `getDeinterleaveIntrinsicFactor`
inside VectorUtils.
NFC.
Commit: 5d59cb6ae2bfcd08f832fcaf5c34c22967d9fa8e
https://github.com/llvm/llvm-project/commit/5d59cb6ae2bfcd08f832fcaf5c34c22967d9fa8e
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/test/CodeGen/AArch64/arm64-zip.ll
M llvm/test/CodeGen/AArch64/combine-mul.ll
M llvm/test/CodeGen/AArch64/fast-isel-cmp-vec.ll
M llvm/test/CodeGen/AArch64/zext-to-tbl.ll
Log Message:
-----------
[AArch64] computeKnownBitsForTargetNode - add AArch64ISD::MOVIshift support (#148634)
Fixes #148596
Commit: db15c23a5734da141bf4d8b9fc16d193502a7f92
https://github.com/llvm/llvm-project/commit/db15c23a5734da141bf4d8b9fc16d193502a7f92
Author: Guy David <49722543+guy-david at users.noreply.github.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M llvm/include/module.modulemap
Log Message:
-----------
[DebugInfo][DWARF] Add DWARF/LowLevel to module.modulemap (#148693)
This ensures the generation of Attributes.inc when using
-DLLVM_ENABLE_MODULES=ON.
Commit: 641ff6db383d0730ae2587c86aa59b6b3cf8341d
https://github.com/llvm/llvm-project/commit/641ff6db383d0730ae2587c86aa59b6b3cf8341d
Author: Jeremy Morse <jeremy.morse at sony.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M clang/include/clang/Basic/CodeGenOptions.h
M clang/include/clang/Driver/Options.td
M clang/lib/CodeGen/CGDebugInfo.cpp
M clang/test/CodeGen/debug-info-file-checksum.c
Log Message:
-----------
[DebugInfo] Add option for producing no source-file hash (#148657)
Clang can chose which sort of source-file hash is attached to a DIFile
metadata node. However, whenever hashing is possible, we /always/ attach
a hash. This patch permits users who want DWARF5 but don't want the file
hashes to opt out, by adding a "none" option to the -gsrc-hash option
that skips hash computation.
Commit: 671072e830dace589f3b85d674c356e33330aa9a
https://github.com/llvm/llvm-project/commit/671072e830dace589f3b85d674c356e33330aa9a
Author: Ahmad Yasin <ahmad.yasin at apple.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
A llvm/test/Transforms/LoopUnroll/AArch64/vector.ll
Log Message:
-----------
[AArch64] Unrolling of loops with vector instructions. (#147420)
This patch permits loops with vector instructions to be unrolled.
Today there is an early exit in `getUnrollingPreferences()` of AArch64
targets if a vector instruction is observed in any of the loop blocks.
This patch fixes that so common loops like this one get a chance to be
unrolled:
void saxpy (float * dst, const float * src, const float a, const int
len) {
float32x4_t * vdst = (float32x4_t *)dst;
float32x4_t * vsrc = (float32x4_t *)src;
float32x4_t vk = vdupq_n_f32(a);
for (int i = 0; i < (len >> 2); i++)
{
vdst[i] = vaddq_f32(vdst[i], vmulq_f32(vsrc[i], vk));
}
}
Auto-vectorized loops are still not unrolled, unless they were not
interleaved when vectorized.
The provided test case shows the enhancement on top of runtime/partial
unrolling, depending on the CPU.
PR: https://github.com/llvm/llvm-project/pull/147420
Commit: 2edd4a25dd0bb4e5f49ce0d5ff8a95803ac88d27
https://github.com/llvm/llvm-project/commit/2edd4a25dd0bb4e5f49ce0d5ff8a95803ac88d27
Author: Haojian Wu <hokein.wu at gmail.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M clang/lib/Parse/ParseDecl.cpp
Log Message:
-----------
[clang] NFC, avoid create a new FunctionTypeInfo object in the function call.
FunctionTypeInfo is a large object, no need to create a new one for this case.
Commit: 08a8e1c6b62215bf0b410f297add76f4e3b068d7
https://github.com/llvm/llvm-project/commit/08a8e1c6b62215bf0b410f297add76f4e3b068d7
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineVectorOps.cpp
M llvm/test/Transforms/InstCombine/X86/blend_x86.ll
M llvm/test/Transforms/InstCombine/fold-shuffle-ext.ll
M llvm/test/Transforms/PhaseOrdering/X86/blendv-select.ll
Log Message:
-----------
[InstCombine] Move extends across identity shuffles. (#146901)
Add a new fold to instcombine to move SExt/ZExt across identity
shuffles, applying the cast after the shuffle. This sinks extends and
can enable more general additional folding of both shuffles (and
related instructions) and extends. If backends prefer splitting up doing
casts first, the extends can be hoisted again in VectorCombine for
example.
A larger example is included in the load_i32_zext_to_v4i32. The wider
extend is easier to compute an accurate cost for and targets (like
AArch64) can lower a single wider extend more efficiently than multiple
separate extends.
This is a generalization of a VectorCombine version
(https://github.com/llvm/llvm-project/pull/141109) as suggested by
@preames.
PR: https://github.com/llvm/llvm-project/pull/146901
Commit: 9d778089db1e1d44d5e70372b28c5524dbdfbf0c
https://github.com/llvm/llvm-project/commit/9d778089db1e1d44d5e70372b28c5524dbdfbf0c
Author: Abid Qadeer <haqadeer at amd.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
A mlir/test/Target/LLVMIR/omptarget-debug-target-task.mlir
Log Message:
-----------
[OMPIRBuilder] Don't use invalid debug loc in task proxy function. (#148284)
This is similar to https://github.com/llvm/llvm-project/pull/147950 but
for task proxy function.
Commit: f5b6b896de383113d243a413aa15684809618baa
https://github.com/llvm/llvm-project/commit/f5b6b896de383113d243a413aa15684809618baa
Author: Andrew Rogers <andrurogerz at gmail.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M llvm/include/llvm-c/DebugInfo.h
M llvm/include/llvm/DWARFCFIChecker/DWARFCFIAnalysis.h
M llvm/include/llvm/DWARFCFIChecker/DWARFCFIFunctionFrameAnalyzer.h
M llvm/include/llvm/DWARFCFIChecker/DWARFCFIFunctionFrameStreamer.h
M llvm/include/llvm/DWARFCFIChecker/DWARFCFIState.h
M llvm/include/llvm/Frontend/HLSL/RootSignatureValidations.h
M llvm/include/llvm/IR/RuntimeLibcalls.h
M llvm/include/llvm/Target/RegisterTargetPassConfigCallback.h
Log Message:
-----------
[llvm] annotate new symbols for DLL export (#148658)
## Purpose
This patch is one in a series of code-mods that annotate LLVM’s public
interface for export. This patch annotates symbols that were added to
LLVM in the last two weeks and were missed by previous code-mods. The
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).
## Overview
These changes were generated automatically using the [Interface
Definition Scanner (IDS)](https://github.com/compnerd/ids) tool,
followed formatting with `git clang-format`.
## Validation
Local builds and tests to validate cross-platform compatibility. This
included llvm, clang, and lldb on the following configurations:
- Windows with MSVC
- Windows with Clang
- Linux with GCC
- Linux with Clang
Commit: dadaa7941dfd1355569d8bee5d8e199db93364f5
https://github.com/llvm/llvm-project/commit/dadaa7941dfd1355569d8bee5d8e199db93364f5
Author: YongKang Zhu <yongzhu at fb.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M bolt/runtime/instr.cpp
Log Message:
-----------
[BOLT][instr] Add optional arguments to __bolt_instr_data_dump() (#148700)
`__bolt_instr_data_dump()` will find instrumented binary name by
iterating through entries under directory `/proc/self/map_files`,
and then open the binary and memory map it onto heap in order
to locate `.bolt.instr.tables` section to read the descriptions.
If binary name is already known and/or binary is already opened
as memory mapped, we can pass binary name and/or memory
buffer directly to `__bolt_instr_data_dump()` to save some work.
Commit: de31584001478d37f6dd645a864d160528979efe
https://github.com/llvm/llvm-project/commit/de31584001478d37f6dd645a864d160528979efe
Author: Peter Collingbourne <pcc at google.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M compiler-rt/cmake/Modules/AddCompilerRT.cmake
M compiler-rt/cmake/builtin-config-ix.cmake
M compiler-rt/lib/builtins/CMakeLists.txt
A compiler-rt/lib/builtins/aarch64/emupac.cpp
M compiler-rt/lib/builtins/int_types.h
A compiler-rt/test/builtins/Unit/aarch64/emupac.c
M llvm/utils/gn/secondary/compiler-rt/lib/builtins/BUILD.gn
M llvm/utils/gn/secondary/compiler-rt/lib/builtins/sources.gni
M llvm/utils/gn/secondary/compiler-rt/test/builtins/BUILD.gn
Log Message:
-----------
Reapply "compiler-rt: Introduce runtime functions for emulated PAC."
This reverts commit 0c0aa56cdcf1fe3970a5f3875db412530512fc07.
This time with the following fixes for buildbot failures:
- Add underscore prefixes to symbol names on Apple platforms.
- Modify the test so that it skips the crash tests on platforms where
they are not expected to pass:
- Platforms that implement FEAT_PAuth but not FEAT_FPAC (e.g.
Apple M1, Cortex-A78C)
- Platforms where DA key is disabled (e.g. older Linux kernels,
Linux kernels with PAC disabled, likely Windows)
Original commit message follows:
The emulated PAC runtime functions emulate the ARMv8.3a pointer
authentication instructions and are intended for use in heterogeneous
testing environments. For more information, see the associated RFC:
https://discourse.llvm.org/t/rfc-emulated-pac/85557
Reviewers: mstorsjo, pawosm-arm, atrosinenko
Reviewed By: atrosinenko
Pull Request: https://github.com/llvm/llvm-project/pull/148094
Commit: 455105f1c67ccb625a1dccbf55cc2266bf9eaba2
https://github.com/llvm/llvm-project/commit/455105f1c67ccb625a1dccbf55cc2266bf9eaba2
Author: Keith Smiley <keithbsmiley at gmail.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M clang-tools-extra/clang-tidy/tool/ClangTidyMain.cpp
Log Message:
-----------
[clang-tidy] Improve --verify-config documentation (#148699)
Previously it wasn't clear that passing this disables otherwise running
clang-tidy.
Commit: a73aa721d65a82a37cdb7d8bba7bae748cd27907
https://github.com/llvm/llvm-project/commit/a73aa721d65a82a37cdb7d8bba7bae748cd27907
Author: Kazu Hirata <kazu at google.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M llvm/lib/Analysis/IR2Vec.cpp
Log Message:
-----------
[Analysis] Fix a warning
This patch fixes:
llvm/lib/Analysis/IR2Vec.cpp:280:3: error: default label in switch
which covers all enumeration values
[-Werror,-Wcovered-switch-default]
Commit: 5a4586f468344da04c904fefbba788a854bb319e
https://github.com/llvm/llvm-project/commit/5a4586f468344da04c904fefbba788a854bb319e
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M llvm/lib/Analysis/LoopAccessAnalysis.cpp
M llvm/test/Analysis/LoopAccessAnalysis/accesses-completely-before-or-after.ll
M llvm/test/Analysis/LoopAccessAnalysis/depend_diff_types.ll
M llvm/test/Analysis/LoopAccessAnalysis/different_strides.ll
M llvm/test/Analysis/LoopAccessAnalysis/non-constant-strides-backward.ll
M llvm/test/Transforms/LoopVectorize/global_alias.ll
Log Message:
-----------
Reapply "[LAA] Remove loop-invariant check added in 234cc40adc61."
This reverts commit d43a80936d437d217d5a6dbbaa5fb131c27e7085.
With the correctness issue blocking the recommit finally fixed
(5d01697ec6cb), again unconditionally check if accesses are completely
before or after each other.
Commit: d7ec80c8972a6633841b69476ef60d32cff4f271
https://github.com/llvm/llvm-project/commit/d7ec80c8972a6633841b69476ef60d32cff4f271
Author: Shilei Tian <i at tianshilei.me>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M clang/include/clang/Basic/BuiltinsAMDGPU.def
M clang/lib/CodeGen/TargetBuiltins/AMDGPU.cpp
M clang/test/CodeGenOpenCL/amdgpu-features.cl
M clang/test/CodeGenOpenCL/builtins-amdgcn-gfx1250.cl
M llvm/include/llvm/IR/IntrinsicsAMDGPU.td
M llvm/lib/Target/AMDGPU/AMDGPU.td
M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp
M llvm/lib/Target/AMDGPU/AMDGPUInstCombineIntrinsic.cpp
M llvm/lib/Target/AMDGPU/AMDGPURegisterBankInfo.cpp
M llvm/lib/Target/AMDGPU/AMDGPUSubtarget.h
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
M llvm/lib/Target/AMDGPU/SIInstrInfo.td
M llvm/lib/Target/AMDGPU/VOP1Instructions.td
M llvm/lib/TargetParser/TargetParser.cpp
A llvm/test/CodeGen/AMDGPU/llvm.amdgcn.tanh.ll
M llvm/test/MC/AMDGPU/gfx1250_asm_vop1-fake16.s
M llvm/test/MC/AMDGPU/gfx1250_asm_vop1.s
M llvm/test/MC/AMDGPU/gfx1250_asm_vop1_dpp16-fake16.s
M llvm/test/MC/AMDGPU/gfx1250_asm_vop1_dpp16.s
M llvm/test/MC/AMDGPU/gfx1250_asm_vop1_dpp8-fake16.s
M llvm/test/MC/AMDGPU/gfx1250_asm_vop1_dpp8.s
M llvm/test/MC/AMDGPU/gfx1250_asm_vop3_from_vop1-fake16.s
M llvm/test/MC/AMDGPU/gfx1250_asm_vop3_from_vop1.s
M llvm/test/MC/AMDGPU/gfx1250_asm_vop3_from_vop1_dpp16-fake16.s
M llvm/test/MC/AMDGPU/gfx1250_asm_vop3_from_vop1_dpp16.s
M llvm/test/MC/AMDGPU/gfx1250_asm_vop3_from_vop1_dpp8-fake16.s
M llvm/test/MC/AMDGPU/gfx1250_asm_vop3_from_vop1_dpp8.s
M llvm/test/MC/Disassembler/AMDGPU/gfx1250_dasm_vop1.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx1250_dasm_vop1_dpp16.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx1250_dasm_vop1_dpp8.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx1250_dasm_vop3_from_vop1.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx1250_dasm_vop3_from_vop1_dpp16.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx1250_dasm_vop3_from_vop1_dpp8.txt
Log Message:
-----------
[AMDGPU] Add support for `v_tanh_bf16` on gfx1250 (#147425)
Co-authored-by: Mekhanoshin, Stanislav <Stanislav.Mekhanoshin at amd.com>
Commit: 711132dfa43211bce312db01a473aed51bae7b8c
https://github.com/llvm/llvm-project/commit/711132dfa43211bce312db01a473aed51bae7b8c
Author: Uzair Nawaz <uzairnawaz at google.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M libc/config/linux/x86_64/entrypoints.txt
M libc/include/wchar.yaml
M libc/src/wchar/CMakeLists.txt
A libc/src/wchar/wcstol.cpp
A libc/src/wchar/wcstol.h
A libc/src/wchar/wcstoll.cpp
A libc/src/wchar/wcstoll.h
A libc/src/wchar/wcstoul.cpp
A libc/src/wchar/wcstoul.h
A libc/src/wchar/wcstoull.cpp
A libc/src/wchar/wcstoull.h
M libc/test/src/wchar/CMakeLists.txt
A libc/test/src/wchar/WcstolTest.h
A libc/test/src/wchar/wcstol_test.cpp
A libc/test/src/wchar/wcstoll_test.cpp
A libc/test/src/wchar/wcstoul_test.cpp
A libc/test/src/wchar/wcstoull_test.cpp
Log Message:
-----------
[libc] Implement widechar to integer public functions (#148683)
Implement public wchar -> integer public functions using templated
internal wcs_to_integer function
Commit: c4fc35815695bc2170be9ffc5a04985f62ff3a1e
https://github.com/llvm/llvm-project/commit/c4fc35815695bc2170be9ffc5a04985f62ff3a1e
Author: Razvan Lupusoru <razvan.lupusoru at gmail.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
R flang/include/flang/Optimizer/OpenACC/FIROpenACCTypeInterfaces.h
R flang/include/flang/Optimizer/OpenACC/RegisterOpenACCExtensions.h
A flang/include/flang/Optimizer/OpenACC/Support/FIROpenACCTypeInterfaces.h
A flang/include/flang/Optimizer/OpenACC/Support/RegisterOpenACCExtensions.h
M flang/include/flang/Optimizer/Support/InitFIR.h
M flang/lib/Optimizer/CodeGen/LowerRepackArrays.cpp
M flang/lib/Optimizer/OpenACC/CMakeLists.txt
R flang/lib/Optimizer/OpenACC/FIROpenACCAttributes.cpp
R flang/lib/Optimizer/OpenACC/FIROpenACCTypeInterfaces.cpp
R flang/lib/Optimizer/OpenACC/RegisterOpenACCExtensions.cpp
A flang/lib/Optimizer/OpenACC/Support/CMakeLists.txt
A flang/lib/Optimizer/OpenACC/Support/FIROpenACCAttributes.cpp
A flang/lib/Optimizer/OpenACC/Support/FIROpenACCTypeInterfaces.cpp
A flang/lib/Optimizer/OpenACC/Support/RegisterOpenACCExtensions.cpp
Log Message:
-----------
[flang][acc][nfc] Move FIROpenACCSupport to Support subfolder (#148710)
In order to prepare for adding FIROpenACCTransforms, move the FIR
OpenACC support library to its own subfolder.
Commit: 19b2dd9d798c124406b0124a1b8debb711675281
https://github.com/llvm/llvm-project/commit/19b2dd9d798c124406b0124a1b8debb711675281
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVOptWInstrs.cpp
Log Message:
-----------
[RISCV] Use emplace_back instead of push_back+make_pair. NFC (#148711)
Commit: ada514b0af120e92b4d94653f8e272d6cec9f321
https://github.com/llvm/llvm-project/commit/ada514b0af120e92b4d94653f8e272d6cec9f321
Author: Susan Tan (ス-ザン タン) <zujunt at nvidia.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M flang/docs/OpenACC.md
Log Message:
-----------
[flang][acc][NFC] Add deviation to the spec that declaring the same variable is permitted (#148288)
OpenACC spec says `A var may appear at most once in all the clauses of
declare directives for a function, subroutine, program, or module.` but
our implementation allows it with a warning generated. Add this to the
diviation list for record.
Commit: 2464313eef01c5b1edf0eccf57a32cdee01472c7
https://github.com/llvm/llvm-project/commit/2464313eef01c5b1edf0eccf57a32cdee01472c7
Author: Igor Kudrin <ikudrin at accesssoftek.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M clang/lib/Sema/AnalysisBasedWarnings.cpp
A clang/test/SemaCXX/warn-no-sometimes-uninitialized.cpp
Log Message:
-----------
[clang] Fix suppressing diagnostics for uninitialized variables (#148336)
When one kind of diagnostics is disabled, this should not preclude other
diagnostics from displaying, even if they have lower priority. For
example, this should print a warning about passing an uninitialized
variable as a const reference:
```
> cat test.cpp
void foo(const int &);
int f(bool a) {
int v;
if (a) {
foo(v);
v = 5;
}
return v;
}
> clang test.cpp -fsyntax-only -Wuninitialized -Wno-sometimes-uninitialized
```
Commit: 92ef8e3419ee316089501a79446151c895902681
https://github.com/llvm/llvm-project/commit/92ef8e3419ee316089501a79446151c895902681
Author: Victor Chernyakin <chernyakin.victor.j at outlook.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M clang-tools-extra/clang-tidy/cppcoreguidelines/InterfacesGlobalInitCheck.cpp
M clang-tools-extra/docs/ReleaseNotes.rst
M clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/interfaces-global-init.cpp
Log Message:
-----------
[clang-tidy] Teach `cppcoreguidelines-interfaces-global-init` about `constinit` (#148334)
This check already understands how `constexpr` makes initialization
order problems impossible, and C++20's `constinit` provides the exact
same guarantees.
Commit: 40ceaf1d995c22a3fab3e1c5df4651cf7d1e895c
https://github.com/llvm/llvm-project/commit/40ceaf1d995c22a3fab3e1c5df4651cf7d1e895c
Author: Peter Klausler <pklausler at nvidia.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M flang-rt/include/flang-rt/runtime/work-queue.h
Log Message:
-----------
[flang][runtime] Fix bad instance of std::optional in runtime (#148724)
The runtime needs to use common::optional, not std::optional.
Commit: 45fa0b29bc33ca6619543139792fa38204df2731
https://github.com/llvm/llvm-project/commit/45fa0b29bc33ca6619543139792fa38204df2731
Author: Abid Qadeer <haqadeer at amd.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
R mlir/test/Target/LLVMIR/omptarget-debug-target-task.mlir
Log Message:
-----------
Revert "[OMPIRBuilder] Don't use invalid debug loc in task proxy function." (#148728)
There is a sanitizer fail in CI after this which I need to investigate.
Reverting for now.
Reverts llvm/llvm-project#148284
Commit: 834591e062d27db2b66aa37aef2e917e0af1e6ff
https://github.com/llvm/llvm-project/commit/834591e062d27db2b66aa37aef2e917e0af1e6ff
Author: Nishant Patel <nishant.b.patel at intel.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M mlir/lib/Dialect/Vector/Transforms/VectorLinearize.cpp
M mlir/test/Dialect/Vector/linearize.mlir
Log Message:
-----------
[MLIR] [Vector] Linearization patterns for vector.load and vector.store (#145115)
This PR add inearizarion pattern for vector.load and vector.store. It is
follow up PR to
https://github.com/llvm/llvm-project/pull/143420#issuecomment-2967406606
Commit: 0d5325bb203fe92c75f47b473d1f77d9d4f4a5d0
https://github.com/llvm/llvm-project/commit/0d5325bb203fe92c75f47b473d1f77d9d4f4a5d0
Author: Amir Ayupov <aaupov at fb.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M bolt/lib/Core/BinaryFunctionCallGraph.cpp
Log Message:
-----------
[BOLT] Directly use call count in buildCallGraph (#134966)
In call graph construction, call block count is used for call graph edge
weight. Change that to use call count directly if it's available,
falling back to block count if not.
Test Plan:
This change together with disabling `fix-block-counts` improves profile
quality metrics, e.g. for large binaries and sampled LBR profiles:
`br_inst_retired.near_taken:uppp` trigger event
- Ads1:
- Profiled functions 58096
- CFG imbalance 2.63% -> 2.45%
- CG imbalance 8.23% -> 7.44%
- Ads2:
- Profiled functions 54358
- CFG imbalance 3.12% -> 2.77%
- CG imbalance 8.22% -> 7.06%
- uwsgi:
- Profiled functions 78103
- CFG imbalance 4.42% -> 4.03%
- CG imbalance 100.00% -> 100.00%
`cycles:u` trigger event:
- web:
- Profiled functions 31306
- CG flow imbalance: 31.16% -> 20.29%
- CFG flow imbalance: 7.04% -> 6.44%
Commit: 4b52d221a09b71c9dc0c0bb842ec706de663167c
https://github.com/llvm/llvm-project/commit/4b52d221a09b71c9dc0c0bb842ec706de663167c
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M llvm/lib/Support/BLAKE3/llvm_blake3_prefix.h
Log Message:
-----------
[Support][BLAKE3] Prefix blake3_xof_many_avx512 (#148607)
This symbol was introduced in #147948, but not prefixed, resulting in
conflicts if libblake3 and LLVM are both linked statically into the same
binary.
Commit: 13b720d255c48c67606fddeaf4abb1d496945c81
https://github.com/llvm/llvm-project/commit/13b720d255c48c67606fddeaf4abb1d496945c81
Author: Daniel Paoliello <danpao at microsoft.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M llvm/lib/Target/X86/X86FrameLowering.cpp
A llvm/test/CodeGen/WinEH/wineh-reuse-catch-alloca.ll
Log Message:
-----------
[win][x64] Re-use fixed object if multiple catchpads use the same alloca for their catch objects (#147849)
Addresses
<https://github.com/llvm/llvm-project/pull/147421#discussion_r2191234968>
for x86
If more than one `catchpad ` uses the same `alloca` for their catch
objects, then we will allocate more than one object in the fixed area
resulting in wasted stack space.
As a follow up, Clang could be updated to re-use the same `alloca` for
all by-reference and by-pointer catch objects.
Commit: 027f5ba24ecef88489913d41a54b44bb8df6f71e
https://github.com/llvm/llvm-project/commit/027f5ba24ecef88489913d41a54b44bb8df6f71e
Author: Daniel Paoliello <danpao at microsoft.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M llvm/test/CodeGen/WinEH/lit.local.cfg
M llvm/test/CodeGen/WinEH/wineh-cloning.ll
M llvm/test/CodeGen/WinEH/wineh-demotion.ll
M llvm/test/CodeGen/WinEH/wineh-empty-seh-scope.ll
M llvm/test/CodeGen/WinEH/wineh-nested-unwind.ll
M llvm/test/CodeGen/WinEH/wineh-no-demotion.ll
M llvm/test/CodeGen/WinEH/wineh-noret-cleanup.ll
Log Message:
-----------
[win][aarch64] Enable the llvm/test/CodeGen/WinEH tests for AArch64 (#147860)
Enabled AArch64 runs for these tests where it made sense.
Also removed the "temporary" suffixes filter that was added over 10
years ago, I believe the "misched-copy.s output file" has been cleaned
from the runners by now...
Commit: 99875733fce0c6c72c50244ceaffe0cc5e1fa277
https://github.com/llvm/llvm-project/commit/99875733fce0c6c72c50244ceaffe0cc5e1fa277
Author: James Newling <james.newling at gmail.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M mlir/lib/Dialect/Arith/Transforms/EmulateUnsupportedFloats.cpp
M mlir/lib/Dialect/NVGPU/TransformOps/NVGPUTransformOps.cpp
M mlir/lib/Dialect/XeGPU/Transforms/XeGPUUnroll.cpp
M mlir/test/Dialect/NVGPU/transform-matmul-to-nvvm.mlir
Log Message:
-----------
[mlir][vector] Use vector.broadcast in place of vector.splat (#148028)
Part of deprecation of vector.splat
RFC:
https://discourse.llvm.org/t/rfc-mlir-vector-deprecate-then-remove-vector-splat/87143/4
More complete deprecation:
https://github.com/llvm/llvm-project/pull/147818
Commit: 633728f3b5e71aa998a894de294bbd6e49b9a5e5
https://github.com/llvm/llvm-project/commit/633728f3b5e71aa998a894de294bbd6e49b9a5e5
Author: Rahul Joshi <rjoshi at nvidia.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M llvm/utils/TableGen/DecoderEmitter.cpp
Log Message:
-----------
[NFC][TableGen][DecoderEmitter] Eliminate `indent` for a few functions (#148718)
Eliminate the `indent` argument for functions which are always called
with `indent(0)`.
Commit: 5277021c3c75a19a3db5e097e4b4e73eeb1f8ffa
https://github.com/llvm/llvm-project/commit/5277021c3c75a19a3db5e097e4b4e73eeb1f8ffa
Author: Stanislav Mekhanoshin <rampitec at users.noreply.github.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp
M llvm/lib/Target/AMDGPU/VOP2Instructions.td
M llvm/test/CodeGen/AMDGPU/fma.f64.ll
M llvm/test/MC/AMDGPU/gfx1250_asm_vop2.s
M llvm/test/MC/Disassembler/AMDGPU/gfx1250_dasm_vop2.txt
Log Message:
-----------
[AMDGPU] Add gfx1250 v_fmac_f64 implementation (#148725)
Commit: 244ebef1ddbc6a77f17c36562d4a4292654940a6
https://github.com/llvm/llvm-project/commit/244ebef1ddbc6a77f17c36562d4a4292654940a6
Author: Charitha Saumya <136391709+charithaintc at users.noreply.github.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M mlir/lib/Dialect/Vector/Transforms/VectorDistribute.cpp
M mlir/lib/Dialect/XeGPU/Transforms/XeGPUSubgroupDistribute.cpp
M mlir/test/Dialect/Vector/vector-warp-distribute.mlir
Log Message:
-----------
Reapply [mlir][vector] Refactor WarpOpScfForOp to support unused or swapped forOp results. (#148313)
Reapply attempt for : https://github.com/llvm/llvm-project/pull/148291
Fix for the build failure reported in :
https://lab.llvm.org/buildbot/#/builders/116/builds/15477
-----
This crash is caused by mismatch of distributed type returned by
`getDistributedType` and intended distributed type for forOp results.
Solution diff:
https://github.com/llvm/llvm-project/commit/20c2cf67662c3b3fdecf95a0e280809f98d8db50
Example:
```
func.func @warp_scf_for_broadcasted_result(%arg0: index) -> vector<1xf32> {
%c128 = arith.constant 128 : index
%c1 = arith.constant 1 : index
%c0 = arith.constant 0 : index
%2 = gpu.warp_execute_on_lane_0(%arg0)[32] -> (vector<1xf32>) {
%ini = "some_def"() : () -> (vector<1xf32>)
%0 = scf.for %arg3 = %c0 to %c128 step %c1 iter_args(%arg4 = %ini) -> (vector<1xf32>) {
%1 = "some_op"(%arg4) : (vector<1xf32>) -> (vector<1xf32>)
scf.yield %1 : vector<1xf32>
}
gpu.yield %0 : vector<1xf32>
}
return %2 : vector<1xf32>
}
```
In this case the distributed type for forOp result is `vector<1xf32>`
(result is not distributed and broadcasted to all lanes instead).
However, in this case `getDistributedType` will return NULL type.
Therefore, if the distributed type can be recovered from warpOp, we
should always do that first before using `getDistributedType`
Commit: 00dacf8c22f065cb52efb14cd091d441f19b319e
https://github.com/llvm/llvm-project/commit/00dacf8c22f065cb52efb14cd091d441f19b319e
Author: Igor Kudrin <ikudrin at accesssoftek.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M clang/include/clang/Analysis/Analyses/UninitializedValues.h
M clang/include/clang/Basic/DiagnosticGroups.td
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/lib/Analysis/UninitializedValues.cpp
M clang/lib/Sema/AnalysisBasedWarnings.cpp
M clang/test/Misc/warning-wall.c
A clang/test/SemaCXX/warn-uninitialized-const-pointer.cpp
M libcxx/test/std/input.output/iostream.format/output.streams/ostream.formatted/ostream.inserters.arithmetic/pointer.pass.cpp
M libcxx/test/std/input.output/iostream.format/output.streams/ostream.formatted/ostream.inserters.arithmetic/pointer.volatile.pass.cpp
Log Message:
-----------
[clang] Add -Wuninitialized-const-pointer (#148337)
This option is similar to -Wuninitialized-const-reference, but diagnoses
the passing of an uninitialized value via a const pointer, like in the
following code:
```
void foo(const int *);
void test() {
int v;
foo(&v);
}
```
This is an extract from #147221 as suggested in [this
comment](https://github.com/llvm/llvm-project/pull/147221#discussion_r2190998730).
Commit: 56a4f8d8c149a35b73e795a427238182d5284aae
https://github.com/llvm/llvm-project/commit/56a4f8d8c149a35b73e795a427238182d5284aae
Author: Uzair Nawaz <uzairnawaz at google.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M libc/src/__support/CMakeLists.txt
M libc/src/__support/wchar/CMakeLists.txt
M libc/src/__support/wchar/character_converter.cpp
M libc/src/__support/wchar/character_converter.h
A libc/src/__support/wchar/string_converter.h
M libc/test/src/__support/wchar/CMakeLists.txt
A libc/test/src/__support/wchar/string_converter_test.cpp
Log Message:
-----------
[libc] Wchar Stringconverter (#146388)
Implemented a string converter class to encapsulate the logic of
converting between utf8 <-> utf32
Commit: a32040e483f4fb53031b390c66722ac27d839023
https://github.com/llvm/llvm-project/commit/a32040e483f4fb53031b390c66722ac27d839023
Author: Stanislav Mekhanoshin <rampitec at users.noreply.github.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
M llvm/lib/Target/AMDGPU/SIShrinkInstructions.cpp
M llvm/test/CodeGen/AMDGPU/code-size-estimate.ll
A llvm/test/CodeGen/AMDGPU/literal64.ll
Log Message:
-----------
[AMDGPU] Use 64-bit literals in codegen on gfx1250 (#148727)
Commit: ad9a9537e6222853da3966abd978548f0b62eab8
https://github.com/llvm/llvm-project/commit/ad9a9537e6222853da3966abd978548f0b62eab8
Author: Igor Kudrin <ikudrin at accesssoftek.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M clang/lib/Analysis/UninitializedValues.cpp
M clang/test/SemaCXX/uninitialized.cpp
Log Message:
-----------
[clang] Fix -Wuninitialized for values passed by const pointers (#147221)
This enables producing a "variable is uninitialized" warning when a
value is passed to a pointer-to-const argument:
```
void foo(const int *);
void test() {
int *v;
foo(v);
}
```
Fixes #37460
Commit: 085e8f1e520b91f5ed40e5b09f458bb2c4d7c0e0
https://github.com/llvm/llvm-project/commit/085e8f1e520b91f5ed40e5b09f458bb2c4d7c0e0
Author: Sudharsan Veeravalli <quic_svs at quicinc.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfoXqci.td
M llvm/test/MC/RISCV/xqcilia-valid.s
M llvm/utils/TableGen/CompressInstEmitter.cpp
Log Message:
-----------
[RISCV] Relax destination instruction dag operand matching in CompresInstEmitter (#148660)
We have some 48-bit instructions in the `Xqci` spec that currently
cannot be compressed to their 32-bit variants due to the constraint in
`CompressInstEmitter` on destination instruction operands not being
allowed to mismatch with the DAG operands.
For eg. the` QC_E_ADDI` instruction can be compressed to the `ADDI`
instruction when the immediate is signed-12 bit but this is currently
not possible since the `QC_E_ADDI` instruction has `GPRNoX0` register
operands while the `ADDI` instruction has `GPR` register operands
leading to an operand type validation error.
I think we can remove the check that only source instruction operands
can mismatch with the corresponding DAG operands and rely on the fact
that we check if the DAG register operand type is a subclass of the
instruction register operand type.
Commit: d1db176e82fa02188471ca014582016b0b1ace7b
https://github.com/llvm/llvm-project/commit/d1db176e82fa02188471ca014582016b0b1ace7b
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/lib/IR/RuntimeLibcalls.cpp
Log Message:
-----------
ARM: Stop setting sincos_stret calling convention (#147457)
This was going out of its way to explicitly mark these as
ARM_AAPCS_VFP. This has been explicitly set since 8b40366b54bd4,
where the commit message states that "sincos" (not sincos_stret)
has a special calling convention. However, that commit also sets
the calling convention for all libcalls to ARM_AAPCS_VFP, and
getEffectiveCallingConv returns the same for CCC anyway in tests
using isWatchABI triples.
The net result of this appears to be a change in behavior when
using -float-abi=soft with isWatchABI, which have no tests so
I assume this is a theoretical combination.
If I assert
```
if (getTargetMachine().getTargetTriple().isWatchABI()) {
assert(!useSoftFloat());
assert(getEffectiveCallingConv(CallingConv::C, false) == CallingConv::ARM_AAPCS_VFP);
}
```
Only 2 tests fail the second condition, which look like copy paste
accidents
using v7k triples with linux and only needed a filler triple. This is a
consequence
of strangely using the target architecture in place of the OS ABI check,
as was done in 042a6c1fe19caf48af7e287dc8f6fd5fec158093
Commit: 8ae8b50d360431c748bf2ebb18b4105968bcb76b
https://github.com/llvm/llvm-project/commit/8ae8b50d360431c748bf2ebb18b4105968bcb76b
Author: S. VenkataKeerthy <31350914+svkeerthy at users.noreply.github.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M llvm/include/llvm/Analysis/IR2Vec.h
M llvm/lib/Analysis/IR2Vec.cpp
Log Message:
-----------
[NFC][IR2Vec] Minor refactoring of opcode access in vocabulary (#147585)
Refactored IR2Vec vocabulary handling to improve code organization and error handling. This would help in upcoming PRs related to the IR2Vec tool.
(Tracking issue - #141817)
Commit: ec90786ad1da16b655de11bc9590773fdc0e72a0
https://github.com/llvm/llvm-project/commit/ec90786ad1da16b655de11bc9590773fdc0e72a0
Author: S. VenkataKeerthy <31350914+svkeerthy at users.noreply.github.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M llvm/include/llvm/Analysis/IR2Vec.h
M llvm/lib/Analysis/IR2Vec.cpp
Log Message:
-----------
[NFC][IR2Vec] Exposing helpers in IR2Vec Vocabulary (#147841)
Minor refactoring IR2Vec vocabulary. This would help in upcoming PRs related to the IR2Vec tool.
(Tracking issue - #141817)
Commit: 352215c6eb291a20f62e7744dc2f7e4a6de46f8d
https://github.com/llvm/llvm-project/commit/352215c6eb291a20f62e7744dc2f7e4a6de46f8d
Author: Deric C. <cheung.deric at gmail.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M llvm/lib/Target/DirectX/DXILFlattenArrays.cpp
M llvm/test/CodeGen/DirectX/flatten-array.ll
M llvm/test/CodeGen/DirectX/flatten-bug-117273.ll
M llvm/test/CodeGen/DirectX/llc-vector-load-scalarize.ll
M llvm/test/CodeGen/DirectX/scalar-bug-117273.ll
M llvm/test/CodeGen/DirectX/scalarize-alloca.ll
Log Message:
-----------
[DirectX] Simplify and correct the flattening of GEPs in DXILFlattenArrays (#146173)
In tandem with #146800, this PR fixes #145370
This PR simplifies the logic for collapsing GEP chains and replacing
GEPs to multidimensional arrays with GEPs to flattened arrays. This
implementation avoids unnecessary recursion and more robustly computes
the index to the flattened array by using the GEPOperator's
collectOffset function, which has the side effect of allowing "i8 GEPs"
and other types of GEPs to be handled naturally in the flattening /
collapsing of GEP chains.
Furthermore, a handful of LLVM DirectX CodeGen tests have been edited to
fix incorrect GEP offsets, mismatched types (e.g., loading i32s from a
an array of floats), and typos.
Commit: 6b7c6fd8b450d1577a11fb979192a4f84b6d0b6e
https://github.com/llvm/llvm-project/commit/6b7c6fd8b450d1577a11fb979192a4f84b6d0b6e
Author: Haohai Wen <haohai.wen at intel.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/lib/MC/MCAsmStreamer.cpp
Log Message:
-----------
[PseudoProbe] use print to emit function name (#147873)
This PR is part of #123870.
For COFF Asm, function name should be wrapped in quotes.
MCSymbol::print will automatically do that.
Commit: f07107337fc163d45265d04e92a974c481ad8653
https://github.com/llvm/llvm-project/commit/f07107337fc163d45265d04e92a974c481ad8653
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
Log Message:
-----------
[DAGCombiner] Pass SDNodeFlags to getSelect instead of modifying the node returned. (#148733)
Commit: 43206d1b2ece9894ecacd8ed0cc76b853b17cd7d
https://github.com/llvm/llvm-project/commit/43206d1b2ece9894ecacd8ed0cc76b853b17cd7d
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
A llvm/test/CodeGen/Hexagon/llvm.exp10.ll
Log Message:
-----------
Hexagon: Add test for llvm.exp10 intrinsic (#148664)
This is mostly to test the libcall behavior
Commit: ee5b9369cd4a75b7bacd7e4eefffe15c9ebfc44e
https://github.com/llvm/llvm-project/commit/ee5b9369cd4a75b7bacd7e4eefffe15c9ebfc44e
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
A llvm/test/CodeGen/Hexagon/llvm.frexp.ll
Log Message:
-----------
Hexagon: Add frexp intrinsic test (#148671)
Commit: 49d2b5f1cd597a0612830819399effcd21d724a7
https://github.com/llvm/llvm-project/commit/49d2b5f1cd597a0612830819399effcd21d724a7
Author: Konstantin Varlamov <varconsteq at gmail.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M libcxx/include/CMakeLists.txt
M libcxx/include/__configuration/availability.h
A libcxx/include/__log_hardening_failure
M libcxx/include/module.modulemap.in
M libcxx/lib/abi/CHANGELOG.TXT
M libcxx/lib/abi/arm64-apple-darwin.libcxxabi.v1.stable.exceptions.nonew.abilist
M libcxx/lib/abi/i686-linux-android21.libcxxabi.v1.stable.exceptions.nonew.abilist
M libcxx/lib/abi/powerpc-ibm-aix.libcxxabi.v1.stable.exceptions.nonew.abilist
M libcxx/lib/abi/powerpc64-ibm-aix.libcxxabi.v1.stable.exceptions.nonew.abilist
M libcxx/lib/abi/x86_64-apple-darwin.libcxxabi.v1.stable.exceptions.nonew.abilist
M libcxx/lib/abi/x86_64-linux-android21.libcxxabi.v1.stable.exceptions.nonew.abilist
M libcxx/lib/abi/x86_64-unknown-freebsd.libcxxabi.v1.stable.exceptions.nonew.abilist
M libcxx/lib/abi/x86_64-unknown-linux-gnu.libcxxabi.v1.stable.exceptions.nonew.abilist
M libcxx/lib/abi/x86_64-unknown-linux-gnu.libcxxabi.v1.stable.noexceptions.nonew.abilist
M libcxx/src/CMakeLists.txt
A libcxx/src/log_hardening_failure.cpp
A libcxx/test/libcxx/assertions/log_hardening_failure.pass.cpp
M libcxx/utils/libcxx/test/features.py
Log Message:
-----------
[libc++][hardening] Introduce a dylib function to log hardening errors. (#148266)
Unlike `verbose_abort`, this function merely logs the error but does not
terminate execution. It is intended to make it possible to implement the
`observe` semantic for Hardening.
Commit: 5eecec8e81ec01444bae0232a43f6619ab4274c4
https://github.com/llvm/llvm-project/commit/5eecec8e81ec01444bae0232a43f6619ab4274c4
Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M flang/include/flang/Common/format.h
Log Message:
-----------
[flang] Fix use of __has_builtin and formatting (#148746)
`__has_builtin` is not available on all compilers. Make sure it works
when not defined.
Also fix some formatting issues:
- Use brace initialization where possible
- Fix wrong capitalization of variables.
- Add `std::` for `unit64_t` and `int64_t` as it is mostly done in this
part of the codebase.
Commit: 2c6771889a7bc96c0f7010214c5e1e87d86a7bf1
https://github.com/llvm/llvm-project/commit/2c6771889a7bc96c0f7010214c5e1e87d86a7bf1
Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M flang-rt/lib/cuda/descriptor.cpp
M flang-rt/unittests/Runtime/CUDA/AllocatorCUF.cpp
M flang/include/flang/Optimizer/Builder/Runtime/CUDA/Descriptor.h
M flang/include/flang/Optimizer/Dialect/CUF/CUFOps.td
M flang/include/flang/Runtime/CUDA/descriptor.h
M flang/lib/Optimizer/Builder/Runtime/CUDA/Descriptor.cpp
M flang/lib/Optimizer/Dialect/CUF/CUFOps.cpp
M flang/lib/Optimizer/Transforms/CUFOpConversion.cpp
M flang/test/Fir/CUDA/cuda-alloc-free.fir
Log Message:
-----------
[flang][cuda] Introduce cuf.set_allocator_idx operation (#148717)
Commit: cbba8f0acb537be00f649a640e98f8c92692fe9b
https://github.com/llvm/llvm-project/commit/cbba8f0acb537be00f649a640e98f8c92692fe9b
Author: Stanislav Mekhanoshin <rampitec at users.noreply.github.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
M llvm/lib/Target/AMDGPU/SIShrinkInstructions.cpp
M llvm/test/CodeGen/AMDGPU/literal64.ll
M llvm/test/CodeGen/AMDGPU/peephole-fold-imm.mir
A llvm/test/CodeGen/AMDGPU/shrink-fma-f64.mir
M llvm/test/CodeGen/AMDGPU/twoaddr-fma-f64.mir
Log Message:
-----------
[AMDGPU] Codegen support for v_fmaak_f64/f_fmamk_f64 (#148734)
Commit: 22707fd4a594a1b00cc68893dd1887c8971b4c98
https://github.com/llvm/llvm-project/commit/22707fd4a594a1b00cc68893dd1887c8971b4c98
Author: Jim Lin <jim at andestech.com>
Date: 2025-07-15 (Tue, 15 Jul 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
M llvm/unittests/TargetParser/RISCVISAInfoTest.cpp
Log Message:
-----------
[RISCV] Add Andes XAndesBFHCvt (Andes Scalar BFLOAT16) extension (#148563)
The spec can be found at:
https://github.com/andestech/andes-v5-isa/releases/tag/ast-v5_4_0-release.
The extension includes only two instructions: one for converting from
f32 to f16, and another for converting from f16 to f32.
This patch only implements MC support for XAndesBFHCvt.
Commit: 7ba0c98265977651540c64795b244166af329ca8
https://github.com/llvm/llvm-project/commit/7ba0c98265977651540c64795b244166af329ca8
Author: Jim Lin <jim at andestech.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/non-overloaded/vcpop.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/non-overloaded/vcpopv.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/overloaded/vcpop.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/overloaded/vcpopv.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/non-overloaded/vcpop.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/non-overloaded/vcpopv.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/overloaded/vcpop.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/overloaded/vcpopv.c
Log Message:
-----------
[RISCV] Rename the vector crypto intrinsic test vcpopv.c to vcpop.c. NFC.
To be consistent with https://github.com/riscv-non-isa/rvv-intrinsic-doc/tree/post-1.0-dev/auto-generated/vector-crypto/llvm-api-tests
Commit: 27b3b4a665f144b968a04502e5461ab8d1cd1471
https://github.com/llvm/llvm-project/commit/27b3b4a665f144b968a04502e5461ab8d1cd1471
Author: Deric C. <cheung.deric at gmail.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M llvm/lib/Target/DirectX/DXILDataScalarization.cpp
M llvm/lib/Target/DirectX/DirectXTargetMachine.cpp
M llvm/test/CodeGen/DirectX/llc-pipeline.ll
M llvm/test/CodeGen/DirectX/llc-vector-load-scalarize.ll
M llvm/test/CodeGen/DirectX/scalar-store.ll
Log Message:
-----------
[DirectX] Move the scalarizer pass to before dxil-flatten-arrays (#146800)
Fixes #145924 and #140416
Depends on #146173 being merged first.
This PR moves the scalarizer pass to immediately before the
dxil-flatten-arrays pass to allow the dxil-flatten-arrays pass to turn
scalar GEPs (including i8 GEPs) into flattened array GEPs where
applicable.
A number of LLVM DirectX CodeGen tests have been edited to remove scalar
GEPs and also correct previously uncaught incorrectly-transformed GEPs.
No more validation errors of the form `Access to out-of-bounds memory is
disallowed` or `TGSM pointers must originate from an unambiguous TGSM
global variable` appear anymore after this PR when compiling DML
shaders.
Commit: 14dc3e3d5f84fe4e52bcccdc514efdd27ed7a45c
https://github.com/llvm/llvm-project/commit/14dc3e3d5f84fe4e52bcccdc514efdd27ed7a45c
Author: Florian Mayer <fmayer at google.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
M llvm/test/CodeGen/X86/kcfi.ll
Log Message:
-----------
[SelectionDAG] [KCFI] Allow "kcfi" on invoke (#148742)
This is handled in CallBase, so it is valid for both call and invoke
Commit: 1ddb909a422853bd8e2692a8d369b45d62cec3e5
https://github.com/llvm/llvm-project/commit/1ddb909a422853bd8e2692a8d369b45d62cec3e5
Author: Peter Collingbourne <peter at pcc.me.uk>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M llvm/utils/remote-exec.py
Log Message:
-----------
remote-exec: Detect and propagate signal death in the remote process.
If the remote process died with a signal, this will be exposed by ssh
as an exit code in the range 128 < rc < 160. We may be running under
`not --crash` which will expect us to also die with a signal, so send
the signal to ourselves so that wait4() in `not` will detect the signal.
Speculative fix for failing buildbot:
https://lab.llvm.org/buildbot/#/builders/193/builds/9070
Commit: 7cde97423347d8f7eb4a3967f98b274be8ff621f
https://github.com/llvm/llvm-project/commit/7cde97423347d8f7eb4a3967f98b274be8ff621f
Author: Oliver Hunt <oliver at apple.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
A clang/docs/CXXTypeAwareAllocators.rst
M clang/docs/LanguageExtensions.rst
M clang/docs/ReleaseNotes.rst
M clang/docs/index.rst
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/include/clang/Basic/Features.def
M clang/lib/Frontend/InitPreprocessor.cpp
M clang/lib/Sema/SemaDeclCXX.cpp
M clang/test/SemaCXX/type-aware-class-scoped-mismatched-constraints.cpp
M clang/test/SemaCXX/type-aware-coroutines.cpp
M clang/test/SemaCXX/type-aware-new-constexpr.cpp
M clang/test/SemaCXX/type-aware-new-delete-arrays.cpp
M clang/test/SemaCXX/type-aware-new-delete-basic-free-declarations.cpp
M clang/test/SemaCXX/type-aware-new-delete-basic-in-class-declarations.cpp
M clang/test/SemaCXX/type-aware-new-delete-basic-resolution.cpp
M clang/test/SemaCXX/type-aware-new-delete-qualifiers.cpp
M clang/test/SemaCXX/type-aware-new-delete-transparent-contexts.cpp
M clang/test/SemaCXX/type-aware-new-invalid-type-identity.cpp
M clang/test/SemaCXX/type-aware-placement-operators.cpp
Log Message:
-----------
[clang] Update diagnostics and documentation for type aware allocators (#148576)
Alas reflection pushed p2719 out of C++26, so this PR changes the
diagnostics to reflect that for now type aware allocation is
functionally a clang extension.
Commit: 90ef114a33805b67eea29564193ad6d4c6975a30
https://github.com/llvm/llvm-project/commit/90ef114a33805b67eea29564193ad6d4c6975a30
Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M flang/include/flang/Semantics/tools.h
M flang/lib/Lower/ConvertVariable.cpp
A flang/test/Lower/CUDA/cuda-set-allocator.cuf
Log Message:
-----------
[flang][cuda] Add cuf.set_allocator_idx for device component (#148750)
Commit: 451a9ce9ffcf18db365f32a5a01dd025ab26c1d0
https://github.com/llvm/llvm-project/commit/451a9ce9ffcf18db365f32a5a01dd025ab26c1d0
Author: Oliver Hunt <oliver at apple.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/AST/ASTContext.h
M clang/include/clang/Basic/Features.def
M clang/include/clang/Basic/LangOptions.def
M clang/include/clang/Basic/PointerAuthOptions.h
M clang/include/clang/Driver/Options.td
M clang/lib/AST/ASTContext.cpp
M clang/lib/CodeGen/CGBlocks.cpp
M clang/lib/CodeGen/CGObjC.cpp
M clang/lib/CodeGen/CGObjCMac.cpp
M clang/lib/CodeGen/CodeGenModule.cpp
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/lib/Frontend/CompilerInvocation.cpp
M clang/lib/Headers/ptrauth.h
M clang/lib/Sema/SemaDeclObjC.cpp
M clang/lib/Sema/SemaObjCProperty.cpp
M clang/test/CodeGenObjC/arc.m
M clang/test/CodeGenObjC/matrix-type-operators.m
A clang/test/CodeGenObjC/ptrauth-attr-exception.m
A clang/test/CodeGenObjC/ptrauth-block-isa.m
A clang/test/CodeGenObjC/ptrauth-class-ro.m
A clang/test/CodeGenObjC/ptrauth-class.m
A clang/test/CodeGenObjC/ptrauth-objc-interface-selector.m
A clang/test/CodeGenObjC/ptrauth-objc-isa-super.m
A clang/test/CodeGenObjC/ptrauth-objc-method-list-pointer.m
A clang/test/CodeGenObjC/ptrauth-property-backing.m
A clang/test/CodeGenObjCXX/ptrauth-objc-interface-selector.mm
A clang/test/SemaObjC/ptrauth-pointers.m
M clang/test/SemaObjC/ptrauth-qualifier.m
Log Message:
-----------
[clang][ObjC][PAC] Add ptrauth protections to objective-c (#147899)
This PR introduces the use of pointer authentication to objective-c[++].
This includes:
* __ptrauth qualifier support for ivars
* protection of isa and super fields
* protection of SEL typed ivars
* protection of class_ro_t data
* protection of methodlist pointers and content
Commit: 91b3dbe273be721bdaea58c9f3c1d8309f496034
https://github.com/llvm/llvm-project/commit/91b3dbe273be721bdaea58c9f3c1d8309f496034
Author: Connector Switch <c8ef at outlook.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M libc/docs/headers/search.rst
Log Message:
-----------
[libc] Update some implementation status for `search.h` (#148414)
- `VISIT` was implemented in
https://github.com/llvm/llvm-project/pull/132746.
- `lsearch` was implemented in
https://github.com/llvm/llvm-project/pull/131431.
At first, I thought this would be updated automatically, but it seems
that the header status needs to be added manually.
Commit: eb6da944af31dd684be3ab2f93f453a3837a72c6
https://github.com/llvm/llvm-project/commit/eb6da944af31dd684be3ab2f93f453a3837a72c6
Author: tedwoodward <56049650+tedwoodward at users.noreply.github.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
A lldb/examples/python/filter_disasm.py
M lldb/include/lldb/Core/Opcode.h
M lldb/source/Core/Disassembler.cpp
M lldb/source/Core/Opcode.cpp
M lldb/source/Plugins/Disassembler/LLVMC/DisassemblerLLVMC.cpp
M lldb/source/Utility/ArchSpec.cpp
A lldb/test/Shell/Commands/Inputs/dis_filt.py
A lldb/test/Shell/Commands/command-disassemble-riscv32-bytes.s
A lldb/test/Shell/Commands/command-disassemble-x86-bytes.s
M lldb/unittests/Disassembler/RISCV/TestMCDisasmInstanceRISCV.cpp
M llvm/docs/ReleaseNotes.md
Log Message:
-----------
[lldb] Improve disassembly of unknown instructions (#145793)
LLDB uses the LLVM disassembler to determine the size of instructions and
to do the actual disassembly. Currently, if the LLVM disassembler can't
disassemble an instruction, LLDB will ignore the instruction size, assume
the instruction size is the minimum size for that device, print no useful
opcode, and print nothing for the instruction.
This patch changes this behavior to separate the instruction size and
"can't disassemble". If the LLVM disassembler knows the size, but can't
dissasemble the instruction, LLDB will use that size. It will print out
the opcode, and will print "<unknown>" for the instruction. This is much
more useful to both a user and a script.
The impetus behind this change is to clean up RISC-V disassembly when
the LLVM disassembler doesn't understand all of the instructions.
RISC-V supports proprietary extensions, where the TD files don't know
about certain instructions, and the disassembler can't disassemble them.
Internal users want to be able to disassemble these instructions.
With llvm-objdump, the solution is to pipe the output of the disassembly
through a filter program. This patch modifies LLDB's disassembly to look
more like llvm-objdump's, and includes an example python script that adds
a command "fdis" that will disassemble, then pipe the output through a
specified filter program. This has been tested with crustfilt, a sample
filter located at https://github.com/quic/crustfilt .
Changes in this PR:
- Decouple "can't disassemble" with "instruction size".
DisassemblerLLVMC::MCDisasmInstance::GetMCInst now returns a bool for
valid disassembly, and has the size as an out paramter.
Use the size even if the disassembly is invalid.
Disassemble if disassemby is valid.
- Always print out the opcode when -b is specified.
Previously it wouldn't print out the opcode if it couldn't disassemble.
- Print out RISC-V opcodes the way llvm-objdump does.
Code for the new Opcode Type eType16_32Tuples by Jason Molenda.
- Print <unknown> for instructions that can't be disassembled, matching
llvm-objdump, instead of printing nothing.
- Update max riscv32 and riscv64 instruction size to 8.
- Add example "fdis" command script.
- Added disassembly byte test for x86 with known and unknown instructions.
- Added disassembly byte test for riscv32 with known and unknown instructions,
with and without filtering.
- Added test from Jason Molenda to RISC-V disassembly unit tests.
Commit: 10b5558b61baab59c7d3dff37ffdf0861c0cc67a
https://github.com/llvm/llvm-project/commit/10b5558b61baab59c7d3dff37ffdf0861c0cc67a
Author: Trevor Gross <tmgross at umich.edu>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/test/CodeGen/X86/i128-fp128-abi.ll
Log Message:
-----------
[X86] Update the fp128/i128 test to show stack alignment (NFC) (#148753)
Adding an extra argument before a `fp128` only changes the stack offset
by four bytes, while it should instead go in the next 16-aligned slot.
Add a test demonstrating the current behavior.
`no_x86_scrub_sp` is added because offset from the stack pointer is
needed to show the problem.
Relevant issue: https://github.com/llvm/llvm-project/issues/77401
Commit: 96148f92146e5211685246722664e51ec730e7ba
https://github.com/llvm/llvm-project/commit/96148f92146e5211685246722664e51ec730e7ba
Author: Jim Lin <jim at andestech.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfoXAndes.td
Log Message:
-----------
[RISCV] Use cond_code instead for PseudoCCNDS_BFOS and PseudoCCNDS_BFOZ.
Commit: d2bcc51a5ae42157e9a0178186e5cb711c018c93
https://github.com/llvm/llvm-project/commit/d2bcc51a5ae42157e9a0178186e5cb711c018c93
Author: Brian Cain <brian.cain at oss.qualcomm.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M lld/ELF/Arch/Hexagon.cpp
M lld/ELF/Config.h
M lld/ELF/Driver.cpp
M lld/ELF/Target.h
A lld/test/ELF/hexagon-attributes.s
Log Message:
-----------
[LLD] Merge .hexagon.attributes sections (#148098)
Merge the attributes of object files being linked together. The
`.hexagon.attributes` section can be used by loaders and analysis tools.
This is similar to the .riscv.attributes, introduced in
8a900f2438b4a167b98404565ad4da2645cc9330 /
https://reviews.llvm.org/D138550.
Commit: be200e2b80c5f5e460fb361a14fb3c94d0ca1a67
https://github.com/llvm/llvm-project/commit/be200e2b80c5f5e460fb361a14fb3c94d0ca1a67
Author: Florian Mayer <fmayer at google.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
M llvm/test/CodeGen/X86/invalid-operand-bundle-invoke.ll
Log Message:
-----------
[SelectionDAG] improve error message for invalid op bundles (#148722)
Commit: 25b00c033c3cdd1a5c67ecc32b1dd13e3cd2df61
https://github.com/llvm/llvm-project/commit/25b00c033c3cdd1a5c67ecc32b1dd13e3cd2df61
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCTargetDesc.cpp
A llvm/test/CodeGen/AArch64/unsupported-object-format-err.ll
Log Message:
-----------
AArch64: Fix asserting on unexpected triples (#147880)
Commit: 9a9db2a39c7640ebd803741e4f058598bca04f0b
https://github.com/llvm/llvm-project/commit/9a9db2a39c7640ebd803741e4f058598bca04f0b
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M clang/test/Driver/riscv-cpus.c
Log Message:
-----------
[RISCV] Prefix mcpu/mtune/march/mabi with '-' in comments. NFC (#148723)
Commit: eea5c291bbf5177061021a980bc1369bac2d75b9
https://github.com/llvm/llvm-project/commit/eea5c291bbf5177061021a980bc1369bac2d75b9
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
Log Message:
-----------
[DAGCombiner] Pass SDNodeFlags to getNode instead of modifying nodes. (#148744)
getNode has logic to intersect flags correctly if the new node happens
to CSE with an existing node. Setting node flags after getNode bypasses
this logic and may change the node for other uses where the flags don't
hold.
Commit: 3265a36c55d0fc96078fd4752583e26ab6cdb016
https://github.com/llvm/llvm-project/commit/3265a36c55d0fc96078fd4752583e26ab6cdb016
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp
Log Message:
-----------
[RISCV] Refactor RISCVDAGToDAGISel::selectSimm5Shl2. NFC (#148731)
Return from the for loop body instead of using a break and checking the
shift amount after.
Commit: 31944ac45bb986122da639f195b19df4621fbfa8
https://github.com/llvm/llvm-project/commit/31944ac45bb986122da639f195b19df4621fbfa8
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVBaseInfo.h
M llvm/lib/Target/RISCV/RISCVInstrInfoP.td
M llvm/test/MC/RISCV/rv32p-valid.s
M llvm/test/MC/RISCV/rv64p-valid.s
Log Message:
-----------
[RISCV] Render P-ext simm10_unsigned as a simm10 after parsing. (#148749)
Instead of allowing a parsed MCInst to have a either uimm10 or simm10,
always render as simm10. This avoids a mismatch between parsed MCInst
and disassembled MCInst when a uimm10 value is used.
Commit: 49233137274d82f77ed0f011135a3d53cb4f8254
https://github.com/llvm/llvm-project/commit/49233137274d82f77ed0f011135a3d53cb4f8254
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp
Log Message:
-----------
[RISCV] Fix typo in comment. NFC (#148754)
'unsigned' was misspelled, but it seemed easier to write uimm9 than to
spell it out.
Commit: 3faaa5cdb094b60971bb357aca651123e23855b6
https://github.com/llvm/llvm-project/commit/3faaa5cdb094b60971bb357aca651123e23855b6
Author: Sam Elliott <quic_aelliott at quicinc.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
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
M llvm/lib/Target/RISCV/RISCVInstrInfoXqci.td
M llvm/test/MC/RISCV/Relocations/mc-dump.s
A llvm/test/MC/RISCV/xqci-fixups.s
M llvm/test/MC/RISCV/xqcibi-relocations.s
M llvm/test/MC/RISCV/xqcilb-relocations.s
M llvm/test/MC/RISCV/xqcili-relocations.s
Log Message:
-----------
[RISCV] Fix QC.E.LI -> C.LI with Bare Symbol Compression (#146763)
There's a long comment explaining this approach in RISCVInstrInfoXqci.td
This change also fixes some problems when fixups are able to be resolved for `qc.e.li` and `qc.li`.
Commit: 9ba45c5c5e6cf8f8c800260e8c84e19e33e2fa34
https://github.com/llvm/llvm-project/commit/9ba45c5c5e6cf8f8c800260e8c84e19e33e2fa34
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp
Log Message:
-----------
[RISCV] Move RISCVDAGToDAGISel::SelectAddrRegRegScale definition later. NFC
This function was placed between some static functions and their
callers. Reorder to keep the related code together.
Commit: 9e9fdd433adfd4c1da46e475f4bbe8fdbf7c04f9
https://github.com/llvm/llvm-project/commit/9e9fdd433adfd4c1da46e475f4bbe8fdbf7c04f9
Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M flang-rt/lib/cuda/descriptor.cpp
Log Message:
-----------
[flang][cuda] Fix definition of CUFSetAllocatorIndex (#148778)
Commit: 028dfd7756e3113ea8fe12bec20ec00c68a98c6a
https://github.com/llvm/llvm-project/commit/028dfd7756e3113ea8fe12bec20ec00c68a98c6a
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfo.cpp
Log Message:
-----------
[RISCV] Replace tab character. NFC
Commit: 769bd90f8b2fbb345b115586e81edf3a70ec8cc1
https://github.com/llvm/llvm-project/commit/769bd90f8b2fbb345b115586e81edf3a70ec8cc1
Author: Kazu Hirata <kazu at google.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M flang/lib/Lower/ConvertVariable.cpp
Log Message:
-----------
[flang] Fix a warning
This patch fixes:
flang/lib/Lower/ConvertVariable.cpp:787:22: error: unused variable
'fieldTy' [-Werror,-Wunused-variable]
Commit: b1a25ce73c6a4fd123b92682e465215d39154244
https://github.com/llvm/llvm-project/commit/b1a25ce73c6a4fd123b92682e465215d39154244
Author: Kazu Hirata <kazu at google.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M clang/lib/Sema/SemaDecl.cpp
Log Message:
-----------
[Sema] Remove unnecessary casts (NFC) (#148762)
getAsmLabel() already returns Expr *.
Commit: 7e7340d276b5cf85816fd7cb8f6d22f9f810f16a
https://github.com/llvm/llvm-project/commit/7e7340d276b5cf85816fd7cb8f6d22f9f810f16a
Author: Kazu Hirata <kazu at google.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64LoadStoreOptimizer.cpp
Log Message:
-----------
[AArch64] Remove an unnecessary cast (NFC) (#148763)
OpcA is already of unsigned.
Commit: a869f7e82143e836d5c8c145cbe69c4786e545e7
https://github.com/llvm/llvm-project/commit/a869f7e82143e836d5c8c145cbe69c4786e545e7
Author: Kazu Hirata <kazu at google.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/InstrEmitter.cpp
Log Message:
-----------
[CodeGen] Remove an unnecessary cast (NFC) (#148764)
getExpression() already returns DIExpression *.
Commit: c4450aa96e40cf1652bc27d73fa5948f330cad84
https://github.com/llvm/llvm-project/commit/c4450aa96e40cf1652bc27d73fa5948f330cad84
Author: Kazu Hirata <kazu at google.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M llvm/lib/Target/Lanai/LanaiFrameLowering.cpp
Log Message:
-----------
[Lanai] Remove unnecessary casts (NFC) (#148765)
getInstrInfo() already returns const LanaiInstrInfo *.
Likewise, getRegisterInfo() already returns const LanaiRegisterInfo *.
Commit: c8d3e61216f08f228278aa5da9eb24540737259e
https://github.com/llvm/llvm-project/commit/c8d3e61216f08f228278aa5da9eb24540737259e
Author: Kazu Hirata <kazu at google.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M llvm/lib/DWARFCFIChecker/Registers.h
Log Message:
-----------
[DWARFCFIChecker] Use llvm::unique (NFC) (#148766)
While I am at it, this patch replaces resize with erase, which is a
lot shorter and idiomatic.
Commit: 7c83d66719e1ccf75bb25d427f1b0cce57028b4a
https://github.com/llvm/llvm-project/commit/7c83d66719e1ccf75bb25d427f1b0cce57028b4a
Author: Kazu Hirata <kazu at google.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M llvm/lib/Analysis/CallGraph.cpp
M llvm/lib/Analysis/LoopInfo.cpp
M llvm/lib/CodeGen/AsmPrinter/EHStreamer.cpp
M llvm/lib/CodeGen/RegAllocEvictionAdvisor.cpp
M llvm/lib/DebugInfo/DWARF/LowLevel/DWARFCFIProgram.cpp
M llvm/lib/IR/LegacyPassManager.cpp
M llvm/lib/IR/RuntimeLibcalls.cpp
M llvm/lib/MC/MCSection.cpp
M llvm/lib/MC/MCWasmStreamer.cpp
M llvm/lib/Object/DXContainer.cpp
M llvm/lib/Target/AMDGPU/AMDGPUAttributor.cpp
M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeHelper.cpp
M llvm/lib/Target/ARM/ARMTargetObjectFile.cpp
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/lib/Target/SPIRV/MCTargetDesc/SPIRVInstPrinter.cpp
M llvm/lib/Target/Sparc/MCTargetDesc/SparcMCCodeEmitter.cpp
M llvm/lib/Target/Sparc/SparcTargetObjectFile.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyLowerEmscriptenEHSjLj.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp
M llvm/lib/Transforms/Instrumentation/GCOVProfiling.cpp
M llvm/lib/Transforms/Scalar/LoopUnrollPass.cpp
M llvm/lib/Transforms/Scalar/SpeculativeExecution.cpp
M llvm/lib/Transforms/Vectorize/VPlanAnalysis.cpp
Log Message:
-----------
[llvm] Remove unused includes (NFC) (#148768)
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: c06d3a7b728293cbc53ff91239d6cd87c0982ffb
https://github.com/llvm/llvm-project/commit/c06d3a7b728293cbc53ff91239d6cd87c0982ffb
Author: Kazu Hirata <kazu at google.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M mlir/lib/Dialect/PDL/IR/PDL.cpp
M mlir/lib/Dialect/PDLInterp/IR/PDLInterp.cpp
M mlir/lib/Dialect/Ptr/IR/PtrAttrs.cpp
M mlir/lib/Dialect/Ptr/IR/PtrDialect.cpp
M mlir/lib/Dialect/Ptr/IR/PtrTypes.cpp
M mlir/lib/Dialect/Quant/IR/QuantDialectBytecode.cpp
M mlir/lib/Dialect/Quant/IR/QuantTypes.cpp
M mlir/lib/Dialect/Quant/Transforms/NormalizeQuantTypes.cpp
M mlir/lib/Dialect/Quant/Transforms/StripFuncQuantTypes.cpp
M mlir/lib/Dialect/SCF/IR/SCF.cpp
M mlir/lib/Dialect/SCF/TransformOps/SCFTransformOps.cpp
M mlir/lib/Dialect/SCF/Transforms/BufferDeallocationOpInterfaceImpl.cpp
M mlir/lib/Dialect/SCF/Transforms/BufferizableOpInterfaceImpl.cpp
M mlir/lib/Dialect/SCF/Transforms/LoopSpecialization.cpp
M mlir/lib/Dialect/SCF/Transforms/ParallelLoopCollapsing.cpp
M mlir/lib/Dialect/SCF/Transforms/UpliftWhileToFor.cpp
M mlir/lib/Dialect/SCF/Utils/AffineCanonicalizationUtils.cpp
M mlir/lib/Dialect/SCF/Utils/Utils.cpp
M mlir/lib/Dialect/SMT/IR/SMTAttributes.cpp
M mlir/lib/Dialect/Shape/IR/Shape.cpp
M mlir/lib/Dialect/Shape/Transforms/BufferizableOpInterfaceImpl.cpp
M mlir/lib/Dialect/Shape/Transforms/OutlineShapeComputation.cpp
M mlir/lib/Dialect/Shape/Transforms/ShapeToShapeLowering.cpp
M mlir/lib/Dialect/Traits.cpp
M mlir/lib/Dialect/Utils/ReshapeOpsUtils.cpp
M mlir/lib/Dialect/Vector/IR/ScalableValueBoundsConstraintSet.cpp
M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
M mlir/lib/Dialect/Vector/TransformOps/VectorTransformOps.cpp
M mlir/lib/Dialect/Vector/Transforms/LowerVectorContract.cpp
M mlir/lib/Dialect/Vector/Transforms/LowerVectorGather.cpp
M mlir/lib/Dialect/Vector/Transforms/LowerVectorScan.cpp
M mlir/lib/Dialect/Vector/Transforms/LowerVectorTransfer.cpp
M mlir/lib/Dialect/Vector/Transforms/LowerVectorTranspose.cpp
M mlir/lib/Dialect/Vector/Transforms/VectorMaskElimination.cpp
M mlir/lib/Dialect/Vector/Transforms/VectorTransferSplitRewritePatterns.cpp
M mlir/lib/Dialect/X86Vector/IR/X86VectorDialect.cpp
M mlir/lib/Dialect/X86Vector/Transforms/AVXTranspose.cpp
M mlir/lib/Dialect/X86Vector/Transforms/LegalizeForLLVMExport.cpp
M mlir/lib/Dialect/XeGPU/IR/XeGPUDialect.cpp
M mlir/lib/Dialect/XeGPU/Transforms/XeGPUBlocking.cpp
M mlir/lib/Dialect/XeGPU/Transforms/XeGPUPropagateLayout.cpp
M mlir/lib/Dialect/XeGPU/Transforms/XeGPUUnroll.cpp
Log Message:
-----------
[mlir] Remove unused includes (NFC) (#148769)
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: da283b54d964c4b08395baa57d8b33dcb59dfd07
https://github.com/llvm/llvm-project/commit/da283b54d964c4b08395baa57d8b33dcb59dfd07
Author: Owen Pan <owenpiano at gmail.com>
Date: 2025-07-14 (Mon, 14 Jul 2025)
Changed paths:
M clang/test/Format/multiple-inputs-error.cpp
M clang/test/Format/ranges.cpp
M clang/tools/clang-format/ClangFormat.cpp
Log Message:
-----------
Revert "[clang-format] Fix an off-by-1 bug with -length option (#143302)"
This reverts commit 1fae5918b3d6fbed8ce6d8a2edf31bdf304ca8db because it may
break VSCode.
Closes #146036
Commit: 977cfea786401eab2b167307221a15fa6747e28e
https://github.com/llvm/llvm-project/commit/977cfea786401eab2b167307221a15fa6747e28e
Author: Serge Pavlov <sepavloff at gmail.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Sema/AnalysisBasedWarnings.cpp
A clang/test/SemaCXX/noreturn-vars.cpp
Log Message:
-----------
[Analysis] Avoid some warnings about exit from noreturn function (#144408)
Compiler sometimes issues warnings on exit from 'noreturn' functions, in
the code like:
[[noreturn]] extern void nonreturnable();
void (*func_ptr)();
[[noreturn]] void foo() {
func_ptr = nonreturnable;
(*func_ptr)();
}
where exit cannot take place because the function pointer is actually a
pointer to noreturn function.
This change introduces small data analysis that can remove some of the
warnings in the cases when compiler can prove that the set of reaching
definitions consists of noreturn functions only.
Commit: 0be51cff91293eb0f4ee11088d4d9edade590b48
https://github.com/llvm/llvm-project/commit/0be51cff91293eb0f4ee11088d4d9edade590b48
Author: quic_hchandel <quic_hchandel at quicinc.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVFeatures.td
M llvm/lib/Target/RISCV/RISCVInstrInfoXqci.td
A llvm/test/CodeGen/RISCV/xqcicli.ll
Log Message:
-----------
[RISCV] Add ISel patterns for Qualcomm uC Xqcicli extension (#148121)
Add CodeGen patterns for conditional load immediate instructions
Commit: 3d50e1f3e83eaa77a09ab8336fac45a52ee9c1e5
https://github.com/llvm/llvm-project/commit/3d50e1f3e83eaa77a09ab8336fac45a52ee9c1e5
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
A llvm/test/CodeGen/ARM/stack-protector-target.ll
A llvm/test/CodeGen/LoongArch/stack-protector-target.ll
A llvm/test/CodeGen/PowerPC/stack-protector-target.ll
M llvm/test/CodeGen/RISCV/stack-protector-target.ll
A llvm/test/CodeGen/SPARC/stack-protector-target.ll
A llvm/test/CodeGen/X86/stack-protector-target-openbsd.ll
Log Message:
-----------
RuntimeLibcalls: Add some tests for OpenBSD stack protectors (#147888)
7dce16f69dc3e26cb74d5ad38b0648a6f47f9640 removed a libcall for
STACKPROTECTOR_CHECK_FAIL from OpenBSD but added no tests.
Add a basic test copied from RISCV into all the backends on
the OpenBSD page of supported architectures before I potentially
break in in RuntimeLibcalls refactoring.
Commit: 0b674f4c52237fed91c142ca3766b58f335fe120
https://github.com/llvm/llvm-project/commit/0b674f4c52237fed91c142ca3766b58f335fe120
Author: Fangrui Song <i at maskray.me>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/lib/Target/AArch64/MCTargetDesc/AArch64AsmBackend.cpp
M llvm/lib/Target/AArch64/MCTargetDesc/AArch64ELFObjectWriter.cpp
M llvm/lib/Target/AArch64/MCTargetDesc/AArch64MachObjectWriter.cpp
M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUAsmBackend.cpp
M llvm/lib/Target/ARM/MCTargetDesc/ARMAsmBackend.cpp
M llvm/lib/Target/ARM/MCTargetDesc/ARMELFObjectWriter.cpp
M llvm/lib/Target/ARM/MCTargetDesc/ARMMachObjectWriter.cpp
M llvm/lib/Target/CSKY/MCTargetDesc/CSKYAsmBackend.cpp
M llvm/lib/Target/Hexagon/MCTargetDesc/HexagonAsmBackend.cpp
M llvm/lib/Target/Hexagon/MCTargetDesc/HexagonELFObjectWriter.cpp
M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchAsmBackend.cpp
M llvm/lib/Target/MSP430/MCTargetDesc/MSP430ELFObjectWriter.cpp
M llvm/lib/Target/PowerPC/MCTargetDesc/PPCELFObjectWriter.cpp
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVAsmBackend.cpp
M llvm/lib/Target/Sparc/MCTargetDesc/SparcELFObjectWriter.cpp
M llvm/lib/Target/VE/MCTargetDesc/VEAsmBackend.cpp
M llvm/lib/Target/VE/MCTargetDesc/VEELFObjectWriter.cpp
M llvm/lib/Target/X86/MCTargetDesc/X86AsmBackend.cpp
M llvm/lib/Target/Xtensa/MCTargetDesc/XtensaAsmBackend.cpp
Log Message:
-----------
MCFixup: Replace getTargetKind with getKind
MCFixupKind is now a type alias (fixup kinds are inherently
target-specific). getTargetKind is no longer necessary.
Commit: dae72bc659d79f59e3b26a948158e3f37b33471b
https://github.com/llvm/llvm-project/commit/dae72bc659d79f59e3b26a948158e3f37b33471b
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/test/CodeGen/X86/freeze-unary.ll
Log Message:
-----------
[X86] freeze-unary.ll - show tests failing to remove freeze from ISD::ABS node
Unlike the abs intrinsic, the ISD::ABS node defines ABS(INT_MIN) -> INT_MIN, not poison is generated
Commit: acf07dc77cba07d67c85e120c2eb8094438572e9
https://github.com/llvm/llvm-project/commit/acf07dc77cba07d67c85e120c2eb8094438572e9
Author: Corentin Jabot <corentinjabot at gmail.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M clang/include/clang/Sema/Overload.h
M clang/lib/Sema/SemaOverload.cpp
M clang/test/SemaCXX/overload-resolution-deferred-templates.cpp
Log Message:
-----------
[Clang] Do not treat Foo -> const Foo conversion sequences as perfect (#148613)
For implicit object arguments.
This fixes a regression introduced by the "perfect match" overload
resolution mechanism introduced in 8c5a307.
Note that GCC allows the ambiguity between a const and non-const
candidate to be resolved. But this patch focuses on restoring the Clang
20 behavior, and to fix the cases which we did resolve incorrectly.
Fixes #147374
Commit: 0991435fc3e638caad036085f73d8e7a62bfb60f
https://github.com/llvm/llvm-project/commit/0991435fc3e638caad036085f73d8e7a62bfb60f
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/include/llvm/IR/RuntimeLibcalls.h
M llvm/include/llvm/IR/RuntimeLibcalls.td
M llvm/lib/IR/RuntimeLibcalls.cpp
Log Message:
-----------
RuntimeLibcalls: Mostly move x86 configuration into tablegen (#148575)
This is getting pretty ugly, but seems to be the worst of the
cases. Opting out of the base set of calls for the various windows
cases is really ugly. We need to apply that to the arm cases as well.
It also may make sense to go back to transposing the architecture
and operating system (i.e. make isOSWindows the SystemLibrary
and then modify based on architecture).
Commit: 5ba458c559b04efca307dc86f8265cf6dffaf666
https://github.com/llvm/llvm-project/commit/5ba458c559b04efca307dc86f8265cf6dffaf666
Author: Fangrui Song <i at maskray.me>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/lib/Target/AArch64/MCTargetDesc/AArch64AsmBackend.cpp
M llvm/lib/Target/AArch64/MCTargetDesc/AArch64ELFObjectWriter.cpp
M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUELFObjectWriter.cpp
M llvm/lib/Target/ARM/MCTargetDesc/ARMAsmBackend.cpp
M llvm/lib/Target/ARM/MCTargetDesc/ARMELFObjectWriter.cpp
M llvm/lib/Target/BPF/MCTargetDesc/BPFAsmBackend.cpp
M llvm/lib/Target/CSKY/MCTargetDesc/CSKYELFObjectWriter.cpp
M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchAsmBackend.cpp
M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchELFObjectWriter.cpp
M llvm/lib/Target/Mips/MCTargetDesc/MipsELFObjectWriter.cpp
M llvm/lib/Target/PowerPC/MCTargetDesc/PPCELFObjectWriter.cpp
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVAsmBackend.cpp
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVELFObjectWriter.cpp
M llvm/lib/Target/Sparc/MCTargetDesc/SparcELFObjectWriter.cpp
M llvm/lib/Target/X86/MCTargetDesc/X86MachObjectWriter.cpp
Log Message:
-----------
MCFixup: Replace getTargetKind with getKind
Commit: 16798ee7bf86d8c9c68e7b668a52039f2dce35f9
https://github.com/llvm/llvm-project/commit/16798ee7bf86d8c9c68e7b668a52039f2dce35f9
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/lib/MC/MCContext.cpp
M llvm/test/CodeGen/AArch64/unsupported-object-format-err.ll
Log Message:
-----------
MC: Use reportFatalUsageError for COFF with non-windows (#147911)
Commit: 13d818806dbe24d58d92d9f533c61afab0e429a1
https://github.com/llvm/llvm-project/commit/13d818806dbe24d58d92d9f533c61afab0e429a1
Author: Fangrui Song <i at maskray.me>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/include/llvm/MC/MCFixup.h
Log Message:
-----------
MCFixup: Remove getTargetKind
MCFixupKind is now a type alias (fixup kinds are inherently
target-specific). getTargetKind is no longer necessary.
Commit: b0769aa290fd11d1154f7d2779e59bfcc4314e8f
https://github.com/llvm/llvm-project/commit/b0769aa290fd11d1154f7d2779e59bfcc4314e8f
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/include/llvm/IR/IntrinsicInst.h
M llvm/include/llvm/IR/PatternMatch.h
M llvm/lib/IR/Instructions.cpp
Log Message:
-----------
[IR] Make intrinsic checks more efficient (NFC) (#148682)
Directly cast the callee operand instead of going through
getCalledFunction(). We can do this because for intrinsics the function
type between the call and the function is guaranteed to match.
This is a minor compile-time improvement as is, but has a much bigger
impact with a future change that makes getCalledFunction() more
expensive.
There is some code duplication between these four uses, but they are
each just different enough that representing one in terms of another
would be less efficient.
Commit: c8d0e247453af3c5c031ed210736f650e6be2289
https://github.com/llvm/llvm-project/commit/c8d0e247453af3c5c031ed210736f650e6be2289
Author: Luke Lau <luke at igalia.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlan.h
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
M llvm/test/Transforms/LoopVectorize/AArch64/conditional-branches-cost.ll
M llvm/test/Transforms/LoopVectorize/ARM/mve-reg-pressure-vmla.ll
M llvm/test/Transforms/PhaseOrdering/ARM/arm_mult_q15.ll
Log Message:
-----------
[VPlan] Preserve trunc nuw/nsw in VPRecipeWithIRFlags (#144700)
This preserves the nuw/nsw flags on widened truncs by checking for
TruncInst in the VPIRFlags constructor
The motivation for this is to be able to fold away some redundant truncs
feeding into uitofps (or potentially narrow the inductions feeding them)
Commit: ee9b84f5bed7027b4a81f68bf853f35d6e749eef
https://github.com/llvm/llvm-project/commit/ee9b84f5bed7027b4a81f68bf853f35d6e749eef
Author: Pavel Labath <pavel at labath.sk>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
A llvm/include/llvm/BinaryFormat/SFrame.h
M llvm/unittests/BinaryFormat/CMakeLists.txt
A llvm/unittests/BinaryFormat/SFrameTest.cpp
Log Message:
-----------
[BinaryFormat] Add "SFrame" structures and constants (#147264)
This patch defines the structures and constants used by the SFrame
unwind info format supported by GNU binutils. For more information about
the format, see https://sourceware.org/binutils/wiki/sframe and
https://discourse.llvm.org/t/rfc-adding-sframe-support-to-llvm/86900
The patch uses the GNU names for all relevant entities, but I've converted
them to the llvm naming convention, and I've replaced macros with enums.
Commit: 9ef293ea249d19b795ff217bad6e7f6d0a723d29
https://github.com/llvm/llvm-project/commit/9ef293ea249d19b795ff217bad6e7f6d0a723d29
Author: Ami-zhang <zhanglimin at loongson.cn>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M lld/docs/ReleaseNotes.rst
M llvm/docs/ReleaseNotes.md
Log Message:
-----------
[LoongArch] Add supplemental release notes for LLVM 21 (#148771)
Commit: 5e303e80e685a4d0b7035ef73058f42218bc2daa
https://github.com/llvm/llvm-project/commit/5e303e80e685a4d0b7035ef73058f42218bc2daa
Author: Balázs Kéri <balazs.keri at ericsson.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M clang/lib/StaticAnalyzer/Core/MemRegion.cpp
M clang/test/Analysis/stream.c
Log Message:
-----------
[clang][analyzer] Add C standard streams to the internal memory space (#147766)
Variables `stdin`, `stdout`, `stderr` are now added to internal memory space
instead of system memory space. The system memory space is invalidated
at calls to system-defined functions which is not the correct behavior for
the standard stream variables.
Commit: b80b02536b20d2170820e56ef776f43640ee2495
https://github.com/llvm/llvm-project/commit/b80b02536b20d2170820e56ef776f43640ee2495
Author: Changpeng Fang <changpeng.fang at amd.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUInstPrinter.cpp
M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUInstPrinter.h
M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCCodeEmitter.cpp
M llvm/lib/Target/AMDGPU/SIInstrInfo.td
M llvm/lib/Target/AMDGPU/SIRegisterInfo.td
M llvm/lib/Target/AMDGPU/VOP3PInstructions.td
M llvm/lib/Target/AMDGPU/VOPInstructions.td
A llvm/test/MC/AMDGPU/gfx1250_asm_wmma_w32.s
A llvm/test/MC/AMDGPU/gfx1250_asm_wmma_w32_err.s
A llvm/test/MC/Disassembler/AMDGPU/gfx1250_dasm_wmma_w32.txt
Log Message:
-----------
AMDGPU: Implement MC layer support for gfx1250 wmma instructions. (#148570)
Regular wmma/swmmac plus matrix reuse only.
---------
Co-authored-by: Stanislav Mekhanoshin <Stanislav.Mekhanoshin at amd.com>
Co-authored-by: Shilei Tian <Shilei.Tian at amd.com>
Commit: de551c640349e6fe898c87db2b527d87f42c138e
https://github.com/llvm/llvm-project/commit/de551c640349e6fe898c87db2b527d87f42c138e
Author: Vikram Hegde <115221833+vikramRH at users.noreply.github.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUPrintfRuntimeBinding.cpp
M llvm/test/CodeGen/AMDGPU/opencl-printf.ll
Log Message:
-----------
[AMDGPU] Support 'F' and 'A' conversion specifiers with ocl printf (#148784)
Runtime support in progress downstream..
Commit: 5fc844acd8163373e74d16042df9e17ae9e18ad4
https://github.com/llvm/llvm-project/commit/5fc844acd8163373e74d16042df9e17ae9e18ad4
Author: Hristo Hristov <hghristov.rmm at gmail.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M libcxx/docs/Status/Cxx2cPapers.csv
M libcxx/include/__type_traits/is_core_convertible.h
M libcxx/include/optional
M libcxx/test/std/utilities/optional/optional.comp_with_t/equal.pass.cpp
M libcxx/test/std/utilities/optional/optional.comp_with_t/greater.pass.cpp
M libcxx/test/std/utilities/optional/optional.comp_with_t/greater_equal.pass.cpp
M libcxx/test/std/utilities/optional/optional.comp_with_t/less_equal.pass.cpp
M libcxx/test/std/utilities/optional/optional.comp_with_t/less_than.pass.cpp
M libcxx/test/std/utilities/optional/optional.comp_with_t/not_equal.pass.cpp
M libcxx/test/std/utilities/optional/optional.relops/equal.pass.cpp
M libcxx/test/std/utilities/optional/optional.relops/greater_equal.pass.cpp
M libcxx/test/std/utilities/optional/optional.relops/greater_than.pass.cpp
M libcxx/test/std/utilities/optional/optional.relops/less_equal.pass.cpp
M libcxx/test/std/utilities/optional/optional.relops/less_than.pass.cpp
M libcxx/test/std/utilities/optional/optional.relops/not_equal.pass.cpp
Log Message:
-----------
[libc++] P2944R3: Constrained comparisons - `optional` (#144249)
Partially implements [P2944R3](https://wg21.link/P2944R3) which adds
constrained comparisons to std::optional.
Closes #136767
# References
[optional.relops](https://wg21.link/optional.relops)
[optional.comp.with.t](https://wg21.link/optional.comp.with.t)
---------
Co-authored-by: Hristo Hristov <zingam at outlook.com>
Commit: cbdc18542c485282d1834c347156d77a97bf2615
https://github.com/llvm/llvm-project/commit/cbdc18542c485282d1834c347156d77a97bf2615
Author: Matthias Springer <me at m-sp.org>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M mlir/lib/Dialect/Arith/IR/ArithCanonicalization.td
M mlir/test/Dialect/Arith/canonicalize.mlir
Log Message:
-----------
[mlir][arith] Fix bug in `arith.bitcast` canonicalizer (#148795)
`bitcast(bitcast(x))` was incorrectly folded to `x`.
Commit: 8ee32c7b367336f7281aa78c823f7bae4d5287c2
https://github.com/llvm/llvm-project/commit/8ee32c7b367336f7281aa78c823f7bae4d5287c2
Author: Matthias Springer <me at m-sp.org>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M mlir/lib/Transforms/Utils/DialectConversion.cpp
Log Message:
-----------
[mlir][Transforms][NFC] Dialect Conversion: Store materialization metadata separately (#148415)
Store metadata about unresolved materializations in a separate data
structure. This is in preparation of the One-Shot Dialect Conversion
refactoring, which no longer maintains a stack of `IRRewrite` objects.
Therefore, metadata about unresolved materializations can no longer be
retrieved from `UnresolvedMaterializationRewrite` objects.
This commit also removes a pointer indirection and may slightly improve
the performance of the existing driver.
Commit: e74520fae690392f43936bb3c4c02b0ba088ccfa
https://github.com/llvm/llvm-project/commit/e74520fae690392f43936bb3c4c02b0ba088ccfa
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
M llvm/test/CodeGen/X86/freeze-unary.ll
Log Message:
-----------
[DAG] canCreateUndefOrPoison - add handling for ISD::ABS nodes (#148791)
Unlike the abs intrinsic, the ISD::ABS node defines ABS(INT_MIN) -> INT_MIN, so no undef/poison is created by the node itself
Commit: a789b3f381bfb98009d72115c1f47b7516dd6af3
https://github.com/llvm/llvm-project/commit/a789b3f381bfb98009d72115c1f47b7516dd6af3
Author: Trevor Gross <tmgross at umich.edu>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/test/CodeGen/ARM/llvm.frexp.ll
M llvm/test/CodeGen/Mips/ldexp.ll
Log Message:
-----------
[test] Add missing tests for Arm frexpf128 and Mips ldexpf128 (#148793)
These platforms have tests for the rest of the float sizes but not
`f128`. Add them here.
Commit: 7c30897b4cff758321d864adf1d58533eedbdb98
https://github.com/llvm/llvm-project/commit/7c30897b4cff758321d864adf1d58533eedbdb98
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/lib/Analysis/TargetLibraryInfo.cpp
M llvm/test/Transforms/InferFunctionAttrs/no-proto.ll
Log Message:
-----------
[TLI] Handle cabs without parameters gracefully
Check that the function has at least one parameter before trying
to access its type.
Fixes https://github.com/llvm/llvm-project/issues/148770.
Commit: 29436737baf8675ec98c8f738e291acb44eacd85
https://github.com/llvm/llvm-project/commit/29436737baf8675ec98c8f738e291acb44eacd85
Author: Ziqing Luo <ziqing at udel.edu>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M clang/lib/Analysis/UnsafeBufferUsage.cpp
M clang/test/SemaCXX/warn-unsafe-buffer-usage-libc-functions.cpp
Log Message:
-----------
[NFC][-Wunsafe-buffer-usage] Refactor safe pattern check for pointer-size pairs (#145626)
Refactor the safe pattern analysis of pointer and size expression pairs
so that the check can be re-used in more places. For example, it can be
used to check whether the following cases are safe:
- `std::span<T>{ptr, size} // span construction`
- `snprintf(ptr, size, "%s", ...) // unsafe libc call`
- `printf("%.*s", size, ptr) // unsafe libc call`
Commit: 69ea174bf07533b7f63139f78b0ec3d3766aedc4
https://github.com/llvm/llvm-project/commit/69ea174bf07533b7f63139f78b0ec3d3766aedc4
Author: Keno Fischer <keno at juliahub.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/tools/llvm-shlib/CMakeLists.txt
Log Message:
-----------
llvm-shlib: Fix mingw dll exports (#148772)
In c87d198cd964f37343083848f8fdd58bb0b00156, the `__jit_debug_*` symbols
gained explicit dllexport annotations. Unfortunately, mingw's linkers
have a quirk where the presence of any dllexport symbols at all will
switch off the `-export-all-symbols` flag, so without a full conversion
to dllexport annotations (#109483), the mingw LLVM dll build is broken
in LLVM 20+ when building with GCC (when building with clang,
LLVM_ALWAYS_EXPORT expands to the default visibility attribute,
see extended discussion in #148772).
Fix this by adding the flag explicitly as was done for
clang-shlib earlier in https://reviews.llvm.org/D151620.
Commit: c363a3f9c858b38afa34f3a8ebcc3fa7a4062315
https://github.com/llvm/llvm-project/commit/c363a3f9c858b38afa34f3a8ebcc3fa7a4062315
Author: David Sherwood <david.sherwood at arm.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce.ll
Log Message:
-----------
[LV] Ensure getScaledReductions only matches extends inside the loop (#148264)
In getScaledReductions for the case where we try to match a partial
reduction of the form:
%phi = phi i32 ...
...
%add = add i32 %phi, %zext
where
%zext = i8 %some_val to i32
we should ensure that %zext is actually inside the loop.
Fixes https://github.com/llvm/llvm-project/issues/148260
Commit: 8aeab8faeebfa737a388041e5b37717ab15d387e
https://github.com/llvm/llvm-project/commit/8aeab8faeebfa737a388041e5b37717ab15d387e
Author: WhatAmISupposedToPutHere <fnkl.kernel at gmail.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M clang/lib/Driver/ToolChains/MinGW.cpp
M clang/test/Driver/mingw.cpp
Log Message:
-----------
[Driver][MinGW] Allow using clang driver to link ARM64X PEs. (#148064)
Similar to how clang-cl driver does it, make it possible to build arm64x
binaries with a mingw-style invocation.
Signed-off-by: Sasha Finkelstein <fnkl.kernel at gmail.com>
Commit: aa0629dabeed0088674d23340c9c3c9932681d0f
https://github.com/llvm/llvm-project/commit/aa0629dabeed0088674d23340c9c3c9932681d0f
Author: Vikram Hegde <115221833+vikramRH at users.noreply.github.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/include/llvm/Passes/CodeGenPassBuilder.h
M llvm/test/CodeGen/AMDGPU/llc-pipeline-npm.ll
Log Message:
-----------
[CodeGen][NPM] Read TargetMachine's EnableIPRA option (#148108)
same as https://github.com/llvm/llvm-project/pull/138670,
Co-authored-by : Oke, Akshat
<[Akshat.Oke at amd.com](mailto:Akshat.Oke at amd.com)>
Commit: 7345508c6febc57eaac985ef2fb14beabdc4d461
https://github.com/llvm/llvm-project/commit/7345508c6febc57eaac985ef2fb14beabdc4d461
Author: Konstantin Varlamov <varconsteq at gmail.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M .github/workflows/libcxx-build-and-test.yaml
A libcxx/cmake/caches/Generic-hardening-mode-extensive-observe-semantic.cmake
M libcxx/docs/Hardening.rst
M libcxx/docs/ReleaseNotes/21.rst
M libcxx/include/__config
M libcxx/test/libcxx/containers/views/mdspan/extents/assert.ctor_from_array.pass.cpp
M libcxx/test/libcxx/containers/views/mdspan/extents/assert.ctor_from_integral.pass.cpp
M libcxx/test/libcxx/containers/views/mdspan/layout_left/assert.conversion.pass.cpp
M libcxx/test/libcxx/containers/views/mdspan/layout_left/assert.ctor.extents.pass.cpp
M libcxx/test/libcxx/containers/views/mdspan/layout_left/assert.ctor.layout_right.pass.cpp
M libcxx/test/libcxx/containers/views/mdspan/layout_right/assert.conversion.pass.cpp
M libcxx/test/libcxx/containers/views/mdspan/layout_right/assert.ctor.extents.pass.cpp
M libcxx/test/libcxx/containers/views/mdspan/layout_right/assert.ctor.layout_left.pass.cpp
M libcxx/test/libcxx/containers/views/mdspan/layout_stride/assert.conversion.pass.cpp
M libcxx/test/libcxx/containers/views/mdspan/layout_stride/assert.ctor.extents_array.non_unique.pass.cpp
M libcxx/test/libcxx/containers/views/mdspan/layout_stride/assert.ctor.extents_array.pass.cpp
M libcxx/test/libcxx/containers/views/mdspan/layout_stride/assert.ctor.extents_span.non_unique.pass.cpp
M libcxx/test/libcxx/thread/thread.barrier/assert.arrive.pass.cpp
M libcxx/test/libcxx/thread/thread.latch/assert.arrive_and_wait.pass.cpp
M libcxx/test/libcxx/thread/thread.latch/assert.ctor.pass.cpp
M libcxx/test/libcxx/thread/thread.semaphore/assert.ctor.pass.cpp
M libcxx/test/support/check_assertion.h
M libcxx/test/support/test.support/test_check_assertion.pass.cpp
M libcxx/utils/ci/run-buildbot
M libcxx/utils/libcxx/test/params.py
M libcxx/vendor/llvm/default_assertion_handler.in
M libcxxabi/src/demangle/DemangleConfig.h
Log Message:
-----------
[libc++][hardening] Introduce assertion semantics (#148268)
Assertion semantics closely mimic C++26 Contracts evaluation semantics.
This brings our implementation closer in line with C++26 Library
Hardening (one particular benefit is that using the `observe` semantic
makes adopting hardening easier for projects).
Commit: 58d79aaba6765606f78fc6ec6b9ae1db3b44d834
https://github.com/llvm/llvm-project/commit/58d79aaba6765606f78fc6ec6b9ae1db3b44d834
Author: David Green <david.green at arm.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
M llvm/test/Analysis/CostModel/AArch64/sve-div.ll
Log Message:
-----------
[AArch64] Guard against non-simple types in udiv sve costs. (#148580)
The code here probably needs to change to handle types more uniformly,
but this patch prevents it from trying to use a simple type where it does
not exist.
Fixes #148438.
Commit: a1c61ac7563220f3b0180d4367937d910dc85849
https://github.com/llvm/llvm-project/commit/a1c61ac7563220f3b0180d4367937d910dc85849
Author: Tom Eccles <tom.eccles at arm.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/include/llvm/Frontend/OpenMP/OMPIRBuilder.h
M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
M llvm/unittests/Frontend/OpenMPIRBuilderTest.cpp
M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
A mlir/test/Target/LLVMIR/openmp-composite-simd-if.mlir
M mlir/test/Target/LLVMIR/openmp-llvm.mlir
M mlir/test/Target/LLVMIR/openmp-reduction.mlir
M mlir/test/Target/LLVMIR/openmp-todo.mlir
Log Message:
-----------
[mlir][OpenMP] Allow composite SIMD REDUCTION and IF (#147568)
Reduction support: https://github.com/llvm/llvm-project/pull/146671
If Support is fixed in this PR
The problem for the IF clause in composite constructs was that wsloop
and simd both operate on the same CanonicalLoopInfo structure: with the
SIMD processed first, followed by the wsloop. Previously the IF clause
generated code like
```
if (cond) {
while (...) {
simd_loop_body;
}
} else {
while (...) {
nonsimd_loop_body;
}
}
```
The problem with this is that this invalidates the CanonicalLoopInfo
structure to be processed by the wsloop later. To avoid this, in this
patch I preserve the original loop, moving the IF clause inside of the
loop:
```
while (...) {
if (cond) {
simd_loop_body;
} else {
non_simd_loop_body;
}
}
```
On simple examples I tried LLVM was able to hoist the if condition
outside of the loop at -O3.
The disadvantage of this is that we cannot add the
llvm.loop.vectorize.enable attribute on either the SIMD or non-SIMD
loops because they both share a loop back edge. There's no way of
solving this without keeping the old design of having two different
loops: which cannot be represented using only one CanonicalLoopInfo
structure. I don't think the presence or absence of this attribute makes
much difference. In my testing it is the llvm.loop.parallel_access
metadata which makes the difference to vectorization. LLVM will
vectorize if legal whether or not this attribute is there in the TRUE
branch. In the FALSE branch this means the loop might be vectorized even
when the condition is false: but I think this is still standards
compliant: OpenMP 6.0 says that when the if clause is false that should
be treated like the SIMDLEN clause is one. The SIMDLEN clause is defined
as a "hint". For the same reason, SIMDLEN and SAFELEN clauses are
silently ignored when SIMD IF is used.
I think it is better to implement SIMD IF and ignore SIMDLEN and SAFELEN
and some vectorization encouragement metadata when combined with IF than
to ignore IF because IF could have correctness consequences whereas the
rest are optimiztion hints. For example, the user might use the IF
clause to disable SIMD programatically when it is known not safe to
vectorize the loop. In this case it is not at all safe to add the
parallel access or SAFELEN metadata.
Commit: 259a11db5e8f558072a2253c02c775e39e23f05d
https://github.com/llvm/llvm-project/commit/259a11db5e8f558072a2253c02c775e39e23f05d
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/include/llvm/IR/RuntimeLibcalls.td
M llvm/lib/CodeGen/StackProtector.cpp
M llvm/lib/IR/RuntimeLibcalls.cpp
A llvm/test/CodeGen/NVPTX/no-stack-protector-libcall-error.ll
Log Message:
-----------
StackProtector: Use RuntimeLibcalls to query libcall names (#147913)
The compiler should not introduce calls to arbitrary strings
that aren't defined in RuntimeLibcalls. Previously OpenBSD was
disabling the default __stack_chk_fail, but there was no record
of the alternative __stack_smash_handler function it emits instead.
This also avoids a random triple check in the pass.
Commit: e68ef116b3f0701d9a2bfc5fb96597cff4ac8e4a
https://github.com/llvm/llvm-project/commit/e68ef116b3f0701d9a2bfc5fb96597cff4ac8e4a
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/include/llvm/IR/RuntimeLibcalls.td
Log Message:
-----------
RuntimeLibcalls: Add entries for some exception related functions (#147914)
SjLjEHPrepare and WasmEHPrepare directly emit calls to these by
name, and these are not tracked in RuntimeLibcalls. It will be easier
to fix this when RuntimeLibcalls is turned into an analysis, so just
add the entries for now.
Commit: d7dc5367eda08e9c688d0055df44156c9508487b
https://github.com/llvm/llvm-project/commit/d7dc5367eda08e9c688d0055df44156c9508487b
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/lib/CodeGen/SafeStack.cpp
A llvm/test/Transforms/SafeStack/NVPTX/lit.local.cfg
A llvm/test/Transforms/SafeStack/NVPTX/safestack-libcall-error.ll
Log Message:
-----------
SafeStack: Emit call to __stack_chk_fail through RuntimeLibcalls (#147915)
Avoid hardcoding the function name, and query if it's really
supported or not.
Commit: 0c3a2faa8505bb4a6d56682b7e63368a246e7ba1
https://github.com/llvm/llvm-project/commit/0c3a2faa8505bb4a6d56682b7e63368a246e7ba1
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M libcxx/include/__new/allocate.h
Log Message:
-----------
[libc++] Simplify the implementation of __libcpp_{,de}allocate (#147989)
GCC 15 also supports `__buitin_operator_{new,delete}` now, so the
`#else` cases are dead code. This patch inlines the calls to the wrapper
functions and simplifies some surrounding code.
Commit: 148708493a80f9d75513f2e3721d043dd5b969a7
https://github.com/llvm/llvm-project/commit/148708493a80f9d75513f2e3721d043dd5b969a7
Author: Haohai Wen <haohai.wen at intel.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/include/llvm/Target/TargetLoweringObjectFile.h
M llvm/lib/CodeGen/TargetLoweringObjectFileImpl.cpp
M llvm/lib/Target/TargetLoweringObjectFile.cpp
Log Message:
-----------
[NFC] Hoist pseudo probe desc emission code for reuse (#148756)
This PR is part of #123870.
The pseudo probe desc emission code can be reused by other target.
Commit: b2eb7b070115cd6c17b9d1d164d52ac5e0d16b14
https://github.com/llvm/llvm-project/commit/b2eb7b070115cd6c17b9d1d164d52ac5e0d16b14
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/include/llvm/IR/RuntimeLibcalls.td
Log Message:
-----------
SPIRV: Define runtime libcalls to be (almost) empty (#148631)
This is a behavior change; previously SPIRV inherited
a default set of calls which seems like a mistake. This
defines a library set with no calls. Add memcpy and memset
as a hack; this avoids PreISelIntrinsicLowering performing
the default expansion. SPIRVPrepareFunctions also calls
the utilities to expand these but the resulting output
is slightly different. The backend specific version
can probably be removed, it for some reason has a larger
output than the default one.
Commit: a64bfd8a5186bc5b967878689509db81b9d1922c
https://github.com/llvm/llvm-project/commit/a64bfd8a5186bc5b967878689509db81b9d1922c
Author: David Spickett <david.spickett at linaro.org>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M lldb/source/Plugins/Disassembler/LLVMC/DisassemblerLLVMC.cpp
Log Message:
-----------
[lldb] Fix Disasembler build error on 32-bit systems
After changes in https://github.com/llvm/llvm-project/pull/145793.
/home/david.spickett/llvm-project/lldb/source/Plugins/Disassembler/LLVMC/DisassemblerLLVMC.cpp:1360:49: error: non-const lvalue reference to type 'uint64_t' (aka 'unsigned long long') cannot bind to a value of unrelated type 'size_t' (aka 'unsigned int')
1360 | status = m_disasm_up->getInstruction(mc_inst, size, data, pc, llvm::nulls());
| ^~~~
/home/david.spickett/llvm-project/llvm/include/llvm/MC/MCDisassembler/MCDisassembler.h:135:64: note: passing argument to parameter 'Size' here
135 | virtual DecodeStatus getInstruction(MCInst &Instr, uint64_t &Size,
| ^
1 error generated.
The type used in the LLVM method we call is uin64_t so use that instead.
It's overkill for what it is, but that's a separate issue if anyone cares.
Also removed the unused form of GetMCInst.
Commit: 92501396b42411d404729608d0456c9c29b06386
https://github.com/llvm/llvm-project/commit/92501396b42411d404729608d0456c9c29b06386
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/include/llvm/IR/RuntimeLibcalls.td
M llvm/lib/CodeGen/SafeStack.cpp
A llvm/test/Transforms/SafeStack/NVPTX/safestack-pointer-address-libcall-error.ll
Log Message:
-----------
SafeStack: Emit __safestack_pointer_address call through RuntimeLibcalls (#147916)
Stop using hardcoded function named and check availability. This only fixes
the forced usage via command line in the pass itself; the implementations
inside of TargetLoweringBase hide additional call emission.
Commit: bd4e7f5f5d90644b4899836776b30826f89bc154
https://github.com/llvm/llvm-project/commit/bd4e7f5f5d90644b4899836776b30826f89bc154
Author: Paul Walker <paul.walker at arm.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
M llvm/test/CodeGen/AArch64/load-combine.ll
Log Message:
-----------
[LLVM][DAGCombiner] Fix size calculations in calculateByteProvider. (#148425)
calculateByteProvider only cares about scalars or a single element
within a vector. For the later there is the VectorIndex parameter to
identify the element. All other properties, and specificially Index, are
related to the underyling scalar type and thus when taking the size of a
type it's the scalar size that matters.
Fixes https://github.com/llvm/llvm-project/issues/148387
Commit: a40dc05898b58a0e9534d8fda3bc1b28c398347b
https://github.com/llvm/llvm-project/commit/a40dc05898b58a0e9534d8fda3bc1b28c398347b
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
Log Message:
-----------
[VPlan] Mark canonical IV and reduction phis as not writing memory (NFC).
Both recipes do not write to memory. Should be NFC at the moment, as
they cannot be removed currently due to being in a cycle.
Commit: fda3fbee6f4ae241f46f1328efdc1aae1e49ea92
https://github.com/llvm/llvm-project/commit/fda3fbee6f4ae241f46f1328efdc1aae1e49ea92
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M libcxx/include/CMakeLists.txt
M libcxx/include/__configuration/availability.h
R libcxx/include/__log_hardening_failure
M libcxx/include/module.modulemap.in
M libcxx/lib/abi/CHANGELOG.TXT
M libcxx/lib/abi/arm64-apple-darwin.libcxxabi.v1.stable.exceptions.nonew.abilist
M libcxx/lib/abi/i686-linux-android21.libcxxabi.v1.stable.exceptions.nonew.abilist
M libcxx/lib/abi/powerpc-ibm-aix.libcxxabi.v1.stable.exceptions.nonew.abilist
M libcxx/lib/abi/powerpc64-ibm-aix.libcxxabi.v1.stable.exceptions.nonew.abilist
M libcxx/lib/abi/x86_64-apple-darwin.libcxxabi.v1.stable.exceptions.nonew.abilist
M libcxx/lib/abi/x86_64-linux-android21.libcxxabi.v1.stable.exceptions.nonew.abilist
M libcxx/lib/abi/x86_64-unknown-freebsd.libcxxabi.v1.stable.exceptions.nonew.abilist
M libcxx/lib/abi/x86_64-unknown-linux-gnu.libcxxabi.v1.stable.exceptions.nonew.abilist
M libcxx/lib/abi/x86_64-unknown-linux-gnu.libcxxabi.v1.stable.noexceptions.nonew.abilist
M libcxx/src/CMakeLists.txt
R libcxx/src/log_hardening_failure.cpp
R libcxx/test/libcxx/assertions/log_hardening_failure.pass.cpp
M libcxx/utils/libcxx/test/features.py
Log Message:
-----------
Revert "[libc++][hardening] Introduce a dylib function to log hardening errors." (#148787)
Reverts llvm/llvm-project#148266
I'm reverting this temporarily, since the release branch is today and
this is ABI sensitive. Let's wait until after the branch so that we have
plenty time to discuss the patch.
Commit: c6ac07b95a544c4ea3603792622d99c5cecb7a41
https://github.com/llvm/llvm-project/commit/c6ac07b95a544c4ea3603792622d99c5cecb7a41
Author: Stephen Tozer <stephen.tozer at sony.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M cross-project-tests/debuginfo-tests/dexter/dex/tools/TestToolBase.py
Log Message:
-----------
[Dexter] Add option to Dexter to name results based on directory (#148611)
As a legacy of Dexter's role as a test runner, it selects a name for
result files based on the relative path from the test root to each
individual test. Since Dexter no longer takes a test directory as an
argument, only the basename for each test is ever used. This patch adds
an optional --test-root-dir argument, allowing for relative paths to be
used for result files again.
Commit: af99f18d91a440504f2e375ee78a2a744e39ab65
https://github.com/llvm/llvm-project/commit/af99f18d91a440504f2e375ee78a2a744e39ab65
Author: Amr Hesham <amr96 at programmer.net>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M clang/include/clang/CIR/Dialect/Passes.h
M clang/include/clang/CIR/Dialect/Passes.td
M clang/lib/CIR/Dialect/Transforms/CMakeLists.txt
A clang/lib/CIR/Dialect/Transforms/LoweringPrepare.cpp
M clang/lib/CIR/Lowering/CIRPasses.cpp
Log Message:
-----------
[CIR] Upstream the basic structure of LoweringPrepare pass (#148545)
Upstream, the basic structure of the LoweringPrepare pass as a
prerequisite for other ComplexType PR's
https://github.com/llvm/llvm-project/issues/141365
Commit: 97d44e316676833c11be72111c944844862ae12a
https://github.com/llvm/llvm-project/commit/97d44e316676833c11be72111c944844862ae12a
Author: David Spickett <david.spickett at linaro.org>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M lldb/test/Shell/Commands/command-disassemble-riscv32-bytes.s
Log Message:
-----------
[lldb][test] Disable riscv32 disassembly filter test on Windows
Added by https://github.com/llvm/llvm-project/pull/145793
Failing on our Windows on Arm bot:
https://github.com/llvm/llvm-project/pull/145793
Shebang lines don't work on Windows and we can't pass "python script_name"
to the "fdis set" commadn because of the way arguments are parsed currently.
I can fix that but that needs review, disable the test for now.
Commit: adb6efeac92ba13d65ecacc12f8f84e83a2286d0
https://github.com/llvm/llvm-project/commit/adb6efeac92ba13d65ecacc12f8f84e83a2286d0
Author: Gaëtan Bossu <gaetan.bossu at arm.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/test/Transforms/SLPVectorizer/RISCV/segmented-loads.ll
Log Message:
-----------
[SLP] Fix cost estimation of external uses with wrong VF (#148185)
It assumed that the VF remains constant throughout the tree. That's not
always true. This meant that we could query the extraction cost for a
lane that is out of bounds.
While experimenting with re-vectorisation for AArch64, we ran into this
issue. We cannot add a proper AArch64 test as more changes would need to
be brought in.
This commit is only fixing the computation of VF and adding an assert.
Some tests were failing after adding the assert:
- foo() in llvm/test/Transforms/SLPVectorizer/X86/horizontal.ll
- test() in
llvm/test/Transforms/SLPVectorizer/X86/reduction-with-removed-extracts.ll
- test_with_extract() in
llvm/test/Transforms/SLPVectorizer/RISCV/segmented-loads.ll
Commit: 339a1f2e8f5c8f6a55e3f801e55c659bd526956c
https://github.com/llvm/llvm-project/commit/339a1f2e8f5c8f6a55e3f801e55c659bd526956c
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M .github/workflows/libcxx-build-and-test.yaml
R libcxx/cmake/caches/Generic-hardening-mode-extensive-observe-semantic.cmake
M libcxx/docs/Hardening.rst
M libcxx/docs/ReleaseNotes/21.rst
M libcxx/include/__config
M libcxx/test/libcxx/containers/views/mdspan/extents/assert.ctor_from_array.pass.cpp
M libcxx/test/libcxx/containers/views/mdspan/extents/assert.ctor_from_integral.pass.cpp
M libcxx/test/libcxx/containers/views/mdspan/layout_left/assert.conversion.pass.cpp
M libcxx/test/libcxx/containers/views/mdspan/layout_left/assert.ctor.extents.pass.cpp
M libcxx/test/libcxx/containers/views/mdspan/layout_left/assert.ctor.layout_right.pass.cpp
M libcxx/test/libcxx/containers/views/mdspan/layout_right/assert.conversion.pass.cpp
M libcxx/test/libcxx/containers/views/mdspan/layout_right/assert.ctor.extents.pass.cpp
M libcxx/test/libcxx/containers/views/mdspan/layout_right/assert.ctor.layout_left.pass.cpp
M libcxx/test/libcxx/containers/views/mdspan/layout_stride/assert.conversion.pass.cpp
M libcxx/test/libcxx/containers/views/mdspan/layout_stride/assert.ctor.extents_array.non_unique.pass.cpp
M libcxx/test/libcxx/containers/views/mdspan/layout_stride/assert.ctor.extents_array.pass.cpp
M libcxx/test/libcxx/containers/views/mdspan/layout_stride/assert.ctor.extents_span.non_unique.pass.cpp
M libcxx/test/libcxx/thread/thread.barrier/assert.arrive.pass.cpp
M libcxx/test/libcxx/thread/thread.latch/assert.arrive_and_wait.pass.cpp
M libcxx/test/libcxx/thread/thread.latch/assert.ctor.pass.cpp
M libcxx/test/libcxx/thread/thread.semaphore/assert.ctor.pass.cpp
M libcxx/test/support/check_assertion.h
M libcxx/test/support/test.support/test_check_assertion.pass.cpp
M libcxx/utils/ci/run-buildbot
M libcxx/utils/libcxx/test/params.py
M libcxx/vendor/llvm/default_assertion_handler.in
M libcxxabi/src/demangle/DemangleConfig.h
Log Message:
-----------
Revert "[libc++][hardening] Introduce assertion semantics" (#148822)
Reverts llvm/llvm-project#148268
It looks like this was based on #148266, which I reverted in #148787.
Commit: 0425a5df4d435461f772b5719de96ba2dce582cf
https://github.com/llvm/llvm-project/commit/0425a5df4d435461f772b5719de96ba2dce582cf
Author: William Huynh <William.Huynh at arm.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M libc/CMakeLists.txt
M libc/cmake/modules/LLVMLibCTestRules.cmake
Log Message:
-----------
[libc] Add hooks for extra options in running hermetic tests (#147931)
Part of #145349. These hooks are required downstream in order to run
hermetic tests. See https://github.com/arm/arm-toolchain/pull/420 for
more context on how this PR will be used.
Commit: ec149d5ef8930986bc3dc404cdb8f7e925333f6e
https://github.com/llvm/llvm-project/commit/ec149d5ef8930986bc3dc404cdb8f7e925333f6e
Author: Jannick Kremer <jannick.kremer at mailbox.org>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M .github/workflows/libclang-python-tests.yml
M clang/CMakeLists.txt
R clang/bindings/python/tests/CMakeLists.txt
R clang/bindings/python/tests/__init__.py
R clang/bindings/python/tests/cindex/INPUTS/a.inc
R clang/bindings/python/tests/cindex/INPUTS/b.inc
R clang/bindings/python/tests/cindex/INPUTS/compile_commands.json
R clang/bindings/python/tests/cindex/INPUTS/header1.h
R clang/bindings/python/tests/cindex/INPUTS/header2.h
R clang/bindings/python/tests/cindex/INPUTS/header3.h
R clang/bindings/python/tests/cindex/INPUTS/hello.cpp
R clang/bindings/python/tests/cindex/INPUTS/include.cpp
R clang/bindings/python/tests/cindex/INPUTS/parse_arguments.c
R clang/bindings/python/tests/cindex/INPUTS/testfile.c
R clang/bindings/python/tests/cindex/__init__.py
R clang/bindings/python/tests/cindex/test_access_specifiers.py
R clang/bindings/python/tests/cindex/test_cdb.py
R clang/bindings/python/tests/cindex/test_code_completion.py
R clang/bindings/python/tests/cindex/test_comment.py
R clang/bindings/python/tests/cindex/test_cursor.py
R clang/bindings/python/tests/cindex/test_cursor_kind.py
R clang/bindings/python/tests/cindex/test_diagnostics.py
R clang/bindings/python/tests/cindex/test_enums.py
R clang/bindings/python/tests/cindex/test_exception_specification_kind.py
R clang/bindings/python/tests/cindex/test_file.py
R clang/bindings/python/tests/cindex/test_index.py
R clang/bindings/python/tests/cindex/test_lib.py
R clang/bindings/python/tests/cindex/test_linkage.py
R clang/bindings/python/tests/cindex/test_location.py
R clang/bindings/python/tests/cindex/test_rewrite.py
R clang/bindings/python/tests/cindex/test_source_range.py
R clang/bindings/python/tests/cindex/test_tls_kind.py
R clang/bindings/python/tests/cindex/test_token_kind.py
R clang/bindings/python/tests/cindex/test_tokens.py
R clang/bindings/python/tests/cindex/test_translation_unit.py
R clang/bindings/python/tests/cindex/test_type.py
R clang/bindings/python/tests/cindex/util.py
M clang/test/CMakeLists.txt
A clang/test/bindings/python/bindings.sh
A clang/test/bindings/python/lit.local.cfg
A clang/test/bindings/python/tests/__init__.py
A clang/test/bindings/python/tests/cindex/INPUTS/a.inc
A clang/test/bindings/python/tests/cindex/INPUTS/b.inc
A clang/test/bindings/python/tests/cindex/INPUTS/compile_commands.json
A clang/test/bindings/python/tests/cindex/INPUTS/header1.h
A clang/test/bindings/python/tests/cindex/INPUTS/header2.h
A clang/test/bindings/python/tests/cindex/INPUTS/header3.h
A clang/test/bindings/python/tests/cindex/INPUTS/hello.cpp
A clang/test/bindings/python/tests/cindex/INPUTS/include.cpp
A clang/test/bindings/python/tests/cindex/INPUTS/parse_arguments.c
A clang/test/bindings/python/tests/cindex/INPUTS/testfile.c
A clang/test/bindings/python/tests/cindex/__init__.py
A clang/test/bindings/python/tests/cindex/test_access_specifiers.py
A clang/test/bindings/python/tests/cindex/test_cdb.py
A clang/test/bindings/python/tests/cindex/test_code_completion.py
A clang/test/bindings/python/tests/cindex/test_comment.py
A clang/test/bindings/python/tests/cindex/test_cursor.py
A clang/test/bindings/python/tests/cindex/test_cursor_kind.py
A clang/test/bindings/python/tests/cindex/test_diagnostics.py
A clang/test/bindings/python/tests/cindex/test_enums.py
A clang/test/bindings/python/tests/cindex/test_exception_specification_kind.py
A clang/test/bindings/python/tests/cindex/test_file.py
A clang/test/bindings/python/tests/cindex/test_index.py
A clang/test/bindings/python/tests/cindex/test_lib.py
A clang/test/bindings/python/tests/cindex/test_linkage.py
A clang/test/bindings/python/tests/cindex/test_location.py
A clang/test/bindings/python/tests/cindex/test_rewrite.py
A clang/test/bindings/python/tests/cindex/test_source_range.py
A clang/test/bindings/python/tests/cindex/test_tls_kind.py
A clang/test/bindings/python/tests/cindex/test_token_kind.py
A clang/test/bindings/python/tests/cindex/test_tokens.py
A clang/test/bindings/python/tests/cindex/test_translation_unit.py
A clang/test/bindings/python/tests/cindex/test_type.py
A clang/test/bindings/python/tests/cindex/util.py
Log Message:
-----------
[clang][python][test] Move python binding tests to lit framework (#148802)
As discussed in PR #142353, the current testsuite of the `clang` Python
bindings has several issues:
- It `libclang.so` cannot be loaded into `python` to run the testsuite,
the whole `ninja check-all` aborts.
- The result of running the testsuite isn't report like the `lit`-based
tests, rendering them almost invisible.
- The testsuite is disabled in a non-obvious way (`RUN_PYTHON_TESTS`) in
`tests/CMakeLists.txt`, which again doesn't show up in the test results.
All these issues can be avoided by integrating the Python bindings tests
with `lit`, which is what this patch does:
- The actual test lives in `clang/test/bindings/python/bindings.sh` and
is run by `lit`.
- The current `clang/bindings/python/tests` directory (minus the
now-subperfluous `CMakeLists.txt`) is moved into the same directory.
- The check if `libclang` is loadable (originally from PR #142353) is
now handled via a new `lit` feature, `libclang-loadable`.
- The various ways to disable the tests have been turned into `XFAIL`s
as appropriate. This isn't complete and not completely tested yet.
Tested on `sparc-sun-solaris2.11`, `sparcv9-sun-solaris2.11`,
`i386-pc-solaris2.11`, `amd64-pc-solaris2.11`, `i686-pc-linux-gnu`, and
`x86_64-pc-linux-gnu`.
Co-authored-by: Rainer Orth <ro at gcc.gnu.org>
Commit: b3240b4889bb4b700e655d21e908ae07cfda5a55
https://github.com/llvm/llvm-project/commit/b3240b4889bb4b700e655d21e908ae07cfda5a55
Author: Amr Hesham <amr96 at programmer.net>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M clang/include/clang/CIR/Dialect/Passes.td
Log Message:
-----------
[CIR][NFC] Fix LoweringPrepare pass multi lines summary (#148826)
Fix the Lowering Prepare a multi-line summary
Commit: 8a7a64873b13e6fd931b748fbf50b3da26fe7fca
https://github.com/llvm/llvm-project/commit/8a7a64873b13e6fd931b748fbf50b3da26fe7fca
Author: Fraser Cormack <fraser at codeplay.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M libclc/CMakeLists.txt
A libclc/utils/CMakeLists.txt
Log Message:
-----------
[libclc] Move CMake for prepare_builtins to a subdirectory (#148815)
This simply makes things better self-contained.
Commit: 2f70e074f21ab00a3377a3a6dec32ab3684e33da
https://github.com/llvm/llvm-project/commit/2f70e074f21ab00a3377a3a6dec32ab3684e33da
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
A llvm/test/CodeGen/XCore/llvm.frexp.ll
Log Message:
-----------
XCore: Add frexp intrinsic test (#148676)
Commit: 8cbcaee7fe3629554fa21e7a82efaf1be300af42
https://github.com/llvm/llvm-project/commit/8cbcaee7fe3629554fa21e7a82efaf1be300af42
Author: Vikram Hegde <115221833+vikramRH at users.noreply.github.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/include/llvm/Passes/MachinePassRegistry.def
M llvm/lib/Passes/PassBuilder.cpp
M llvm/lib/Passes/PassRegistry.def
M llvm/test/CodeGen/AMDGPU/llc-pipeline-npm.ll
Log Message:
-----------
[CodeGen][NPM] Register Function Passes (#148109)
same as https://github.com/llvm/llvm-project/pull/138828,
Co-authored-by : Oke, Akshat
<[Akshat.Oke at amd.com](mailto:Akshat.Oke at amd.com)>
Commit: 57d81c23f4c8d3ad88210aab29f0809974e7d1ce
https://github.com/llvm/llvm-project/commit/57d81c23f4c8d3ad88210aab29f0809974e7d1ce
Author: Corentin Jabot <corentinjabot at gmail.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Sema/SemaType.cpp
M clang/test/SemaCXX/cxx2b-deducing-this.cpp
Log Message:
-----------
[Clang] Remove explicit object from non member function. (#148807)
To avoid crashing later (as we assume only member functions can have
explicit object parameters)
Fixes #113185
Commit: 2a9afdb7937710a4af5ebe5ab3a4fdd235fbf08e
https://github.com/llvm/llvm-project/commit/2a9afdb7937710a4af5ebe5ab3a4fdd235fbf08e
Author: Haojian Wu <hokein.wu at gmail.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M clang/include/clang/Sema/ParsedAttr.h
Log Message:
-----------
[clang] Reduce the size of ParsedAttributesView and AttributePool (#148726)
These objects are used as local stack variables during parsing, and they
are not small. This patch reduces their sizes:
* `ParsedAttributesView`: 72 → 40 bytes
* `AttributePool`: 72 → 40 bytes
No negative performance impact has been
[observed](https://llvm-compile-time-tracker.com/compare.php?from=a709621cd545b061782b03136286227867b452a6&to=f50500b3c178e97c0c861301e853e6d5b859040b&stat=instructions:u).
**Context:**
We have some verilator-generated code with extremely deep nesting of
parenthesized expressions, e.g.:
```cpp
bool s =
(...(bool)(i[0])
|(bool)(i[1]))
|(bool)(i[2]))
| ...
|(bool)(i[n]));
```
Before this patch, on my local machine, Clang begins emitting
`-Wstack-exhausted` when `n` is 715. After the patch, that threshold
increases to `950`.
Commit: a2b31109458a10197e038959c1ccbcf9a84284a8
https://github.com/llvm/llvm-project/commit/a2b31109458a10197e038959c1ccbcf9a84284a8
Author: Haojian Wu <hokein.wu at gmail.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M clang/include/clang/Sema/DeclSpec.h
Log Message:
-----------
[clang] Reduce the small vector size for DeclTypeInfo. (#148788)
The `Declarator` class is large (4584 bytes) and used as a stack-local
variable during parsing.
This patch reduces the default size of its `DeclTypeInfo` member,
reducing the overall size down to 3880 bytes. This allows clang handle
more deeply nested expressions without exhausting the stack.
Combined with #148726, the nesting threshold for such expressions
increases to `~1100`.
No performance impact being
[observed](https://llvm-compile-time-tracker.com/compare.php?from=d4f5ed6a23464cbe831820cb695aa1d39b11e4aa&to=66ba54b8a295cc2759387ef2a4a162de2ad4946e&stat=instructions:u).
Commit: a9cfe84d8891cf40366354002cae85cac2332634
https://github.com/llvm/llvm-project/commit/a9cfe84d8891cf40366354002cae85cac2332634
Author: David Spickett <david.spickett at linaro.org>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/docs/ReleaseNotes.md
Log Message:
-----------
[llvm][docs] Correct formatting in lldb release note
When you use <> in markdown it thinks it's an HTML tag
and does not show anything.
Commit: cfdd5ca2edb1d427ae1879dcd38b71b73e928be3
https://github.com/llvm/llvm-project/commit/cfdd5ca2edb1d427ae1879dcd38b71b73e928be3
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
A llvm/test/Transforms/LoopVectorize/AArch64/fmin-without-fast-math-flags.ll
A llvm/test/Transforms/LoopVectorize/fmin-without-fast-math-flags.ll
Log Message:
-----------
[LV] Add tests for fmin reductions without fast-math flags.
Some of those reductions can be vectorized with extra checks.
Extra tests for https://github.com/llvm/llvm-project/pull/148239 and
follow-ups.
Commit: 17d9f2aee9bcc52ac73ee8f1003fe36646912fda
https://github.com/llvm/llvm-project/commit/17d9f2aee9bcc52ac73ee8f1003fe36646912fda
Author: David Spickett <david.spickett at linaro.org>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
Log Message:
-----------
[clang][docs] Fix formatting in breaking changes note
Need to use double backticks to get plain text in RST.
Commit: acffe8324b6213db3bf39e8ef72545ffc0ef9ceb
https://github.com/llvm/llvm-project/commit/acffe8324b6213db3bf39e8ef72545ffc0ef9ceb
Author: Orlando Cazalet-Hyams <orlando.hyams at sony.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/docs/HowToUpdateDebugInfo.rst
A llvm/docs/KeyInstructionsDebugInfo.md
M llvm/docs/UserGuides.rst
Log Message:
-----------
[KeyInstr] Add docs (#137991)
This document explains the core ideas and some implementation details
of the Key Instructions project. The LLVM document also outlines the two
main limitations of our approach.
RFC:
https://discourse.llvm.org/t/rfc-improving-is-stmt-placement-for-better-interactive-debugging/82668
Commit: 0b784269f16f0555d33e259f0b194ad4ad1a8e94
https://github.com/llvm/llvm-project/commit/0b784269f16f0555d33e259f0b194ad4ad1a8e94
Author: Hugo Melder <service at hugomelder.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M clang/lib/CodeGen/CGObjCGNU.cpp
A clang/test/CodeGenObjC/gnustep2-class-exts.m
Log Message:
-----------
[CodeGen][ObjC] Include all referenced protocols in protocol list (#148827)
When constructing the protocol list in the class metadata generation
(`GenerateClass`), only the protocols from the base class are added but
not protocols declared in class extensions.
This is fixed by using `all_referenced_protocol_{begin, end}` instead of
`protocol_{begin, end}`, matching the behaviour on Apple platforms.
A unit test is included to check if all protocol metadata was emitted
and that no duplication occurs in the protocol list.
Fixes https://github.com/gnustep/libobjc2/issues/339
CC: @davidchisnall
Commit: 9eb0fc8e57679c5539173bdd13057b523209a596
https://github.com/llvm/llvm-project/commit/9eb0fc8e57679c5539173bdd13057b523209a596
Author: Orlando Cazalet-Hyams <orlando.hyams at sony.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/docs/HowToUpdateDebugInfo.rst
Log Message:
-----------
Fix link in docs after #137991
Commit: b3c293c5b977dd8ea824c66e932719ee8245b6ca
https://github.com/llvm/llvm-project/commit/b3c293c5b977dd8ea824c66e932719ee8245b6ca
Author: Ryotaro Kasuga <kasuga.ryotaro at fujitsu.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/lib/Transforms/Scalar/LoopInterchange.cpp
A llvm/test/Transforms/LoopInterchange/reductions-non-wrapped-operations.ll
A llvm/test/Transforms/LoopInterchange/reductions-with-nowraps.ll
Log Message:
-----------
[LoopInterchange] Drop nuw/nsw flags from reduction ops when interchanging (#148612)
Before this patch, when a reduction exists in the loop, the legality
check of LoopInterchange only verified if there exists a
non-reassociative floating-point instruction in the reduction
calculation. However, it is insufficient, because reordering integer
reductions can also lead to incorrect transformations. Consider the
following example:
```c
int A[2][2] = {
{ INT_MAX, INT_MAX },
{ INT_MIN, INT_MIN },
};
int sum = 0;
for (int i = 0; i < 2; i++)
for (int j = 0; j < 2; j++)
sum += A[j][i];
```
To make this exchange legal, we must drop nuw/nsw flags from the
instructions involved in the reduction operations.
This patch extends the legality check to correctly handle such cases. In
particular, for integer addition and multiplication, it verifies that
the nsw and nuw flags are set on involved instructions, and drop them
when the transformation actually performed. This patch also introduces
explicit checks for the kind of reduction and permits only those that
are known to be safe for interchange. Consequently, some "unknown"
reductions (at the moment, `FindFirst*` and `FindLast*`) are rejected.
Fix #148228
Commit: 8226fbee4b6254bc3cd4806de623937262028883
https://github.com/llvm/llvm-project/commit/8226fbee4b6254bc3cd4806de623937262028883
Author: Haohai Wen <haohai.wen at intel.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/lib/Target/TargetLoweringObjectFile.cpp
Log Message:
-----------
[NFC] Extract pseudo probe using mdconst::extract (#148821)
mdconst::extract is more rigorous than mdconst::dyn_exract in this
context.
Commit: 5977766bf6753c525ccc12856ce159c5e45a8b06
https://github.com/llvm/llvm-project/commit/5977766bf6753c525ccc12856ce159c5e45a8b06
Author: Orlando Cazalet-Hyams <orlando.hyams at sony.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
A clang/test/DebugInfo/KeyInstructions/array-cookie.cpp
Log Message:
-----------
[KeyInstr][Clang][NFC] Add test for array cookie store (#146517)
It doesn't need to be a Key Instruction.
Commit: 612afab512eddfd82f51cce76668a14b928748c6
https://github.com/llvm/llvm-project/commit/612afab512eddfd82f51cce76668a14b928748c6
Author: Luke Lau <luke at igalia.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVVLOptimizer.cpp
M llvm/lib/Target/RISCV/RISCVVectorMaskDAGMutation.cpp
Log Message:
-----------
[RISCV] Use MachineInstr::isFullCopy in a few places. NFC
Instead of checking that there's no subregisters.
Commit: 94b15a1ece37963c9804fc7f0c498d140ea5fd9d
https://github.com/llvm/llvm-project/commit/94b15a1ece37963c9804fc7f0c498d140ea5fd9d
Author: Mohammadreza Ameri Mahabadian <mohammadreza.amerimahabadian at arm.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVBase.td
M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVStructureOps.td
M mlir/lib/Dialect/SPIRV/IR/SPIRVOps.cpp
M mlir/lib/Target/SPIRV/Deserialization/DeserializeOps.cpp
M mlir/lib/Target/SPIRV/Deserialization/Deserializer.cpp
M mlir/lib/Target/SPIRV/Deserialization/Deserializer.h
M mlir/lib/Target/SPIRV/Serialization/SerializeOps.cpp
M mlir/lib/Target/SPIRV/Serialization/Serializer.cpp
M mlir/lib/Target/SPIRV/Serialization/Serializer.h
M mlir/test/Dialect/SPIRV/IR/availability.mlir
M mlir/test/Dialect/SPIRV/IR/structure-ops.mlir
M mlir/test/Target/SPIRV/constant.mlir
M mlir/test/Target/SPIRV/spec-constant.mlir
Log Message:
-----------
[mlir][spirv] Add basic support for SPV_EXT_replicated_composites (#147067)
This patch introduces two new ops to the SPIR-V dialect:
- `spirv.EXT.ConstantCompositeReplicate`
- `spirv.EXT.SpecConstantCompositeReplicate`
These ops represent composite constants and specialization constants,
respectively, constructed by replicating a single splat constant across
all elements. They correspond to `SPV_EXT_replicated_composites`
extension instructions:
- `OpConstantCompositeReplicatedEXT`
- `OpSpecConstantCompositeReplicatedEXT`
No transformation to these new ops has been introduced in this patch.
This approach is chosen as per the discussions on RFC
https://discourse.llvm.org/t/rfc-basic-support-for-spv-ext-replicated-composites-in-mlir-spir-v-compile-time-constant-lowering-only/86987
---------
Signed-off-by: Mohammadreza Ameri Mahabadian <mohammadreza.amerimahabadian at arm.com>
Commit: bda56023c90168ef4eb34442c5e37e3c36d9c825
https://github.com/llvm/llvm-project/commit/bda56023c90168ef4eb34442c5e37e3c36d9c825
Author: Martin Erhart <martin.erhart at sifive.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M mlir/include/mlir/Analysis/SliceAnalysis.h
M mlir/lib/Analysis/SliceAnalysis.cpp
M mlir/test/Dialect/Affine/slicing-utils.mlir
Log Message:
-----------
[mlir][SliceAnalysis] Fix stack overflow in graph regions (#139694)
This analysis currently just crashes when applied to a graph region that
has a use-def cycle. This PR fixes that by keeping track of the
operations the DFS has already visited when following use-def edges and
stopping once we visit an operation again.
Commit: 50e345ef95596f9d416700cf9bc8bc6d3ef25591
https://github.com/llvm/llvm-project/commit/50e345ef95596f9d416700cf9bc8bc6d3ef25591
Author: Sander de Smalen <sander.desmalen at arm.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ExpandPseudoInsts.cpp
M llvm/lib/Target/AArch64/AArch64InstrInfo.cpp
M llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td
M llvm/test/CodeGen/AArch64/spillfill-sve.mir
Log Message:
-----------
[AArch64] Use correct regclass for spills of ZPR2/ZPR4 (#148806)
Commit a6293228fdd5aba8c04c63f02f3d017443feb3f2 forced the register
class of ZPR[24]StridedOrContiguous for spills/fills of ZPR2 and ZPR4,
but this may result in issues when the regclass for the fill is a
ZPR2/ZPR4 which would allow the register allocator to pick `z1_z2`,
which is not a supported register for ZPR2StridedOrContiguous that only
supports tuples of the form (strided) `z0_z8`, `z1_z9` or (contiguous,
start at multiple of 2) `z0_z1`, `z2_z3`. For spills we could add a new
register class that supports any of the tuple forms, but I've decided
to use two pseudos similar to the fills for consistency.
Fixes https://github.com/llvm/llvm-project/issues/148655
Commit: 1fbe87b1d0edac9d9af29eb51b27747cb8c630c6
https://github.com/llvm/llvm-project/commit/1fbe87b1d0edac9d9af29eb51b27747cb8c630c6
Author: Sander de Smalen <sander.desmalen at arm.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ExpandPseudoInsts.cpp
M llvm/test/CodeGen/AArch64/sve-pseudos-expand-undef.mir
Log Message:
-----------
[AArch64] Ensure bundle expansion of MOVPRFX gets correct implicit ops (#148824)
By finalizing the bundle _after_ copying over the implicit-ops, it also
adds any implicit-defs to the BUNDLE.
Fixes https://github.com/llvm/llvm-project/issues/148645
Commit: d26106dbf002d71915f2c8a78629111f6b540db3
https://github.com/llvm/llvm-project/commit/d26106dbf002d71915f2c8a78629111f6b540db3
Author: Sjoerd Meijer <smeijer at nvidia.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64Subtarget.cpp
Log Message:
-----------
[AArch64] Set the cache line size to 64 for the V2 and V3. (#148213)
This sets the cache line size to 64 for the Neoverse V2 and V3. I've
tested this with loop-interchange: it doesn't result in extra
compile-times, but it does enable a lot more interchange.
Commit: face93e724f42f46ec619c788db3cec03beb396c
https://github.com/llvm/llvm-project/commit/face93e724f42f46ec619c788db3cec03beb396c
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/include/llvm/Frontend/OpenMP/ConstructDecompositionT.h
M llvm/include/llvm/Frontend/OpenMP/OMP.h
Log Message:
-----------
[Frontend][OpenMP] Move isPrivatizingClause to OMP.h, NFC (#148644)
Commit: 01f36b39bd2475a271bbeb95fb9db8ed65e2d065
https://github.com/llvm/llvm-project/commit/01f36b39bd2475a271bbeb95fb9db8ed65e2d065
Author: Tobias Hieta <tobias at hieta.se>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M cmake/Modules/LLVMVersion.cmake
M libcxx/include/__config
M llvm/utils/gn/secondary/llvm/version.gni
M llvm/utils/lit/lit/__init__.py
M llvm/utils/mlgo-utils/mlgo/__init__.py
Log Message:
-----------
Bump version to 22.0.0-git
Commit: 51b6f64b892bf57879389e7031051a3922aa5061
https://github.com/llvm/llvm-project/commit/51b6f64b892bf57879389e7031051a3922aa5061
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M flang/include/flang/Parser/parse-tree.h
M flang/lib/Parser/openmp-parsers.cpp
M flang/lib/Parser/parse-tree.cpp
M flang/lib/Parser/program-parsers.cpp
M flang/lib/Parser/type-parsers.h
M flang/test/Parser/OpenMP/fail-construct1.f90
Log Message:
-----------
[flang][OpenMP] Avoid unnecessary parsing of OpenMP constructs (#148629)
When parsing a specification part, the parser will look ahead to see if
the next construct is an executable construct. In doing so it will
invoke OpenMPConstruct parser, whereas the only necessary thing to check
would be the directive alone.
Commit: 5004c59803fdeb3389d30439a6cc8b1ff874df0c
https://github.com/llvm/llvm-project/commit/5004c59803fdeb3389d30439a6cc8b1ff874df0c
Author: bd1976bris <Ben.Dunbobbin at sony.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M clang/docs/ThinLTO.rst
M clang/include/clang/Driver/Options.td
M clang/lib/Driver/ToolChains/CommonArgs.cpp
A clang/test/Driver/DTLTO/dtlto.c
M cross-project-tests/dtlto/ld-dtlto.c
Log Message:
-----------
[DTLTO][Clang] Add support for Integrated Distributed ThinLTO (#147265)
This patch introduces support for Integrated Distributed ThinLTO (DTLTO)
in Clang.
DTLTO enables the distribution of ThinLTO backend compilations via
external distribution systems, such as Incredibuild, during the
traditional link step: https://llvm.org/docs/DTLTO.html.
Testing:
- `lit` test coverage has been added to Clang's Driver tests.
- The DTLTO cross-project tests will use this Clang support.
For the design discussion of the DTLTO feature, see:
https://github.com/llvm/llvm-project/pull/126654
Commit: 20b47bfdb5aee6e66d06342c275d56477371dc4e
https://github.com/llvm/llvm-project/commit/20b47bfdb5aee6e66d06342c275d56477371dc4e
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/include/llvm/IR/RuntimeLibcalls.td
Log Message:
-----------
DXIL: Do not define any available runtime libcalls (#148628)
Previously this was reporting a default set of calls
as available.
Commit: 67aee6bcb8c3f12b66631c5e4480717053c51157
https://github.com/llvm/llvm-project/commit/67aee6bcb8c3f12b66631c5e4480717053c51157
Author: Henrich Lauko <xlauko at mail.muni.cz>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M clang/include/clang/CIR/Dialect/IR/CIRAttrs.td
M clang/include/clang/CIR/Dialect/IR/CIRDialect.h
M clang/include/clang/CIR/Dialect/IR/CIRDialect.td
M clang/include/clang/CIR/Dialect/IR/CIRTypes.h
M clang/include/clang/CIR/Dialect/IR/CIRTypes.td
Log Message:
-----------
[CIR] Refactor include guards to use a consistent naming (NFC) (#148849)
Commit: 9f7937401b62d95f2ebe86072d6f277eb9745cd0
https://github.com/llvm/llvm-project/commit/9f7937401b62d95f2ebe86072d6f277eb9745cd0
Author: Henrich Lauko <xlauko at mail.muni.cz>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M clang/include/clang/CIR/Dialect/IR/CIRAttrs.td
A clang/include/clang/CIR/Dialect/IR/CIREnumAttr.td
Log Message:
-----------
[CIR] Separate CIR EnumAttr definitions to be includable without the rest of attributes (#148850)
This change allows enum definition classes to be included in type definitions without creating cyclic dependencies between CIRTypes.td and CIRAttrs.td, since attributes already include CIRTypes.td. In the pull request mentioned below, this is used to define the AddressSpace enum alongside PointerType.
Additionally, this introduces `DefaultValuedEnumParameter`.
This mirrors some parts of incubator change from https://github.com/llvm/clangir/pull/1733
Commit: 02d3738be92eac38cebfb7b670673abb9538ca76
https://github.com/llvm/llvm-project/commit/02d3738be92eac38cebfb7b670673abb9538ca76
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.h
M llvm/test/Analysis/CostModel/AArch64/reduce-and.ll
M llvm/test/Analysis/CostModel/AArch64/reduce-or.ll
M llvm/test/Analysis/CostModel/AArch64/reduce-xor.ll
M llvm/test/Analysis/CostModel/AArch64/shuffle-other.ll
M llvm/test/Analysis/CostModel/AArch64/shuffle-select.ll
M llvm/test/Analysis/CostModel/AArch64/sve-intrinsics.ll
M llvm/test/Transforms/SLPVectorizer/AArch64/ext-trunc.ll
M llvm/test/Transforms/SLPVectorizer/AArch64/external-use-icmp.ll
A llvm/test/Transforms/SLPVectorizer/AArch64/extract-subvector-long-input.ll
M llvm/test/Transforms/SLPVectorizer/AArch64/extractelements-to-shuffle.ll
M llvm/test/Transforms/SLPVectorizer/AArch64/gather-buildvector-with-minbitwidth-user.ll
M llvm/test/Transforms/SLPVectorizer/AArch64/getelementptr.ll
M llvm/test/Transforms/SLPVectorizer/AArch64/getelementptr2.ll
M llvm/test/Transforms/SLPVectorizer/AArch64/memory-runtime-checks.ll
M llvm/test/Transforms/SLPVectorizer/AArch64/multiple_reduction.ll
A llvm/test/Transforms/SLPVectorizer/AArch64/phi-node-bitwidt-op-not.ll
M llvm/test/Transforms/SLPVectorizer/AArch64/splat-loads.ll
M llvm/test/Transforms/SLPVectorizer/AArch64/unreachable-blocks-with-phis.ll
M llvm/test/Transforms/SLPVectorizer/AArch64/vector-getelementptr.ll
M llvm/test/Transforms/SLPVectorizer/AArch64/vectorizable-selects-uniform-cmps.ll
A llvm/test/Transforms/SLPVectorizer/X86/extract-subvector-long-input.ll
A llvm/test/Transforms/SLPVectorizer/X86/icmp-altopcode-after-reordering.ll
A llvm/test/Transforms/SLPVectorizer/X86/phi-node-bitwidt-op-not.ll
M llvm/test/Transforms/SLPVectorizer/alternate-opcode-sindle-bv.ll
R llvm/test/Transforms/SLPVectorizer/extract-subvector-long-input.ll
R llvm/test/Transforms/SLPVectorizer/icmp-altopcode-after-reordering.ll
R llvm/test/Transforms/SLPVectorizer/phi-node-bitwidt-op-not.ll
M llvm/test/Transforms/VectorCombine/AArch64/load-extractelement-scalarization.ll
Log Message:
-----------
[AArch64,TTI] Remove RealUse check for vector insert/extract costs. (#146526)
getVectorInstrCostHelper would return costs of zero for vector
inserts/extracts that move data between GPR and vector registers, if
there was no 'real' use, i.e. there was no corresponding existing
instruction.
This meant that passes like LoopVectorize and SLPVectorizer, which
likely are the main users of the interface, would understimate the cost
of insert/extracts that move data between GPR and vector registers,
which has non-trivial costs.
The patch removes the special case and only returns costs of zero for
lane 0 if it there is no need to transfer between integer and vector
registers.
This impacts a number of SLP test, and most of them look like general
improvements.I think the change should make things more accurate for any
AArch64 target, but if not it could also just be Apple CPU specific.
I am seeing +2% end-to-end improvements on SLP-heavy workloads.
PR: https://github.com/llvm/llvm-project/pull/146526
Commit: af56fd0c1abb6fc9d06b555d5b30ef5ad963a5c1
https://github.com/llvm/llvm-project/commit/af56fd0c1abb6fc9d06b555d5b30ef5ad963a5c1
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/include/llvm/IR/RuntimeLibcalls.h
M llvm/include/llvm/TableGen/StringToOffsetTable.h
M llvm/lib/IR/RuntimeLibcalls.cpp
M llvm/lib/TableGen/StringToOffsetTable.cpp
M llvm/test/TableGen/RuntimeLibcallEmitter.td
M llvm/utils/TableGen/Basic/RuntimeLibcallsEmitter.cpp
Log Message:
-----------
TableGen: Use StringOffsetTable for RuntimeLibcall names (#148839)
Commit: f4a394fc0c83765187741cb8a6aafc27ba333f47
https://github.com/llvm/llvm-project/commit/f4a394fc0c83765187741cb8a6aafc27ba333f47
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/lib/CodeGen/TargetLoweringBase.cpp
M llvm/test/Transforms/SafeStack/NVPTX/safestack-pointer-address-libcall-error.ll
Log Message:
-----------
SafeStack: Check if __safestack_pointer_address is available (#147917)
Start using RuntimeLibcalls in the base implementation of
getSafeStackPointerLocation instead of hardcoding the function
names.
Commit: 8db92a7d99f2b1a64d34c2fe3c295e555caa35f2
https://github.com/llvm/llvm-project/commit/8db92a7d99f2b1a64d34c2fe3c295e555caa35f2
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/lib/TableGen/StringToOffsetTable.cpp
Log Message:
-----------
TableGen: Avoid emitting trailing whitespace in StringToOffsetTable (#148840)
Commit: 57a5f9c47e063701ac7d13a5efd993e839e148eb
https://github.com/llvm/llvm-project/commit/57a5f9c47e063701ac7d13a5efd993e839e148eb
Author: Jeremy Morse <jeremy.morse at sony.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M clang/lib/CodeGen/CGBlocks.cpp
M llvm/include/llvm/IR/Instruction.h
M llvm/include/llvm/Transforms/Utils/LockstepReverseIterator.h
M llvm/lib/Analysis/MemoryDependenceAnalysis.cpp
M llvm/lib/CodeGen/CodeGenPrepare.cpp
M llvm/lib/IR/Instruction.cpp
M llvm/lib/IR/Verifier.cpp
M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
M llvm/lib/Target/X86/X86WinEHState.cpp
M llvm/lib/Transforms/Coroutines/CoroSplit.cpp
M llvm/lib/Transforms/IPO/Attributor.cpp
M llvm/lib/Transforms/IPO/AttributorAttributes.cpp
M llvm/lib/Transforms/IPO/GlobalOpt.cpp
M llvm/lib/Transforms/IPO/IROutliner.cpp
M llvm/lib/Transforms/IPO/OpenMPOpt.cpp
M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
M llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
M llvm/lib/Transforms/Instrumentation/HWAddressSanitizer.cpp
M llvm/lib/Transforms/Instrumentation/ValueProfilePlugins.inc
M llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp
M llvm/lib/Transforms/Scalar/MemCpyOptimizer.cpp
M llvm/lib/Transforms/Utils/Local.cpp
M llvm/lib/Transforms/Utils/ScalarEvolutionExpander.cpp
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/unittests/Frontend/OpenMPIRBuilderTest.cpp
M llvm/unittests/FuzzMutate/RandomIRBuilderTest.cpp
M llvm/unittests/IR/InstructionsTest.cpp
M llvm/unittests/Transforms/Utils/LocalTest.cpp
Log Message:
-----------
[DebugInfo][RemoveDIs] Suppress getNextNonDebugInfoInstruction (#144383)
There are no longer debug-info instructions, thus we don't need this
skipping. Horray!
Commit: 88ee17c24ef32b96a62f493d1c34d6380e4fdff8
https://github.com/llvm/llvm-project/commit/88ee17c24ef32b96a62f493d1c34d6380e4fdff8
Author: Philip Reames <preames at rivosinc.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInterleavedAccess.cpp
Log Message:
-----------
[RISCV][IA] Prefer getElementCount over getNumElements [nfc]
Small cleanup, with the eventual goal of making code easier to merge
between the various routines.
Commit: 6291b63a9a104fe93f8e4e279ef2237dc081304f
https://github.com/llvm/llvm-project/commit/6291b63a9a104fe93f8e4e279ef2237dc081304f
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M libcxx/include/fstream
A libcxx/test/std/input.output/file.streams/fstreams/filebuf.virtuals/overflow.writefail.pass.cpp
Log Message:
-----------
[libc++] Ensure that we restore invariants in basic_filebuf::overflow (#147389)
In rare circumstances, the invariants could fail to be restored.
Commit: 2463309c4d0d95d6947faa54733788fb1f1162ae
https://github.com/llvm/llvm-project/commit/2463309c4d0d95d6947faa54733788fb1f1162ae
Author: Jay Foad <jay.foad at amd.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/include/llvm/CodeGen/PostRAMachineSink.h
M llvm/include/llvm/CodeGen/VirtRegMap.h
M llvm/lib/CodeGen/MachineSink.cpp
Log Message:
-----------
[CodeGen] Use setNoVRegs. NFC. (#148831)
Commit: d145f716aefce8633aed24ea5d009a76453572bf
https://github.com/llvm/llvm-project/commit/d145f716aefce8633aed24ea5d009a76453572bf
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M libcxx/docs/index.rst
M libcxx/include/__algorithm/simd_utils.h
M libcxx/include/__configuration/compiler.h
M libcxx/test/libcxx/algorithms/vectorization.compile.pass.cpp
M libcxx/test/libcxx/memory/shared_ptr_array.pass.cpp
M libcxx/test/libcxx/vendor/apple/disable-availability.sh.cpp
M libcxx/test/std/experimental/simd/simd.class/simd_unary.pass.cpp
M libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.array/sized_delete_array.pass.cpp
M libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.single/sized_delete.pass.cpp
M libcxx/test/std/numerics/c.math/signbit.pass.cpp
M libcxx/test/std/numerics/numeric.ops/numeric.ops.sat/add_sat.pass.cpp
M libcxx/test/std/numerics/numeric.ops/numeric.ops.sat/div_sat.pass.cpp
M libcxx/test/std/numerics/numeric.ops/numeric.ops.sat/mul_sat.pass.cpp
M libcxx/test/std/numerics/numeric.ops/numeric.ops.sat/saturate_cast.pass.cpp
M libcxx/test/std/numerics/numeric.ops/numeric.ops.sat/sub_sat.pass.cpp
M libcxx/test/std/ranges/range.utility/range.utility.conv/to_deduction.pass.cpp
M libcxx/test/std/utilities/meta/meta.unary/meta.unary.prop/is_implicit_lifetime.pass.cpp
M libcxx/test/std/utilities/meta/meta.unary/meta.unary.prop/is_implicit_lifetime.verify.cpp
M libcxx/test/std/utilities/meta/meta.unary/meta.unary.prop/reference_constructs_from_temporary.pass.cpp
M libcxx/test/std/utilities/meta/meta.unary/meta.unary.prop/reference_converts_from_temporary.pass.cpp
Log Message:
-----------
[libc++] Bump Xcode support (#148651)
Libc++'s policy is to support only the latest released Xcode, which is
Xcode 16.x. We did update our CI jobs to Xcode 16.x, but we forgot to
update the documentation, which still mentioned Xcode 15. This patch
updates the documentation and cleans up outdated mentions of
apple-clang-15 in the test suite.
Commit: a606f4441aad63208722a4504e1e6a66044d6eda
https://github.com/llvm/llvm-project/commit/a606f4441aad63208722a4504e1e6a66044d6eda
Author: Mikhail R. Gadelha <mikhail at igalia.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVVLOptimizer.cpp
M llvm/test/CodeGen/RISCV/rvv/vl-opt-instrs.ll
Log Message:
-----------
[RISCV][VLOPT] Add support for vector integer add-with-carry/subtract-with-borrow instructions (#148247)
This PR adds support for the vmadc.vim, vmadc.vvm, vmadc.vxm, vmsbc.vvm,
vmsbc.vxm, vsbc.vvm, vsbc.vxm instructions in the RISC-V VLOptimizer.
Commit: 2435ea6975b9bfb7a81efb8a168b4a5b92dbefa1
https://github.com/llvm/llvm-project/commit/2435ea6975b9bfb7a81efb8a168b4a5b92dbefa1
Author: Mikhail R. Gadelha <mikhail at igalia.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVVLOptimizer.cpp
M llvm/test/CodeGen/RISCV/rvv/vl-opt-instrs.ll
Log Message:
-----------
[RISCV][VLOPT] Add support for vfclass.v (#148246)
This PR adds support for the vfclass.v instruction in the RISC-V
VLOptimizer.
Commit: 6350bb3ed362ef5063ebd07d444d7dd4f5342541
https://github.com/llvm/llvm-project/commit/6350bb3ed362ef5063ebd07d444d7dd4f5342541
Author: Nicholas Junge <nicholas.junge at web.de>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M mlir/include/mlir/Bindings/Python/NanobindAdaptors.h
M mlir/test/python/dialects/python_test.py
M mlir/test/python/lib/PythonTestModuleNanobind.cpp
Log Message:
-----------
[mlir][py] Mark all type caster `from_{cpp,python}` methods as noexcept (#143866)
This is mentioned as a "must" in
https://nanobind.readthedocs.io/en/latest/porting.html#type-casters when
implementing type casters.
While most of the existing `from_cpp` methods were already marked
noexcept, many of the `from_python` methods were not. This commit adds
the missing noexcept declarations to all type casters found in
`NanobindAdaptors.h`.
---------
Co-authored-by: Maksim Levental <maksim.levental at gmail.com>
Commit: 2b952753f8392a789debb9d8e2544f37b4d76f65
https://github.com/llvm/llvm-project/commit/2b952753f8392a789debb9d8e2544f37b4d76f65
Author: Brian Cain <brian.cain at oss.qualcomm.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/lib/Target/Hexagon/HexagonISelLowering.cpp
M llvm/lib/Target/Hexagon/HexagonISelLowering.h
M llvm/lib/Target/Hexagon/HexagonPatterns.td
A llvm/test/CodeGen/Hexagon/thread-pointer.ll
Log Message:
-----------
[hexagon] Add support for llvm.thread.pointer (#148752)
UGP contains the pointer for thread data:
> The TLS area is accessed at the processor level through the special
register UGP This register is set to the address one location above the
TLS area, which grows downwards from UGP.
>From the Hexagon ABI spec -
https://docs.qualcomm.com/bundle/publicresource/80-N2040-23_REV_K_Qualcomm_Hexagon_Application_Binary_Interface_User_Guide.pdf
Also: disable clang-format for `NodeType` enum in
`llvm/lib/Target/Hexagon/HexagonISelLowering.h` to avoid disruptive
formatting.
Commit: 1c6422c4bdd39b91fee90ce3adeb8404ee92c341
https://github.com/llvm/llvm-project/commit/1c6422c4bdd39b91fee90ce3adeb8404ee92c341
Author: Kazu Hirata <kazu at google.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/lib/Transforms/Scalar/LoopInterchange.cpp
Log Message:
-----------
[Scalar] Fix a warning
This patch fixes:
llvm/lib/Transforms/Scalar/LoopInterchange.cpp:863:20: error: unused
variable 'OpCode' [-Werror,-Wunused-variable]
Commit: ff5f355d9bac7f10d971284b97d83db68e25ed27
https://github.com/llvm/llvm-project/commit/ff5f355d9bac7f10d971284b97d83db68e25ed27
Author: Kazu Hirata <kazu at google.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
Log Message:
-----------
[AMDGPU] Use a range-based for loop (NFC) (#148767)
Commit: e282cdb0a2f80a2eb3b6bab40b16b538f202ac3a
https://github.com/llvm/llvm-project/commit/e282cdb0a2f80a2eb3b6bab40b16b538f202ac3a
Author: Philip Reames <preames at rivosinc.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInterleavedAccess.cpp
Log Message:
-----------
[RISCV][IA] Avoid use of redundant variables which differ solely by type [nfc]
Instead of using dyn_cast, just use isa combined with accessors on the base
VectotType class. Working towards being able to merge code from some of
these routines.
Commit: 1db9eb23209826d9e799e68a9a4090f0328bf70c
https://github.com/llvm/llvm-project/commit/1db9eb23209826d9e799e68a9a4090f0328bf70c
Author: Raphael Moreira Zinsly <rzinsly at ventanamicro.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVFrameLowering.cpp
M llvm/lib/Target/RISCV/RISCVFrameLowering.h
A llvm/test/CodeGen/RISCV/stack-probing-frame-setup.mir
Log Message:
-----------
[RISCV] Pass the MachineInstr flag as argument to allocateStack (#147531)
When not in the prologue we do not want to set the FrameSetup flag, by
passing the flag as argument we can use allocateStack correctly on those
cases.
This fixes the allocation and probe in eliminateCallFramePseudoInstr.
Commit: e2eade42b660795a656798331782931983d07443
https://github.com/llvm/llvm-project/commit/e2eade42b660795a656798331782931983d07443
Author: Raghu Maddhipatla <7686592+raghavendhra at users.noreply.github.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M mlir/include/mlir/Dialect/OpenMP/OpenMPClauses.td
M mlir/include/mlir/Dialect/OpenMP/OpenMPEnums.td
M mlir/include/mlir/Dialect/OpenMP/OpenMPOps.td
M mlir/lib/Dialect/OpenMP/IR/OpenMPDialect.cpp
M mlir/test/Dialect/OpenMP/invalid.mlir
M mlir/test/Dialect/OpenMP/ops.mlir
Log Message:
-----------
[MLIR] [OpenMP] Initial support for OMP ALLOCATE directive op. (#147900)
This patch includes adding support for OMP ALLOCATE directive along with
ALIGN clause and ALLOCATOR clause which are used within OMP ALLOCATE
directive
Commit: 3248a6d76abccbbe78e853c76bc022b70d594347
https://github.com/llvm/llvm-project/commit/3248a6d76abccbbe78e853c76bc022b70d594347
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M .github/workflows/premerge.yaml
Log Message:
-----------
[CI][Github] Switch windows to server 2022 (#148743)
This patch switches the windows testing over to server 2022 by switching
to the recently introduced runner set.
Commit: 3d688233bd746ec024fd625590272833d8bccd2c
https://github.com/llvm/llvm-project/commit/3d688233bd746ec024fd625590272833d8bccd2c
Author: A. Jiang <de34 at live.cn>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M libcxx/docs/Status/Cxx17Issues.csv
M libcxx/docs/Status/Cxx20Issues.csv
M libcxx/docs/Status/Cxx2cIssues.csv
M libcxx/docs/Status/Cxx2cPapers.csv
Log Message:
-----------
[libc++][docs] Add missing entry for status pages, fix bad formatting, and deduplicate (#148186)
In a previously PR, the entry for P3491R3 define_static_{string,object,array} was missing.
This patch adds it back.
The number of LWG2687, LWG2709, LWG3315, LWG3395, LWG3987, and LWG4113
were duplicated in the title. It seems better to avoid such duplicates.
Also fixes some formatting to properly use italic and code styles, and
remove one improper leading space from the title of P3682R0 (which
caused incorrect alignment in the generated page).
Commit: f5c676d6d95dc63b8dcb43dd2e4dfc913a9c5a50
https://github.com/llvm/llvm-project/commit/f5c676d6d95dc63b8dcb43dd2e4dfc913a9c5a50
Author: cmtice <cmtice at google.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M lldb/source/Target/TargetProperties.td
M lldb/source/ValueObject/DILEval.cpp
M lldb/test/API/commands/frame/var-dil/basics/QualifiedId/TestFrameVarDILQualifiedId.py
M lldb/test/API/commands/frame/var-dil/basics/QualifiedId/main.cpp
M lldb/test/API/tools/lldb-dap/evaluate/TestDAP_evaluate.py
M lldb/test/Shell/SymbolFile/DWARF/TestDedupWarnings.test
M llvm/docs/ReleaseNotes.md
Log Message:
-----------
[LLDB] Switch to using DIL as default implementation for 'frame var'. (#147887)
Commit: c2e41be50f2cc3d1e99c30b1996b8873b05c4b0e
https://github.com/llvm/llvm-project/commit/c2e41be50f2cc3d1e99c30b1996b8873b05c4b0e
Author: Tom Eccles <tom.eccles at arm.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M flang/lib/Parser/prescan.cpp
A flang/test/Preprocessing/omp-sentinel-fixed-form.F
Log Message:
-----------
[flang][Parser] Add whitespace token after the sentinel in fixed form (#148825)
Fixes #148386
The first time the line was classified (using
`Prescanner::ClassifyLine(const char *)`) the line was correctly
classified as a compiler directive. But then later on the token form is
invoked (`Prescanner::ClassifyLine(TokenSequence, Provenance)`). This
one incorrectly classified the line as a comment because there was no
whitespace token right after the sentinel. This fixes the issue by
ensuring this whitespace is added.
Commit: be4d754fe6c79a9cc994703157979cbad01a743a
https://github.com/llvm/llvm-project/commit/be4d754fe6c79a9cc994703157979cbad01a743a
Author: Henrich Lauko <xlauko at mail.muni.cz>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M clang/include/clang/CIR/Dialect/IR/CIROps.td
Log Message:
-----------
[CIR] Reformat Ops to use common `CIR_` prefix and definition traits style (#148865)
- This adds common CIR_ prefix to all operation disambiguating them when used with other dialects.
- Unifies traits style in operation definitions.
This mirrors incubator changes from https://github.com/llvm/clangir/pull/1741
Commit: 55f1b91d50a0f3706ad62d497d3c8a5ec572d59e
https://github.com/llvm/llvm-project/commit/55f1b91d50a0f3706ad62d497d3c8a5ec572d59e
Author: Corentin Jabot <corentinjabot at gmail.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M clang/lib/Parse/ParseDeclCXX.cpp
A clang/test/Parser/gh114815.cpp
Log Message:
-----------
[Clang] Fix a crash when parsing an invalid `decltype` (#148798)
We would try to exact an annotated token before checking if it was
valid, leading to a crash when `decltype` was the only token that was
parsed (which can happen in the absense of opening paren)
Fixes #114815
Commit: d969ec942224cb85f8e7dc8553aa9ea3952c37e6
https://github.com/llvm/llvm-project/commit/d969ec942224cb85f8e7dc8553aa9ea3952c37e6
Author: Muhammad Bassiouni <60100307+bassiounix at users.noreply.github.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M libc/shared/math.h
A libc/shared/math/exp.h
M libc/src/__support/FPUtil/multiply_add.h
M libc/src/__support/FPUtil/nearest_integer.h
M libc/src/__support/math/CMakeLists.txt
A libc/src/__support/math/exp.h
A libc/src/__support/math/exp_constants.h
A libc/src/__support/math/exp_utils.h
M libc/src/__support/math/expf16_utils.h
M libc/src/math/generic/CMakeLists.txt
M libc/src/math/generic/common_constants.cpp
M libc/src/math/generic/common_constants.h
M libc/src/math/generic/exp.cpp
M libc/src/math/generic/explogxf.h
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
Log Message:
-----------
[libc][math] Refactor exp implementation to header-only in src/__support/math folder. (#148761)
- **[libc][math] Refactor exp implementation to header-only in
src/__support/math folder.**
- **Reapply "[libc][math] Refactor exp implementation to header-only in
src/__support/math folder." (#148668)**
Commit: e6fcd59a18f18fc1c2e3075e372504fd5ca3d8c4
https://github.com/llvm/llvm-project/commit/e6fcd59a18f18fc1c2e3075e372504fd5ca3d8c4
Author: Henrich Lauko <xlauko at mail.muni.cz>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M .github/CODEOWNERS
Log Message:
-----------
[github][CIR] Add xlauko and andykaylor as CIR reviewers (#148852)
Commit: eec98bef84b8a68533d9176468c1d2010f26717f
https://github.com/llvm/llvm-project/commit/eec98bef84b8a68533d9176468c1d2010f26717f
Author: nerix <nerixdev at outlook.de>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M lldb/source/Plugins/Language/CPlusPlus/CMakeLists.txt
M lldb/source/Plugins/Language/CPlusPlus/CPlusPlusLanguage.cpp
M lldb/source/Plugins/Language/CPlusPlus/MsvcStl.h
A lldb/source/Plugins/Language/CPlusPlus/MsvcStlTuple.cpp
M lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic/tuple/TestDataFormatterStdTuple.py
M lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic/tuple/main.cpp
Log Message:
-----------
[LLDB] Add formatters for MSVC STL std::tuple (#148548)
Adds synthetic children for MSVC STL's
[`std::tuple`](https://github.com/microsoft/STL/blob/313964b78a8fd5a52e7965e13781f735bcce13c5/stl/inc/tuple).
A `tuple` is a chain of base classes:
```cpp
template <>
class tuple<> {};
template <class _This, class... _Rest>
class tuple<_This, _Rest...> : private tuple<_Rest...> {
_Tuple_val<_This> _Myfirst;
};
```
So the provider walks the base classes to the desired one.
The implementation makes it hard to detect if the empty tuple is from
this STL. Fortunately, libstdc++'s synthetic children provider works for
empty MSVC STL tuples as well.
Towards #24834.
Commit: a35b290c3c3150248979e0ea52322b339d937cc7
https://github.com/llvm/llvm-project/commit/a35b290c3c3150248979e0ea52322b339d937cc7
Author: Bogdan Vetrenko <b.vetrenko at yandex.ru>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenClass.cpp
Log Message:
-----------
[CIR][NFC] Fix typo in assertion message (Must) (#148704)
Commit: 8612926c306c5191a5fb385dd11467728c59e982
https://github.com/llvm/llvm-project/commit/8612926c306c5191a5fb385dd11467728c59e982
Author: athierry-oct <adrien.thierry at octasic.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M lldb/include/lldb/Utility/Listener.h
M lldb/source/Utility/Broadcaster.cpp
M lldb/source/Utility/Listener.cpp
M lldb/unittests/Utility/ListenerTest.cpp
Log Message:
-----------
[lldb] Fix race condition in Process::WaitForProcessToStop() (#144919)
This PR addresses a race condition encountered when using LLDB through
the Python scripting interface.
I'm relatively new to LLDB, so feedback is very welcome, especially if
there's a more appropriate way to address this issue.
### Bug Description
When running a script that repeatedly calls
`debugger.GetListener().WaitForEvent()` in a loop, and at some point
invokes `process.Kill()` from within that loop to terminate the session,
a race condition can occur if `process.Kill()` is called around the same
time a breakpoint is hit.
### Race Condition Details
The issue arises when the following sequence of events happens:
1. The process's **private state** transitions to `stopped` when the
breakpoint is hit.
2. `process.Kill()` calls `Process::Destroy()`, which invokes
`Process::WaitForProcessToStop()`. At this point:
- `private_state = stopped`
- `public_state = running` (the public state has not yet been updated)
3. The **public stop event** is broadcast **before** the hijack listener
is installed.
4. As a result, the stop event is delivered to the **non-hijack
listener**.
5. The interrupt request sent by `Process::StopForDestroyOrDetach()` is
ignored because the process is already stopped (`private_state =
stopped`).
6. No public stop event reaches the hijack listener.
7. `Process::WaitForProcessToStop()` hangs waiting for a public stop
event, but the event is never received.
8. `process.Kill()` times out after 20 seconds
### Fix Summary
This patch modifies `Process::WaitForProcessToStop()` to ensure that any
pending events in the non-hijack listener queue are processed before
checking the hijack listener. This guarantees that any missed public
state change events are handled, preventing the hang.
### Additional Context
A discussion of this issue, including a script to reproduce the bug, can
be found here:
[LLDB hangs when killing process at the same time a breakpoint is
hit](https://discourse.llvm.org/t/lldb-hangs-when-killing-process-at-the-same-time-a-breakpoint-is-hit)
Commit: 31e6fe78b2e2d83cdbb1a4b0f6b712c537f8de9c
https://github.com/llvm/llvm-project/commit/31e6fe78b2e2d83cdbb1a4b0f6b712c537f8de9c
Author: Konstantin Varlamov <varconsteq at gmail.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M libcxx/test/libcxx/time/time.zone/time.zone.exception/time.zone.exception.ambig/assert.ctor.pass.cpp
M libcxx/test/libcxx/time/time.zone/time.zone.exception/time.zone.exception.nonexist/assert.ctor.pass.cpp
M libcxx/test/libcxx/time/time.zone/time.zone.timezone/time.zone.members/assert.to_local.pass.cpp
M libcxx/test/libcxx/time/time.zone/time.zone.timezone/time.zone.members/assert.to_sys.pass.cpp
M libcxx/test/libcxx/time/time.zone/time.zone.timezone/time.zone.members/assert.to_sys_choose.pass.cpp
Log Message:
-----------
[libc++] Add missing unsupported attributes to hardening timezone tests. (#148406)
Before this patch, these tests fail under `extensive` and `debug`
hardening modes.
Commit: a4dab509d360a06d189352a4e4d23e5a6bbb34a3
https://github.com/llvm/llvm-project/commit/a4dab509d360a06d189352a4e4d23e5a6bbb34a3
Author: Deric C. <cheung.deric at gmail.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/lib/Target/DirectX/DXILDataScalarization.cpp
Log Message:
-----------
[DirectX] Replace `getNextNonDebugInstruction` with `getNextNode` (#148890)
Fixes the DirectX backend build failure due to #144383
Commit: 20c8e3c2a4744524396cc473a370cfb7855850b6
https://github.com/llvm/llvm-project/commit/20c8e3c2a4744524396cc473a370cfb7855850b6
Author: Eli Friedman <efriedma at quicinc.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/AST/ExprConstant.cpp
M clang/test/SemaCXX/constant-expression-cxx14.cpp
M clang/test/SemaCXX/constant-expression-p2280r4.cpp
Log Message:
-----------
[clang] Fix pointer comparisons between pointers to constexpr-unknown (#147663)
A constexpr-unknown reference can be equal to an arbitrary value, except
values allocated during constant evaluation. Fix the handling.
The standard is unclear exactly which pointer comparisons count as
"unknown" in this context; for example, in some cases we could use
alignment to prove two constexpr-unknown references are not equal. I
decided to ignore all the cases involving variables not allocated during
constant evaluation.
While looking at this, I also spotted that there might be issues with
lifetimes, but I didn't try to address it.
Commit: 6260d8ff8277d35ff783ba7c6febb1489eb94b24
https://github.com/llvm/llvm-project/commit/6260d8ff8277d35ff783ba7c6febb1489eb94b24
Author: Aaron Ballman <aaron at aaronballman.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Sema/TreeTransform.h
A clang/test/SemaTemplate/gh138371.cpp
Log Message:
-----------
[C++] Fix a failed assertion with nullability checking (#148881)
This fixes a failed assertion with an operator call expression which
comes from a macro expansion when performing analysis for nullability
attributes.
Fixes #138371
Commit: 0967957d7a94e1b5c749c6e963bdca25f3c6d749
https://github.com/llvm/llvm-project/commit/0967957d7a94e1b5c749c6e963bdca25f3c6d749
Author: David Green <david.green at arm.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/include/llvm/CodeGen/BasicTTIImpl.h
M llvm/test/Analysis/CostModel/AArch64/arith-overflow.ll
M llvm/test/Analysis/CostModel/AArch64/cmp.ll
M llvm/test/Analysis/CostModel/AArch64/fcmp.ll
M llvm/test/Analysis/CostModel/AArch64/fshl.ll
M llvm/test/Analysis/CostModel/AArch64/fshr.ll
M llvm/test/Analysis/CostModel/AArch64/sve-cmpsel.ll
M llvm/test/Analysis/CostModel/AArch64/sve-fcmp.ll
M llvm/test/Analysis/CostModel/AArch64/sve-intrinsics.ll
M llvm/test/Analysis/CostModel/AArch64/vector-select.ll
M llvm/test/Analysis/CostModel/AMDGPU/reduce-and.ll
M llvm/test/Analysis/CostModel/AMDGPU/reduce-or.ll
M llvm/test/Analysis/CostModel/ARM/arith-overflow.ll
M llvm/test/Analysis/CostModel/ARM/arith-ssat.ll
M llvm/test/Analysis/CostModel/ARM/arith-usat.ll
M llvm/test/Analysis/CostModel/ARM/cmps.ll
M llvm/test/Analysis/CostModel/ARM/intrinsic-cost-kinds.ll
M llvm/test/Analysis/CostModel/ARM/mve-abs.ll
M llvm/test/Analysis/CostModel/ARM/mve-minmax.ll
M llvm/test/Analysis/CostModel/ARM/select.ll
M llvm/test/CodeGen/Thumb2/mve-pred-vselect.ll
M llvm/test/CodeGen/X86/div-rem-pair-recomposition-unsigned.ll
M llvm/test/CodeGen/X86/test-shrink-bug.ll
M llvm/test/Transforms/SimplifyCFG/ARM/phi-eliminate.ll
Log Message:
-----------
[CostModel] Handle all cost kinds in getCmpSelInstrCost (#148233)
Currently we always produce a cost of 1 for all CostKinds that are not
RecipThroughput, which can underestimate the cost if the type has a
higher legalization cost (like larger vectors). This relaxes it to cover
all cost kinds.
Commit: 0d2e11f3e834e0c1803a6e00da35525b0d476eb2
https://github.com/llvm/llvm-project/commit/0d2e11f3e834e0c1803a6e00da35525b0d476eb2
Author: Brad Smith <brad at comstyle.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M clang/include/clang/Basic/TargetInfo.h
M clang/lib/AST/ASTContext.cpp
M clang/lib/Basic/CMakeLists.txt
M clang/lib/Basic/Targets.cpp
M clang/lib/Basic/Targets/ARM.cpp
M clang/lib/Basic/Targets/OSTargets.h
R clang/lib/Basic/Targets/PNaCl.cpp
R clang/lib/Basic/Targets/PNaCl.h
M clang/lib/CodeGen/CMakeLists.txt
M clang/lib/CodeGen/CodeGenModule.cpp
M clang/lib/CodeGen/TargetInfo.h
R clang/lib/CodeGen/Targets/PNaCl.cpp
M clang/lib/CodeGen/Targets/X86.cpp
M clang/lib/Driver/CMakeLists.txt
M clang/lib/Driver/Driver.cpp
R clang/lib/Driver/ToolChains/NaCl.cpp
R clang/lib/Driver/ToolChains/NaCl.h
M clang/lib/Lex/InitHeaderSearch.cpp
R clang/test/CodeGen/X86/x86_64-arguments-nacl.c
M clang/test/CodeGen/X86/x86_64-longdouble.c
M clang/test/CodeGen/arm-aapcs-vfp.c
M clang/test/CodeGen/ext-int-cc.c
M clang/test/CodeGen/long_double_fp128.cpp
R clang/test/CodeGen/malign-double-x86-nacl.c
M clang/test/CodeGen/target-data.c
R clang/test/CodeGenCXX/x86_64-arguments-nacl-x32.cpp
M clang/test/Driver/arm-alignment.c
R clang/test/Driver/nacl-direct.c
M clang/test/Driver/unsupported-target-arch.c
R clang/test/Driver/x86_64-nacl-defines.cpp
R clang/test/Frontend/x86_64-nacl-types.cpp
M clang/test/Preprocessor/predefined-macros-no-warnings.c
M llvm/include/llvm/BinaryFormat/ELF.h
M llvm/include/llvm/BinaryFormat/MinidumpConstants.def
M llvm/include/llvm/CodeGen/AtomicExpandUtils.h
M llvm/include/llvm/TargetParser/Triple.h
M llvm/lib/Target/ARM/ARMAsmPrinter.cpp
M llvm/lib/Target/ARM/ARMFastISel.cpp
M llvm/lib/Target/ARM/ARMFeatures.td
M llvm/lib/Target/ARM/ARMFrameLowering.cpp
M llvm/lib/Target/ARM/ARMISelLowering.cpp
M llvm/lib/Target/ARM/ARMInstrInfo.td
M llvm/lib/Target/ARM/ARMPredicates.td
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/ARMTargetTransformInfo.h
M llvm/lib/Target/ARM/MCTargetDesc/ARMMCTargetDesc.cpp
M llvm/lib/Target/Mips/MCTargetDesc/CMakeLists.txt
R llvm/lib/Target/Mips/MCTargetDesc/MipsMCNaCl.h
M llvm/lib/Target/Mips/MCTargetDesc/MipsMCTargetDesc.cpp
R llvm/lib/Target/Mips/MCTargetDesc/MipsNaClELFStreamer.cpp
M llvm/lib/Target/Mips/MipsAsmPrinter.cpp
M llvm/lib/Target/Mips/MipsAsmPrinter.h
M llvm/lib/Target/Mips/MipsBranchExpansion.cpp
M llvm/lib/Target/Mips/MipsCallingConv.td
M llvm/lib/Target/Mips/MipsDelaySlotFiller.cpp
M llvm/lib/Target/Mips/MipsInstrFPU.td
M llvm/lib/Target/Mips/MipsInstrInfo.td
M llvm/lib/Target/Mips/MipsRegisterInfo.cpp
M llvm/lib/Target/Mips/MipsSubtarget.h
M llvm/lib/Target/X86/X86ExpandPseudo.cpp
M llvm/lib/Target/X86/X86FrameLowering.cpp
M llvm/lib/Target/X86/X86ISelDAGToDAG.cpp
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/lib/Target/X86/X86InstrPredicates.td
M llvm/lib/Target/X86/X86Subtarget.cpp
M llvm/lib/Target/X86/X86Subtarget.h
M llvm/lib/Target/X86/X86TargetMachine.cpp
M llvm/lib/TargetParser/ARMTargetParser.cpp
M llvm/lib/TargetParser/Triple.cpp
M llvm/test/CodeGen/ARM/fast-isel-align.ll
M llvm/test/CodeGen/ARM/struct_byval.ll
M llvm/test/CodeGen/ARM/trap.ll
R llvm/test/CodeGen/ARM/varargs-spill-stack-align-nacl.ll
M llvm/test/CodeGen/Mips/fastcc.ll
M llvm/test/CodeGen/Mips/fp-indexed-ls.ll
M llvm/test/CodeGen/Mips/indirect-jump-hazard/long-branch.ll
M llvm/test/CodeGen/Mips/longbranch.ll
R llvm/test/CodeGen/Mips/nacl-align.ll
R llvm/test/CodeGen/Mips/nacl-branch-delay.ll
R llvm/test/CodeGen/Mips/nacl-reserved-regs.ll
M llvm/test/CodeGen/Thumb2/pacbti-m-outliner-1.ll
M llvm/test/CodeGen/X86/constructor.ll
M llvm/test/CodeGen/X86/fast-isel-x32.ll
M llvm/test/CodeGen/X86/frameaddr.ll
M llvm/test/CodeGen/X86/lea-2.ll
M llvm/test/CodeGen/X86/lea-3.ll
M llvm/test/CodeGen/X86/lea-4.ll
M llvm/test/CodeGen/X86/lea-5.ll
M llvm/test/CodeGen/X86/lea.ll
M llvm/test/CodeGen/X86/stack-align2.ll
M llvm/test/CodeGen/X86/x86-64-baseptr.ll
M llvm/test/CodeGen/X86/x86-64-stack-and-frame-ptr.ll
M llvm/test/MC/ARM/arm_instructions.s
R llvm/test/MC/Mips/nacl-mask.s
M llvm/test/MC/X86/AlignedBundling/labeloffset.s
R llvm/test/MC/X86/AlignedBundling/rodata-section.s
M llvm/unittests/TargetParser/TargetParserTest.cpp
Log Message:
-----------
Remove Native Client support (#133661)
Remove the Native Client support now that it has finally reached end of life.
Commit: 66850d0c06eef6d46b330af57bb675330b15b2cc
https://github.com/llvm/llvm-project/commit/66850d0c06eef6d46b330af57bb675330b15b2cc
Author: Thurston Dang <thurston at google.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/lib/Transforms/Instrumentation/MemorySanitizer.cpp
M llvm/test/Instrumentation/MemorySanitizer/X86/avx-intrinsics-x86.ll
M llvm/test/Instrumentation/MemorySanitizer/X86/avx512-intrinsics-upgrade.ll
M llvm/test/Instrumentation/MemorySanitizer/X86/avx512-intrinsics.ll
M llvm/test/Instrumentation/MemorySanitizer/X86/avx512bw-intrinsics-upgrade.ll
M llvm/test/Instrumentation/MemorySanitizer/X86/avx512bw-intrinsics.ll
M llvm/test/Instrumentation/MemorySanitizer/X86/avx512vl-intrinsics.ll
M llvm/test/Instrumentation/MemorySanitizer/X86/x86-vpermi2.ll
M llvm/test/Instrumentation/MemorySanitizer/i386/avx-intrinsics-i386.ll
Log Message:
-----------
[msan] Fix 'Simplify 'maskedCheckAVXIndexShadow' #147839' (#148785)
https://github.com/llvm/llvm-project/pull/147839/ incorrectly checked
the (lower bits of the) concrete value rather than the shadow.
Commit: 09f7cab9a34ed0837375f1677a4322d40b37ed5f
https://github.com/llvm/llvm-project/commit/09f7cab9a34ed0837375f1677a4322d40b37ed5f
Author: Deric C. <cheung.deric at gmail.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/lib/Target/DirectX/DXILLegalizePass.cpp
M llvm/test/CodeGen/DirectX/legalize-i8.ll
A llvm/test/CodeGen/DirectX/legalize-load-store-array-alloca.ll
Log Message:
-----------
[DirectX] Add a GEP to loads and stores on array allocas (#148059)
Fixes #147114 by inserting a GEP between any direct loads and stores on
an alloca.
Commit: d9e21a92a7b1b68bc61771c4a9320f879850ea90
https://github.com/llvm/llvm-project/commit/d9e21a92a7b1b68bc61771c4a9320f879850ea90
Author: RolandF77 <55763885+RolandF77 at users.noreply.github.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M clang/include/clang/Basic/BuiltinsPPC.def
M clang/lib/CodeGen/TargetBuiltins/PPC.cpp
M clang/test/CodeGen/PowerPC/builtins-ppc-dmf.c
A clang/test/CodeGen/PowerPC/ppc-dmf-future-builtin-err.c
A clang/test/CodeGen/PowerPC/ppc-dmf-mma-builtin-err.c
R clang/test/CodeGen/PowerPC/ppc-future-mma-builtin-err.c
Log Message:
-----------
[PowerPC] Add DMF basic builtins (#145372)
Add support for PPC Dense Math basic builtins dmsetdmrz, dmmr, dmxor.
Commit: 63d099af146a19bc8fd5a791d6184125e6cc42e7
https://github.com/llvm/llvm-project/commit/63d099af146a19bc8fd5a791d6184125e6cc42e7
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp
Log Message:
-----------
[RISCV] Remove incorrect and untested FrameIndex support from SelectAddrRegImm9. (#148779)
To fold a FrameIndex, we need to teach eliminateFrameIndex to respect
the uimm9 range.
Commit: c3dde3cf843656a08fced1702e09d8b80d2f6829
https://github.com/llvm/llvm-project/commit/c3dde3cf843656a08fced1702e09d8b80d2f6829
Author: Jordan Rupprecht <rupprecht at google.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
M utils/bazel/llvm-project-overlay/libc/test/src/math/BUILD.bazel
M utils/bazel/llvm-project-overlay/libc/test/src/math/smoke/BUILD.bazel
Log Message:
-----------
[bazel] Add tanpif rules after #147192 (#148909)
Commit: fad0fbc9371c6a3289e6dc8a5018cc00733be14f
https://github.com/llvm/llvm-project/commit/fad0fbc9371c6a3289e6dc8a5018cc00733be14f
Author: S. VenkataKeerthy <31350914+svkeerthy at users.noreply.github.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/lib/Analysis/IR2Vec.cpp
Log Message:
-----------
[NFC][IR2Vec] Fix warnings on MSVC compilation (#148911)
Commit: bcd0a7ae2a3ae81545190a0b2796eb63656b5d42
https://github.com/llvm/llvm-project/commit/bcd0a7ae2a3ae81545190a0b2796eb63656b5d42
Author: jimingham <jingham at apple.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M lldb/include/lldb/Utility/Listener.h
M lldb/source/Utility/Broadcaster.cpp
M lldb/source/Utility/Listener.cpp
M lldb/unittests/Utility/ListenerTest.cpp
Log Message:
-----------
Revert "[lldb] Fix race condition in Process::WaitForProcessToStop() … (#148915)
…(#144919)"
This was causing a couple of failures on the Ubuntu bots. Reverting
while we wait on a fix for those issues.
This reverts commit 8612926c306c5191a5fb385dd11467728c59e982.
Commit: bc2004c2e42f633ee4099ea5652df41dba29c79c
https://github.com/llvm/llvm-project/commit/bc2004c2e42f633ee4099ea5652df41dba29c79c
Author: Luke Lau <luke at igalia.com>
Date: 2025-07-16 (Wed, 16 Jul 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfo.cpp
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vsadd-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vsaddu-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vssub-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vssubu-vp.ll
Log Message:
-----------
[RISCV] Handle LHS == 0 in isVLKnownLE (#148860)
If a VL is zero then it's known to be less than or equal to every other
VL.
This looks weird on its own since a VL of zero isn't that common. The
test diffs come from a type being split resulting in a VP intrinsic's
EVL being zero.
The motivation for this is to split off part of an upcoming patch I plan
on submitting for RISCVVLOptimizer, which generalizes it to handle
recurrences, and needs to reason about an initial state of demanded VLs
set to zero.
Commit: c9f03b8c6ece968a6a413f5ea3a33e23f0aed5ef
https://github.com/llvm/llvm-project/commit/c9f03b8c6ece968a6a413f5ea3a33e23f0aed5ef
Author: Nico Weber <thakis at chromium.org>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/utils/gn/secondary/libcxx/include/BUILD.gn
Log Message:
-----------
[gn] port 5951c44573
Commit: 183f1ac412c1a0c69c7dc6aef85c28c0749609cb
https://github.com/llvm/llvm-project/commit/183f1ac412c1a0c69c7dc6aef85c28c0749609cb
Author: Rahul Joshi <rjoshi at nvidia.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/include/llvm/ADT/StringTable.h
M llvm/lib/IR/Intrinsics.cpp
M llvm/unittests/IR/IntrinsicsTest.cpp
Log Message:
-----------
[LLVM] Fix an ASAN error in `lookupLLVMIntrinsicByName` (#147444)
Fix unnecessary conversion of C-String to StringRef in the `Cmp` lambda
inside `lookupLLVMIntrinsicByName`. This both fixes an ASAN error in the
code that happens when the `Name` StringRef passed in is not a Null
terminated StringRef, and additionally can potentially speed up the code
as well by eliminating the unnecessary computation of string length
every time a C String is converted to StringRef in this code (It seems
practically this computation is eliminated in optimized builds, but this
will avoid it in O0 builds as well).
Added a unit test that demonstrates this issue by building LLVM with
these options:
```
CMAKE_BUILD_TYPE=Debug
LLVM_USE_SANITIZER=Address
LLVM_OPTIMIZE_SANITIZED_BUILDS=OFF
```
The error reported is as follows:
```
==462665==ERROR: AddressSanitizer: heap-buffer-overflow on address 0x5030000391a2 at pc 0x56525cc30bbf bp 0x7fff9e4ccc60 sp 0x7fff9e4cc428
READ of size 19 at 0x5030000391a2 thread T0
#0 0x56525cc30bbe in strlen (upstream-llvm-second/llvm-project/build/unittests/IR/IRTests+0x713bbe) (BuildId: 0651acf1e582a4d2)
#1 0x7f8ff22ad334 in std::char_traits<char>::length(char const*) /usr/bin/../lib/gcc/x86_64-linux-gnu/13/../../../../include/c++/13/bits/char_traits.h:399:9
#2 0x7f8ff22a34a0 in llvm::StringRef::StringRef(char const*) /home/rjoshi/upstream-llvm-second/llvm-project/llvm/include/llvm/ADT/StringRef.h:96:33
#3 0x7f8ff28ca184 in _ZZL25lookupLLVMIntrinsicByNameN4llvm8ArrayRefIjEENS_9StringRefES2_ENK3$_0clIjPKcEEDaT_T0_ upstream-llvm-second/llvm-project/llvm/lib/IR/Intrinsics.cpp:673:18
```
Commit: 041a8a9e5a00358491fb98e4f6156f0882bf5bea
https://github.com/llvm/llvm-project/commit/041a8a9e5a00358491fb98e4f6156f0882bf5bea
Author: Remy Farley <one-d-wide at protonmail.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M clang-tools-extra/docs/ReleaseNotes.rst
A clang-tools-extra/test/clang-query/trailing-comma.c
M clang/lib/ASTMatchers/Dynamic/Parser.cpp
Log Message:
-----------
[clang-query] Allow for trailing comma in matchers (#148018)
Allow AST matches in clang-query to have a trailing comma at the end of
matcher arguments. Makes it nicer to work with queries that span
multiple lines.
So, for example, the following is possible:
```clang-query
match namedDecl(
isExpansionInMainFile(),
anyOf(
varDecl().bind("var"),
functionDecl().bind("func"),
# enumDecl().bind("enum"),
),
)
```
Commit: edfec9c5829f4778bd38f3ca4019105eb481df49
https://github.com/llvm/llvm-project/commit/edfec9c5829f4778bd38f3ca4019105eb481df49
Author: bd1976bris <Ben.Dunbobbin at sony.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M clang/test/Driver/DTLTO/dtlto.c
Log Message:
-----------
[DTLTO][TEST] Fix Clang driver test failing on some build bots (#148908)
Not all builds name the compiler executable `clang`. For example, the
Fuchsia build bots use `llvm` as their single toolchain executable name,
as they combine everything together in a busybot-style binary.
Update the Clang driver test to simply check that a non-empty path is
provided for the `--thinlto-remote-compiler` argument, rather than
hardcoding the executable name. The cross-project test will verify that
the path is valid later.
Should fix #147265.
Commit: 339711fbd07bb2deb092800a5af20daa85e589af
https://github.com/llvm/llvm-project/commit/339711fbd07bb2deb092800a5af20daa85e589af
Author: Thurston Dang <thurston at google.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/docs/HowToSubmitABug.rst
Log Message:
-----------
[docs] Linkify llvm-reduce and mention it is multi-threaded (#148904)
Commit: a9021e5373f814a7bce561147828dcb7ec2abb24
https://github.com/llvm/llvm-project/commit/a9021e5373f814a7bce561147828dcb7ec2abb24
Author: Deric C. <cheung.deric at gmail.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/lib/Target/DirectX/DXILLegalizePass.cpp
M llvm/test/CodeGen/DirectX/legalize-memcpy.ll
M llvm/test/CodeGen/DirectX/legalize-memset.ll
Log Message:
-----------
Emit array GEPs in memcpy/memset legalization (#148886)
Fixes #148089
Commit: 95fa67603c4ab5d75a2f8df328d7da5580466d50
https://github.com/llvm/llvm-project/commit/95fa67603c4ab5d75a2f8df328d7da5580466d50
Author: nerix <nerixdev at outlook.de>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M lldb/packages/Python/lldbsuite/test/make/Makefile.rules
M lldb/test/API/functionalities/data-formatter/data-formatter-advanced/main.cpp
Log Message:
-----------
[LLDB] Compile API tests with exceptions enabled on Windows (#148691)
>From #148554 - compile tests with exceptions on Windows
(`-fno-exceptions` was added 11 years ago in
c7826524acda6a9c8816261d5c48b94dc92935ed). The variant test uses `try {}
catch {}` to create variants that are valueless by exception. On other
platforms, exceptions are enabled as well.
I have no clue why compiling with exceptions will optimize out
`a_long_guy` in the changed test (even with `-O0`). Taking the address
of that value will ensure it's kept.
Commit: efa94cf703a510083f411444650f3a8d21dfcfee
https://github.com/llvm/llvm-project/commit/efa94cf703a510083f411444650f3a8d21dfcfee
Author: Dmitry Vasilyev <dvassiliev at accesssoftek.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/lib/Support/rpmalloc/rpmalloc.c
Log Message:
-----------
[Support/rpmalloc] Updated fake atomics with Interlocked functions (#148303)
Most atomic functions used Interlocked functions in case of MSVC (since MSVC does not do C11 yet).
But few load/store functions are dummy.
Use Interlocked functions for these atomics to ensure they are thread-safe.
This PR fixes #146205.
LLVM is on VS 2019 version 16.7 currently and eventually we require VS 2022 if we wanted to use stdatomics in rpmalloc, etc. In the meanwhile, we use the Interlocked intrinsics when building with MSVC.
Commit: 28463928a9c355d6b5f8cd0e551235dda76acb14
https://github.com/llvm/llvm-project/commit/28463928a9c355d6b5f8cd0e551235dda76acb14
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/utils/gn/secondary/clang/lib/Basic/BUILD.gn
M llvm/utils/gn/secondary/clang/lib/CodeGen/BUILD.gn
M llvm/utils/gn/secondary/clang/lib/Driver/BUILD.gn
M llvm/utils/gn/secondary/llvm/lib/Target/Mips/MCTargetDesc/BUILD.gn
Log Message:
-----------
[gn build] Port 0d2e11f3e834
Commit: d64a236445d48ff55efb2278216e429bca746054
https://github.com/llvm/llvm-project/commit/d64a236445d48ff55efb2278216e429bca746054
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/utils/gn/secondary/llvm/unittests/BinaryFormat/BUILD.gn
Log Message:
-----------
[gn build] Port ee9b84f5bed7
Commit: 8917f84d293c2fa6b77536d7053b5c41f4e785b8
https://github.com/llvm/llvm-project/commit/8917f84d293c2fa6b77536d7053b5c41f4e785b8
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/utils/gn/secondary/lldb/source/Plugins/Language/CPlusPlus/BUILD.gn
Log Message:
-----------
[gn build] Port eec98bef84b8
Commit: d67d91a9906366585162cebf292f923a3f28c8a6
https://github.com/llvm/llvm-project/commit/d67d91a9906366585162cebf292f923a3f28c8a6
Author: Sudharsan Veeravalli <quic_svs at quicinc.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp
M llvm/lib/Target/RISCV/RISCVInstrInfoXqci.td
M llvm/test/CodeGen/RISCV/xqcibm-cto-clo-brev.ll
M llvm/test/CodeGen/RISCV/xqcibm-insert.ll
Log Message:
-----------
[RISCV] Fix issues in ORI to QC.INSBI transformation (#148809)
The transformation done in #147349 was incorrect since we were not
passing the input node of the `OR` instruction to the `QC.INSBI`
instruction leading to the generated instruction doing the wrong thing.
In order to do this we first needed to add the output register to
`QC.INSBI` as being both an input and output.
The code produced after the above fix will need a copy (mv) to preserve
the register input to the OR instruction if it has more than one use
making the transformation net neutral ( `6-byte QC.E.ORI/ORAI` vs
`2-byte C.MV + 4-byte QC.INSB`I). Avoid doing the transformation if
there is more than one use of the input register to the OR instruction.
Commit: fccae859bc949ba390184614e07234267a734b86
https://github.com/llvm/llvm-project/commit/fccae859bc949ba390184614e07234267a734b86
Author: David Peixotto <peix at meta.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M lldb/include/lldb/Core/PluginManager.h
M lldb/include/lldb/Interpreter/CommandCompletions.h
M lldb/include/lldb/lldb-enumerations.h
M lldb/packages/Python/lldbsuite/test/lldbtest.py
M lldb/source/Commands/CommandCompletions.cpp
M lldb/source/Commands/CommandObjectPlugin.cpp
M lldb/source/Core/PluginManager.cpp
M lldb/test/API/commands/plugin/TestPlugin.py
Log Message:
-----------
[lldb] Add completions for plugin list/enable/disable (#147775)
This commit adds completion support for the plugin commands. It will try
to complete partial namespaces to the full namespace string. If the
completion input is already a full namespace string then it will add all
the matching plugins in that namespace as completions.
This lets the user complete to the namespace first and then tab-complete
to the next level if desired.
```
(lldb) plugin list a<tab>
Available completions:
abi
architecture
(lldb) plugin list ab<tab>
(lldb) plugin list abi<tab>
(lldb) plugin list abi.<tab>
Available completions:
abi.SysV-arm64
abi.ABIMacOSX_arm64
abi.SysV-arm
...
```
Commit: c592b61fc82c79366216ae12b25b0130359b0a26
https://github.com/llvm/llvm-project/commit/c592b61fc82c79366216ae12b25b0130359b0a26
Author: Jan Svoboda <jan_svoboda at apple.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M clang-tools-extra/clangd/ModulesBuilder.cpp
M clang/include/clang/Basic/CodeGenOptions.def
M clang/include/clang/Basic/CodeGenOptions.h
M clang/include/clang/Basic/DebugOptions.def
M clang/include/clang/Basic/DiagnosticSerializationKinds.td
M clang/include/clang/Basic/LangOptions.def
M clang/include/clang/Frontend/ASTUnit.h
M clang/include/clang/Frontend/CompilerInstance.h
M clang/include/clang/Serialization/ASTBitCodes.h
M clang/include/clang/Serialization/ASTReader.h
M clang/include/clang/Serialization/ASTWriter.h
M clang/lib/Basic/CodeGenOptions.cpp
M clang/lib/CodeGen/CGDebugInfo.cpp
M clang/lib/CodeGen/CGOpenMPRuntime.cpp
M clang/lib/CodeGen/CodeGenAction.cpp
M clang/lib/Frontend/ASTUnit.cpp
M clang/lib/Frontend/ChainedIncludesSource.cpp
M clang/lib/Frontend/CompilerInstance.cpp
M clang/lib/Frontend/CompilerInvocation.cpp
M clang/lib/Frontend/FrontendAction.cpp
M clang/lib/Frontend/FrontendActions.cpp
M clang/lib/Frontend/InitPreprocessor.cpp
M clang/lib/Frontend/PrecompiledPreamble.cpp
M clang/lib/Serialization/ASTReader.cpp
M clang/lib/Serialization/ASTWriter.cpp
M clang/lib/Serialization/GeneratePCH.cpp
M clang/test/PCH/no-validate-pch.cl
M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp
A llvm/clang/test/Modules/implicit-opt-level.c
Log Message:
-----------
[clang][modules] Serialize `CodeGenOptions` (#146422)
Some `LangOptions` duplicate their `CodeGenOptions` counterparts. My
understanding is that this was done solely because some infrastructure
(like preprocessor initialization, serialization, module compatibility
checks, etc.) were only possible/convenient for `LangOptions`. This PR
implements the missing support for `CodeGenOptions`, which makes it
possible to remove some duplicate `LangOptions` fields and simplify the
logic. Motivated by https://github.com/llvm/llvm-project/pull/146342.
Commit: 52432b02a9bdc234d1038ed2e72afe28779ca031
https://github.com/llvm/llvm-project/commit/52432b02a9bdc234d1038ed2e72afe28779ca031
Author: David Pagan <dave.pagan at amd.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M clang/lib/Basic/OpenMPKinds.cpp
Log Message:
-----------
[clang][NFC] Updated incorrect llvm-unreachable message in getOpenMPSimpleClauseType() (#148056)
Commit: 70e1a3ceada92c200e575e4fdcc1f27022b3c8f2
https://github.com/llvm/llvm-project/commit/70e1a3ceada92c200e575e4fdcc1f27022b3c8f2
Author: Paul Trojahn <paul.trojahn at gmail.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
A llvm/test/CodeGen/AMDGPU/fold-commute-sgpr.mir
Log Message:
-----------
[AMDGPU] Check legality of both operands before swap (#148843)
When trying to fold an SGPR into the second operand to a DPP add,
si-fold-operands correctly determines that this is not possible and
attempts to swap the second and third operand. This succeeds even if the
third operand is an SGPR, creating an illegal dpp add with two SGPR
operands. We need to check both operands if they are legal in their new
position.
This causes a crash at compile time for a test in triton on gfx12:
https://github.com/triton-lang/triton/blob/345c633787e90a7f94864de3035346eb5de1781f/python/test/unit/language/test_core.py#L2718
Co-authored-by: Paul Trojahn <paul.trojahn at amd.com>
Commit: ad1cbc020493b39266f7b259737bf5c7ad0a3d56
https://github.com/llvm/llvm-project/commit/ad1cbc020493b39266f7b259737bf5c7ad0a3d56
Author: Jan Svoboda <jan_svoboda at apple.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M clang/include/clang/Basic/CodeGenOptions.h
Log Message:
-----------
[clang] Attempt to fix build after c592b61f
Commit: e5bc7e7df3adf1777194ccd4ffa4e69f39b811f0
https://github.com/llvm/llvm-project/commit/e5bc7e7df3adf1777194ccd4ffa4e69f39b811f0
Author: Philip Reames <preames at rivosinc.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInterleavedAccess.cpp
M llvm/test/Transforms/InterleavedAccess/RISCV/addrspace.ll
M llvm/test/Transforms/InterleavedAccess/RISCV/interleaved-accesses.ll
Log Message:
-----------
[RISCV][IA] Always generate masked versions of segment LD/ST [nfc-ish] (#148905)
Goal is to be able to eventually merge some of these code path. Having
the mask operand should get dropped cleanly via pattern match.
Commit: ba95df17ece2f6a137ccf88dd95841889e285953
https://github.com/llvm/llvm-project/commit/ba95df17ece2f6a137ccf88dd95841889e285953
Author: sribee8 <sriya.pratipati at gmail.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M libc/fuzzing/math/CMakeLists.txt
R libc/fuzzing/math/atan_fuzz.cpp
A libc/fuzzing/math/log10_fuzz.cpp
A libc/fuzzing/math/log1p_fuzz.cpp
A libc/fuzzing/math/log2_fuzz.cpp
A libc/fuzzing/math/log_fuzz.cpp
M libc/fuzzing/math/sincos_fuzz.cpp
A libc/fuzzing/math/sqrt_fuzz.cpp
Log Message:
-----------
[libc] sqrt and log functions fuzz tests (#148006)
added fuzz tests for sqrt and log functions
---------
Co-authored-by: Sriya Pratipati <sriyap at google.com>
Commit: 859dcfc17f0098ac52196af584b343f1416c19b0
https://github.com/llvm/llvm-project/commit/859dcfc17f0098ac52196af584b343f1416c19b0
Author: higher-performance <higher.performance.github at gmail.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/AST/Decl.h
M clang/include/clang/ASTMatchers/ASTMatchers.h
M clang/lib/AST/Decl.cpp
M clang/unittests/ASTMatchers/ASTMatchersNarrowingTest.cpp
Log Message:
-----------
Check if clang::FieldDecl has constant-integer bit width before getting the width (#148692)
This avoids crashing due to template-dependent bit widths
Commit: dabc8e2ec1e15a46b7d8aaa9d216d002a2ce8b99
https://github.com/llvm/llvm-project/commit/dabc8e2ec1e15a46b7d8aaa9d216d002a2ce8b99
Author: Shilei Tian <i at tianshilei.me>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M clang/include/clang/Basic/BuiltinsAMDGPU.def
M clang/lib/CodeGen/TargetBuiltins/AMDGPU.cpp
M clang/test/CodeGenOpenCL/builtins-amdgcn-gfx1250.cl
M llvm/lib/Target/AMDGPU/VOP1Instructions.td
A llvm/test/CodeGen/AMDGPU/llvm.amdgcn.rcp.bf16.ll
M llvm/test/MC/AMDGPU/gfx1250_asm_vop1-fake16.s
M llvm/test/MC/AMDGPU/gfx1250_asm_vop1.s
M llvm/test/MC/AMDGPU/gfx1250_asm_vop1_dpp16-fake16.s
M llvm/test/MC/AMDGPU/gfx1250_asm_vop1_dpp16.s
M llvm/test/MC/AMDGPU/gfx1250_asm_vop1_dpp8-fake16.s
M llvm/test/MC/AMDGPU/gfx1250_asm_vop1_dpp8.s
M llvm/test/MC/AMDGPU/gfx1250_asm_vop3_from_vop1-fake16.s
M llvm/test/MC/AMDGPU/gfx1250_asm_vop3_from_vop1.s
M llvm/test/MC/AMDGPU/gfx1250_asm_vop3_from_vop1_dpp16-fake16.s
M llvm/test/MC/AMDGPU/gfx1250_asm_vop3_from_vop1_dpp16.s
M llvm/test/MC/AMDGPU/gfx1250_asm_vop3_from_vop1_dpp8-fake16.s
M llvm/test/MC/AMDGPU/gfx1250_asm_vop3_from_vop1_dpp8.s
M llvm/test/MC/Disassembler/AMDGPU/gfx1250_dasm_vop1.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx1250_dasm_vop1_dpp16.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx1250_dasm_vop1_dpp8.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx1250_dasm_vop3_from_vop1.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx1250_dasm_vop3_from_vop1_dpp16.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx1250_dasm_vop3_from_vop1_dpp8.txt
Log Message:
-----------
[AMDGPU] Add support for `v_rcp_bf16` on gfx1250 (#148916)
Co-authored-by: Mekhanoshin, Stanislav <Stanislav.Mekhanoshin at amd.com>
Commit: 23ac7b938d08db633ae6b99dfbce84ec76c0e702
https://github.com/llvm/llvm-project/commit/23ac7b938d08db633ae6b99dfbce84ec76c0e702
Author: Shilei Tian <i at tianshilei.me>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
M llvm/lib/Target/AMDGPU/VOP1Instructions.td
A llvm/test/CodeGen/AMDGPU/llvm.amdgcn.sqrt.bf16.ll
A llvm/test/CodeGen/AMDGPU/llvm.sqrt.bf16.ll
M llvm/test/MC/AMDGPU/gfx1250_asm_vop1-fake16.s
M llvm/test/MC/AMDGPU/gfx1250_asm_vop1.s
M llvm/test/MC/AMDGPU/gfx1250_asm_vop1_dpp16-fake16.s
M llvm/test/MC/AMDGPU/gfx1250_asm_vop1_dpp16.s
M llvm/test/MC/AMDGPU/gfx1250_asm_vop1_dpp8-fake16.s
M llvm/test/MC/AMDGPU/gfx1250_asm_vop1_dpp8.s
M llvm/test/MC/AMDGPU/gfx1250_asm_vop3_from_vop1-fake16.s
M llvm/test/MC/AMDGPU/gfx1250_asm_vop3_from_vop1.s
M llvm/test/MC/AMDGPU/gfx1250_asm_vop3_from_vop1_dpp16-fake16.s
M llvm/test/MC/AMDGPU/gfx1250_asm_vop3_from_vop1_dpp16.s
M llvm/test/MC/AMDGPU/gfx1250_asm_vop3_from_vop1_dpp8-fake16.s
M llvm/test/MC/AMDGPU/gfx1250_asm_vop3_from_vop1_dpp8.s
M llvm/test/MC/Disassembler/AMDGPU/gfx1250_dasm_vop1.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx1250_dasm_vop1_dpp16.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx1250_dasm_vop1_dpp8.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx1250_dasm_vop3_from_vop1.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx1250_dasm_vop3_from_vop1_dpp16.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx1250_dasm_vop3_from_vop1_dpp8.txt
Log Message:
-----------
[AMDGPU] Add support for `v_sqrt_bf16` on gfx1250 (#148921)
Co-authored-by: Mekhanoshin, Stanislav <Stanislav.Mekhanoshin at amd.com>
Commit: 1fe366d884728e37aca216891c77b16dc21ed03a
https://github.com/llvm/llvm-project/commit/1fe366d884728e37aca216891c77b16dc21ed03a
Author: cmtice <cmtice at google.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M lldb/test/API/commands/frame/var-dil/basics/QualifiedId/TestFrameVarDILQualifiedId.py
Log Message:
-----------
[LLDB] Disable DIL QualifiedId test on Windows. (#148940)
The lldb-x86_64-win buildbot is failing on this one DIL test. Disable
the test on Windows until we can debug it on Windows.
Commit: 8d61073128f8becdfaf7fb931c40a86d23fdd8e8
https://github.com/llvm/llvm-project/commit/8d61073128f8becdfaf7fb931c40a86d23fdd8e8
Author: Finn Plummer <finn.c.plum at gmail.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M clang/lib/Sema/SemaHLSL.cpp
Log Message:
-----------
[NFC][SemaHLSL] Fix typo causing float to double conversion (#148941)
- it was noted,
[here](https://github.com/llvm/llvm-project/pull/145795#discussion_r2208118547),
that by accidently not specifying this explicitly as a float it will
cause a build warning on MSVC
- this commit resolves this by explicitly specifying it as a float
Commit: 1a940bfff9176fb38a71b0045d7ae25df9a4ca7d
https://github.com/llvm/llvm-project/commit/1a940bfff9176fb38a71b0045d7ae25df9a4ca7d
Author: Jordan Rupprecht <rupprecht at google.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M mlir/include/mlir/Bindings/Python/NanobindAdaptors.h
Log Message:
-----------
[mlir][py] Fix nanobind uninitialized values (#148944)
After #143866, we no longer always write to `value`, causing it to be
uninitialized. This can lead to mysterious crashes, e.g. in
`python_test.py` / `testCustomAttribute` when we attempt to evaluate
`TestAttr(42)`, it does not set `value`, but
`mlirAttributeIsNull(value)` happens to return false for garbage memory,
and we end up trying to interpret it as a function instead of skipping
it.
Fix this by only reading `value` if it has been assigned. If it hasn't,
`return false` seems the right choice for all these methods, i.e.
indicate that `from_python` failed.
Commit: 42d2ae1034b287eb60563c370dbf52c59b66db20
https://github.com/llvm/llvm-project/commit/42d2ae1034b287eb60563c370dbf52c59b66db20
Author: Ahmed Bougacha <ahmed at bougacha.org>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
M llvm/lib/Transforms/InstCombine/InstCombineInternal.h
A llvm/test/Transforms/InstCombine/ptrauth-call.ll
Log Message:
-----------
[InstCombine] Combine ptrauth constant callee into bundle. (#94706)
Try to optimize a call to a ptrauth constant, into its ptrauth bundle:
call(ptrauth(f)), ["ptrauth"()] -> call f
as long as the key/discriminator are the same in constant and bundle.
Commit: b4e2272271ee85273ca871abac2f6e9342da143d
https://github.com/llvm/llvm-project/commit/b4e2272271ee85273ca871abac2f6e9342da143d
Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M flang/lib/Lower/ConvertVariable.cpp
M flang/test/Lower/CUDA/cuda-set-allocator.cuf
Log Message:
-----------
[flang][cuda] Move cuf.set_allocator_idx after derived-type init (#148936)
Derived type initialization overwrite the component descriptor. Place
the `cuf.set_allocator_idx` after the initialization is performed.
Commit: 7f2bcd97cf4afc94e4badb2f6acd229003ef5912
https://github.com/llvm/llvm-project/commit/7f2bcd97cf4afc94e4badb2f6acd229003ef5912
Author: Artem Belevich <tra at google.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M clang/lib/Headers/CMakeLists.txt
A clang/lib/Headers/cuda_wrappers/__utility/declval.h
Log Message:
-----------
[CUDA] add wrapper header for libc++'s __utlility/declval.h (#148918)
Since #116709 more libc++ code relies on std::declval() and it broke
some CUDA compilations.
The new wrapper adds GPU-side overloads for the declval() helper
functions which allows it to continue working when used from CUDA
sources.
Commit: bc187b82705f31b5cd04fe986170f594ab2a51d4
https://github.com/llvm/llvm-project/commit/bc187b82705f31b5cd04fe986170f594ab2a51d4
Author: Philip Reames <preames at rivosinc.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInterleavedAccess.cpp
Log Message:
-----------
[RISCV] Use early-return in lowerInterleaveIntrinsicToStore [nfc]
Commit: c0785ea8bd76c36125bc9e5fad7bf787433635a5
https://github.com/llvm/llvm-project/commit/c0785ea8bd76c36125bc9e5fad7bf787433635a5
Author: David Peixotto <peix at meta.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M lldb/test/API/commands/plugin/TestPlugin.py
Log Message:
-----------
[lldb] Fix plugin test to not rely on enabled targets (#148956)
The plugins completion test was checking completions for the abi
plugins. But the available abi plugins will depend on which
[targets](https://github.com/llvm/llvm-project/blob/42d2ae1034b287eb60563c370dbf52c59b66db20/lldb/source/Plugins/ABI/CMakeLists.txt#L7)
are enabled in the cmake build configuration.
This PR updates the test to check for the json object file instead which
should be enabled on all builds.
Commit: 91d82bf4ab6c57a56d5797b40140b7c72b3de705
https://github.com/llvm/llvm-project/commit/91d82bf4ab6c57a56d5797b40140b7c72b3de705
Author: Maksim Levental <maksim.levental at gmail.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M mlir/lib/Dialect/OpenMP/IR/OpenMPDialect.cpp
Log Message:
-----------
[mlir] Fix u_int64_t in OpenMPDialect.cpp (#148963)
Commit: 4aa78c79da557b3fe1d19d2ad008f9e8e1353f1b
https://github.com/llvm/llvm-project/commit/4aa78c79da557b3fe1d19d2ad008f9e8e1353f1b
Author: Rahul Joshi <rjoshi at nvidia.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
Log Message:
-----------
Fix OpenMPDialect.cpp build error (#148952)
Commit: fd543b3c46844f02404cd3cc91738da8a18e3765
https://github.com/llvm/llvm-project/commit/fd543b3c46844f02404cd3cc91738da8a18e3765
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/utils/gn/secondary/clang/lib/Headers/BUILD.gn
Log Message:
-----------
[gn build] Port 7f2bcd97cf4a
Commit: e685e4a7715ec51575fa37bc9d6bd6cf420cf655
https://github.com/llvm/llvm-project/commit/e685e4a7715ec51575fa37bc9d6bd6cf420cf655
Author: Slava Zakharin <szakharin at nvidia.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/lib/TableGen/StringToOffsetTable.cpp
M llvm/test/TableGen/RuntimeLibcallEmitter.td
Log Message:
-----------
TableGen: Fixed the string table definitions visibility. (#148946)
This fixes the buildbots issues reported in #148839.
Commit: 77bcab835aca155b67548c4a3cb1ae583abb1a14
https://github.com/llvm/llvm-project/commit/77bcab835aca155b67548c4a3cb1ae583abb1a14
Author: Ahmed Bougacha <ahmed at bougacha.org>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
M llvm/lib/Transforms/InstCombine/InstCombineInternal.h
A llvm/test/Transforms/InstCombine/ptrauth-intrinsics-call.ll
Log Message:
-----------
[InstCombine] Combine ptrauth intrin. callee into same-key bundle. (#94707)
Try to optimize a call to the result of a ptrauth intrinsic, potentially
into the ptrauth call bundle:
call(ptrauth.resign(p)), ["ptrauth"()] -> call p, ["ptrauth"()]
call(ptrauth.sign(p)), ["ptrauth"()] -> call p
as long as the key/discriminator are the same in sign and auth-bundle,
and we don't change the key in the bundle (to a potentially-invalid
key.)
Generating a plain call to a raw unauthenticated pointer is generally
undesirable, but if we ended up seeing a naked ptrauth.sign in the first
place, we already have suspicious code. Unauthenticated calls are also
easier to spot than naked signs, so let the indirect call shine.
Note that there is an arguably unsafe extension to this, where we don't
bother checking that the key in bundle and intrinsic are the same (and
also allow folding away an auth into a bundle.)
This can end up generating calls with a bundle that has an invalid key
(which an informed frontend wouldn't have otherwise done), which can be
problematic. The C that generates that is straightforward but arguably
unreasonable. That wouldn't be an issue if we were to bite the bullet
and make these fully AArch64-specific, allowing key knowledge to be
embedded here.
Commit: bec508ad1719dfc8f0d85c5343ce44c3d1f326e1
https://github.com/llvm/llvm-project/commit/bec508ad1719dfc8f0d85c5343ce44c3d1f326e1
Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M mlir/lib/Target/LLVMIR/Dialect/NVVM/NVVMToLLVMIRTranslation.cpp
Log Message:
-----------
[mlir][nvvm] Fix control reaches end of non-void function warning (#148965)
Commit: b64d7baf9c0d37893ebabbe2539e725eb70b46e9
https://github.com/llvm/llvm-project/commit/b64d7baf9c0d37893ebabbe2539e725eb70b46e9
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrFormats.td
M llvm/lib/Target/RISCV/RISCVInstrInfoZicbo.td
Log Message:
-----------
[RISCV] Change the InstFormat for Zicbop prefetch instructions to InstFormatOther. (#148934)
The lower 5-bits of the immediate are not part of the address unlike
other InstFormatS instructions.
We use InstFormatS in RISCVRegisterInfo::needsFrameBaseReg and
RISCVRegisterInfo::getFrameIndexInstrOffset which is not aware of this
special encoding. Force the format to InstFormatOther so those functions
will ignore it.
InstFormatS is also used by relocation emission, but I don't believe we
ever emit these instructions with a relocation because of the encoding.
Commit: c36156de45a0f5e24e7a4ee2259c3302ea814785
https://github.com/llvm/llvm-project/commit/c36156de45a0f5e24e7a4ee2259c3302ea814785
Author: Yuxuan Chen <ych at fb.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M clang/lib/CodeGen/CGCoroutine.cpp
M clang/test/CodeGenCoroutines/coro-gro.cpp
Log Message:
-----------
[Clang] Fix FE crash during CGCoroutine GRO Alloca Emission (#148962)
Fixes: https://github.com/llvm/llvm-project/issues/148953
Currently when coroutine return object type is const qualified, we don't
do direct emission. The regular emission logic assumed that the auto var
emission will always result in an `AllocaInst`. However, based on my
findings, NRVO var emissions don't result in `AllocaInst`s. Therefore,
this
[assertion](https://github.com/llvm/llvm-project/blob/1a940bfff9176fb38a71b0045d7ae25df9a4ca7d/clang/lib/CodeGen/CGCoroutine.cpp#L712)
will fail.
Since the NRVOed returned object don't live on the coroutine frame, we
won't have the problem of it outliving the coroutine frame, therefore,
we can safely omit this metadata.
Commit: ae3bba4d15a10646ea91c6c0795633b82939857b
https://github.com/llvm/llvm-project/commit/ae3bba4d15a10646ea91c6c0795633b82939857b
Author: Ryosuke Niwa <rniwa at webkit.org>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M clang/lib/StaticAnalyzer/Checkers/WebKit/ASTUtils.cpp
M clang/test/Analysis/Checkers/WebKit/unretained-call-args.mm
Log Message:
-----------
WebKit checkers: recgonize @YES / @NO as safe constants (#148721)
Commit: 868793fa8e2f5aedb76fae09df6ca2128a165861
https://github.com/llvm/llvm-project/commit/868793fa8e2f5aedb76fae09df6ca2128a165861
Author: Changpeng Fang <changpeng.fang at amd.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/include/llvm/IR/IntrinsicsAMDGPU.td
M llvm/lib/Target/AMDGPU/AMDGPUGISel.td
M llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp
M llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.h
M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.h
M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
M llvm/lib/Target/AMDGPU/AMDGPURegisterBankInfo.cpp
M llvm/lib/Target/AMDGPU/AMDGPUSearchableTables.td
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
M llvm/lib/Target/AMDGPU/SIInstrInfo.td
M llvm/lib/Target/AMDGPU/SISchedule.td
M llvm/lib/Target/AMDGPU/VOP3PInstructions.td
M llvm/test/Analysis/UniformityAnalysis/AMDGPU/intrinsics.ll
A llvm/test/CodeGen/AMDGPU/llvm.amdgcn.wmma.gfx1250.w32.ll
A llvm/test/CodeGen/AMDGPU/llvm.amdgcn.wmma.imm.gfx1250.w32.ll
A llvm/test/CodeGen/AMDGPU/llvm.amdgcn.wmma.imod.gfx1250.w32.ll
A llvm/test/CodeGen/AMDGPU/llvm.amdgcn.wmma.index.gfx1250.w32.ll
Log Message:
-----------
AMDGPU: Support intrinsic selection for gfx1250 wmma instructions (#148957)
Co-authored-by: Stanislav Mekhanoshin <Stanislav.Mekhanoshin at amd.com>
Co-authored-by: Shilei Tian <Shilei.Tian at amd.com>
Commit: 5c4877ee0d2b5afcf23038b5cb0e82a03297657d
https://github.com/llvm/llvm-project/commit/5c4877ee0d2b5afcf23038b5cb0e82a03297657d
Author: Thurston Dang <thurston at google.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/lib/Transforms/Instrumentation/MemorySanitizer.cpp
M llvm/test/Instrumentation/MemorySanitizer/or.ll
Log Message:
-----------
[msan] Re-fix disjoint OR instrumentation from #145990 (#148760)
When disjoint OR was specified and a bit position contained a 1 in both
operands, #145990 would set the corresponding shadow bit to
uninitialized. However, the output of the operation is (LLVM) 'poison'
for the entire result, hence the entire shadow ought to be
uninitialized. This patch corrects the issue.
Commit: 116110e1a93531a64d82f049b6e36403bc14f278
https://github.com/llvm/llvm-project/commit/116110e1a93531a64d82f049b6e36403bc14f278
Author: Eli Friedman <efriedma at quicinc.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M clang/tools/libclang/libclang.map
Log Message:
-----------
[libclang] Fix version for symbol clang_visitCXXMethods (#148958)
Happened to spot this while looking at libclang.map for other reasons.
clang_visitCXXMethods was added in LLVM 21, not LLVM 20.
Commit: 3b41e4d4b5e57e4dc1a48a55f3bb683227863d81
https://github.com/llvm/llvm-project/commit/3b41e4d4b5e57e4dc1a48a55f3bb683227863d81
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2025-07-16 (Wed, 16 Jul 2025)
Changed paths:
M libcxx/include/barrier
M libcxx/src/barrier.cpp
Log Message:
-----------
[libc++] Annotate barrier functions that are defined in the dylib (#148542)
This can improve code gen slightly.
Commit: 66e707ec68d6dc8d8f70083b68daf52559a862c1
https://github.com/llvm/llvm-project/commit/66e707ec68d6dc8d8f70083b68daf52559a862c1
Author: Harald van Dijk <harald.vandijk at codeplay.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M clang/include/clang/AST/ASTContext.h
M clang/include/clang/Basic/TargetInfo.h
M clang/lib/AST/ASTContext.cpp
M clang/lib/Sema/SemaExprCXX.cpp
M clang/lib/Sema/SemaLookup.cpp
M clang/lib/Sema/SemaRISCV.cpp
Log Message:
-----------
[NFC] Remove getDefaultCallingConvention IsBuiltin (#145904)
ASTContext::getDefaultCallingConvention() was documented as returning
"the default calling convention for the current target", but did not do
this, and was never intended to do this, it has always been controlled
by command-line options to deviate from the target default.
This commit changes ASTContext::getDefaultCallingConvention() to reflect
the fact that it returns the context's default calling convention, not
the target's default calling convention. The IsBuiltin parameter, which
was used to return the target's default calling convention rather than
the context's, is removed in favor of
getTargetInfo().getDefaultCallingConv() which is more explicit of the
intent.
Commit: 91ee01fda8b8801805708a51bba90796da376ae7
https://github.com/llvm/llvm-project/commit/91ee01fda8b8801805708a51bba90796da376ae7
Author: Kazu Hirata <kazu at google.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M clang/lib/Sema/SemaDeclAttr.cpp
M clang/lib/Sema/SemaM68k.cpp
M clang/lib/Sema/SemaMSP430.cpp
M clang/lib/Sema/SemaType.cpp
Log Message:
-----------
[Sema] Remove unnecessary casts (NFC) (#148871)
getArgAsExpr already returns Expr *.
Commit: 4bd0e9e7f354e8824af506f4ee6816fb0351ed78
https://github.com/llvm/llvm-project/commit/4bd0e9e7f354e8824af506f4ee6816fb0351ed78
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp
Log Message:
-----------
[RISCV] Add early out to reduce indentation in SelectAddrRegRegScale. NFC
Commit: 0f1b16dd5f83fd931ecb111bb925ac9e1d56f589
https://github.com/llvm/llvm-project/commit/0f1b16dd5f83fd931ecb111bb925ac9e1d56f589
Author: Akshay Deodhar <adeodhar at nvidia.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/lib/Target/NVPTX/MCTargetDesc/NVPTXInstPrinter.cpp
M llvm/lib/Target/NVPTX/MCTargetDesc/NVPTXInstPrinter.h
M llvm/lib/Target/NVPTX/NVPTX.h
M llvm/lib/Target/NVPTX/NVPTXISelDAGToDAG.cpp
M llvm/lib/Target/NVPTX/NVPTXISelDAGToDAG.h
M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
M llvm/lib/Target/NVPTX/NVPTXInstrInfo.td
M llvm/lib/Target/NVPTX/NVPTXIntrinsics.td
M llvm/lib/Target/NVPTX/NVPTXUtilities.h
M llvm/test/CodeGen/NVPTX/atomicrmw-expand.ll
M llvm/test/CodeGen/NVPTX/atomics-sm70.ll
M llvm/test/CodeGen/NVPTX/atomics-sm90.ll
M llvm/test/CodeGen/NVPTX/cmpxchg-sm60.ll
M llvm/test/CodeGen/NVPTX/cmpxchg-sm70.ll
M llvm/test/CodeGen/NVPTX/cmpxchg-sm90.ll
M llvm/test/CodeGen/NVPTX/cmpxchg.ll
M llvm/test/CodeGen/NVPTX/cmpxchg.py
M llvm/test/CodeGen/NVPTX/distributed-shared-cluster.ll
Log Message:
-----------
[NVPTX] Add syncscope support for cmpxchg (#140812)
This MR adds support for cmpxchg instructions with syncscope.
- Adds a new definition for atomic 3-operand instructions, with constant
operands for sem, scope and addsp.
- Lowers cmpxchg SDNodes populating sem, scope and addsp using
SDNodeXForms.
- Handle syncscope correctly for emulation loops in AtomicExpand, in
bracketInstructionWithFences.
- Modifies emitLeadingFence, emitTrailingFence to accept SyncScope as a
parameter. Modifies implementation of these in other backends, with the
parameter being ignored.
- Tests for a _slice_ of all possible combinations of the cmpxchg
instruction (with modifications to cmpxchg.py)
---------
Co-authored-by: gonzalobg <65027571+gonzalobg at users.noreply.github.com>
Commit: c7d1eae4fc442a99085bae16be53a8087b9e5f25
https://github.com/llvm/llvm-project/commit/c7d1eae4fc442a99085bae16be53a8087b9e5f25
Author: Philip Reames <preames at rivosinc.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
Log Message:
-----------
[RISCV] Use masked segment LD/ST intrinsics in (de)interleaveN lowering [nfc] (#148966)
Follow up on the work from e5bc7e7d, and extend it to the lowering used
for interleave and deinterleave when we can't combine with a nearby
memory operation.
Commit: 2d6534b7daa0483f11f84d218fa1dc65eee44a93
https://github.com/llvm/llvm-project/commit/2d6534b7daa0483f11f84d218fa1dc65eee44a93
Author: Stanislav Mekhanoshin <rampitec at users.noreply.github.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp
M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.h
M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
M llvm/lib/Target/AMDGPU/AMDGPUMCInstLower.cpp
M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUELFObjectWriter.cpp
M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCAsmInfo.cpp
M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCCodeEmitter.cpp
M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCExpr.h
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
M llvm/lib/Target/AMDGPU/SIInstrInfo.h
M llvm/lib/Target/AMDGPU/SIInstrInfo.td
M llvm/lib/Target/AMDGPU/SIInstructions.td
A llvm/test/CodeGen/AMDGPU/global-address.ll
M llvm/test/CodeGen/MIR/AMDGPU/target-flags.mir
A llvm/test/MC/AMDGPU/fixup64.s
Log Message:
-----------
[AMDGPU] gfx1250 64-bit relocations and fixups (#148951)
Commit: 82d7405b3bb911c86d0b07c8a6bec5044acbdf66
https://github.com/llvm/llvm-project/commit/82d7405b3bb911c86d0b07c8a6bec5044acbdf66
Author: Stanislav Mekhanoshin <rampitec at users.noreply.github.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPU.td
M llvm/lib/Target/AMDGPU/GCNSubtarget.h
M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
M llvm/lib/Target/AMDGPU/SOPInstructions.td
A llvm/test/CodeGen/AMDGPU/branch-relaxation-gfx1250.ll
M llvm/test/MC/AMDGPU/gfx1250_asm_sop1.s
M llvm/test/MC/Disassembler/AMDGPU/gfx1250_dasm_sop1.txt
Log Message:
-----------
[AMDGPU] Use S_ADD_PC_I64 for long branches in gfx1250 (#148961)
Commit: 5458151817c5f46c05a6b7c472085e51aa55c892
https://github.com/llvm/llvm-project/commit/5458151817c5f46c05a6b7c472085e51aa55c892
Author: Florian Mayer <fmayer at google.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
M llvm/test/CodeGen/X86/invalid-operand-bundle-call.ll
M llvm/test/CodeGen/X86/invalid-operand-bundle-callbr.ll
Log Message:
-----------
[SelectionDAG] improve error messages for invalid operator bundle (#148945)
Commit: b1a93cfc32fbe912bb9b97796145501ea453d1bd
https://github.com/llvm/llvm-project/commit/b1a93cfc32fbe912bb9b97796145501ea453d1bd
Author: Ross Kirsling <ross.kirsling at sony.com>
Date: 2025-07-16 (Wed, 16 Jul 2025)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
A llvm/test/Transforms/InstCombine/fold-icmp-without-constant-into-phi.ll
Log Message:
-----------
[InstCombine] foldOpIntoPhi should apply to icmp with non-constant operand (#147676)
Alive2: https://alive2.llvm.org/ce/z/4MeCzA
Fixes #146263.
Commit: 386f73d4fb67649d5518d9a0cd5a49498bf608ca
https://github.com/llvm/llvm-project/commit/386f73d4fb67649d5518d9a0cd5a49498bf608ca
Author: Ross Kirsling <ross.kirsling at sony.com>
Date: 2025-07-16 (Wed, 16 Jul 2025)
Changed paths:
M llvm/test/tools/llvm-objcopy/ELF/strip-preserve-atime.test
Log Message:
-----------
[llvm-objcopy] Explain that strip-preserve-atime.test fails with Crowdstrike (#145783)
Related to #82372.
Not a fix per se, but an acknowledgment and a workaround.
Commit: 4b81dc75f4a5b8651d6a4c4ac8840049dc9ae289
https://github.com/llvm/llvm-project/commit/4b81dc75f4a5b8651d6a4c4ac8840049dc9ae289
Author: Philip Reames <preames at rivosinc.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/include/llvm/CodeGen/TargetLowering.h
M llvm/lib/CodeGen/InterleavedAccessPass.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.h
M llvm/lib/Target/RISCV/RISCVISelLowering.h
M llvm/lib/Target/RISCV/RISCVInterleavedAccess.cpp
Log Message:
-----------
[IA] Use a single callback for lowerDeinterleaveIntrinsic [nfc] (#148978)
This essentially merges the handling for VPLoad - currently in
lowerInterleavedVPLoad which is shared between shuffle and intrinsic
based interleaves - into the existing dedicated routine.
My plan is that if we like this factoring is that I'll do the same for
the intrinsic store paths, and then remove the excess generality from
the shuffle paths since we don't need to support both modes in the
shared VPLoad/Store callbacks. We can probably even fold the VP versions
into the non-VP shuffle variants in the analogous way.
Commit: 01dd892734614cad30d7b50e5acc1c533a3fd39c
https://github.com/llvm/llvm-project/commit/01dd892734614cad30d7b50e5acc1c533a3fd39c
Author: Changpeng Fang <changpeng.fang at amd.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/include/llvm/IR/IntrinsicsAMDGPU.td
M llvm/lib/Target/AMDGPU/AMDGPURegisterBankInfo.cpp
M llvm/test/Analysis/UniformityAnalysis/AMDGPU/intrinsics.ll
Log Message:
-----------
AMDGPU: Remove a non-existent wmma instruction from gfx1250 (#148989)
Commit: c962f2b29d55138d0b3849a7b8b557108188bb4f
https://github.com/llvm/llvm-project/commit/c962f2b29d55138d0b3849a7b8b557108188bb4f
Author: Changpeng Fang <changpeng.fang at amd.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M clang/include/clang/Basic/BuiltinsAMDGPU.def
M clang/lib/CodeGen/TargetBuiltins/AMDGPU.cpp
A clang/test/CodeGenOpenCL/builtins-amdgcn-gfx1250-wmma-w32.cl
A clang/test/SemaOpenCL/builtins-amdgcn-error-gfx1250-wmma-w32-param.cl
Log Message:
-----------
AMDGPU: Implement builtins for gfx1250 wmma instructions (#148991)
Co-authored-by: Stanislav Mekhanoshin <Stanislav.Mekhanoshin at amd.com>
Co-authored-by: Shilei Tian <Shilei.Tian at amd.com>
Commit: 36e4174989f866c9f97acb35c0d3b80ef61e9459
https://github.com/llvm/llvm-project/commit/36e4174989f866c9f97acb35c0d3b80ef61e9459
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
A llvm/test/CodeGen/AArch64/pr148949.ll
Log Message:
-----------
[DAGCombiner][AArch64] Prevent SimplifyVCastOp from creating illegal scalar types after type legalization. (#148970)
Fixes #148949
Commit: a87b8398f9e94ea363c170625e015074fecfd318
https://github.com/llvm/llvm-project/commit/a87b8398f9e94ea363c170625e015074fecfd318
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp
Log Message:
-----------
[RISCV] Simplify conversion from ISD::Constant to ISD::TargetConstant in SelectAddrRegRegScale. NFC
Directly copy the underlying ConstantInt instead of reconstructing it.
Commit: 5ff99f2757a62c52079397602dbd0c2e9d9f0ae7
https://github.com/llvm/llvm-project/commit/5ff99f2757a62c52079397602dbd0c2e9d9f0ae7
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp
Log Message:
-----------
[RISCV] Remove duplicate check in an if statement. NFC
Commit: 513a6465ba09d63ca179aa8122845e3abd5bd62b
https://github.com/llvm/llvm-project/commit/513a6465ba09d63ca179aa8122845e3abd5bd62b
Author: yronglin <yronglin777 at gmail.com>
Date: 2025-07-16 (Wed, 16 Jul 2025)
Changed paths:
M clang/test/CXX/module/module.interface/p1.cpp
Log Message:
-----------
[NFC][clang] Refactor CXX/module/module.interface/p1.cpp with split-file (#148861)
Refine CXX/module/module.interface/p1.cpp with split-file.
This MR is a part of https://github.com/llvm/llvm-project/pull/107168.
Signed-off-by: yronglin <yronglin777 at gmail.com>
Commit: 0f6a2db2594f5ffaf9bcd03f8233a850aa7d32af
https://github.com/llvm/llvm-project/commit/0f6a2db2594f5ffaf9bcd03f8233a850aa7d32af
Author: Harrison Hao <57025411+harrisonGPU at users.noreply.github.com>
Date: 2025-07-16 (Wed, 16 Jul 2025)
Changed paths:
A llvm/test/CodeGen/AMDGPU/merge-tbuffer-gfx10.mir
A llvm/test/CodeGen/AMDGPU/merge-tbuffer-gfx11.mir
A llvm/test/CodeGen/AMDGPU/merge-tbuffer-gfx9.mir
R llvm/test/CodeGen/AMDGPU/merge-tbuffer.mir
Log Message:
-----------
[NFC][AMDGPU] Split merge-tbuffer.mir into separate tests for gfx9, gfx10, and gfx11 (#148786)
For https://github.com/llvm/llvm-project/pull/145078
Commit: 28e1473e8e523150914e8c7ea50b44fb0d2a8d65
https://github.com/llvm/llvm-project/commit/28e1473e8e523150914e8c7ea50b44fb0d2a8d65
Author: Fangrui Song <i at maskray.me>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/include/llvm/MC/MCAssembler.h
M llvm/include/llvm/MC/MCELFStreamer.h
M llvm/include/llvm/MC/MCObjectStreamer.h
M llvm/include/llvm/MC/MCSection.h
M llvm/include/llvm/MC/MCStreamer.h
M llvm/lib/MC/MCAsmStreamer.cpp
M llvm/lib/MC/MCAssembler.cpp
M llvm/lib/MC/MCELFStreamer.cpp
M llvm/lib/MC/MCFragment.cpp
M llvm/lib/MC/MCObjectStreamer.cpp
M llvm/lib/MC/MCParser/AsmParser.cpp
M llvm/lib/MC/MCSection.cpp
M llvm/lib/MC/MCStreamer.cpp
M llvm/lib/Target/X86/MCTargetDesc/X86AsmBackend.cpp
R llvm/test/MC/ARM/AlignedBundling/group-bundle-arm.s
R llvm/test/MC/ARM/AlignedBundling/illegal-subtarget-change.s
R llvm/test/MC/ARM/AlignedBundling/lit.local.cfg
R llvm/test/MC/ARM/AlignedBundling/pad-align-to-bundle-end.s
R llvm/test/MC/ARM/AlignedBundling/subtarget-change.s
M llvm/test/MC/AsmParser/AArch64/directive-parse-err.s
R llvm/test/MC/X86/AlignedBundling/align-mode-argument-error.s
R llvm/test/MC/X86/AlignedBundling/asm-printing-bundle-directives.s
R llvm/test/MC/X86/AlignedBundling/autogen-inst-offset-align-to-end.s
R llvm/test/MC/X86/AlignedBundling/autogen-inst-offset-padding.s
R llvm/test/MC/X86/AlignedBundling/bundle-group-too-large-error.s
R llvm/test/MC/X86/AlignedBundling/bundle-lock-option-error.s
R llvm/test/MC/X86/AlignedBundling/bundle-subtarget-change-error.s
R llvm/test/MC/X86/AlignedBundling/different-sections.s
R llvm/test/MC/X86/AlignedBundling/labeloffset.s
R llvm/test/MC/X86/AlignedBundling/lit.local.cfg
R llvm/test/MC/X86/AlignedBundling/lock-without-bundle-mode-error.s
R llvm/test/MC/X86/AlignedBundling/long-nop-pad.s
R llvm/test/MC/X86/AlignedBundling/misaligned-bundle-group.s
R llvm/test/MC/X86/AlignedBundling/misaligned-bundle.s
R llvm/test/MC/X86/AlignedBundling/nesting.s
R llvm/test/MC/X86/AlignedBundling/pad-align-to-bundle-end.s
R llvm/test/MC/X86/AlignedBundling/pad-bundle-groups.s
R llvm/test/MC/X86/AlignedBundling/relax-at-bundle-end.s
R llvm/test/MC/X86/AlignedBundling/relax-in-bundle-group.s
R llvm/test/MC/X86/AlignedBundling/section-alignment.s
R llvm/test/MC/X86/AlignedBundling/single-inst-bundling.s
R llvm/test/MC/X86/AlignedBundling/switch-section-locked-error.s
R llvm/test/MC/X86/AlignedBundling/unlock-without-lock-error.s
R llvm/test/MC/X86/align-branch-bundle.s
Log Message:
-----------
MC: Remove bundle alignment mode
The being-removed PNaCl has a Software Fault Isolation mechanism, which
requires that certain instructions and groups of instructions do not
cross a bundle boundary. When `.bundle_align_mode` is in effect, each
instruction is placed in its own fragment, allowing flexible NOP
padding.
This feature has significantly complicated our refactoring of MCStreamer
and MCFragment, leading to considerable effort spent untangling
it (including flushPendingLabels (75006466296ed4b0f845cbbec4bf77c21de43b40),
MCAssembler iteration improvement, and recent MCFragment refactoring).
* Make MCObjectStreamer::emitInstToData non-virtual and delete
MCELFStreamer::emitInstTodata
* Delete MCELFStreamer::emitValueImpl and emitValueToAlignment
Minor instructions:u decrease for both -O0 -g and -O3 builds
https://llvm-compile-time-tracker.com/compare.php?from=c06d3a7b728293cbc53ff91239d6cd87c0982ffb&to=9b078c7f228bc5b6cdbfe839f751c9407f8aec3e&stat=instructions:u
Pull Request: https://github.com/llvm/llvm-project/pull/148781
Commit: 968d38d1d7d9de2d5717457876bba2663b36f620
https://github.com/llvm/llvm-project/commit/968d38d1d7d9de2d5717457876bba2663b36f620
Author: Peter Collingbourne <peter at pcc.me.uk>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M compiler-rt/test/lit.common.cfg.py
Log Message:
-----------
compiler-rt: test: Use the host instead of the target to select %expect_crash.
When running tests in a cross-compiled build, %expect_crash is
run on the host, not the target, so we need to check the host
OS. config.host_os surprisingly refers to the target OS because it
is derived from CMAKE_SYSTEM_NAME which specifies the target. See:
https://cmake.org/cmake/help/latest/variable/CMAKE_SYSTEM_NAME.html
Another speculative fix for:
https://lab.llvm.org/buildbot/#/builders/193/builds/9070
Commit: fa88c188de33b00e133973129338efd48a2c7d0b
https://github.com/llvm/llvm-project/commit/fa88c188de33b00e133973129338efd48a2c7d0b
Author: Uday Bondhugula <uday at polymagelabs.com>
Date: 2025-07-16 (Wed, 16 Jul 2025)
Changed paths:
M mlir/include/mlir/Dialect/Affine/Analysis/AffineAnalysis.h
M mlir/lib/Dialect/Affine/Analysis/Utils.cpp
Log Message:
-----------
[MLIR][Affine] Add default null init for mlir::affine::MemRefAccess (#147922)
Add default null init for `mlir::affine::MemRefAccess`. This is
consistent with various other MLIR structures and had been missing for
`mlir::affine::MemRefAccess`.
Commit: 8ec03f49dc417897a9ecffb3c5bc63c8e3e43ab7
https://github.com/llvm/llvm-project/commit/8ec03f49dc417897a9ecffb3c5bc63c8e3e43ab7
Author: Eli Friedman <efriedma at quicinc.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/docs/LangRef.rst
Log Message:
-----------
Clarify semantics for overflowing constrained lrint etc. (#148979)
This fixes llvm.experimental.constrained.lrint and friends to use the
same semantics as llvm.lrint and friends, as defined in
ba5c26da7ce85dbdcee3d964282e5f0981792702.
Commit: 156e4cb10e5863daf94154892e1d859ab1a4b57a
https://github.com/llvm/llvm-project/commit/156e4cb10e5863daf94154892e1d859ab1a4b57a
Author: Fangrui Song <i at maskray.me>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/lib/Target/NVPTX/MCTargetDesc/NVPTXInstPrinter.cpp
M llvm/lib/Target/NVPTX/NVPTX.h
Log Message:
-----------
NVPTX: Fix clang -Wcovered-switch-default
Commit: 9b3064aec821fafca868b472eec209db373353e6
https://github.com/llvm/llvm-project/commit/9b3064aec821fafca868b472eec209db373353e6
Author: Ming-Yi Lai <ming-yi.lai at mediatek.com>
Date: 2025-07-16 (Wed, 16 Jul 2025)
Changed paths:
M llvm/lib/Object/ELFObjectFile.cpp
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCTargetDesc.cpp
A llvm/test/tools/llvm-objdump/ELF/RISCV/rv32-plt.test
A llvm/test/tools/llvm-objdump/ELF/RISCV/rv64-plt.test
Log Message:
-----------
[llvm-objdump][RISCV] Display `@plt' symbols when disassembling .plt section (#147933)
This patch adds dummy symbols for PLT entries for RISC-V 32-bit and
64-bit targets so llvm-objdump can show the function symbol that
corresponds to each PLT entry.
Commit: 228c45f13dc92546661b6825b7b32c3808b0d2eb
https://github.com/llvm/llvm-project/commit/228c45f13dc92546661b6825b7b32c3808b0d2eb
Author: James Newling <james.newling at gmail.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M mlir/lib/Dialect/Arith/Transforms/EmulateUnsupportedFloats.cpp
M mlir/lib/Dialect/NVGPU/TransformOps/NVGPUTransformOps.cpp
M mlir/lib/Dialect/XeGPU/Transforms/XeGPUUnroll.cpp
M mlir/test/Dialect/NVGPU/transform-matmul-to-nvvm.mlir
Log Message:
-----------
Revert [mlir][vector] Use vector.broadcast in place of vector.splat (#148937)
This reverts PR/commit https://github.com/llvm/llvm-project/commit/99875733fce0c6c72c50244ceaffe0cc5e1fa277
This PR/commit should only be landed after
https://github.com/llvm/llvm-project/pull/148027, at which point we
don't need to assume that vector.broadcast has been lowered to another
form.
Commit: 7da8f7394f8f0847dd1a29a9fbab5043fe307bae
https://github.com/llvm/llvm-project/commit/7da8f7394f8f0847dd1a29a9fbab5043fe307bae
Author: Kazu Hirata <kazu at google.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.cpp
Log Message:
-----------
[AMDGPU] Remove an unnecessary cast (NFC) (#148868)
STI is already of const GCNSubtarget *.
Commit: 39dd6cdd57b2587c48cbea01838d77611055e72f
https://github.com/llvm/llvm-project/commit/39dd6cdd57b2587c48cbea01838d77611055e72f
Author: Kazu Hirata <kazu at google.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/lib/Target/ARM/ARMExpandPseudoInsts.cpp
Log Message:
-----------
[ARM] Remove an unnecessary cast (NFC) (#148869)
TII is already of const ARMBaseInstrInfo *. This patch removes AII in
favor of TII.
Commit: b454062456ceb8a093e292f8035c0f2a0bb08d03
https://github.com/llvm/llvm-project/commit/b454062456ceb8a093e292f8035c0f2a0bb08d03
Author: Kazu Hirata <kazu at google.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/lib/Target/Hexagon/HexagonConstPropagation.cpp
Log Message:
-----------
[Hexagon] Remove an unnecessary cast (NFC) (#148870)
SB is already of MachineBasicBlock *SB.
Commit: 606e7f90b1d59799829eb9485eccfca5101b775f
https://github.com/llvm/llvm-project/commit/606e7f90b1d59799829eb9485eccfca5101b775f
Author: Kazu Hirata <kazu at google.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M mlir/lib/Debug/BreakpointManagers/FileLineColLocBreakpointManager.cpp
M mlir/lib/Debug/ExecutionContext.cpp
M mlir/lib/Debug/Observers/ActionProfiler.cpp
M mlir/lib/Interfaces/ControlFlowInterfaces.cpp
M mlir/lib/Interfaces/LoopLikeInterface.cpp
M mlir/lib/Interfaces/SideEffectInterfaces.cpp
M mlir/lib/Pass/Pass.cpp
M mlir/lib/Pass/PassCrashRecovery.cpp
M mlir/lib/Pass/PassTiming.cpp
M mlir/lib/Query/Matcher/ErrorBuilder.cpp
M mlir/lib/Query/Query.cpp
M mlir/lib/Reducer/ReductionNode.cpp
M mlir/lib/Reducer/ReductionTreePass.cpp
M mlir/lib/Rewrite/FrozenRewritePatternSet.cpp
M mlir/lib/Support/Timing.cpp
M mlir/lib/Tools/PDLL/CodeGen/CPPGen.cpp
M mlir/lib/Tools/PDLL/ODS/Context.cpp
M mlir/lib/Tools/PDLL/ODS/Dialect.cpp
M mlir/lib/Tools/PDLL/Parser/Parser.cpp
M mlir/lib/Tools/lsp-server-support/Logging.cpp
M mlir/lib/Tools/lsp-server-support/Protocol.cpp
M mlir/lib/Tools/lsp-server-support/Transport.cpp
M mlir/lib/Tools/mlir-opt/MlirOptMain.cpp
M mlir/lib/Tools/mlir-pdll-lsp-server/LSPServer.cpp
M mlir/lib/Tools/mlir-pdll-lsp-server/Protocol.cpp
M mlir/lib/Tools/mlir-reduce/MlirReduceMain.cpp
M mlir/lib/Tools/mlir-translate/Translation.cpp
M mlir/lib/Tools/tblgen-lsp-server/LSPServer.cpp
Log Message:
-----------
[mlir] Remove unused includes (NFC) (#148872)
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: 7a9bef0166951a61bc7094514a20471ae45f6090
https://github.com/llvm/llvm-project/commit/7a9bef0166951a61bc7094514a20471ae45f6090
Author: Jannick Kremer <jannick.kremer at mailbox.org>
Date: 2025-07-16 (Wed, 16 Jul 2025)
Changed paths:
M .github/workflows/libclang-python-tests.yml
M clang/CMakeLists.txt
A clang/bindings/python/tests/CMakeLists.txt
A clang/bindings/python/tests/__init__.py
A clang/bindings/python/tests/cindex/INPUTS/a.inc
A clang/bindings/python/tests/cindex/INPUTS/b.inc
A clang/bindings/python/tests/cindex/INPUTS/compile_commands.json
A clang/bindings/python/tests/cindex/INPUTS/header1.h
A clang/bindings/python/tests/cindex/INPUTS/header2.h
A clang/bindings/python/tests/cindex/INPUTS/header3.h
A clang/bindings/python/tests/cindex/INPUTS/hello.cpp
A clang/bindings/python/tests/cindex/INPUTS/include.cpp
A clang/bindings/python/tests/cindex/INPUTS/parse_arguments.c
A clang/bindings/python/tests/cindex/INPUTS/testfile.c
A clang/bindings/python/tests/cindex/__init__.py
A clang/bindings/python/tests/cindex/test_access_specifiers.py
A clang/bindings/python/tests/cindex/test_cdb.py
A clang/bindings/python/tests/cindex/test_code_completion.py
A clang/bindings/python/tests/cindex/test_comment.py
A clang/bindings/python/tests/cindex/test_cursor.py
A clang/bindings/python/tests/cindex/test_cursor_kind.py
A clang/bindings/python/tests/cindex/test_diagnostics.py
A clang/bindings/python/tests/cindex/test_enums.py
A clang/bindings/python/tests/cindex/test_exception_specification_kind.py
A clang/bindings/python/tests/cindex/test_file.py
A clang/bindings/python/tests/cindex/test_index.py
A clang/bindings/python/tests/cindex/test_lib.py
A clang/bindings/python/tests/cindex/test_linkage.py
A clang/bindings/python/tests/cindex/test_location.py
A clang/bindings/python/tests/cindex/test_rewrite.py
A clang/bindings/python/tests/cindex/test_source_range.py
A clang/bindings/python/tests/cindex/test_tls_kind.py
A clang/bindings/python/tests/cindex/test_token_kind.py
A clang/bindings/python/tests/cindex/test_tokens.py
A clang/bindings/python/tests/cindex/test_translation_unit.py
A clang/bindings/python/tests/cindex/test_type.py
A clang/bindings/python/tests/cindex/util.py
M clang/test/CMakeLists.txt
R clang/test/bindings/python/bindings.sh
R clang/test/bindings/python/lit.local.cfg
R clang/test/bindings/python/tests/__init__.py
R clang/test/bindings/python/tests/cindex/INPUTS/a.inc
R clang/test/bindings/python/tests/cindex/INPUTS/b.inc
R clang/test/bindings/python/tests/cindex/INPUTS/compile_commands.json
R clang/test/bindings/python/tests/cindex/INPUTS/header1.h
R clang/test/bindings/python/tests/cindex/INPUTS/header2.h
R clang/test/bindings/python/tests/cindex/INPUTS/header3.h
R clang/test/bindings/python/tests/cindex/INPUTS/hello.cpp
R clang/test/bindings/python/tests/cindex/INPUTS/include.cpp
R clang/test/bindings/python/tests/cindex/INPUTS/parse_arguments.c
R clang/test/bindings/python/tests/cindex/INPUTS/testfile.c
R clang/test/bindings/python/tests/cindex/__init__.py
R clang/test/bindings/python/tests/cindex/test_access_specifiers.py
R clang/test/bindings/python/tests/cindex/test_cdb.py
R clang/test/bindings/python/tests/cindex/test_code_completion.py
R clang/test/bindings/python/tests/cindex/test_comment.py
R clang/test/bindings/python/tests/cindex/test_cursor.py
R clang/test/bindings/python/tests/cindex/test_cursor_kind.py
R clang/test/bindings/python/tests/cindex/test_diagnostics.py
R clang/test/bindings/python/tests/cindex/test_enums.py
R clang/test/bindings/python/tests/cindex/test_exception_specification_kind.py
R clang/test/bindings/python/tests/cindex/test_file.py
R clang/test/bindings/python/tests/cindex/test_index.py
R clang/test/bindings/python/tests/cindex/test_lib.py
R clang/test/bindings/python/tests/cindex/test_linkage.py
R clang/test/bindings/python/tests/cindex/test_location.py
R clang/test/bindings/python/tests/cindex/test_rewrite.py
R clang/test/bindings/python/tests/cindex/test_source_range.py
R clang/test/bindings/python/tests/cindex/test_tls_kind.py
R clang/test/bindings/python/tests/cindex/test_token_kind.py
R clang/test/bindings/python/tests/cindex/test_tokens.py
R clang/test/bindings/python/tests/cindex/test_translation_unit.py
R clang/test/bindings/python/tests/cindex/test_type.py
R clang/test/bindings/python/tests/cindex/util.py
Log Message:
-----------
Revert "Move python binding tests to lit framework" (#149012)
This reverts commit f8707f994af2582f6dc58190106946efeb43bf05.
Commit: dc3a4c0fcf4953645bc81ae99db10e48acd4961f
https://github.com/llvm/llvm-project/commit/dc3a4c0fcf4953645bc81ae99db10e48acd4961f
Author: Fangrui Song <i at maskray.me>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/include/llvm/MC/MCAsmBackend.h
M llvm/include/llvm/MC/MCAssembler.h
M llvm/include/llvm/MC/MCCodeView.h
M llvm/include/llvm/MC/MCContext.h
M llvm/include/llvm/MC/MCELFStreamer.h
M llvm/include/llvm/MC/MCObjectStreamer.h
M llvm/include/llvm/MC/MCSection.h
M llvm/include/llvm/MC/MCWasmStreamer.h
M llvm/lib/MC/MCAsmBackend.cpp
M llvm/lib/MC/MCAssembler.cpp
M llvm/lib/MC/MCCodeView.cpp
M llvm/lib/MC/MCContext.cpp
M llvm/lib/MC/MCELFStreamer.cpp
M llvm/lib/MC/MCExpr.cpp
M llvm/lib/MC/MCFragment.cpp
M llvm/lib/MC/MCMachOStreamer.cpp
M llvm/lib/MC/MCObjectStreamer.cpp
M llvm/lib/MC/MCSection.cpp
M llvm/lib/MC/MCSymbol.cpp
M llvm/lib/MC/MCWasmStreamer.cpp
M llvm/lib/MC/MCWin64EH.cpp
M llvm/lib/MC/MCWinCOFFStreamer.cpp
M llvm/lib/MC/MCXCOFFStreamer.cpp
M llvm/lib/MC/MachObjectWriter.cpp
M llvm/lib/MC/WasmObjectWriter.cpp
M llvm/lib/MC/WinCOFFObjectWriter.cpp
M llvm/lib/Target/AArch64/MCTargetDesc/AArch64ELFStreamer.cpp
M llvm/lib/Target/ARM/MCTargetDesc/ARMAsmBackend.cpp
M llvm/lib/Target/ARM/MCTargetDesc/ARMAsmBackend.h
M llvm/lib/Target/ARM/MCTargetDesc/ARMELFStreamer.cpp
M llvm/lib/Target/CSKY/MCTargetDesc/CSKYAsmBackend.cpp
M llvm/lib/Target/CSKY/MCTargetDesc/CSKYAsmBackend.h
M llvm/lib/Target/Hexagon/MCTargetDesc/HexagonAsmBackend.cpp
M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchAsmBackend.cpp
M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchAsmBackend.h
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVAsmBackend.cpp
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVAsmBackend.h
M llvm/lib/Target/X86/MCTargetDesc/X86AsmBackend.cpp
M llvm/test/MC/ELF/mc-dump.s
Log Message:
-----------
MC: Restructure MCFragment as a fixed part and a variable tail
Refactor the fragment representation of `push rax; jmp foo; nop; jmp foo`,
previously encoded as
`MCDataFragment(nop); MCRelaxableFragment(jmp foo); MCDataFragment(nop); MCRelaxableFragment(jmp foo)`,
to
```
MCFragment(fixed: push rax, variable: jmp foo)
MCFragment(fixed: nop, variable: jmp foo)
```
Changes:
* Eliminate MCEncodedFragment, moving content and fixup storage to MCFragment.
* The new MCFragment contains a fixed-size content (similar to previous
MCDataFragment) and an optional variable-size tail.
* The variable-size tail supports FT_Relaxable, FT_LEB, FT_Dwarf, and
FT_DwarfFrame, with plans to extend to other fragment types.
dyn_cast/isa should be avoided for the converted fragment subclasses.
* In `setVarFixups`, source fixup offsets are relative to the variable part's start.
Stored fixup (in `FixupStorage`) offsets are relative to the fixed part's start.
A lot of code does `getFragmentOffset(Frag) + Fixup.getOffset()`,
expecting the fixup offset to be relative to the fixed part's start.
* HexagonAsmBackend::fixupNeedsRelaxationAdvanced needs to know the
associated instruction for a fixup. We have to add a `const MCFragment &` parameter.
* In MCObjectStreamer, extend `absoluteSymbolDiff` to apply to
FT_Relaxable as otherwise there would be many more FT_DwarfFrame
fragments in -g compilations.
https://llvm-compile-time-tracker.com/compare.php?from=28e1473e8e523150914e8c7ea50b44fb0d2a8d65&to=778d68ad1d48e7f111ea853dd249912c601bee89&stat=instructions:u
```
stage2-O0-g instructins:u geomeon (-0.07%)
stage1-ReleaseLTO-g (link only) max-rss geomean (-0.39%)
```
```
% /t/clang-old -g -c sqlite3.i -w -mllvm -debug-only=mc-dump &| awk '/^[0-9]+/{s[$2]++;tot++} END{print "Total",tot; n=asorti(s, si); for(i=1;i<=n;i++) print si[i],s[si[i]]}'
Total 59675
Align 2215
Data 29700
Dwarf 12044
DwarfCallFrame 4216
Fill 92
LEB 12
Relaxable 11396
% /t/clang-new -g -c sqlite3.i -w -mllvm -debug-only=mc-dump &| awk '/^[0-9]+/{s[$2]++;tot++} END{print "Total",tot; n=asorti(s, si); for(i=1;i<=n;i++) print si[i],s[si[i]]}'
Total 32287
Align 2215
Data 2312
Dwarf 12044
DwarfCallFrame 4216
Fill 92
LEB 12
Relaxable 11396
```
Pull Request: https://github.com/llvm/llvm-project/pull/148544
Commit: 6d0f573535e27171e4ef927baeab3edc928beebb
https://github.com/llvm/llvm-project/commit/6d0f573535e27171e4ef927baeab3edc928beebb
Author: Fangrui Song <i at maskray.me>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/include/llvm/MC/MCAsmBackend.h
M llvm/include/llvm/MC/MCSection.h
M llvm/lib/MC/MCAssembler.cpp
M llvm/lib/MC/MCFragment.cpp
M llvm/lib/Target/ARM/MCTargetDesc/ARMELFStreamer.cpp
M llvm/lib/Target/Mips/MCTargetDesc/MipsTargetStreamer.cpp
M llvm/lib/Target/PowerPC/MCTargetDesc/PPCELFStreamer.cpp
M llvm/lib/Target/X86/MCTargetDesc/X86AsmBackend.cpp
Log Message:
-----------
MCFragment: Remove MCDataFragment/MCRelaxableFragment type aliases
Follow-up to #148544
Commit: dbb6ed76317a52ada7045611649e50c2afe51496
https://github.com/llvm/llvm-project/commit/dbb6ed76317a52ada7045611649e50c2afe51496
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-07-15 (Tue, 15 Jul 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp
Log Message:
-----------
[RISCV] Refactor SelectAddrRegRegScale. NFC
Rename UnwrapShl->SelectShl. Make it only responsible for matching
a SHL by constant.
Handle the fallback case of reg+reg with no scale outside of SelectShl.
Reorder the check so RHS is checked for shift first. The base pointer
is most likely on the LHS. It's very unlikely both operands are shifts.
This is preparation for adding better costing decisions to this code.
Commit: 5480fc6bb8ef6a6a895be7952d50d557116dcb38
https://github.com/llvm/llvm-project/commit/5480fc6bb8ef6a6a895be7952d50d557116dcb38
Author: Luke Hutton <luke.hutton at arm.com>
Date: 2025-07-16 (Wed, 16 Jul 2025)
Changed paths:
M mlir/lib/Dialect/Tosa/IR/TosaCanonicalizations.cpp
M mlir/test/Dialect/Tosa/canonicalize.mlir
Log Message:
-----------
[mlir][tosa] Interpret boolean values correctly in cast folder (#147078)
Previously the cast folder would sign extend boolean values, leading
"true" to be casted to a value of -1 instead of 1. This change ensures
i1 values are zero extended, since i1 is used as a boolean value in
TOSA. According to the TOSA spec, the result of a boolean cast with
value "true" to another integer type should give a result of 1.
Fixes https://github.com/llvm/llvm-project/issues/57951
Commit: 871038759afb491c16fb2cd14b78e51e410efbf3
https://github.com/llvm/llvm-project/commit/871038759afb491c16fb2cd14b78e51e410efbf3
Author: Marco Elver <elver at google.com>
Date: 2025-07-16 (Wed, 16 Jul 2025)
Changed paths:
M clang/lib/Sema/AnalysisBasedWarnings.cpp
M clang/test/SemaCXX/warn-thread-safety-analysis.cpp
Log Message:
-----------
Thread Safety Analysis: Fix pointer handling of variables with deprecated attributes (#148974)
de10e44b6fe7 ("Thread Safety Analysis: Support warning on
passing/returning pointers to guarded variables") added checks for
passing pointer to guarded variables. While new features do not
necessarily need to support the deprecated attributes (`guarded_var`,
and `pt_guarded_var`), we need to ensure that such features do not cause
the compiler to crash.
As such, code such as this:
struct {
int v __attribute__((guarded_var));
} p;
int *g() {
return &p.v; // handleNoMutexHeld() with POK_ReturnPointer
}
Would crash in debug builds with the assertion in handleNoMutexHeld()
triggering. The assertion is meant to capture the fact that this helper
should only be used for warnings on variables (which the deprecated
attributes only applied to).
To fix, the function handleNoMutexHeld() should handle all POK cases
that apply to variables explicitly, and produce a best-effort warning.
We refrain from introducing new warnings to avoid unnecessary code bloat
for deprecated features.
Fixes: https://github.com/llvm/llvm-project/issues/140330
Commit: 17d3029331a65ea54ad1bdbf79add03d5a71dcd4
https://github.com/llvm/llvm-project/commit/17d3029331a65ea54ad1bdbf79add03d5a71dcd4
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2025-07-16 (Wed, 16 Jul 2025)
Changed paths:
M clang/lib/AST/ByteCode/Compiler.cpp
M clang/lib/AST/ByteCode/Compiler.h
M clang/lib/AST/ByteCode/Interp.cpp
M clang/lib/AST/ByteCode/Interp.h
M clang/lib/AST/ByteCode/Opcodes.td
M clang/lib/AST/ByteCode/Pointer.cpp
M clang/test/AST/ByteCode/cxx23.cpp
M clang/test/AST/ByteCode/unions.cpp
Log Message:
-----------
[clang][bytecode] Make union activation more granular (#148835)
Only activate things if the syntactical structure suggests so. This adds
a bunch of new opcodes to control whether to activate in stores, etc.
Fixes #134789
Commit: d4a8a01cef1e417dd8c76fd2c5cde568122c27e3
https://github.com/llvm/llvm-project/commit/d4a8a01cef1e417dd8c76fd2c5cde568122c27e3
Author: Pavel Labath <pavel at labath.sk>
Date: 2025-07-16 (Wed, 16 Jul 2025)
Changed paths:
M llvm/include/llvm/BinaryFormat/ELF.h
M llvm/lib/Object/ELF.cpp
M llvm/lib/ObjectYAML/ELFYAML.cpp
M llvm/test/tools/llvm-objdump/ELF/program-headers.test
M llvm/test/tools/llvm-readobj/ELF/section-types.test
M llvm/test/tools/yaml2obj/ELF/program-header.yaml
M llvm/tools/llvm-objdump/ELFDump.cpp
M llvm/tools/llvm-readobj/ELFDumper.cpp
Log Message:
-----------
[elf] Add support for {SHT,PT}_GNU_SFRAME constants (#148803)
Reference:
https://sourceware.org/git/?p=gnu-gabi.git;a=blob;f=program-loading-and-dynamic-linking.txt;h=3357d865720285df2d29c4e8f92de49ddf1beb40;hb=refs/heads/master
Commit: afe81507809fb845ee3368291adaa9671e6732c0
https://github.com/llvm/llvm-project/commit/afe81507809fb845ee3368291adaa9671e6732c0
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-07-16 (Wed, 16 Jul 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/VPlanConstruction.cpp
M llvm/lib/Transforms/Vectorize/VPlanTransforms.h
M llvm/test/Transforms/LoopVectorize/AArch64/induction-costs.ll
M llvm/test/Transforms/LoopVectorize/AArch64/loop-vectorization-factors.ll
M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-dot-product-neon.ll
M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-dot-product.ll
M llvm/test/Transforms/LoopVectorize/RISCV/first-order-recurrence-scalable-vf1.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-fixed-order-recurrence.ll
M llvm/test/Transforms/LoopVectorize/X86/induction-costs.ll
M llvm/test/Transforms/LoopVectorize/first-order-recurrence-chains.ll
M llvm/test/Transforms/LoopVectorize/first-order-recurrence-dead-instructions.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/optsize.ll
M llvm/test/Transforms/LoopVectorize/scalable-first-order-recurrence.ll
M llvm/test/Transforms/LoopVectorize/vplan-printing.ll
Log Message:
-----------
[VPlan] Simplify exituser handling by generating all extracts first(NFCI)
Simplify the handling of exit users by generating all extracts first
(safe option), and have FOR handling optimize the extracts, similar to
already done for reductions and inductions.
NFC modulo first-order recurrence extract order in middle block.
Commit: f223411e2e005ecd54523801db603b54d69f3159
https://github.com/llvm/llvm-project/commit/f223411e2e005ecd54523801db603b54d69f3159
Author: Pierre van Houtryve <pierre.vanhoutryve at amd.com>
Date: 2025-07-16 (Wed, 16 Jul 2025)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineLoadStoreAlloca.cpp
M llvm/test/Transforms/InstCombine/AMDGPU/ptr-replace-alloca.ll
Log Message:
-----------
[InstCombine]PtrReplacer: Correctly handle select with unavailable operands (#148829)
The testcase I added previously failed because a SelectInst with invalid
operands was created (one side `addrspace(4)`, the other
`addrspace(5)`).
PointerReplacer needs to dig deeper if the true and/or false
instructions of the select are not available.
Fixes SWDEV-542957
Commit: db2eb4d031028f9ad9b9ad6f6283f81598a404f0
https://github.com/llvm/llvm-project/commit/db2eb4d031028f9ad9b9ad6f6283f81598a404f0
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2025-07-16 (Wed, 16 Jul 2025)
Changed paths:
M libcxx/include/__new/launder.h
M libcxx/test/std/language.support/support.dynamic/ptr.launder/launder.types.verify.cpp
Log Message:
-----------
[libc++] Simplify std::launder (#147985)
Both Clang and GCC diagnose invalid calls to `__builtin_launder`, which
causes duplicate diagnostics when using `std::launder` in an invalid
way. While the diagnostic message for the builtin isn't perferct, it's
definitely good enough to understand the problem and adding our own
diagnostic doesn't really make things any clearer. Because of that, this
patch simply removes the `static_assert`s and lets the compiler handle
diagnosing incorrect arguments instead. This not only simplifies our
implementation, but also improves compile times a bit, since we avoid
instantiating some type traits.
Commit: 5d367080a8475600bae9cf1c793f2dacfde76c90
https://github.com/llvm/llvm-project/commit/5d367080a8475600bae9cf1c793f2dacfde76c90
Author: Tomás Longeri <tlongeri at google.com>
Date: 2025-07-16 (Wed, 16 Jul 2025)
Changed paths:
M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
M mlir/test/Dialect/Vector/canonicalize.mlir
Log Message:
-----------
[MLIR][Vector] Fix bug in ExtractStrideSlicesOp canonicalization (#147591)
The pattern would produce an invalid slice when some dimensions were
both sliced and broadcast.
Commit: 4aa85cc3136e1b6d389ed0a9a109a17b1199a242
https://github.com/llvm/llvm-project/commit/4aa85cc3136e1b6d389ed0a9a109a17b1199a242
Author: Vikram Hegde <115221833+vikramRH at users.noreply.github.com>
Date: 2025-07-16 (Wed, 16 Jul 2025)
Changed paths:
A llvm/include/llvm/CodeGen/ProcessImplicitDefs.h
M llvm/include/llvm/InitializePasses.h
M llvm/include/llvm/Passes/CodeGenPassBuilder.h
M llvm/include/llvm/Passes/MachinePassRegistry.def
M llvm/lib/CodeGen/CodeGen.cpp
M llvm/lib/CodeGen/ProcessImplicitDefs.cpp
M llvm/lib/Passes/PassBuilder.cpp
M llvm/test/CodeGen/AMDGPU/llc-pipeline-npm.ll
M llvm/test/CodeGen/X86/unreachable-mbb-undef-phi.mir
Log Message:
-----------
[CodeGen][NPM] Port ProcessImplicitDefs to NPM (#148110)
same as https://github.com/llvm/llvm-project/pull/138829
Co-authored-by : Oke, Akshat
<[Akshat.Oke at amd.com](mailto:Akshat.Oke at amd.com)>
Commit: 7d52b72239caba92a48e2cacbe5758e18efaed1c
https://github.com/llvm/llvm-project/commit/7d52b72239caba92a48e2cacbe5758e18efaed1c
Author: Pierre van Houtryve <pierre.vanhoutryve at amd.com>
Date: 2025-07-16 (Wed, 16 Jul 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
A llvm/test/CodeGen/AMDGPU/GlobalISel/known-bits-sbfe.mir
Log Message:
-----------
[AMDGPU] Compute GISel KnownBits for S_BFE instructions (#141588)
Next patches in the stack will emit them in the RegBankCombiner. With this, S_BFE instructions will hopefully interfere less with optimizations.
Commit: cee679aa3f2b98b191873ecfeaa3d821a9156431
https://github.com/llvm/llvm-project/commit/cee679aa3f2b98b191873ecfeaa3d821a9156431
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2025-07-16 (Wed, 16 Jul 2025)
Changed paths:
M libcxx/include/__tree
A libcxx/test/extensions/libcxx/always_initialize_iterators.pass.cpp
Log Message:
-----------
[libc++] Always initialize __tree::{,const_}iterator (#147167)
This was probably added to support https://wg21.link/n3644 but there's
no reason not to initialize the pointer in all standard modes. This is
technically an extension since n3644 only required value-initialized
iterators to be comparable, but supporting this as an extension should
be uncontroversial since it avoids potential reads of uninitialized
memory in C++03/C++11 without doing any harm.
Commit: ffcb0a4559b850c5ba51003ae1877c7c2ae9836f
https://github.com/llvm/llvm-project/commit/ffcb0a4559b850c5ba51003ae1877c7c2ae9836f
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2025-07-16 (Wed, 16 Jul 2025)
Changed paths:
M libcxx/include/__memory_resource/polymorphic_allocator.h
A libcxx/test/libcxx/mem/mem.res/ctor.nullptr.assert.pass.cpp
A libcxx/test/libcxx/mem/mem.res/nonnull.verify.cpp
M libcxx/test/std/utilities/utility/mem.res/mem.poly.allocator.class/mem.poly.allocator.mem/resource.pass.cpp
M libcxx/test/std/utilities/utility/mem.res/mem.poly.allocator.class/mem.poly.allocator.mem/select_on_container_copy_construction.pass.cpp
Log Message:
-----------
[libc++] Update polymorphic_allocator to never contain a nullptr (#148423)
According to `[mem.poly.allocator.ctor]` the pointer contained in
`polymorphic_allocator` can never be null. The default constructor uses
`get_default_resource()`, which never returns null and the constructor
taking a pointer explicitly has a precondition that the pointer is
non-null.
This patch adds a warning and an assertion in case a user passes a null
pointer to `polymorphic_allocator` as well as marking `resource()` to
never return null.
This also fixes some tests which contained UB.
Fixes #148420
Commit: 7c69c3b0baa5a99680aa8c6972a6b3ea41393943
https://github.com/llvm/llvm-project/commit/7c69c3b0baa5a99680aa8c6972a6b3ea41393943
Author: Guillaume Chatelet <gchatelet at google.com>
Date: 2025-07-16 (Wed, 16 Jul 2025)
Changed paths:
M libc/src/string/memory_utils/CMakeLists.txt
A libc/src/string/memory_utils/arm/common.h
M libc/src/string/memory_utils/arm/inline_memcpy.h
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
Log Message:
-----------
[libc][NFC] refactor Cortex `memcpy` code (#148204)
This patch is in preparation for the Cortex `memset` implementation.
It improves the codegen by generating a prefetch for large sizes.
Commit: d7f6660c34b84c0e04843ba29cfc60b4aacd870c
https://github.com/llvm/llvm-project/commit/d7f6660c34b84c0e04843ba29cfc60b4aacd870c
Author: Luke Hutton <luke.hutton at arm.com>
Date: 2025-07-16 (Wed, 16 Jul 2025)
Changed paths:
M mlir/include/mlir/Dialect/Tosa/IR/TosaComplianceData.h.inc
M mlir/lib/Dialect/Tosa/Transforms/TosaProfileCompliance.cpp
Log Message:
-----------
[mlir][tosa] Remove profile compliance of cond_if and while_loop (#148212)
The requirement for a boolean condition is already checked for both
operators elsewhere. `cond_if` requires a boolean condition at
construction. `while_loop` cond_graph is checked in the verifier for a
scalar boolean output type.
Commit: 3e4153c97b54d456cfaf6ae21391122582b0ab28
https://github.com/llvm/llvm-project/commit/3e4153c97b54d456cfaf6ae21391122582b0ab28
Author: Jim Lin <jim at andestech.com>
Date: 2025-07-16 (Wed, 16 Jul 2025)
Changed paths:
M clang/include/clang/Basic/BuiltinsRISCV.td
A clang/include/clang/Basic/BuiltinsRISCVXAndes.td
M clang/lib/CodeGen/TargetBuiltins/RISCV.cpp
M clang/lib/Headers/CMakeLists.txt
A clang/lib/Headers/riscv_nds.h
A clang/test/CodeGen/RISCV/riscv-xandesbfhcvt-c-api.c
A clang/test/CodeGen/RISCV/riscv-xandesbfhcvt.c
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/lib/Target/RISCV/RISCVInstrInfoXAndes.td
A llvm/test/CodeGen/RISCV/xandesbfhcvt.ll
Log Message:
-----------
[RISCV] Implement Builtins for XAndesBFHCvt extension. (#148804)
XAndesBFHCvt provides two builtins functions for converting between
float and bf16. Users can use them to convert bf16 values loaded from
memory to float, perform arithmetic operations, then convert them back
to bf16 and store them to memory.
The load/store and move operations for bf16 will be handled in a later
patch.
Commit: 29e14c3b447af604774a7f4f8ed961f204d6b5b4
https://github.com/llvm/llvm-project/commit/29e14c3b447af604774a7f4f8ed961f204d6b5b4
Author: Pierre van Houtryve <pierre.vanhoutryve at amd.com>
Date: 2025-07-16 (Wed, 16 Jul 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUCodeGenPrepare.cpp
M llvm/test/CodeGen/AMDGPU/GlobalISel/andn2.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/orn2.ll
R llvm/test/CodeGen/AMDGPU/amdgpu-codegenprepare-i16-to-i32.ll
Log Message:
-----------
[AMDGPU] Remove widen-16-bit-ops from CGP (#145483)
This was already off by default so there is no codegen change.
Commit: 1c223829b817be3174ec7c6056524058358b90b1
https://github.com/llvm/llvm-project/commit/1c223829b817be3174ec7c6056524058358b90b1
Author: Luke Hutton <luke.hutton at arm.com>
Date: 2025-07-16 (Wed, 16 Jul 2025)
Changed paths:
M mlir/lib/Dialect/Tosa/IR/TosaOps.cpp
M mlir/test/Dialect/Tosa/tosa-infer-shapes.mlir
Log Message:
-----------
[mlir][tosa] Fix transpose_conv2d verifier when output channels are dynamic (#147062)
This commit fixes a transpose_conv2d verifier check which compares the
output channels size to the bias size. The check didn't make sure output
channels were static before performing the comparison. This lead to
failures such as:
```
'tosa.transpose_conv2d' op bias channels expected to be equal to output channels (-9223372036854775808) or 1, got 5
```
when the output channels size was dynamic.
Commit: 999a8fb812df766c5cdfda3cea8e71548e89fc8b
https://github.com/llvm/llvm-project/commit/999a8fb812df766c5cdfda3cea8e71548e89fc8b
Author: Guillaume Chatelet <gchatelet at google.com>
Date: 2025-07-16 (Wed, 16 Jul 2025)
Changed paths:
M libc/src/string/memory_utils/CMakeLists.txt
R libc/src/string/memory_utils/arm/common.h
M libc/src/string/memory_utils/arm/inline_memcpy.h
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
Log Message:
-----------
Revert "[libc][NFC] refactor Cortex `memcpy` code" (#149035)
Reverts llvm/llvm-project#148204
`libc-arm32-qemu-debian-dbg` is failing, reverting and investigating
Commit: 50096134f869f4ccb5e5f650edd0dd512c5a751d
https://github.com/llvm/llvm-project/commit/50096134f869f4ccb5e5f650edd0dd512c5a751d
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2025-07-16 (Wed, 16 Jul 2025)
Changed paths:
M libcxx/include/__tree
Log Message:
-----------
[libc++][NFC] Remove some __tree internal accessor functions (#147266)
Commit: c364e6234e727cbf54ca666fa706693711a31119
https://github.com/llvm/llvm-project/commit/c364e6234e727cbf54ca666fa706693711a31119
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2025-07-16 (Wed, 16 Jul 2025)
Changed paths:
M llvm/utils/gn/secondary/clang/lib/Headers/BUILD.gn
Log Message:
-----------
[gn build] Port 3e4153c97b54
Commit: de4b458aa5e52812aa9c392f62a616b6c6c1716f
https://github.com/llvm/llvm-project/commit/de4b458aa5e52812aa9c392f62a616b6c6c1716f
Author: Nashe Mncube <nashe.mncube at arm.com>
Date: 2025-07-16 (Wed, 16 Jul 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/AArch64/AArch64InstrInfo.td
A llvm/test/CodeGen/AArch64/saturating-vec-smull.ll
Log Message:
-----------
[AArch64][Codegen]Transform saturating smull to sqdmulh (#143671)
This patch adds a pattern for recognizing saturating vector
smull. Prior to this patch these were performed using a
combination of smull+smull2+uzp+smin like the following
```
smull2 v5.2d, v1.4s, v2.4s
smull v1.2d, v1.2s, v2.2s
uzp2 v1.4s, v1.4s, v5.4s
smin v1.4s, v1.4s, v0.4s
```
which now optimizes to
```
sqdmulh v0.4s, v1.4s, v0.4s
```
This only operates on vectors containing int32 and int16 types
Commit: 828a867ee010cdd832c43f7d844959adb4884b2e
https://github.com/llvm/llvm-project/commit/828a867ee010cdd832c43f7d844959adb4884b2e
Author: David Green <david.green at arm.com>
Date: 2025-07-16 (Wed, 16 Jul 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
M llvm/test/Analysis/CostModel/AArch64/reduce-and.ll
M llvm/test/Analysis/CostModel/AArch64/reduce-or.ll
M llvm/test/Analysis/CostModel/AArch64/reduce-xor.ll
M llvm/test/Transforms/PhaseOrdering/AArch64/quant_4x4.ll
Log Message:
-----------
[AArch64] Reduce the costs of and/or/xor reductions (#148553)
Since the costs were added the codegen for i8/i16 and/or/xor reductions
has improved. This updates the cost model to produce the same costs in
terms of number of instructions.
Commit: 905bb5bddb690765cab5416d55ab017d7c832eb3
https://github.com/llvm/llvm-project/commit/905bb5bddb690765cab5416d55ab017d7c832eb3
Author: Serge Pavlov <sepavloff at gmail.com>
Date: 2025-07-16 (Wed, 16 Jul 2025)
Changed paths:
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVBaseInfo.h
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/lib/Target/RISCV/RISCVISelLowering.h
M llvm/lib/Target/RISCV/RISCVInstrInfo.td
M llvm/test/CodeGen/RISCV/fpenv-xlen.ll
Log Message:
-----------
[RISCV][FPEnv] Lowering of fpmode intrinsics (#148569)
The change implements custom lowering of `get_fpmode`, `set_fpmode` and
`reset_fpmode` for RISCV target. The implementation is aligned with the
functions `fegetmode` and `fesetmode` in GLIBC.
Commit: 5ae49393957c6b4d47ace7aaf5fc1e0388d3a695
https://github.com/llvm/llvm-project/commit/5ae49393957c6b4d47ace7aaf5fc1e0388d3a695
Author: nerix <nerixdev at outlook.de>
Date: 2025-07-16 (Wed, 16 Jul 2025)
Changed paths:
M lldb/source/Plugins/Language/CPlusPlus/CMakeLists.txt
M lldb/source/Plugins/Language/CPlusPlus/CPlusPlusLanguage.cpp
M lldb/source/Plugins/Language/CPlusPlus/MsvcStl.h
A lldb/source/Plugins/Language/CPlusPlus/MsvcStlVector.cpp
M lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic/vbool/TestDataFormatterStdVBool.py
M lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic/vbool/main.cpp
M lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic/vector/TestDataFormatterStdVector.py
Log Message:
-----------
[LLDB] Add formatters for MSVC STL std::vector (#147538)
This adds synthetic child providers for `std::vector<T>` and
`std::vector<bool>` for MSVC's STL.
The structure of a `std::vector<T>` is relatively similar to libc++'s
implementation that uses `__begin` and `__end`.
`std::vector<bool>` is different. It's a `std::vector<unsigned int>`
wrapper instead of `std::vector<uint8_t>`. This makes the calculation
slightly less simple. I put a comment in the `GetChildAtIndex` to make
this clear.
- [NatVis for
`std::vector<T>`](https://github.com/microsoft/STL/blob/313964b78a8fd5a52e7965e13781f735bcce13c5/stl/debugger/STL.natvis#L1193-L1205)
- [NatVis for
`std::vector<bool>`](https://github.com/microsoft/STL/blob/313964b78a8fd5a52e7965e13781f735bcce13c5/stl/debugger/STL.natvis#L1167-L1179)
Towards #24834.
Commit: f98cf07b7dc7af7716e1da9a1257b8c6416f9a46
https://github.com/llvm/llvm-project/commit/f98cf07b7dc7af7716e1da9a1257b8c6416f9a46
Author: nerix <nerixdev at outlook.de>
Date: 2025-07-16 (Wed, 16 Jul 2025)
Changed paths:
M lldb/examples/synthetic/gnu_libstdcpp.py
M lldb/source/Plugins/Language/CPlusPlus/CPlusPlusLanguage.cpp
M lldb/source/Plugins/Language/CPlusPlus/LibStdcpp.cpp
M lldb/source/Plugins/Language/CPlusPlus/LibStdcpp.h
Log Message:
-----------
[LLDB] Convert libstdc++ std::variant summary to C++ (#148929)
This PR converts the `std::variant` summary from Python to C++.
Split from #148554. MSVC's STL and libstdc++ use the same type name for
`std::variant`, thus they need one "dispatcher" function that checks the
type and calls the appropriate summary. For summaries, both need to be
implemented in C++.
This is mostly a 1:1 translation. The main difference is that in C++,
the summary returns `false` if it can't inspect the object properly
(e.g. a member could not be found). In Python, this wasn't possible.
Commit: 3483ac50e396f395008cd9456ca575891fb2d24b
https://github.com/llvm/llvm-project/commit/3483ac50e396f395008cd9456ca575891fb2d24b
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2025-07-16 (Wed, 16 Jul 2025)
Changed paths:
M llvm/utils/gn/secondary/lldb/source/Plugins/Language/CPlusPlus/BUILD.gn
Log Message:
-----------
[gn build] Port 5ae49393957c
Commit: 46b4bd2882447c46138f7272bc915ce6f74bf7bc
https://github.com/llvm/llvm-project/commit/46b4bd2882447c46138f7272bc915ce6f74bf7bc
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2025-07-16 (Wed, 16 Jul 2025)
Changed paths:
M libcxx/include/__config
Log Message:
-----------
[libc++] Implement _LIBCPP_SUPPRESS_DEPRECATED macros in terms of _LIBCPP_DIAGNOSTIC macros (#143857)
This makes the code a bit more consistent, since we use the
`_LIBCPP_DIAGNOSTIC` macros everywhere else.
Commit: bbfbe7d789f7b6ade715f3656db0bdd657eeef68
https://github.com/llvm/llvm-project/commit/bbfbe7d789f7b6ade715f3656db0bdd657eeef68
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2025-07-16 (Wed, 16 Jul 2025)
Changed paths:
M clang/lib/AST/ByteCode/Interp.cpp
M clang/lib/AST/ByteCode/Interp.h
Log Message:
-----------
[clang][bytecode][NFC] Remove unused function prototypes (#149031)
Commit: 60579ec3059b2b6cc9dad90eaac1ed363fc395a7
https://github.com/llvm/llvm-project/commit/60579ec3059b2b6cc9dad90eaac1ed363fc395a7
Author: Jordan Rupprecht <rupprecht at google.com>
Date: 2025-07-16 (Wed, 16 Jul 2025)
Changed paths:
M llvm/lib/Support/BLAKE3/llvm_blake3_prefix.h
Log Message:
-----------
[Support][BLAKE3] Prefix more blake3 methods (#149007)
Added by #147948, blake3_xof_many and blake3_compress_subtree_wide cause
conflicts when linking llvm and blake3 statically into the same binary.
Similar to #148607.
Commit: 653872f782e1faaabc1da23769e6b35b10e74bde
https://github.com/llvm/llvm-project/commit/653872f782e1faaabc1da23769e6b35b10e74bde
Author: Orlando Cazalet-Hyams <orlando.hyams at sony.com>
Date: 2025-07-16 (Wed, 16 Jul 2025)
Changed paths:
M clang/lib/CodeGen/CGDebugInfo.cpp
M llvm/lib/IR/Verifier.cpp
M llvm/test/DebugInfo/KeyInstructions/Generic/verify.ll
Log Message:
-----------
[KeyInstr] Fix verifier check (#149043)
The verifier check was in the wrong place, meaning it wasn't actually
checking many instructions.
Fixing that causes a test failure (coro-dwarf-key-instrs.cpp) because
coros turn off the feature but still annotate instructions with the
metadata (which is a supported situation, but the verifier doesn't like
it, and it's hard to teach the verifier to like it).
Fix that by avoiding emitting any key instruction metadata if the
DISubprogram has opted out of key instructions.
Commit: 38be53aa04de8c6d494de8074328ac8907f3f631
https://github.com/llvm/llvm-project/commit/38be53aa04de8c6d494de8074328ac8907f3f631
Author: Artemiy Bulavin <artemiyb at graphcore.ai>
Date: 2025-07-16 (Wed, 16 Jul 2025)
Changed paths:
M mlir/lib/IR/AttributeDetail.h
M mlir/lib/IR/MLIRContext.cpp
M mlir/lib/Pass/PassCrashRecovery.cpp
M mlir/unittests/IR/CMakeLists.txt
A mlir/unittests/IR/DistinctAttributeAllocatorTest.cpp
Log Message:
-----------
[MLIR] Fix use-after-frees when accessing DistinctAttr storage (#148666)
This PR fixes a use-after-free error that happens when `DistinctAttr`
instances are created within a `PassManager` running with crash recovery
enabled. The root cause is that `DistinctAttr` storage is allocated in a
thread_local allocator, which is destroyed when the crash recovery
thread joins, invalidating the storage.
Moreover, even without crash reproduction disabling multithreading on
the context will destroy the context's thread pool, and in turn delete
the threadlocal storage. This means a call to
`ctx->disableMulthithreading()` breaks the IR.
This PR replaces the thread local allocator with a synchronised
allocator that's shared between threads. This persists the lifetime of
allocated DistinctAttr storage instances to the lifetime of the context.
### Problem Details:
The `DistinctAttributeAllocator` uses a
`ThreadLocalCache<BumpPtrAllocator>` for lock-free allocation of
`DistinctAttr` storage in a multithreaded context. The issue occurs when
a `PassManager` is run with crash recovery (`runWithCrashRecovery`), the
pass pipeline is executed on a temporary thread spawned by
`llvm::CrashRecoveryContext`. Any `DistinctAttr`s created during this
execution have their storage allocated in the thread_local cache of this
temporary thread. When the thread joins, the thread_local storage is
destroyed, freeing the `DistinctAttr`s' memory. If this attribute is
accessed later, e.g. when printing, it results in a use-after-free.
As mentioned previously, this is also seen after creating some
`DistinctAttr`s and then calling `ctx->disableMulthithreading()`.
### Solution
`DistinctAttrStorageAllocator` uses a synchronised, shared allocator
instead of one wrapped in a `ThreadLocalCache`. The former is what
stores the allocator in transient thread_local storage.
### Testing:
A C++ unit test has been added to validate this fix. (I was previously
reproducing this failure with `mlir-opt` but I can no longer do so and I
am unsure why.)
-----
Note: This is a 2nd attempt at my previous PR
https://github.com/llvm/llvm-project/pull/128566 that was reverted in
https://github.com/llvm/llvm-project/pull/133000. I believe I've
addressed the TSAN and race condition concerns.
Commit: 5b8c15c6e7f3ac17383c12483f466a721b1040ba
https://github.com/llvm/llvm-project/commit/5b8c15c6e7f3ac17383c12483f466a721b1040ba
Author: Jeremy Morse <jeremy.morse at sony.com>
Date: 2025-07-16 (Wed, 16 Jul 2025)
Changed paths:
M llvm/include/llvm/IR/Instruction.h
M llvm/include/llvm/Transforms/Utils/LockstepReverseIterator.h
M llvm/lib/CodeGen/CodeGenPrepare.cpp
M llvm/lib/CodeGen/StackProtector.cpp
M llvm/lib/IR/Instruction.cpp
M llvm/lib/Transforms/IPO/OpenMPOpt.cpp
M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
M llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
M llvm/lib/Transforms/Scalar/GVN.cpp
M llvm/lib/Transforms/Scalar/GVNSink.cpp
M llvm/lib/Transforms/Scalar/SimplifyCFGPass.cpp
M llvm/unittests/Frontend/OpenMPIRBuilderTest.cpp
Log Message:
-----------
[DebugInfo] Remove getPrevNonDebugInstruction (#148859)
With the advent of intrinsic-less debug-info, we no longer need to
scatter calls to getPrevNonDebugInstruction around the codebase. Remove
most of them -- there are one or two that have the "SkipPseudoOp" flag
turned on, however they don't seem to be in positions where skipping
anything would be reasonable.
Commit: e333d6019dafd84f9aef919894d8c82389cde001
https://github.com/llvm/llvm-project/commit/e333d6019dafd84f9aef919894d8c82389cde001
Author: Julian Nagele <j.nagele at apple.com>
Date: 2025-07-16 (Wed, 16 Jul 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64Features.td
M llvm/lib/Target/AArch64/AArch64InstrInfo.td
M llvm/lib/Target/AArch64/AArch64Processors.td
M llvm/test/CodeGen/AArch64/arm64-vector-insertion.ll
M llvm/test/CodeGen/AArch64/vecreduce-fadd.ll
Log Message:
-----------
[AArch64] Replace expensive move from wzr by two moves via floating point immediate (#146538)
We've noticed that inserting 0 into a known vector lane is implemented
via a move from wzr, i.e., moving between register banks. We think it
will be cheaper (and have seen improvements on our benchmarks) to
materialize 0 into a floating point register and insert from there.
PR: https://github.com/llvm/llvm-project/pull/146538
Commit: b117ccf40df16bcd0b24e2a91d8f749ddb7933f3
https://github.com/llvm/llvm-project/commit/b117ccf40df16bcd0b24e2a91d8f749ddb7933f3
Author: Vikram Hegde <115221833+vikramRH at users.noreply.github.com>
Date: 2025-07-16 (Wed, 16 Jul 2025)
Changed paths:
M llvm/include/llvm/Passes/CodeGenPassBuilder.h
A llvm/test/tools/llc/new-pm/start-stop-inserted.ll
Log Message:
-----------
[CodeGen][NPM] Account inserted passes for -start/stop options (#148111)
same as https://github.com/llvm/llvm-project/pull/138830
This partly solves the issue
https://github.com/llvm/llvm-project/issues/138831 for -enable-new-pm.
https://github.com/llvm/llvm-project/pull/137290 will not have this
problem, but this needs to be added this till we migrate to the new pass
builder structure.
Even with this, there is no way to -start-after an inserted pass right
now.
Co-authored-by : Oke, Akshat
<[Akshat.Oke at amd.com](mailto:Akshat.Oke at amd.com)>
Commit: 73630d5e20c8f29aec426954f448079665caf3ab
https://github.com/llvm/llvm-project/commit/73630d5e20c8f29aec426954f448079665caf3ab
Author: Marina Taylor <marina_taylor at apple.com>
Date: 2025-07-16 (Wed, 16 Jul 2025)
Changed paths:
M llvm/lib/Support/raw_socket_stream.cpp
Log Message:
-----------
[Support] Error if SocketPath is too long (#148903)
If the path is longer than sockaddr_un's buffer, it will be truncated,
at which point it may become indistinguishable from similar truncated
paths. This will cause `bind` to fail with an "Address already in use"
error. There is some existing code that checks `fs::exists` to catch
these errors, but since `fs::exists` compares the full un-truncated
paths, a too-long path will prevent those checks from working.
rdar://154397133
Commit: 3b8a18c27a1e70895feac15d48b3a6122e6b377f
https://github.com/llvm/llvm-project/commit/3b8a18c27a1e70895feac15d48b3a6122e6b377f
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2025-07-16 (Wed, 16 Jul 2025)
Changed paths:
M clang/lib/AST/ByteCode/Interp.cpp
M clang/test/AST/ByteCode/placement-new.cpp
M clang/test/SemaCXX/cxx2c-constexpr-placement-new.cpp
Log Message:
-----------
[clang][bytecode] Fix contains check using llvm::find (#149050)
We need to compare to the end() interator.
Commit: 402b989693a0d5d17be6bf996bce52cf3ca73886
https://github.com/llvm/llvm-project/commit/402b989693a0d5d17be6bf996bce52cf3ca73886
Author: macurtis-amd <macurtis at amd.com>
Date: 2025-07-16 (Wed, 16 Jul 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/SIFoldOperands.cpp
A llvm/test/CodeGen/AMDGPU/bug-multi-operands-to-update-after-fold.mir
Log Message:
-----------
AMDGPU: Fix assert when multi operands to update after folding imm (#148205)
In the original motivating test case,
[FoldList](https://github.com/llvm/llvm-project/blob/d8a2141ff98ee35cd1886f536ccc3548b012820b/llvm/lib/Target/AMDGPU/SIFoldOperands.cpp#L1764)
had entries:
```
#0: UseMI: %224:sreg_32 = S_OR_B32 %219.sub0:sreg_64, %219.sub1:sreg_64, implicit-def dead $scc
UseOpNo: 1
#1: UseMI: %224:sreg_32 = S_OR_B32 %219.sub0:sreg_64, %219.sub1:sreg_64, implicit-def dead $scc
UseOpNo: 2
```
After calling
[updateOperand(#0)](https://github.com/llvm/llvm-project/blob/d8a2141ff98ee35cd1886f536ccc3548b012820b/llvm/lib/Target/AMDGPU/SIFoldOperands.cpp#L1773),
[tryConstantFoldOp(#0.UseMI)](https://github.com/llvm/llvm-project/blob/d8a2141ff98ee35cd1886f536ccc3548b012820b/llvm/lib/Target/AMDGPU/SIFoldOperands.cpp#L1786)
removed operand 1, and entry #1.UseOpNo was no longer valid,
resulting in an
[assert](https://github.com/llvm/llvm-project/blob/4a35214bddbb67f9597a500d48ab8c4fb25af150/llvm/include/llvm/ADT/ArrayRef.h#L452).
This change defers constant folding until all operands have been updated
so that UseOpNo values remain stable.
Commit: 62bd778fd46e647bf3c32540651413f848448f19
https://github.com/llvm/llvm-project/commit/62bd778fd46e647bf3c32540651413f848448f19
Author: enh-google <enh at google.com>
Date: 2025-07-16 (Wed, 16 Jul 2025)
Changed paths:
M libcxx/include/CMakeLists.txt
M libcxx/include/__locale_dir/locale_base_api.h
R libcxx/include/__locale_dir/locale_base_api/android.h
M libcxx/include/module.modulemap.in
M llvm/utils/gn/secondary/libcxx/include/BUILD.gn
Log Message:
-----------
Remove workarounds for NDK versions before 2017's r16. (#148879)
Commit: 949103b45c2f7f1fc28106b5db435660e466b804
https://github.com/llvm/llvm-project/commit/949103b45c2f7f1fc28106b5db435660e466b804
Author: Piotr Fusik <p.fusik at samsung.com>
Date: 2025-07-16 (Wed, 16 Jul 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
Log Message:
-----------
[SLP][NFC] Use range-based `for` in `matchAssociativeReduction` (#149029)
Commit: 7674566c9666e69d274b145ea4744c6ac13c1adb
https://github.com/llvm/llvm-project/commit/7674566c9666e69d274b145ea4744c6ac13c1adb
Author: Piotr Fusik <p.fusik at samsung.com>
Date: 2025-07-16 (Wed, 16 Jul 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
Log Message:
-----------
[SLP][NFC] Simplify `count_if` to `count` (#149072)
Commit: ade2f1023d716bbf1473aaaf46d10faac73b014f
https://github.com/llvm/llvm-project/commit/ade2f1023d716bbf1473aaaf46d10faac73b014f
Author: Piotr Fusik <p.fusik at samsung.com>
Date: 2025-07-16 (Wed, 16 Jul 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
Log Message:
-----------
[SLP][NFCI] Don't trim indexes, reuse a variable (#149074)
Commit: 5abdce4083ed37203e4893f8f7ef3890586b008a
https://github.com/llvm/llvm-project/commit/5abdce4083ed37203e4893f8f7ef3890586b008a
Author: Paul Walker <paul.walker at arm.com>
Date: 2025-07-16 (Wed, 16 Jul 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64InstrInfo.cpp
M llvm/test/CodeGen/AArch64/spill-fold.mir
Log Message:
-----------
[LLVM][AArch64InstrInfo] Prevent fill folding when DstReg is SP. (#148885)
We can remove subreg COPY instructions by filling directly into the
COPY's destination register. However, this is only valid when the copy
and fill have compatible register classes.
Fixes https://github.com/llvm/llvm-project/issues/148659
Commit: 9e5470e7d6ea1ad4fe25a9416706d769e41a03c1
https://github.com/llvm/llvm-project/commit/9e5470e7d6ea1ad4fe25a9416706d769e41a03c1
Author: Corentin Jabot <corentinjabot at gmail.com>
Date: 2025-07-16 (Wed, 16 Jul 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Basic/DiagnosticASTKinds.td
M clang/lib/AST/ByteCode/State.h
M clang/lib/AST/ExprConstant.cpp
M clang/test/AST/ByteCode/complex.cpp
M clang/test/AST/ByteCode/const-eval.c
M clang/test/AST/ByteCode/cxx11.cpp
M clang/test/AST/ByteCode/records.cpp
M clang/test/CXX/drs/cwg14xx.cpp
M clang/test/CXX/expr/expr.const/p2-0x.cpp
M clang/test/Sema/const-eval.c
M clang/test/SemaCXX/constant-expression-cxx11.cpp
M clang/test/SemaCXX/constant-expression-cxx14.cpp
M clang/test/SemaCXX/constant-expression-cxx2a.cpp
M clang/test/SemaCXX/constexpr-backtrace-limit.cpp
M libcxx/test/std/ranges/range.adaptors/range.zip/iterator/increment.pass.cpp
Log Message:
-----------
[Clang] Diagnose forming references to nullptr (#143667)
Per [decl.ref],
> Because a null pointer value or a pointer past the end of an object
does not point to an object, a reference in a well-defined program
cannot refer to such things.
Note this does not fixes the new bytecode interpreter.
Fixes #48665
Commit: 7392a546bb34c6fe569e30341138bb70115ca905
https://github.com/llvm/llvm-project/commit/7392a546bb34c6fe569e30341138bb70115ca905
Author: Cullen Rhodes <cullen.rhodes at arm.com>
Date: 2025-07-16 (Wed, 16 Jul 2025)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
M llvm/test/Transforms/InstCombine/freeze.ll
Log Message:
-----------
[InstCombine] Treat identical operands as one in pushFreezeToPreventPoisonFromPropagating (#145348)
To push a freeze through an instruction, only one operand may produce
poison. However, this currently fails for identical operands which are
treated as separate. This patch fixes this by treating them as a single
operand.
Commit: 4cc9af219fbeece77e0d874d9eb4b479b6e475d1
https://github.com/llvm/llvm-project/commit/4cc9af219fbeece77e0d874d9eb4b479b6e475d1
Author: Chaitanya Koparkar <ckoparkar at gmail.com>
Date: 2025-07-16 (Wed, 16 Jul 2025)
Changed paths:
M mlir/include/mlir/Dialect/Bufferization/IR/BufferizationOps.td
Log Message:
-----------
[mlir][bufferization] Fix a typo in to_tensor op's summary field (#149082)
Fixes #149081
Commit: c71b92d09f584d41ed8536791e6dac4fa079eedc
https://github.com/llvm/llvm-project/commit/c71b92d09f584d41ed8536791e6dac4fa079eedc
Author: Serge Pavlov <sepavloff at gmail.com>
Date: 2025-07-16 (Wed, 16 Jul 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
Log Message:
-----------
[RISCV][FPE] Remove unused variable (#149054)
It was added by me in 905bb5bddb690765cab5416d55ab017d7c832eb3, which
committed PR https://github.com/llvm/llvm-project/pull/148569.
Commit: 1742966c0df03d1f00a177a8d8a2a2afaec6938d
https://github.com/llvm/llvm-project/commit/1742966c0df03d1f00a177a8d8a2a2afaec6938d
Author: Akash Banerjee <akash.banerjee at amd.com>
Date: 2025-07-16 (Wed, 16 Jul 2025)
Changed paths:
M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
A flang/test/Lower/amdgcn-complex.f90
Log Message:
-----------
[Flang] Force lowering to Complex for AMDGPU (#144927)
Commit: fc114e4d931ae25f74a15e42371dbead1387ad51
https://github.com/llvm/llvm-project/commit/fc114e4d931ae25f74a15e42371dbead1387ad51
Author: Akash Banerjee <akash.banerjee at amd.com>
Date: 2025-07-16 (Wed, 16 Jul 2025)
Changed paths:
M flang/lib/Optimizer/CodeGen/CMakeLists.txt
M flang/lib/Optimizer/CodeGen/CodeGen.cpp
A mlir/include/mlir/Conversion/ComplexToROCDLLibraryCalls/ComplexToROCDLLibraryCalls.h
M mlir/include/mlir/Conversion/Passes.h
M mlir/include/mlir/Conversion/Passes.td
M mlir/lib/Conversion/CMakeLists.txt
A mlir/lib/Conversion/ComplexToROCDLLibraryCalls/CMakeLists.txt
A mlir/lib/Conversion/ComplexToROCDLLibraryCalls/ComplexToROCDLLibraryCalls.cpp
A mlir/test/Conversion/ComplexToROCDLLibraryCalls/complex-to-rocdl-library-calls.mlir
Log Message:
-----------
[MLIR] Add ComplexTOROCDLLibraryCalls pass (#144926)
Commit: dbb12109b947995d5882ca521f7b7716d6ac9ae4
https://github.com/llvm/llvm-project/commit/dbb12109b947995d5882ca521f7b7716d6ac9ae4
Author: Akash Banerjee <akash.banerjee at amd.com>
Date: 2025-07-16 (Wed, 16 Jul 2025)
Changed paths:
M flang/lib/Optimizer/CodeGen/Target.cpp
Log Message:
-----------
[OpenMP] Add TargetAMDGPU support for Complex argument and return types (#144924)
Commit: 88a498c3b110b73c10362df8c18ca13fe1873744
https://github.com/llvm/llvm-project/commit/88a498c3b110b73c10362df8c18ca13fe1873744
Author: nerix <nerixdev at outlook.de>
Date: 2025-07-16 (Wed, 16 Jul 2025)
Changed paths:
M lldb/source/Plugins/Language/CPlusPlus/CMakeLists.txt
M lldb/source/Plugins/Language/CPlusPlus/CPlusPlusLanguage.cpp
A lldb/source/Plugins/Language/CPlusPlus/GenericList.cpp
R lldb/source/Plugins/Language/CPlusPlus/LibCxxList.cpp
M lldb/source/Plugins/Language/CPlusPlus/MsvcStl.h
M lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic/forward_list/TestDataFormatterGenericForwardList.py
M lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic/list/TestDataFormatterGenericList.py
M lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic/list/loop/TestDataFormatterGenericListLoop.py
M lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic/list/loop/main.cpp
Log Message:
-----------
[LLDB] Add formatters for MSVC STL std::(forward_)list (#148285)
Adds synthetic providers for MSVC's `std::forward_list` and `std::list`.
It refactors `LibCxxList` to be generic over the STL type (currently
libc++ or MSVC STL). The libstdc++ synthetic providers use something
similar in Python
[here](https://github.com/llvm/llvm-project/blob/3092b765ba0b2d20bd716944dda86ea8e4ad12e3/lldb/examples/synthetic/gnu_libstdcpp.py#L134).
Eventually, this could be ported to C++ as well.
Towards #24834.
Commit: 9ea27b841cdf3c702b5e0bc696eb404492dbc79f
https://github.com/llvm/llvm-project/commit/9ea27b841cdf3c702b5e0bc696eb404492dbc79f
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2025-07-16 (Wed, 16 Jul 2025)
Changed paths:
M llvm/utils/gn/secondary/lldb/source/Plugins/Language/CPlusPlus/BUILD.gn
Log Message:
-----------
[gn build] Port 88a498c3b110
Commit: 5328c732a47705363cd289cb281cbd0d3ccbb8fc
https://github.com/llvm/llvm-project/commit/5328c732a47705363cd289cb281cbd0d3ccbb8fc
Author: Jeremy Morse <jeremy.morse at sony.com>
Date: 2025-07-16 (Wed, 16 Jul 2025)
Changed paths:
M llvm/include/llvm/Transforms/Utils/Local.h
M llvm/include/llvm/Transforms/Utils/MemoryTaggingSupport.h
M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
M llvm/lib/Transforms/Scalar/SROA.cpp
M llvm/lib/Transforms/Utils/CloneFunction.cpp
M llvm/lib/Transforms/Utils/Local.cpp
M llvm/lib/Transforms/Utils/MemoryTaggingSupport.cpp
M llvm/lib/Transforms/Utils/PromoteMemoryToRegister.cpp
Log Message:
-----------
[DebugInfo] Strip more debug-intrinsic code from local utils (#149037)
SROA and a few other facilities use generic-lambdas and some overloaded
functions to deal with both intrinsics and debug-records at the same time.
As part of stripping out intrinsic support, delete a swathe of this code
from things in the Utils directory.
This is a large diff, but is mostly about removing functions that were
duplicated during the migration to debug records. I've taken a few
opportunities to replace comments about "intrinsics" with "records",
and replace generic lambdas with plain lambdas (I believe this makes
it more readable).
All of this is chipping away at intrinsic-specific code until we get to
removing parts of findDbgUsers, which is the final boss -- we can't
remove that until almost everything else is gone.
Commit: 85349b49364d240a2e82981a7d7e0d01b13b1284
https://github.com/llvm/llvm-project/commit/85349b49364d240a2e82981a7d7e0d01b13b1284
Author: zGoldthorpe <zgoldtho at ualberta.ca>
Date: 2025-07-16 (Wed, 16 Jul 2025)
Changed paths:
M clang/include/clang/Basic/BuiltinsAMDGPU.def
M clang/lib/Sema/SemaAMDGPU.cpp
M clang/test/CodeGenOpenCL/builtins-amdgcn-raw-buffer-load-lds.cl
M clang/test/SemaOpenCL/builtins-amdgcn-raw-ptr-buffer-load-lds-error.cl
M clang/test/SemaOpenCL/builtins-amdgcn-raw-ptr-buffer-load-lds-target-error.cl
M llvm/include/llvm/IR/IntrinsicsAMDGPU.td
Log Message:
-----------
[clang][amdgpu] Add builtin for struct buffer lds load (#148950)
This is essentially just a revision of #137678 which only exposes a
builtin for the intrinsic `llvm.amdgcn.struct.ptr.buffer.load.lds`,
which expects an `__amdgpu_buffer_rsrc_t` rather than a `v4i32` as its
first argument.
The reason for excluding the other intrinsics exposed by the cited PR is
because the intrinsics taking a `v4i32` are legacy and should be
deprecated.
Commit: 1600450f9098e5c9cb26840bd53f1be8a2559b7d
https://github.com/llvm/llvm-project/commit/1600450f9098e5c9cb26840bd53f1be8a2559b7d
Author: Sirraide <aeternalmail at gmail.com>
Date: 2025-07-16 (Wed, 16 Jul 2025)
Changed paths:
M clang/include/clang-c/Index.h
M clang/tools/libclang/CMakeLists.txt
A clang/tools/libclang/Obsolete.cpp
M llvm/utils/gn/secondary/clang/tools/libclang/BUILD.gn
Log Message:
-----------
[Clang] Reintroduce obsolete libclang symbols to avoid an ABI break (#149079)
For more context, see
https://github.com/llvm/llvm-project/pull/119269#issuecomment-3075444493,
but briefly, when removing ARCMigrate, I also removed some symbols in
libclang, which constitutes an ABI break that we don’t want, so this pr
reintroduces the removed symbols; the declarations are marked as
deprecated for future removal, and the implementations print an error
and do nothing, which is what we used to do when ARCMigrate was
disabled.
Commit: 894197a9d5230366730c665c26ffad5cfe166cdd
https://github.com/llvm/llvm-project/commit/894197a9d5230366730c665c26ffad5cfe166cdd
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2025-07-16 (Wed, 16 Jul 2025)
Changed paths:
M .github/CODEOWNERS
M .github/new-prs-labeler.yml
M .github/workflows/build-ci-container-windows.yml
M .github/workflows/containers/github-action-ci-windows/Dockerfile
M .github/workflows/containers/github-action-ci/Dockerfile
M .github/workflows/premerge.yaml
M bolt/include/bolt/Core/MCPlusBuilder.h
M bolt/include/bolt/Profile/DataAggregator.h
M bolt/lib/Core/BinaryFunctionCallGraph.cpp
M bolt/lib/Profile/DataAggregator.cpp
M bolt/runtime/CMakeLists.txt
M bolt/runtime/instr.cpp
M clang-tools-extra/clang-doc/BitcodeReader.cpp
M clang-tools-extra/clang-doc/BitcodeWriter.cpp
M clang-tools-extra/clang-doc/BitcodeWriter.h
M clang-tools-extra/clang-doc/JSONGenerator.cpp
M clang-tools-extra/clang-doc/Representation.cpp
M clang-tools-extra/clang-doc/Representation.h
M clang-tools-extra/clang-doc/Serialize.cpp
A clang-tools-extra/clang-tidy/.clang-tidy
M clang-tools-extra/clang-tidy/ClangTidy.cpp
M clang-tools-extra/clang-tidy/ClangTidy.h
M clang-tools-extra/clang-tidy/boost/UseRangesCheck.h
M clang-tools-extra/clang-tidy/bugprone/ArgumentCommentCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/CrtpConstructorAccessibilityCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/ExceptionEscapeCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/InfiniteLoopCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/MacroRepeatedSideEffectsCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/SizeofExpressionCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/UnsafeFunctionsCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/InterfacesGlobalInitCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/MissingStdForwardCheck.cpp
M clang-tools-extra/clang-tidy/llvm/CMakeLists.txt
M clang-tools-extra/clang-tidy/llvm/LLVMTidyModule.cpp
A clang-tools-extra/clang-tidy/llvm/PreferStaticOverAnonymousNamespaceCheck.cpp
A clang-tools-extra/clang-tidy/llvm/PreferStaticOverAnonymousNamespaceCheck.h
M clang-tools-extra/clang-tidy/misc/ConfusableTable/confusables.txt
M clang-tools-extra/clang-tidy/misc/RedundantExpressionCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseConstraintsCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseRangesCheck.h
M clang-tools-extra/clang-tidy/modernize/UseScopedLockCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseStdFormatCheck.cpp
M clang-tools-extra/clang-tidy/objc/PropertyDeclarationCheck.cpp
M clang-tools-extra/clang-tidy/readability/CMakeLists.txt
M clang-tools-extra/clang-tidy/readability/ConvertMemberFunctionsToStatic.cpp
M clang-tools-extra/clang-tidy/readability/MakeMemberFunctionConstCheck.cpp
M clang-tools-extra/clang-tidy/readability/ReadabilityTidyModule.cpp
M clang-tools-extra/clang-tidy/readability/SuspiciousCallArgumentCheck.cpp
A clang-tools-extra/clang-tidy/readability/UseConcisePreprocessorDirectivesCheck.cpp
A clang-tools-extra/clang-tidy/readability/UseConcisePreprocessorDirectivesCheck.h
M clang-tools-extra/clang-tidy/tool/ClangTidyMain.cpp
M clang-tools-extra/clang-tidy/utils/DesignatedInitializers.cpp
M clang-tools-extra/clang-tidy/utils/ExceptionAnalyzer.cpp
M clang-tools-extra/clang-tidy/utils/ExceptionAnalyzer.h
M clang-tools-extra/clang-tidy/utils/HeaderGuard.cpp
M clang-tools-extra/clang-tidy/utils/Matchers.h
M clang-tools-extra/clang-tidy/utils/RenamerClangTidyCheck.cpp
M clang-tools-extra/clang-tidy/utils/UseRangesCheck.cpp
M clang-tools-extra/clang-tidy/utils/UseRangesCheck.h
M clang-tools-extra/clangd/CodeComplete.cpp
M clang-tools-extra/clangd/ModulesBuilder.cpp
M clang-tools-extra/clangd/Quality.cpp
M clang-tools-extra/clangd/SemanticHighlighting.cpp
M clang-tools-extra/docs/ReleaseNotes.rst
M clang-tools-extra/docs/clang-tidy/checks/list.rst
A clang-tools-extra/docs/clang-tidy/checks/llvm/prefer-static-over-anonymous-namespace.rst
A clang-tools-extra/docs/clang-tidy/checks/readability/use-concise-preprocessor-directives.rst
M clang-tools-extra/test/clang-doc/json/class-requires.cpp
A clang-tools-extra/test/clang-doc/json/class-specialization.cpp
M clang-tools-extra/test/clang-doc/json/class-template.cpp
M clang-tools-extra/test/clang-doc/json/class.cpp
M clang-tools-extra/test/clang-doc/json/compound-constraints.cpp
M clang-tools-extra/test/clang-doc/json/concept.cpp
M clang-tools-extra/test/clang-doc/json/function-requires.cpp
M clang-tools-extra/test/clang-doc/json/function-specifiers.cpp
M clang-tools-extra/test/clang-doc/json/method-template.cpp
M clang-tools-extra/test/clang-doc/json/namespace.cpp
M clang-tools-extra/test/clang-doc/json/nested-namespace.cpp
A clang-tools-extra/test/clang-query/trailing-comma.c
M clang-tools-extra/test/clang-tidy/checkers/bugprone/exception-escape-coro.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/exception-escape-rethrow.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/exception-escape-throw.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/exception-escape.cpp
M clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/interfaces-global-init.cpp
A clang-tools-extra/test/clang-tidy/checkers/llvm/prefer-static-over-anonymous-namespace.cpp
A clang-tools-extra/test/clang-tidy/checkers/readability/use-concise-preprocessor-directives.cpp
A clang-tools-extra/test/clang-tidy/infrastructure/dump-config-filtering.cpp
M clang-tools-extra/test/clang-tidy/infrastructure/file-filter-symlinks.cpp
M clang-tools-extra/unittests/clang-doc/JSONGeneratorTest.cpp
A clang/docs/CXXTypeAwareAllocators.rst
M clang/docs/ClangFormatStyleOptions.rst
M clang/docs/LanguageExtensions.rst
M clang/docs/ReleaseNotes.rst
M clang/docs/ThinLTO.rst
M clang/docs/index.rst
M clang/include/clang-c/Index.h
M clang/include/clang/AST/ASTContext.h
M clang/include/clang/AST/Decl.h
M clang/include/clang/AST/DeclCXX.h
M clang/include/clang/ASTMatchers/ASTMatchers.h
M clang/include/clang/ASTMatchers/ASTMatchersInternal.h
M clang/include/clang/ASTMatchers/ASTMatchersMacros.h
M clang/include/clang/Analysis/Analyses/ThreadSafetyTraverse.h
M clang/include/clang/Analysis/Analyses/UninitializedValues.h
M clang/include/clang/Basic/BuiltinsAMDGPU.def
M clang/include/clang/Basic/BuiltinsPPC.def
M clang/include/clang/Basic/BuiltinsRISCV.td
A clang/include/clang/Basic/BuiltinsRISCVXAndes.td
M clang/include/clang/Basic/CodeGenOptions.def
M clang/include/clang/Basic/CodeGenOptions.h
M clang/include/clang/Basic/DebugOptions.def
M clang/include/clang/Basic/DiagnosticASTKinds.td
M clang/include/clang/Basic/DiagnosticGroups.td
M clang/include/clang/Basic/DiagnosticParseKinds.td
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/include/clang/Basic/DiagnosticSerializationKinds.td
M clang/include/clang/Basic/Features.def
M clang/include/clang/Basic/LangOptions.def
M clang/include/clang/Basic/PointerAuthOptions.h
M clang/include/clang/Basic/SourceManager.h
M clang/include/clang/Basic/TargetInfo.h
M clang/include/clang/Basic/arm_sve.td
M clang/include/clang/CIR/Dialect/IR/CIRAttrs.td
M clang/include/clang/CIR/Dialect/IR/CIRDialect.h
M clang/include/clang/CIR/Dialect/IR/CIRDialect.td
A clang/include/clang/CIR/Dialect/IR/CIREnumAttr.td
M clang/include/clang/CIR/Dialect/IR/CIROps.td
M clang/include/clang/CIR/Dialect/IR/CIRTypeConstraints.td
M clang/include/clang/CIR/Dialect/IR/CIRTypes.h
M clang/include/clang/CIR/Dialect/IR/CIRTypes.td
M clang/include/clang/CIR/Dialect/Passes.h
M clang/include/clang/CIR/Dialect/Passes.td
M clang/include/clang/CIR/MissingFeatures.h
M clang/include/clang/Driver/Options.td
M clang/include/clang/Format/Format.h
M clang/include/clang/Frontend/ASTUnit.h
M clang/include/clang/Frontend/CompilerInstance.h
M clang/include/clang/Parse/ParseHLSLRootSignature.h
M clang/include/clang/Sema/DeclSpec.h
M clang/include/clang/Sema/Overload.h
M clang/include/clang/Sema/ParsedAttr.h
M clang/include/clang/Sema/SemaHLSL.h
M clang/include/clang/Serialization/ASTBitCodes.h
M clang/include/clang/Serialization/ASTReader.h
M clang/include/clang/Serialization/ASTWriter.h
M clang/include/clang/Tooling/DependencyScanning/DependencyScanningTool.h
M clang/include/clang/Tooling/DependencyScanning/DependencyScanningWorker.h
M clang/include/clang/Tooling/DependencyScanning/ModuleDepCollector.h
M clang/lib/AST/ASTContext.cpp
M clang/lib/AST/ASTDiagnostic.cpp
M clang/lib/AST/ByteCode/Compiler.cpp
M clang/lib/AST/ByteCode/Compiler.h
M clang/lib/AST/ByteCode/Interp.cpp
M clang/lib/AST/ByteCode/Interp.h
M clang/lib/AST/ByteCode/Opcodes.td
M clang/lib/AST/ByteCode/Pointer.cpp
M clang/lib/AST/ByteCode/State.h
M clang/lib/AST/Decl.cpp
M clang/lib/AST/DeclCXX.cpp
M clang/lib/AST/Expr.cpp
M clang/lib/AST/ExprConstant.cpp
M clang/lib/ASTMatchers/Dynamic/Parser.cpp
M clang/lib/Analysis/LifetimeSafety.cpp
M clang/lib/Analysis/UninitializedValues.cpp
M clang/lib/Analysis/UnsafeBufferUsage.cpp
M clang/lib/Basic/CMakeLists.txt
M clang/lib/Basic/CodeGenOptions.cpp
M clang/lib/Basic/OpenMPKinds.cpp
M clang/lib/Basic/SourceManager.cpp
M clang/lib/Basic/Targets.cpp
M clang/lib/Basic/Targets/ARM.cpp
M clang/lib/Basic/Targets/OSTargets.h
R clang/lib/Basic/Targets/PNaCl.cpp
R clang/lib/Basic/Targets/PNaCl.h
M clang/lib/CIR/CodeGen/CIRGenBuilder.h
M clang/lib/CIR/CodeGen/CIRGenBuiltin.cpp
M clang/lib/CIR/CodeGen/CIRGenCXXABI.cpp
M clang/lib/CIR/CodeGen/CIRGenCXXABI.h
M clang/lib/CIR/CodeGen/CIRGenClass.cpp
M clang/lib/CIR/CodeGen/CIRGenExpr.cpp
M clang/lib/CIR/CodeGen/CIRGenExprAggregate.cpp
M clang/lib/CIR/CodeGen/CIRGenExprComplex.cpp
M clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
M clang/lib/CIR/CodeGen/CIRGenFunction.cpp
M clang/lib/CIR/CodeGen/CIRGenFunction.h
M clang/lib/CIR/CodeGen/CIRGenItaniumCXXABI.cpp
M clang/lib/CIR/CodeGen/CIRGenModule.cpp
M clang/lib/CIR/Dialect/IR/CIRDialect.cpp
M clang/lib/CIR/Dialect/Transforms/CMakeLists.txt
A clang/lib/CIR/Dialect/Transforms/LoweringPrepare.cpp
M clang/lib/CIR/Lowering/CIRPasses.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/CGCoroutine.cpp
M clang/lib/CodeGen/CGDebugInfo.cpp
M clang/lib/CodeGen/CGObjC.cpp
M clang/lib/CodeGen/CGObjCGNU.cpp
M clang/lib/CodeGen/CGObjCMac.cpp
M clang/lib/CodeGen/CGOpenMPRuntime.cpp
M clang/lib/CodeGen/CMakeLists.txt
M clang/lib/CodeGen/CodeGenAction.cpp
M clang/lib/CodeGen/CodeGenModule.cpp
M clang/lib/CodeGen/TargetBuiltins/AMDGPU.cpp
M clang/lib/CodeGen/TargetBuiltins/PPC.cpp
M clang/lib/CodeGen/TargetBuiltins/RISCV.cpp
M clang/lib/CodeGen/TargetInfo.h
R clang/lib/CodeGen/Targets/PNaCl.cpp
M clang/lib/CodeGen/Targets/X86.cpp
M clang/lib/Driver/CMakeLists.txt
M clang/lib/Driver/Driver.cpp
M clang/lib/Driver/SanitizerArgs.cpp
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/lib/Driver/ToolChains/CommonArgs.cpp
M clang/lib/Driver/ToolChains/MinGW.cpp
R clang/lib/Driver/ToolChains/NaCl.cpp
R clang/lib/Driver/ToolChains/NaCl.h
M clang/lib/Format/BreakableToken.cpp
M clang/lib/Format/Format.cpp
M clang/lib/Format/FormatToken.h
M clang/lib/Format/FormatTokenLexer.cpp
M clang/lib/Format/FormatTokenLexer.h
M clang/lib/Format/TokenAnnotator.cpp
M clang/lib/Format/UnwrappedLineParser.cpp
M clang/lib/Format/UnwrappedLineParser.h
M clang/lib/Frontend/ASTUnit.cpp
M clang/lib/Frontend/ChainedIncludesSource.cpp
M clang/lib/Frontend/CompilerInstance.cpp
M clang/lib/Frontend/CompilerInvocation.cpp
M clang/lib/Frontend/FrontendAction.cpp
M clang/lib/Frontend/FrontendActions.cpp
M clang/lib/Frontend/InitPreprocessor.cpp
M clang/lib/Frontend/PrecompiledPreamble.cpp
M clang/lib/Frontend/SARIFDiagnostic.cpp
M clang/lib/Frontend/TextDiagnostic.cpp
M clang/lib/Headers/CMakeLists.txt
A clang/lib/Headers/cuda_wrappers/__utility/declval.h
M clang/lib/Headers/ptrauth.h
A clang/lib/Headers/riscv_nds.h
M clang/lib/Lex/DependencyDirectivesScanner.cpp
M clang/lib/Lex/InitHeaderSearch.cpp
M clang/lib/Parse/ParseDecl.cpp
M clang/lib/Parse/ParseDeclCXX.cpp
M clang/lib/Parse/ParseHLSLRootSignature.cpp
M clang/lib/Sema/AnalysisBasedWarnings.cpp
M clang/lib/Sema/HLSLBuiltinTypeDeclBuilder.cpp
M clang/lib/Sema/HLSLBuiltinTypeDeclBuilder.h
M clang/lib/Sema/SemaAMDGPU.cpp
M clang/lib/Sema/SemaAccess.cpp
M clang/lib/Sema/SemaDecl.cpp
M clang/lib/Sema/SemaDeclAttr.cpp
M clang/lib/Sema/SemaDeclCXX.cpp
M clang/lib/Sema/SemaDeclObjC.cpp
M clang/lib/Sema/SemaExprCXX.cpp
M clang/lib/Sema/SemaHLSL.cpp
M clang/lib/Sema/SemaLookup.cpp
M clang/lib/Sema/SemaM68k.cpp
M clang/lib/Sema/SemaMSP430.cpp
M clang/lib/Sema/SemaObjCProperty.cpp
M clang/lib/Sema/SemaOverload.cpp
M clang/lib/Sema/SemaRISCV.cpp
M clang/lib/Sema/SemaTemplateDeductionGuide.cpp
M clang/lib/Sema/SemaTemplateInstantiate.cpp
M clang/lib/Sema/SemaType.cpp
M clang/lib/Sema/TreeTransform.h
M clang/lib/Serialization/ASTReader.cpp
M clang/lib/Serialization/ASTWriter.cpp
M clang/lib/Serialization/GeneratePCH.cpp
M clang/lib/StaticAnalyzer/Checkers/WebKit/ASTUtils.cpp
M clang/lib/StaticAnalyzer/Core/MemRegion.cpp
M clang/lib/Tooling/DependencyScanning/DependencyScanningFilesystem.cpp
M clang/lib/Tooling/DependencyScanning/DependencyScanningTool.cpp
M clang/lib/Tooling/DependencyScanning/ModuleDepCollector.cpp
M clang/lib/Tooling/Transformer/RewriteRule.cpp
M clang/test/AST/ByteCode/complex.cpp
M clang/test/AST/ByteCode/const-eval.c
M clang/test/AST/ByteCode/cxx11.cpp
M clang/test/AST/ByteCode/cxx23.cpp
M clang/test/AST/ByteCode/placement-new.cpp
M clang/test/AST/ByteCode/records.cpp
M clang/test/AST/ByteCode/unions.cpp
M clang/test/AST/HLSL/RootSignatures-AST.hlsl
M clang/test/AST/HLSL/StructuredBuffers-AST.hlsl
M clang/test/AST/HLSL/TypedBuffers-AST.hlsl
M clang/test/Analysis/Checkers/WebKit/unretained-call-args.mm
A clang/test/Analysis/LifetimeSafety/CMakeLists.txt
A clang/test/Analysis/LifetimeSafety/benchmark.py
A clang/test/Analysis/LifetimeSafety/requirements.txt
M clang/test/Analysis/stream.c
M clang/test/CIR/CodeGen/bitfields.c
M clang/test/CIR/CodeGen/builtin_bit.cpp
M clang/test/CIR/CodeGen/complex-arithmetic.cpp
M clang/test/CIR/CodeGen/complex.cpp
M clang/test/CIR/CodeGen/ctor.cpp
A clang/test/CIR/CodeGen/destructors.cpp
M clang/test/CIR/IR/invalid-complex.cir
M clang/test/CIR/Transforms/complex-imag-fold.cir
M clang/test/CIR/Transforms/complex-real-fold.cir
M clang/test/CMakeLists.txt
M clang/test/CXX/drs/cwg14xx.cpp
M clang/test/CXX/expr/expr.const/p2-0x.cpp
M clang/test/CXX/module/module.interface/p1.cpp
A clang/test/ClangScanDeps/visible-modules.c
M clang/test/CodeGen/AArch64/sme-intrinsics/aarch64-sme-attrs.cpp
M clang/test/CodeGen/AArch64/sme-intrinsics/acle_sme_add-i64.c
M clang/test/CodeGen/AArch64/sme-intrinsics/acle_sme_mopa-za32.c
M clang/test/CodeGen/AArch64/sme-intrinsics/acle_sme_mopa-za64.c
M clang/test/CodeGen/AArch64/sme-intrinsics/acle_sme_mops-za32.c
M clang/test/CodeGen/AArch64/sme-intrinsics/acle_sme_mops-za64.c
M clang/test/CodeGen/AArch64/sme2-intrinsics/aarch64-sme2-attrs.cpp
M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_add.c
M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_add_sub_za16.c
M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_bmop.c
M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_clamp.c
M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_cvt.c
M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_cvtn.c
M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_fmlas16.c
M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_fp_dots.c
M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_frint.c
M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_int_dots.c
M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_luti2_lane_zt.c
M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_luti2_lane_zt_x2.c
M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_luti2_lane_zt_x4.c
M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_luti4_lane_zt.c
M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_luti4_lane_zt_x2.c
M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_luti4_lane_zt_x4.c
M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_max.c
M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_maxnm.c
M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_min.c
M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_minnm.c
M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_mla.c
M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_mlal.c
M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_mlall.c
M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_mls.c
M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_mlsl.c
M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_mop.c
M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_mop4_1x2.c
M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_mop4_2x1.c
M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_mop4_2x2.c
M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_mopa_nonwide.c
M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_read.c
M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_reinterpret_svcount_svbool.c
M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_sqdmulh.c
M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_sub.c
M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_unpkx2.c
M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_unpkx4.c
M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_vdot.c
M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_vector_add.c
M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_vector_qrshr.c
M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_vector_rshl.c
M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_vector_selx2.c
M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_vector_selx4.c
M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_vector_uzpx2.c
M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_vector_uzpx4.c
M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_vector_zipx2.c
M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_vector_zipx4.c
M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_write.c
M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_write_lane_zt.c
M clang/test/CodeGen/AArch64/sme2p1-intrinsics/acle_sme2p1_movaz.c
M clang/test/CodeGen/AArch64/sme2p1-intrinsics/acle_sme2p1_zero.c
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_clasta-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_clasta.c
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_clastb-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_clastb.c
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_cnt-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_cnt.c
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_create2-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_create2.c
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_create3-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_create3.c
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_create4-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_create4.c
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_dup-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_dup.c
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_dupq-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_dupq.c
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_ext-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_ext.c
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_get2-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_get2.c
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_get3-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_get3.c
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_get4-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_get4.c
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_insr-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_insr.c
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_lasta-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_lasta.c
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_lastb-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_lastb.c
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_ld1-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_ld1.c
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_ld1ro-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_ld1ro.c
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_ld1rq-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_ld1rq.c
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_ld2-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_ld2.c
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_ld3-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_ld3.c
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_ld4-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_ld4.c
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_ldff1-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_ldff1.c
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_ldnf1-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_ldnf1.c
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_ldnt1-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_ldnt1.c
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_len-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_len.c
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_reinterpret-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_reinterpret.c
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_rev-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_rev.c
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_sel-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_sel.c
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_set2-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_set2.c
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_set3-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_set3.c
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_set4-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_set4.c
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_splice-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_splice.c
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_st1-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_st1.c
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_st2-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_st2.c
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_st3-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_st3.c
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_st4-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_st4.c
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_stnt1-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_stnt1.c
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_tbl-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_tbl.c
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_trn1-bfloat.c
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_trn1-fp64-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_trn1-fp64.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_trn1.c
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_trn2-bfloat.c
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_trn2-fp64-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_trn2-fp64.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_trn2.c
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_undef-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_undef.c
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_undef2-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_undef2.c
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_undef3-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_undef3.c
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_undef4-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_undef4.c
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_uzp1-bfloat.c
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_uzp1-fp64-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_uzp1-fp64.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_uzp1.c
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_uzp2-bfloat.c
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_uzp2-fp64-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_uzp2-fp64.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_uzp2.c
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_zip1-bfloat.c
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_zip1-fp64-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_zip1-fp64.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_zip1.c
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_zip2-bfloat.c
R clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_zip2-fp64-bfloat.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_zip2-fp64.c
M clang/test/CodeGen/AArch64/sve-intrinsics/acle_sve_zip2.c
M clang/test/CodeGen/AArch64/sve2-intrinsics/acle_sve2_luti.c
M clang/test/CodeGen/AArch64/sve2-intrinsics/acle_sve2_revd.c
R clang/test/CodeGen/AArch64/sve2-intrinsics/acle_sve2_tbl2-bfloat.c
M clang/test/CodeGen/AArch64/sve2-intrinsics/acle_sve2_tbl2.c
R clang/test/CodeGen/AArch64/sve2-intrinsics/acle_sve2_tbx-bfloat.c
M clang/test/CodeGen/AArch64/sve2-intrinsics/acle_sve2_tbx.c
R clang/test/CodeGen/AArch64/sve2-intrinsics/acle_sve2_whilerw-bfloat.c
M clang/test/CodeGen/AArch64/sve2-intrinsics/acle_sve2_whilerw.c
R clang/test/CodeGen/AArch64/sve2-intrinsics/acle_sve2_whilewr-bfloat.c
M clang/test/CodeGen/AArch64/sve2-intrinsics/acle_sve2_whilewr.c
M clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_bfadd.c
M clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_bfmax.c
M clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_bfmaxnm.c
M clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_bfmin.c
M clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_bfminnm.c
M clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_bfmla.c
M clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_bfmls.c
M clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_bfmlsl.c
M clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_bfmul.c
M clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_bfsub.c
M clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_cntp.c
M clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_create2_bool.c
M clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_create4_bool.c
M clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_dot.c
M clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_dupq.c
M clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_extq.c
M clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_fclamp.c
M clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_get2_bool.c
M clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_get4_bool.c
M clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_ld1.c
M clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_ldnt1.c
M clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_load_struct.c
M clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_loads.c
M clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_pext.c
M clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_pfalse.c
M clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_psel.c
M clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_psel_svcount.c
M clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_ptrue.c
M clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_qcvtn.c
M clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_qrshr.c
M clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_sclamp.c
M clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_set2_bool.c
M clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_set4_bool.c
M clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_st1.c
M clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_stnt1.c
M clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_store.c
M clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_store_struct.c
M clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_tblq.c
M clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_tbxq.c
M clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_uclamp.c
M clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_undef_bool.c
M clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_uzpq1.c
M clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_uzpq2.c
M clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_while_pn.c
M clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_while_x2.c
M clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_zipq1.c
M clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_zipq2.c
M clang/test/CodeGen/PowerPC/builtins-ppc-dmf.c
A clang/test/CodeGen/PowerPC/ppc-dmf-future-builtin-err.c
A clang/test/CodeGen/PowerPC/ppc-dmf-mma-builtin-err.c
R clang/test/CodeGen/PowerPC/ppc-future-mma-builtin-err.c
A clang/test/CodeGen/RISCV/riscv-xandesbfhcvt-c-api.c
A clang/test/CodeGen/RISCV/riscv-xandesbfhcvt.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vaesdf.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vaesdm.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vaesef.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vaesem.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vaeskf1.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vaeskf2.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vaesz.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vandn.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vbrev.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vbrev8.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vclmul.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vclmulh.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vclz.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vcpopv.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vctz.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vghsh.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vgmul.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vrev8.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vrol.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vror.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsha2ch.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsha2cl.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsha2ms.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsm3c.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsm3me.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsm4k.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vsm4r.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/vwsll.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/xsfvcp-x-rv64.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/xsfvcp-x.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/xsfvcp-xv-rv64.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/xsfvcp-xv.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/xsfvcp-xvv-rv64.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/xsfvcp-xvv.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/non-overloaded/xsfvcp-xvw.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vaesdf.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vaesdm.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vaesef.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vaesem.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vaeskf1.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vaeskf2.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vaesz.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vandn.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vbrev.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vbrev8.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vclmul.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vclmulh.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vclz.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vcpopv.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vctz.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vghsh.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vgmul.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vrev8.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vrol.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vror.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsha2ch.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsha2cl.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsha2ms.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsm3c.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsm3me.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsm4k.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vsm4r.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/non-policy/overloaded/vwsll.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vaesdf.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vaesdm.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vaesef.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vaesem.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vaeskf1.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vaeskf2.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vaesz.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vandn.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vbrev.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vbrev8.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vclmul.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vclmulh.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vclz.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vcpopv.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vctz.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vghsh.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vgmul.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vrev8.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vrol.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vror.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vsha2ch.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vsha2cl.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vsha2ms.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vsm3c.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vsm3me.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vsm4k.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vsm4r.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/non-overloaded/vwsll.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vaesdf.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vaesdm.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vaesef.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vaesem.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vaeskf1.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vaeskf2.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vaesz.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vandn.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vbrev.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vbrev8.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vclmul.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vclmulh.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vclz.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vcpopv.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vctz.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vghsh.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vgmul.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vrev8.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vrol.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vror.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vsha2ch.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vsha2cl.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vsha2ms.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vsm3c.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vsm3me.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vsm4k.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vsm4r.c
R clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/policy/overloaded/vwsll.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/non-overloaded/vaesdf.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/non-overloaded/vaesdm.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/non-overloaded/vaesef.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/non-overloaded/vaesem.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/non-overloaded/vaeskf1.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/non-overloaded/vaeskf2.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/non-overloaded/vaesz.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/non-overloaded/vandn.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/non-overloaded/vbrev.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/non-overloaded/vbrev8.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/non-overloaded/vclmul.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/non-overloaded/vclmulh.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/non-overloaded/vclz.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/non-overloaded/vcpop.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/non-overloaded/vctz.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/non-overloaded/vghsh.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/non-overloaded/vgmul.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/non-overloaded/vrev8.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/non-overloaded/vrol.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/non-overloaded/vror.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/non-overloaded/vsha2ch.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/non-overloaded/vsha2cl.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/non-overloaded/vsha2ms.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/non-overloaded/vsm3c.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/non-overloaded/vsm3me.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/non-overloaded/vsm4k.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/non-overloaded/vsm4r.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/non-overloaded/vwsll.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/overloaded/vaesdf.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/overloaded/vaesdm.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/overloaded/vaesef.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/overloaded/vaesem.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/overloaded/vaeskf1.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/overloaded/vaeskf2.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/overloaded/vaesz.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/overloaded/vandn.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/overloaded/vbrev.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/overloaded/vbrev8.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/overloaded/vclmul.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/overloaded/vclmulh.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/overloaded/vclz.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/overloaded/vcpop.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/overloaded/vctz.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/overloaded/vghsh.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/overloaded/vgmul.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/overloaded/vrev8.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/overloaded/vrol.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/overloaded/vror.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/overloaded/vsha2ch.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/overloaded/vsha2cl.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/overloaded/vsha2ms.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/overloaded/vsm3c.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/overloaded/vsm3me.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/overloaded/vsm4k.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/overloaded/vsm4r.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/non-policy/overloaded/vwsll.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/non-overloaded/vaesdf.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/non-overloaded/vaesdm.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/non-overloaded/vaesef.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/non-overloaded/vaesem.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/non-overloaded/vaeskf1.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/non-overloaded/vaeskf2.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/non-overloaded/vaesz.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/non-overloaded/vandn.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/non-overloaded/vbrev.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/non-overloaded/vbrev8.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/non-overloaded/vclmul.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/non-overloaded/vclmulh.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/non-overloaded/vclz.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/non-overloaded/vcpop.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/non-overloaded/vctz.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/non-overloaded/vghsh.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/non-overloaded/vgmul.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/non-overloaded/vrev8.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/non-overloaded/vrol.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/non-overloaded/vror.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/non-overloaded/vsha2ch.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/non-overloaded/vsha2cl.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/non-overloaded/vsha2ms.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/non-overloaded/vsm3c.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/non-overloaded/vsm3me.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/non-overloaded/vsm4k.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/non-overloaded/vsm4r.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/non-overloaded/vwsll.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/overloaded/vaesdf.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/overloaded/vaesdm.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/overloaded/vaesef.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/overloaded/vaesem.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/overloaded/vaeskf1.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/overloaded/vaeskf2.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/overloaded/vaesz.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/overloaded/vandn.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/overloaded/vbrev.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/overloaded/vbrev8.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/overloaded/vclmul.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/overloaded/vclmulh.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/overloaded/vclz.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/overloaded/vcpop.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/overloaded/vctz.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/overloaded/vghsh.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/overloaded/vgmul.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/overloaded/vrev8.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/overloaded/vrol.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/overloaded/vror.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/overloaded/vsha2ch.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/overloaded/vsha2cl.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/overloaded/vsha2ms.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/overloaded/vsm3c.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/overloaded/vsm3me.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/overloaded/vsm4k.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/overloaded/vsm4r.c
A clang/test/CodeGen/RISCV/rvv-intrinsics-autogenerated/vector-crypto/policy/overloaded/vwsll.c
A clang/test/CodeGen/RISCV/sifive-intrinsics/non-policy/non-overloaded/xsfvcp-x-rv64.c
A clang/test/CodeGen/RISCV/sifive-intrinsics/non-policy/non-overloaded/xsfvcp-x.c
A clang/test/CodeGen/RISCV/sifive-intrinsics/non-policy/non-overloaded/xsfvcp-xv-rv64.c
A clang/test/CodeGen/RISCV/sifive-intrinsics/non-policy/non-overloaded/xsfvcp-xv.c
A clang/test/CodeGen/RISCV/sifive-intrinsics/non-policy/non-overloaded/xsfvcp-xvv-rv64.c
A clang/test/CodeGen/RISCV/sifive-intrinsics/non-policy/non-overloaded/xsfvcp-xvv.c
A clang/test/CodeGen/RISCV/sifive-intrinsics/non-policy/non-overloaded/xsfvcp-xvw.c
R clang/test/CodeGen/X86/x86_64-arguments-nacl.c
M clang/test/CodeGen/X86/x86_64-longdouble.c
M clang/test/CodeGen/arm-aapcs-vfp.c
M clang/test/CodeGen/debug-info-file-checksum.c
M clang/test/CodeGen/ext-int-cc.c
M clang/test/CodeGen/long_double_fp128.cpp
R clang/test/CodeGen/malign-double-x86-nacl.c
M clang/test/CodeGen/target-data.c
M clang/test/CodeGenCXX/const-init-cxx11.cpp
R clang/test/CodeGenCXX/x86_64-arguments-nacl-x32.cpp
M clang/test/CodeGenCoroutines/coro-gro.cpp
M clang/test/CodeGenHLSL/RootSignature.hlsl
M clang/test/CodeGenObjC/arc.m
A clang/test/CodeGenObjC/gnustep2-class-exts.m
M clang/test/CodeGenObjC/matrix-type-operators.m
A clang/test/CodeGenObjC/ptrauth-attr-exception.m
A clang/test/CodeGenObjC/ptrauth-block-isa.m
A clang/test/CodeGenObjC/ptrauth-class-ro.m
A clang/test/CodeGenObjC/ptrauth-class.m
A clang/test/CodeGenObjC/ptrauth-objc-interface-selector.m
A clang/test/CodeGenObjC/ptrauth-objc-isa-super.m
A clang/test/CodeGenObjC/ptrauth-objc-method-list-pointer.m
A clang/test/CodeGenObjC/ptrauth-property-backing.m
A clang/test/CodeGenObjCXX/ptrauth-objc-interface-selector.mm
M clang/test/CodeGenOpenCL/amdgpu-enqueue-kernel.cl
M clang/test/CodeGenOpenCL/amdgpu-features.cl
A clang/test/CodeGenOpenCL/builtins-amdgcn-gfx1250-wmma-w32.cl
M clang/test/CodeGenOpenCL/builtins-amdgcn-gfx1250.cl
M clang/test/CodeGenOpenCL/builtins-amdgcn-raw-buffer-load-lds.cl
A clang/test/DebugInfo/KeyInstructions/array-cookie.cpp
A clang/test/DebugInfo/KeyInstructions/coro-dwarf-key-instrs.cpp
M clang/test/DebugInfo/KeyInstructions/flag.cpp
A clang/test/Driver/DTLTO/dtlto.c
M clang/test/Driver/arm-alignment.c
M clang/test/Driver/mingw.cpp
R clang/test/Driver/nacl-direct.c
M clang/test/Driver/openmp-offload-gpu.c
M clang/test/Driver/print-supported-extensions-riscv.c
M clang/test/Driver/riscv-cpus.c
M clang/test/Driver/sanitizer-ld.c
M clang/test/Driver/unsupported-target-arch.c
R clang/test/Driver/x86_64-nacl-defines.cpp
M clang/test/Format/multiple-inputs-error.cpp
M clang/test/Format/ranges.cpp
M clang/test/Frontend/absolute-paths.c
R clang/test/Frontend/simplify-paths.c
R clang/test/Frontend/x86_64-nacl-types.cpp
M clang/test/Lexer/has_feature_undefined_behavior_sanitizer.cpp
M clang/test/Misc/warning-wall.c
M clang/test/PCH/no-validate-pch.cl
A clang/test/Parser/gh114815.cpp
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/aarch64-sve-intrinsics/acle_sve_bf16.cpp
A clang/test/Sema/aarch64-sve-intrinsics/acle_sve_bf16_non_streaming_only.cpp
R clang/test/Sema/aarch64-sve-intrinsics/acle_sve_bfloat.cpp
R clang/test/Sema/aarch64-sve2-intrinsics/acle_sve2_bfloat.cpp
M clang/test/Sema/const-eval.c
M clang/test/Sema/warn-lifetime-safety-dataflow.cpp
M clang/test/SemaCXX/compound-literal.cpp
M clang/test/SemaCXX/constant-expression-cxx11.cpp
M clang/test/SemaCXX/constant-expression-cxx14.cpp
M clang/test/SemaCXX/constant-expression-cxx2a.cpp
M clang/test/SemaCXX/constant-expression-p2280r4.cpp
M clang/test/SemaCXX/constexpr-backtrace-limit.cpp
M clang/test/SemaCXX/cxx20-ctad-type-alias.cpp
M clang/test/SemaCXX/cxx2b-deducing-this.cpp
M clang/test/SemaCXX/cxx2c-constexpr-placement-new.cpp
A clang/test/SemaCXX/local-class-template-param-crash.cpp
M clang/test/SemaCXX/new-delete.cpp
A clang/test/SemaCXX/noreturn-vars.cpp
M clang/test/SemaCXX/overload-resolution-deferred-templates.cpp
M clang/test/SemaCXX/type-aware-class-scoped-mismatched-constraints.cpp
M clang/test/SemaCXX/type-aware-coroutines.cpp
M clang/test/SemaCXX/type-aware-new-constexpr.cpp
M clang/test/SemaCXX/type-aware-new-delete-arrays.cpp
M clang/test/SemaCXX/type-aware-new-delete-basic-free-declarations.cpp
M clang/test/SemaCXX/type-aware-new-delete-basic-in-class-declarations.cpp
M clang/test/SemaCXX/type-aware-new-delete-basic-resolution.cpp
M clang/test/SemaCXX/type-aware-new-delete-qualifiers.cpp
M clang/test/SemaCXX/type-aware-new-delete-transparent-contexts.cpp
M clang/test/SemaCXX/type-aware-new-invalid-type-identity.cpp
M clang/test/SemaCXX/type-aware-placement-operators.cpp
M clang/test/SemaCXX/uninitialized.cpp
A clang/test/SemaCXX/warn-no-sometimes-uninitialized.cpp
M clang/test/SemaCXX/warn-thread-safety-analysis.cpp
A clang/test/SemaCXX/warn-uninitialized-const-pointer.cpp
M clang/test/SemaCXX/warn-unsafe-buffer-usage-libc-functions.cpp
M clang/test/SemaCXX/warn-unused-result.cpp
M clang/test/SemaCXX/wmissing-noreturn-suggestion.cpp
M clang/test/SemaHLSL/BuiltIns/Buffers.hlsl
M clang/test/SemaHLSL/BuiltIns/StructuredBuffers.hlsl
M clang/test/SemaHLSL/RootSignature-err.hlsl
A clang/test/SemaHLSL/RootSignature-flags-err.hlsl
M clang/test/SemaHLSL/RootSignature-resource-ranges-err.hlsl
A clang/test/SemaObjC/ptrauth-pointers.m
M clang/test/SemaObjC/ptrauth-qualifier.m
M clang/test/SemaOpenCL/builtins-amdgcn-error-gfx1250-param.cl
A clang/test/SemaOpenCL/builtins-amdgcn-error-gfx1250-wmma-w32-param.cl
M clang/test/SemaOpenCL/builtins-amdgcn-raw-ptr-buffer-load-lds-error.cl
M clang/test/SemaOpenCL/builtins-amdgcn-raw-ptr-buffer-load-lds-target-error.cl
A clang/test/SemaTemplate/gh138371.cpp
M clang/tools/clang-format/ClangFormat.cpp
M clang/tools/clang-linker-wrapper/ClangLinkerWrapper.cpp
M clang/tools/clang-linker-wrapper/LinkerWrapperOpts.td
M clang/tools/clang-scan-deps/ClangScanDeps.cpp
M clang/tools/clang-scan-deps/Opts.td
M clang/tools/libclang/CMakeLists.txt
A clang/tools/libclang/Obsolete.cpp
M clang/tools/libclang/libclang.map
M clang/unittests/ASTMatchers/ASTMatchersNarrowingTest.cpp
M clang/unittests/Format/ConfigParseTest.cpp
M clang/unittests/Format/FormatTest.cpp
M clang/unittests/Lex/DependencyDirectivesScannerTest.cpp
M clang/unittests/Parse/ParseHLSLRootSignatureTest.cpp
M clang/unittests/Tooling/DependencyScanning/DependencyScanningFilesystemTest.cpp
M clang/utils/TableGen/NeonEmitter.cpp
M cmake/Modules/LLVMVersion.cmake
M compiler-rt/cmake/Modules/AddCompilerRT.cmake
M compiler-rt/cmake/builtin-config-ix.cmake
M compiler-rt/lib/builtins/CMakeLists.txt
A compiler-rt/lib/builtins/aarch64/emupac.cpp
M compiler-rt/lib/builtins/int_types.h
M compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_posix.h
M compiler-rt/lib/scudo/standalone/tests/wrappers_c_test.cpp
A compiler-rt/test/builtins/Unit/aarch64/emupac.c
M compiler-rt/test/lit.common.cfg.py
M cross-project-tests/debuginfo-tests/dexter/dex/tools/TestToolBase.py
M cross-project-tests/dtlto/ld-dtlto.c
M flang-rt/include/flang-rt/runtime/descriptor.h
M flang-rt/include/flang-rt/runtime/type-info.h
M flang-rt/include/flang-rt/runtime/work-queue.h
M flang-rt/lib/cuda/CMakeLists.txt
M flang-rt/lib/cuda/descriptor.cpp
M flang-rt/lib/cuda/memory.cpp
M flang-rt/lib/runtime/assign.cpp
M flang-rt/lib/runtime/derived.cpp
M flang-rt/lib/runtime/descriptor.cpp
M flang-rt/lib/runtime/pointer.cpp
M flang-rt/lib/runtime/work-queue.cpp
M flang-rt/unittests/Runtime/CUDA/AllocatorCUF.cpp
M flang/docs/Extensions.md
M flang/docs/OpenACC.md
M flang/include/flang/Common/format.h
M flang/include/flang/Optimizer/Builder/HLFIRTools.h
M flang/include/flang/Optimizer/Builder/Runtime/CUDA/Descriptor.h
M flang/include/flang/Optimizer/Dialect/CUF/CUFOps.td
M flang/include/flang/Optimizer/Dialect/FIRCG/CGOps.td
M flang/include/flang/Optimizer/Dialect/FIROps.td
M flang/include/flang/Optimizer/Dialect/FIROpsSupport.h
M flang/include/flang/Optimizer/Dialect/FIRTypes.td
R flang/include/flang/Optimizer/OpenACC/FIROpenACCTypeInterfaces.h
R flang/include/flang/Optimizer/OpenACC/RegisterOpenACCExtensions.h
A flang/include/flang/Optimizer/OpenACC/Support/FIROpenACCTypeInterfaces.h
A flang/include/flang/Optimizer/OpenACC/Support/RegisterOpenACCExtensions.h
M flang/include/flang/Optimizer/Support/InitFIR.h
M flang/include/flang/Optimizer/Transforms/Passes.h
M flang/include/flang/Optimizer/Transforms/Passes.td
M flang/include/flang/Parser/char-block.h
M flang/include/flang/Parser/parse-tree.h
M flang/include/flang/Runtime/CUDA/descriptor.h
M flang/include/flang/Semantics/tools.h
M flang/include/flang/Support/Fortran-features.h
M flang/lib/Evaluate/fold.cpp
M flang/lib/Evaluate/intrinsics.cpp
M flang/lib/Evaluate/tools.cpp
M flang/lib/Lower/CMakeLists.txt
M flang/lib/Lower/ConvertVariable.cpp
M flang/lib/Lower/OpenACC.cpp
M flang/lib/Lower/Support/ReductionProcessor.cpp
M flang/lib/Optimizer/Builder/HLFIRTools.cpp
M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
M flang/lib/Optimizer/Builder/Runtime/CUDA/Descriptor.cpp
M flang/lib/Optimizer/CodeGen/CMakeLists.txt
M flang/lib/Optimizer/CodeGen/CodeGen.cpp
M flang/lib/Optimizer/CodeGen/LowerRepackArrays.cpp
M flang/lib/Optimizer/CodeGen/Target.cpp
M flang/lib/Optimizer/Dialect/CUF/CUFOps.cpp
M flang/lib/Optimizer/Dialect/FIROps.cpp
M flang/lib/Optimizer/OpenACC/CMakeLists.txt
R flang/lib/Optimizer/OpenACC/FIROpenACCAttributes.cpp
R flang/lib/Optimizer/OpenACC/FIROpenACCTypeInterfaces.cpp
R flang/lib/Optimizer/OpenACC/RegisterOpenACCExtensions.cpp
A flang/lib/Optimizer/OpenACC/Support/CMakeLists.txt
A flang/lib/Optimizer/OpenACC/Support/FIROpenACCAttributes.cpp
A flang/lib/Optimizer/OpenACC/Support/FIROpenACCTypeInterfaces.cpp
A flang/lib/Optimizer/OpenACC/Support/RegisterOpenACCExtensions.cpp
M flang/lib/Optimizer/Passes/Pipelines.cpp
M flang/lib/Optimizer/Transforms/AddAliasTags.cpp
M flang/lib/Optimizer/Transforms/CMakeLists.txt
M flang/lib/Optimizer/Transforms/CUFOpConversion.cpp
M flang/lib/Optimizer/Transforms/LoopVersioning.cpp
A flang/lib/Optimizer/Transforms/OptimizeArrayRepacking.cpp
M flang/lib/Parser/openmp-parsers.cpp
M flang/lib/Parser/parse-tree.cpp
M flang/lib/Parser/preprocessor.cpp
M flang/lib/Parser/prescan.cpp
M flang/lib/Parser/program-parsers.cpp
M flang/lib/Parser/type-parsers.h
M flang/lib/Parser/unparse.cpp
M flang/lib/Semantics/expression.cpp
M flang/lib/Semantics/resolve-names.cpp
M flang/lib/Semantics/tools.cpp
M flang/lib/Support/Fortran-features.cpp
M flang/test/Driver/bbc-mlir-pass-pipeline.f90
M flang/test/Driver/mlir-pass-pipeline.f90
A flang/test/Driver/tco-test-gen.fir
A flang/test/Evaluate/transfer-boz.f90
M flang/test/Fir/CUDA/cuda-alloc-free.fir
M flang/test/Fir/basic-program.fir
M flang/test/Fir/fir-ops.fir
M flang/test/Fir/invalid.fir
M flang/test/HLFIR/simplify-hlfir-intrinsics-cshift.fir
M flang/test/HLFIR/simplify-hlfir-intrinsics-matmul.fir
M flang/test/Lower/CUDA/cuda-data-transfer.cuf
A flang/test/Lower/CUDA/cuda-set-allocator.cuf
M flang/test/Lower/OpenMP/parallel-reduction-array-lb.f90
M flang/test/Lower/OpenMP/reduction-array-intrinsic.f90
M flang/test/Lower/OpenMP/sections-array-reduction.f90
M flang/test/Lower/OpenMP/taskgroup-task-array-reduction.f90
M flang/test/Lower/OpenMP/wsloop-reduction-array-assumed-shape.f90
A flang/test/Lower/amdgcn-complex.f90
A flang/test/Lower/do_concurrent_reduce_associate.f90
M flang/test/Parser/OpenMP/fail-construct1.f90
A flang/test/Preprocessing/bug1126.F90
A flang/test/Preprocessing/omp-sentinel-fixed-form.F
A flang/test/Transforms/optimize-array-repacking.fir
A flang/test/Transforms/tbaa-derived-with-descriptor.fir
M flang/tools/tco/tco.cpp
M libc/CMakeLists.txt
M libc/cmake/modules/LLVMLibCTestRules.cmake
M libc/config/baremetal/aarch64/entrypoints.txt
M libc/config/baremetal/arm/entrypoints.txt
M libc/config/baremetal/riscv/entrypoints.txt
M libc/config/darwin/aarch64/entrypoints.txt
M libc/config/linux/aarch64/entrypoints.txt
M libc/config/linux/arm/entrypoints.txt
M libc/config/linux/riscv/entrypoints.txt
M libc/config/linux/x86_64/entrypoints.txt
M libc/config/windows/entrypoints.txt
M libc/docs/headers/math/index.rst
M libc/docs/headers/search.rst
M libc/fuzzing/math/CMakeLists.txt
R libc/fuzzing/math/atan_fuzz.cpp
A libc/fuzzing/math/exp10_fuzz.cpp
A libc/fuzzing/math/exp2_fuzz.cpp
A libc/fuzzing/math/exp_fuzz.cpp
A libc/fuzzing/math/expm1_fuzz.cpp
A libc/fuzzing/math/log10_fuzz.cpp
A libc/fuzzing/math/log1p_fuzz.cpp
A libc/fuzzing/math/log2_fuzz.cpp
A libc/fuzzing/math/log_fuzz.cpp
M libc/fuzzing/math/sincos_fuzz.cpp
A libc/fuzzing/math/sqrt_fuzz.cpp
M libc/include/math.yaml
M libc/include/wchar.yaml
M libc/shared/math.h
A libc/shared/math/exp.h
A libc/shared/math/frexpf.h
A libc/shared/math/frexpf128.h
A libc/shared/math/frexpf16.h
A libc/shared/math/ldexpf.h
A libc/shared/math/ldexpf128.h
A libc/shared/math/ldexpf16.h
M libc/src/__support/CMakeLists.txt
M libc/src/__support/FPUtil/ManipulationFunctions.h
M libc/src/__support/FPUtil/multiply_add.h
M libc/src/__support/FPUtil/nearest_integer.h
M libc/src/__support/math/CMakeLists.txt
A libc/src/__support/math/exp.h
A libc/src/__support/math/exp_constants.h
A libc/src/__support/math/exp_utils.h
M libc/src/__support/math/expf16_utils.h
A libc/src/__support/math/frexpf.h
A libc/src/__support/math/frexpf128.h
A libc/src/__support/math/frexpf16.h
A libc/src/__support/math/ldexpf.h
A libc/src/__support/math/ldexpf128.h
A libc/src/__support/math/ldexpf16.h
M libc/src/__support/wchar/CMakeLists.txt
M libc/src/__support/wchar/character_converter.cpp
M libc/src/__support/wchar/character_converter.h
A libc/src/__support/wchar/string_converter.h
M libc/src/math/CMakeLists.txt
M libc/src/math/generic/CMakeLists.txt
M libc/src/math/generic/common_constants.cpp
M libc/src/math/generic/common_constants.h
M libc/src/math/generic/exp.cpp
M libc/src/math/generic/explogxf.h
M libc/src/math/generic/frexpf.cpp
M libc/src/math/generic/frexpf128.cpp
M libc/src/math/generic/frexpf16.cpp
M libc/src/math/generic/ldexpf.cpp
M libc/src/math/generic/ldexpf128.cpp
M libc/src/math/generic/ldexpf16.cpp
A libc/src/math/generic/tanpif.cpp
A libc/src/math/tanpif.h
M libc/src/time/baremetal/CMakeLists.txt
A libc/src/time/baremetal/clock.cpp
M libc/src/wchar/CMakeLists.txt
A libc/src/wchar/wcstol.cpp
A libc/src/wchar/wcstol.h
A libc/src/wchar/wcstoll.cpp
A libc/src/wchar/wcstoll.h
A libc/src/wchar/wcstoul.cpp
A libc/src/wchar/wcstoul.h
A libc/src/wchar/wcstoull.cpp
A libc/src/wchar/wcstoull.h
M libc/test/src/__support/wchar/CMakeLists.txt
A libc/test/src/__support/wchar/string_converter_test.cpp
M libc/test/src/math/CMakeLists.txt
M libc/test/src/math/exhaustive/CMakeLists.txt
M libc/test/src/math/exhaustive/tanf_test.cpp
A libc/test/src/math/exhaustive/tanpif_test.cpp
M libc/test/src/math/smoke/CMakeLists.txt
A libc/test/src/math/smoke/tanpif_test.cpp
A libc/test/src/math/tanpif_test.cpp
M libc/test/src/wchar/CMakeLists.txt
A libc/test/src/wchar/WcstolTest.h
A libc/test/src/wchar/wcstol_test.cpp
A libc/test/src/wchar/wcstoll_test.cpp
A libc/test/src/wchar/wcstoul_test.cpp
A libc/test/src/wchar/wcstoull_test.cpp
M libclc/CMakeLists.txt
A libclc/utils/CMakeLists.txt
M libcxx/docs/ReleaseNotes/21.rst
M libcxx/docs/Status/Cxx17Issues.csv
M libcxx/docs/Status/Cxx20Issues.csv
M libcxx/docs/Status/Cxx20Papers.csv
M libcxx/docs/Status/Cxx2cIssues.csv
M libcxx/docs/Status/Cxx2cPapers.csv
M libcxx/docs/index.rst
M libcxx/include/CMakeLists.txt
M libcxx/include/__algorithm/simd_utils.h
M libcxx/include/__config
M libcxx/include/__configuration/compiler.h
A libcxx/include/__cxx03/__verbose_trap
M libcxx/include/__locale_dir/locale_base_api.h
R libcxx/include/__locale_dir/locale_base_api/android.h
M libcxx/include/__memory_resource/polymorphic_allocator.h
M libcxx/include/__new/allocate.h
M libcxx/include/__new/launder.h
M libcxx/include/__tree
M libcxx/include/__type_traits/is_core_convertible.h
A libcxx/include/__verbose_trap
M libcxx/include/barrier
M libcxx/include/fstream
M libcxx/include/module.modulemap.in
M libcxx/include/optional
M libcxx/include/unordered_map
M libcxx/src/barrier.cpp
M libcxx/test/configs/stdlib-libstdc++.cfg.in
A libcxx/test/extensions/libcxx/always_initialize_iterators.pass.cpp
M libcxx/test/libcxx/algorithms/vectorization.compile.pass.cpp
A libcxx/test/libcxx/mem/mem.res/ctor.nullptr.assert.pass.cpp
A libcxx/test/libcxx/mem/mem.res/nonnull.verify.cpp
M libcxx/test/libcxx/memory/shared_ptr_array.pass.cpp
M libcxx/test/libcxx/time/time.zone/time.zone.exception/time.zone.exception.ambig/assert.ctor.pass.cpp
M libcxx/test/libcxx/time/time.zone/time.zone.exception/time.zone.exception.nonexist/assert.ctor.pass.cpp
M libcxx/test/libcxx/time/time.zone/time.zone.timezone/time.zone.members/assert.to_local.pass.cpp
M libcxx/test/libcxx/time/time.zone/time.zone.timezone/time.zone.members/assert.to_sys.pass.cpp
M libcxx/test/libcxx/time/time.zone/time.zone.timezone/time.zone.members/assert.to_sys_choose.pass.cpp
M libcxx/test/libcxx/vendor/apple/disable-availability.sh.cpp
M libcxx/test/std/containers/associative/multimap/incomplete_type.pass.cpp
M libcxx/test/std/containers/unord/unord.map/incomplete_type.pass.cpp
M libcxx/test/std/containers/unord/unord.multimap/incomplete.pass.cpp
M libcxx/test/std/experimental/simd/simd.class/simd_unary.pass.cpp
A libcxx/test/std/input.output/file.streams/fstreams/filebuf.virtuals/overflow.writefail.pass.cpp
M libcxx/test/std/input.output/iostream.format/output.streams/ostream.formatted/ostream.inserters.arithmetic/pointer.pass.cpp
M libcxx/test/std/input.output/iostream.format/output.streams/ostream.formatted/ostream.inserters.arithmetic/pointer.volatile.pass.cpp
M libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.array/sized_delete_array.pass.cpp
M libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.single/sized_delete.pass.cpp
M libcxx/test/std/language.support/support.dynamic/ptr.launder/launder.types.verify.cpp
M libcxx/test/std/numerics/c.math/signbit.pass.cpp
M libcxx/test/std/numerics/numeric.ops/numeric.ops.sat/add_sat.pass.cpp
M libcxx/test/std/numerics/numeric.ops/numeric.ops.sat/div_sat.pass.cpp
M libcxx/test/std/numerics/numeric.ops/numeric.ops.sat/mul_sat.pass.cpp
M libcxx/test/std/numerics/numeric.ops/numeric.ops.sat/saturate_cast.pass.cpp
M libcxx/test/std/numerics/numeric.ops/numeric.ops.sat/sub_sat.pass.cpp
M libcxx/test/std/ranges/range.adaptors/range.zip/iterator/increment.pass.cpp
M libcxx/test/std/ranges/range.utility/range.utility.conv/to_deduction.pass.cpp
M libcxx/test/std/utilities/meta/meta.unary/meta.unary.comp/is_bounded_array.pass.cpp
M libcxx/test/std/utilities/meta/meta.unary/meta.unary.prop/is_implicit_lifetime.pass.cpp
M libcxx/test/std/utilities/meta/meta.unary/meta.unary.prop/is_implicit_lifetime.verify.cpp
M libcxx/test/std/utilities/meta/meta.unary/meta.unary.prop/reference_constructs_from_temporary.pass.cpp
M libcxx/test/std/utilities/meta/meta.unary/meta.unary.prop/reference_converts_from_temporary.pass.cpp
M libcxx/test/std/utilities/optional/optional.comp_with_t/equal.pass.cpp
M libcxx/test/std/utilities/optional/optional.comp_with_t/greater.pass.cpp
M libcxx/test/std/utilities/optional/optional.comp_with_t/greater_equal.pass.cpp
M libcxx/test/std/utilities/optional/optional.comp_with_t/less_equal.pass.cpp
M libcxx/test/std/utilities/optional/optional.comp_with_t/less_than.pass.cpp
M libcxx/test/std/utilities/optional/optional.comp_with_t/not_equal.pass.cpp
M libcxx/test/std/utilities/optional/optional.relops/equal.pass.cpp
M libcxx/test/std/utilities/optional/optional.relops/greater_equal.pass.cpp
M libcxx/test/std/utilities/optional/optional.relops/greater_than.pass.cpp
M libcxx/test/std/utilities/optional/optional.relops/less_equal.pass.cpp
M libcxx/test/std/utilities/optional/optional.relops/less_than.pass.cpp
M libcxx/test/std/utilities/optional/optional.relops/not_equal.pass.cpp
M libcxx/test/std/utilities/utility/mem.res/mem.poly.allocator.class/mem.poly.allocator.mem/resource.pass.cpp
M libcxx/test/std/utilities/utility/mem.res/mem.poly.allocator.class/mem.poly.allocator.mem/select_on_container_copy_construction.pass.cpp
M libcxx/vendor/llvm/default_assertion_handler.in
M lld/ELF/Arch/Hexagon.cpp
M lld/ELF/Config.h
M lld/ELF/Driver.cpp
M lld/ELF/Target.h
M lld/docs/ReleaseNotes.rst
A lld/test/ELF/hexagon-attributes.s
A lldb/examples/python/filter_disasm.py
M lldb/examples/synthetic/gnu_libstdcpp.py
M lldb/include/lldb/API/SBDebugger.h
M lldb/include/lldb/Core/Debugger.h
M lldb/include/lldb/Core/Opcode.h
M lldb/include/lldb/Core/PluginManager.h
M lldb/include/lldb/Expression/DWARFExpressionList.h
M lldb/include/lldb/Host/HostThread.h
M lldb/include/lldb/Interpreter/CommandCompletions.h
M lldb/include/lldb/Target/Process.h
M lldb/include/lldb/Target/Target.h
M lldb/include/lldb/Utility/LLDBLog.h
M lldb/include/lldb/lldb-enumerations.h
M lldb/packages/Python/lldbsuite/test/lldbtest.py
M lldb/packages/Python/lldbsuite/test/make/Makefile.rules
M lldb/packages/Python/lldbsuite/test/tools/lldb-dap/dap_server.py
M lldb/packages/Python/lldbsuite/test/tools/lldb-dap/lldbdap_testcase.py
M lldb/source/Commands/CommandCompletions.cpp
M lldb/source/Commands/CommandObjectPlugin.cpp
M lldb/source/Core/Disassembler.cpp
M lldb/source/Core/FormatEntity.cpp
M lldb/source/Core/Opcode.cpp
M lldb/source/Core/PluginManager.cpp
M lldb/source/Expression/DWARFExpressionList.cpp
M lldb/source/Host/common/HostThread.cpp
M lldb/source/Plugins/Disassembler/LLVMC/DisassemblerLLVMC.cpp
M lldb/source/Plugins/ExpressionParser/Clang/ClangASTImporter.cpp
M lldb/source/Plugins/Language/CPlusPlus/CMakeLists.txt
M lldb/source/Plugins/Language/CPlusPlus/CPlusPlusLanguage.cpp
A lldb/source/Plugins/Language/CPlusPlus/GenericList.cpp
R lldb/source/Plugins/Language/CPlusPlus/LibCxxList.cpp
M lldb/source/Plugins/Language/CPlusPlus/LibStdcpp.cpp
M lldb/source/Plugins/Language/CPlusPlus/LibStdcpp.h
M lldb/source/Plugins/Language/CPlusPlus/MsvcStl.h
M lldb/source/Plugins/Language/CPlusPlus/MsvcStlSmartPointer.cpp
A lldb/source/Plugins/Language/CPlusPlus/MsvcStlTuple.cpp
A lldb/source/Plugins/Language/CPlusPlus/MsvcStlVector.cpp
M lldb/source/Plugins/Protocol/MCP/CMakeLists.txt
M lldb/source/Plugins/Protocol/MCP/MCPError.cpp
M lldb/source/Plugins/Protocol/MCP/MCPError.h
M lldb/source/Plugins/Protocol/MCP/Protocol.cpp
M lldb/source/Plugins/Protocol/MCP/Protocol.h
M lldb/source/Plugins/Protocol/MCP/ProtocolServerMCP.cpp
M lldb/source/Plugins/Protocol/MCP/ProtocolServerMCP.h
A lldb/source/Plugins/Protocol/MCP/Resource.cpp
A lldb/source/Plugins/Protocol/MCP/Resource.h
M lldb/source/Plugins/Protocol/MCP/Tool.cpp
M lldb/source/Plugins/Protocol/MCP/Tool.h
M lldb/source/Plugins/SymbolFile/DWARF/DWARFUnit.cpp
M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp
M lldb/source/Target/Process.cpp
M lldb/source/Target/StackFrameList.cpp
M lldb/source/Target/TargetProperties.td
M lldb/source/Utility/ArchSpec.cpp
M lldb/source/Utility/LLDBLog.cpp
M lldb/source/ValueObject/DILEval.cpp
M lldb/test/API/commands/frame/var-dil/basics/QualifiedId/TestFrameVarDILQualifiedId.py
M lldb/test/API/commands/frame/var-dil/basics/QualifiedId/main.cpp
M lldb/test/API/commands/plugin/TestPlugin.py
M lldb/test/API/functionalities/data-formatter/data-formatter-advanced/main.cpp
M lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic/forward_list/TestDataFormatterGenericForwardList.py
M lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic/list/TestDataFormatterGenericList.py
M lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic/list/loop/TestDataFormatterGenericListLoop.py
M lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic/list/loop/main.cpp
M lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic/tuple/TestDataFormatterStdTuple.py
M lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic/tuple/main.cpp
M lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic/unique_ptr/TestDataFormatterStdUniquePtr.py
M lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic/vbool/TestDataFormatterStdVBool.py
M lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic/vbool/main.cpp
M lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic/vector/TestDataFormatterStdVector.py
M lldb/test/API/functionalities/plugins/python_os_plugin/operating_system.py
A lldb/test/API/functionalities/plugins/python_os_plugin/os_plugin_in_dsym/Makefile
A lldb/test/API/functionalities/plugins/python_os_plugin/os_plugin_in_dsym/TestOSIndSYM.py
A lldb/test/API/functionalities/plugins/python_os_plugin/os_plugin_in_dsym/main.c
A lldb/test/API/functionalities/plugins/python_os_plugin/os_plugin_in_dsym/operating_system.py
M lldb/test/API/functionalities/process_save_core_minidump/TestProcessSaveCoreMinidump.py
M lldb/test/API/tools/lldb-dap/evaluate/TestDAP_evaluate.py
M lldb/test/API/tools/lldb-dap/variables/TestDAP_variables.py
A lldb/test/Shell/Commands/Inputs/dis_filt.py
A lldb/test/Shell/Commands/command-disassemble-riscv32-bytes.s
A lldb/test/Shell/Commands/command-disassemble-x86-bytes.s
A lldb/test/Shell/Settings/TestCxxFrameFormatEmpty.test
M lldb/test/Shell/SymbolFile/DWARF/TestDedupWarnings.test
M lldb/tools/lldb-dap/Handler/DisassembleRequestHandler.cpp
M lldb/tools/lldb-dap/Handler/ReadMemoryRequestHandler.cpp
M lldb/tools/lldb-dap/Handler/SetVariableRequestHandler.cpp
M lldb/tools/lldb-dap/Handler/WriteMemoryRequestHandler.cpp
M lldb/tools/lldb-dap/Protocol/ProtocolRequests.cpp
M lldb/tools/lldb-dap/Protocol/ProtocolRequests.h
M lldb/tools/lldb-dap/Protocol/ProtocolTypes.cpp
M lldb/unittests/DAP/ProtocolTypesTest.cpp
M lldb/unittests/Disassembler/RISCV/TestMCDisasmInstanceRISCV.cpp
M lldb/unittests/Protocol/ProtocolMCPServerTest.cpp
M lldb/unittests/Protocol/ProtocolMCPTest.cpp
M lldb/unittests/SymbolFile/DWARF/DWARF64UnitTest.cpp
M llvm/Maintainers.md
A llvm/clang/test/Modules/implicit-opt-level.c
M llvm/cmake/config-ix.cmake
M llvm/cmake/modules/TableGen.cmake
M llvm/docs/HowToSubmitABug.rst
M llvm/docs/HowToUpdateDebugInfo.rst
A llvm/docs/KeyInstructionsDebugInfo.md
M llvm/docs/LangRef.rst
M llvm/docs/RISCVUsage.rst
M llvm/docs/ReleaseNotes.md
M llvm/docs/UserGuides.rst
M llvm/include/llvm-c/DebugInfo.h
M llvm/include/llvm-c/blake3.h
M llvm/include/llvm/ADT/Hashing.h
M llvm/include/llvm/ADT/SmallVector.h
M llvm/include/llvm/ADT/StringTable.h
M llvm/include/llvm/Analysis/AssumeBundleQueries.h
M llvm/include/llvm/Analysis/FunctionPropertiesAnalysis.h
M llvm/include/llvm/Analysis/IR2Vec.h
M llvm/include/llvm/Analysis/LoopAccessAnalysis.h
M llvm/include/llvm/Analysis/VectorUtils.h
M llvm/include/llvm/BinaryFormat/ELF.h
M llvm/include/llvm/BinaryFormat/MinidumpConstants.def
A llvm/include/llvm/BinaryFormat/SFrame.h
M llvm/include/llvm/CodeGen/AtomicExpandUtils.h
M llvm/include/llvm/CodeGen/BasicTTIImpl.h
M llvm/include/llvm/CodeGen/GlobalISel/CombinerHelper.h
M llvm/include/llvm/CodeGen/GlobalISel/MachineIRBuilder.h
M llvm/include/llvm/CodeGen/PostRAMachineSink.h
A llvm/include/llvm/CodeGen/ProcessImplicitDefs.h
M llvm/include/llvm/CodeGen/TargetLowering.h
M llvm/include/llvm/CodeGen/TargetRegisterInfo.h
M llvm/include/llvm/CodeGen/VirtRegMap.h
M llvm/include/llvm/DWARFCFIChecker/DWARFCFIAnalysis.h
M llvm/include/llvm/DWARFCFIChecker/DWARFCFIFunctionFrameAnalyzer.h
M llvm/include/llvm/DWARFCFIChecker/DWARFCFIFunctionFrameStreamer.h
M llvm/include/llvm/DWARFCFIChecker/DWARFCFIState.h
M llvm/include/llvm/Frontend/HLSL/RootSignatureValidations.h
M llvm/include/llvm/Frontend/OpenMP/ConstructDecompositionT.h
M llvm/include/llvm/Frontend/OpenMP/OMP.h
M llvm/include/llvm/Frontend/OpenMP/OMPIRBuilder.h
M llvm/include/llvm/IR/Instruction.h
M llvm/include/llvm/IR/IntrinsicInst.h
M llvm/include/llvm/IR/IntrinsicsAMDGPU.td
M llvm/include/llvm/IR/PatternMatch.h
M llvm/include/llvm/IR/RuntimeLibcalls.h
M llvm/include/llvm/IR/RuntimeLibcalls.td
M llvm/include/llvm/InitializePasses.h
M llvm/include/llvm/MC/MCAsmBackend.h
M llvm/include/llvm/MC/MCAssembler.h
M llvm/include/llvm/MC/MCCodeView.h
M llvm/include/llvm/MC/MCContext.h
M llvm/include/llvm/MC/MCELFStreamer.h
M llvm/include/llvm/MC/MCFixup.h
M llvm/include/llvm/MC/MCObjectStreamer.h
M llvm/include/llvm/MC/MCSection.h
M llvm/include/llvm/MC/MCStreamer.h
M llvm/include/llvm/MC/MCWasmStreamer.h
M llvm/include/llvm/Object/ELFTypes.h
M llvm/include/llvm/Passes/CodeGenPassBuilder.h
M llvm/include/llvm/Passes/MachinePassRegistry.def
M llvm/include/llvm/Support/TargetOpcodes.def
M llvm/include/llvm/TableGen/StringToOffsetTable.h
M llvm/include/llvm/Target/GenericOpcodes.td
M llvm/include/llvm/Target/GlobalISel/Combine.td
M llvm/include/llvm/Target/RegisterTargetPassConfigCallback.h
M llvm/include/llvm/Target/TargetLoweringObjectFile.h
M llvm/include/llvm/Target/TargetSelectionDAG.td
M llvm/include/llvm/TargetParser/Triple.h
M llvm/include/llvm/Transforms/Utils/Local.h
M llvm/include/llvm/Transforms/Utils/LockstepReverseIterator.h
M llvm/include/llvm/Transforms/Utils/MemoryTaggingSupport.h
M llvm/include/module.modulemap
M llvm/lib/Analysis/AssumeBundleQueries.cpp
M llvm/lib/Analysis/CallGraph.cpp
M llvm/lib/Analysis/ConstantFolding.cpp
M llvm/lib/Analysis/FunctionPropertiesAnalysis.cpp
M llvm/lib/Analysis/IR2Vec.cpp
M llvm/lib/Analysis/Loads.cpp
M llvm/lib/Analysis/LoopAccessAnalysis.cpp
M llvm/lib/Analysis/LoopInfo.cpp
M llvm/lib/Analysis/MemoryDependenceAnalysis.cpp
M llvm/lib/Analysis/ScalarEvolution.cpp
M llvm/lib/Analysis/TargetLibraryInfo.cpp
M llvm/lib/Analysis/UniformityAnalysis.cpp
M llvm/lib/Analysis/VectorUtils.cpp
M llvm/lib/Analysis/models/seedEmbeddingVocab75D.json
M llvm/lib/CodeGen/AsmPrinter/CodeViewDebug.cpp
M llvm/lib/CodeGen/AsmPrinter/EHStreamer.cpp
M llvm/lib/CodeGen/CodeGen.cpp
M llvm/lib/CodeGen/CodeGenPrepare.cpp
M llvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp
M llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
M llvm/lib/CodeGen/InterleavedAccessPass.cpp
M llvm/lib/CodeGen/MachineSink.cpp
M llvm/lib/CodeGen/ProcessImplicitDefs.cpp
M llvm/lib/CodeGen/RegAllocEvictionAdvisor.cpp
M llvm/lib/CodeGen/SafeStack.cpp
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
M llvm/lib/CodeGen/SelectionDAG/InstrEmitter.cpp
M llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
M llvm/lib/CodeGen/StackProtector.cpp
M llvm/lib/CodeGen/TargetInstrInfo.cpp
M llvm/lib/CodeGen/TargetLoweringBase.cpp
M llvm/lib/CodeGen/TargetLoweringObjectFileImpl.cpp
M llvm/lib/CodeGen/VirtRegMap.cpp
M llvm/lib/DWARFCFIChecker/Registers.h
M llvm/lib/DebugInfo/DWARF/LowLevel/DWARFCFIProgram.cpp
M llvm/lib/Frontend/HLSL/RootSignatureValidations.cpp
M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
M llvm/lib/IR/DebugInfo.cpp
M llvm/lib/IR/Instruction.cpp
M llvm/lib/IR/Instructions.cpp
M llvm/lib/IR/Intrinsics.cpp
M llvm/lib/IR/LegacyPassManager.cpp
M llvm/lib/IR/RuntimeLibcalls.cpp
M llvm/lib/IR/Verifier.cpp
M llvm/lib/MC/MCAsmBackend.cpp
M llvm/lib/MC/MCAsmStreamer.cpp
M llvm/lib/MC/MCAssembler.cpp
M llvm/lib/MC/MCCodeView.cpp
M llvm/lib/MC/MCContext.cpp
M llvm/lib/MC/MCELFStreamer.cpp
M llvm/lib/MC/MCExpr.cpp
M llvm/lib/MC/MCFragment.cpp
M llvm/lib/MC/MCMachOStreamer.cpp
M llvm/lib/MC/MCObjectStreamer.cpp
M llvm/lib/MC/MCParser/AsmParser.cpp
M llvm/lib/MC/MCSection.cpp
M llvm/lib/MC/MCStreamer.cpp
M llvm/lib/MC/MCSymbol.cpp
M llvm/lib/MC/MCWasmStreamer.cpp
M llvm/lib/MC/MCWin64EH.cpp
M llvm/lib/MC/MCWinCOFFStreamer.cpp
M llvm/lib/MC/MCXCOFFStreamer.cpp
M llvm/lib/MC/MachObjectWriter.cpp
M llvm/lib/MC/WasmObjectWriter.cpp
M llvm/lib/MC/WinCOFFObjectWriter.cpp
M llvm/lib/Object/DXContainer.cpp
M llvm/lib/Object/ELF.cpp
M llvm/lib/Object/ELFObjectFile.cpp
M llvm/lib/ObjectYAML/ELFYAML.cpp
M llvm/lib/Passes/PassBuilder.cpp
M llvm/lib/Passes/PassRegistry.def
M llvm/lib/ProfileData/SampleProfReader.cpp
M llvm/lib/Support/BLAKE3/README.md
M llvm/lib/Support/BLAKE3/blake3.c
M llvm/lib/Support/BLAKE3/blake3_avx2.c
M llvm/lib/Support/BLAKE3/blake3_avx2_x86-64_windows_gnu.S
M llvm/lib/Support/BLAKE3/blake3_avx512.c
M llvm/lib/Support/BLAKE3/blake3_avx512_x86-64_unix.S
M llvm/lib/Support/BLAKE3/blake3_avx512_x86-64_windows_gnu.S
M llvm/lib/Support/BLAKE3/blake3_dispatch.c
M llvm/lib/Support/BLAKE3/blake3_impl.h
M llvm/lib/Support/BLAKE3/blake3_neon.c
M llvm/lib/Support/BLAKE3/blake3_sse2.c
M llvm/lib/Support/BLAKE3/blake3_sse2_x86-64_windows_gnu.S
M llvm/lib/Support/BLAKE3/blake3_sse41.c
M llvm/lib/Support/BLAKE3/blake3_sse41_x86-64_windows_gnu.S
M llvm/lib/Support/BLAKE3/llvm_blake3_prefix.h
M llvm/lib/Support/raw_socket_stream.cpp
M llvm/lib/Support/rpmalloc/rpmalloc.c
M llvm/lib/TableGen/StringToOffsetTable.cpp
M llvm/lib/Target/AArch64/AArch64ExpandPseudoInsts.cpp
M llvm/lib/Target/AArch64/AArch64FalkorHWPFFix.cpp
M llvm/lib/Target/AArch64/AArch64Features.td
M llvm/lib/Target/AArch64/AArch64FrameLowering.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.h
M llvm/lib/Target/AArch64/AArch64InstrInfo.cpp
M llvm/lib/Target/AArch64/AArch64InstrInfo.td
M llvm/lib/Target/AArch64/AArch64LoadStoreOptimizer.cpp
M llvm/lib/Target/AArch64/AArch64Processors.td
M llvm/lib/Target/AArch64/AArch64RegisterInfo.cpp
M llvm/lib/Target/AArch64/AArch64RegisterInfo.h
M llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td
M llvm/lib/Target/AArch64/AArch64SchedNeoverseV2.td
M llvm/lib/Target/AArch64/AArch64StorePairSuppress.cpp
M llvm/lib/Target/AArch64/AArch64Subtarget.cpp
M llvm/lib/Target/AArch64/AArch64SystemOperands.td
M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.h
M llvm/lib/Target/AArch64/MCTargetDesc/AArch64AsmBackend.cpp
M llvm/lib/Target/AArch64/MCTargetDesc/AArch64ELFObjectWriter.cpp
M llvm/lib/Target/AArch64/MCTargetDesc/AArch64ELFStreamer.cpp
M llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCTargetDesc.cpp
M llvm/lib/Target/AArch64/MCTargetDesc/AArch64MachObjectWriter.cpp
M llvm/lib/Target/AMDGPU/AMDGPU.td
M llvm/lib/Target/AMDGPU/AMDGPUAttributor.cpp
M llvm/lib/Target/AMDGPU/AMDGPUCodeGenPrepare.cpp
M llvm/lib/Target/AMDGPU/AMDGPUGISel.td
M llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp
M llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.h
M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp
M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.h
M llvm/lib/Target/AMDGPU/AMDGPUInstCombineIntrinsic.cpp
M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.h
M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
M llvm/lib/Target/AMDGPU/AMDGPUMCInstLower.cpp
M llvm/lib/Target/AMDGPU/AMDGPUPassRegistry.def
M llvm/lib/Target/AMDGPU/AMDGPUPrintfRuntimeBinding.cpp
M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeHelper.cpp
M llvm/lib/Target/AMDGPU/AMDGPURegisterBankInfo.cpp
M llvm/lib/Target/AMDGPU/AMDGPUSearchableTables.td
M llvm/lib/Target/AMDGPU/AMDGPUSubtarget.h
M llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
M llvm/lib/Target/AMDGPU/Disassembler/AMDGPUDisassembler.cpp
M llvm/lib/Target/AMDGPU/Disassembler/AMDGPUDisassembler.h
M llvm/lib/Target/AMDGPU/GCNProcessors.td
M llvm/lib/Target/AMDGPU/GCNSubtarget.h
M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUAsmBackend.cpp
M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUELFObjectWriter.cpp
M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUInstPrinter.cpp
M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUInstPrinter.h
M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCAsmInfo.cpp
M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCCodeEmitter.cpp
M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCExpr.h
M llvm/lib/Target/AMDGPU/SIDefines.h
M llvm/lib/Target/AMDGPU/SIFoldOperands.cpp
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
M llvm/lib/Target/AMDGPU/SIInstrInfo.h
M llvm/lib/Target/AMDGPU/SIInstrInfo.td
M llvm/lib/Target/AMDGPU/SIInstructions.td
M llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.cpp
M llvm/lib/Target/AMDGPU/SIRegisterInfo.td
M llvm/lib/Target/AMDGPU/SISchedule.td
M llvm/lib/Target/AMDGPU/SIShrinkInstructions.cpp
M llvm/lib/Target/AMDGPU/SOPInstructions.td
M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp
M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.h
M llvm/lib/Target/AMDGPU/VOP1Instructions.td
M llvm/lib/Target/AMDGPU/VOP2Instructions.td
M llvm/lib/Target/AMDGPU/VOP3PInstructions.td
M llvm/lib/Target/AMDGPU/VOPInstructions.td
M llvm/lib/Target/ARM/ARMAsmPrinter.cpp
M llvm/lib/Target/ARM/ARMExpandPseudoInsts.cpp
M llvm/lib/Target/ARM/ARMFastISel.cpp
M llvm/lib/Target/ARM/ARMFeatures.td
M llvm/lib/Target/ARM/ARMFrameLowering.cpp
M llvm/lib/Target/ARM/ARMISelLowering.cpp
M llvm/lib/Target/ARM/ARMInstrInfo.td
M llvm/lib/Target/ARM/ARMLowOverheadLoops.cpp
M llvm/lib/Target/ARM/ARMPredicates.td
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/ARMTargetObjectFile.cpp
M llvm/lib/Target/ARM/ARMTargetTransformInfo.cpp
M llvm/lib/Target/ARM/ARMTargetTransformInfo.h
M llvm/lib/Target/ARM/Disassembler/ARMDisassembler.cpp
M llvm/lib/Target/ARM/MCTargetDesc/ARMAsmBackend.cpp
M llvm/lib/Target/ARM/MCTargetDesc/ARMAsmBackend.h
M llvm/lib/Target/ARM/MCTargetDesc/ARMELFObjectWriter.cpp
M llvm/lib/Target/ARM/MCTargetDesc/ARMELFStreamer.cpp
M llvm/lib/Target/ARM/MCTargetDesc/ARMMCTargetDesc.cpp
M llvm/lib/Target/ARM/MCTargetDesc/ARMMachObjectWriter.cpp
M llvm/lib/Target/AVR/AVRExpandPseudoInsts.cpp
M llvm/lib/Target/AVR/README.md
M llvm/lib/Target/BPF/MCTargetDesc/BPFAsmBackend.cpp
M llvm/lib/Target/CSKY/MCTargetDesc/CSKYAsmBackend.cpp
M llvm/lib/Target/CSKY/MCTargetDesc/CSKYAsmBackend.h
M llvm/lib/Target/CSKY/MCTargetDesc/CSKYELFObjectWriter.cpp
M llvm/lib/Target/DirectX/DXILDataScalarization.cpp
M llvm/lib/Target/DirectX/DXILFlattenArrays.cpp
M llvm/lib/Target/DirectX/DXILLegalizePass.cpp
M llvm/lib/Target/DirectX/DXILPrepare.cpp
M llvm/lib/Target/DirectX/DXILShaderFlags.cpp
M llvm/lib/Target/DirectX/DXILWriter/DXILBitcodeWriter.cpp
M llvm/lib/Target/DirectX/DirectXTargetMachine.cpp
M llvm/lib/Target/Hexagon/HexagonConstPropagation.cpp
M llvm/lib/Target/Hexagon/HexagonISelLowering.cpp
M llvm/lib/Target/Hexagon/HexagonISelLowering.h
M llvm/lib/Target/Hexagon/HexagonISelLoweringHVX.cpp
M llvm/lib/Target/Hexagon/HexagonPatterns.td
M llvm/lib/Target/Hexagon/HexagonPatternsHVX.td
M llvm/lib/Target/Hexagon/MCTargetDesc/HexagonAsmBackend.cpp
M llvm/lib/Target/Hexagon/MCTargetDesc/HexagonELFObjectWriter.cpp
M llvm/lib/Target/Lanai/LanaiFrameLowering.cpp
M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchAsmBackend.cpp
M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchAsmBackend.h
M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchELFObjectWriter.cpp
M llvm/lib/Target/MSP430/MCTargetDesc/MSP430ELFObjectWriter.cpp
M llvm/lib/Target/Mips/MCTargetDesc/CMakeLists.txt
M llvm/lib/Target/Mips/MCTargetDesc/MipsELFObjectWriter.cpp
R llvm/lib/Target/Mips/MCTargetDesc/MipsMCNaCl.h
M llvm/lib/Target/Mips/MCTargetDesc/MipsMCTargetDesc.cpp
R llvm/lib/Target/Mips/MCTargetDesc/MipsNaClELFStreamer.cpp
M llvm/lib/Target/Mips/MCTargetDesc/MipsTargetStreamer.cpp
M llvm/lib/Target/Mips/MicroMipsSizeReduction.cpp
M llvm/lib/Target/Mips/MipsAsmPrinter.cpp
M llvm/lib/Target/Mips/MipsAsmPrinter.h
M llvm/lib/Target/Mips/MipsBranchExpansion.cpp
M llvm/lib/Target/Mips/MipsCallingConv.td
M llvm/lib/Target/Mips/MipsDelaySlotFiller.cpp
M llvm/lib/Target/Mips/MipsInstrFPU.td
M llvm/lib/Target/Mips/MipsInstrInfo.td
M llvm/lib/Target/Mips/MipsRegisterInfo.cpp
M llvm/lib/Target/Mips/MipsSEFrameLowering.cpp
M llvm/lib/Target/Mips/MipsSubtarget.h
M llvm/lib/Target/NVPTX/MCTargetDesc/NVPTXInstPrinter.cpp
M llvm/lib/Target/NVPTX/MCTargetDesc/NVPTXInstPrinter.h
M llvm/lib/Target/NVPTX/NVPTX.h
M llvm/lib/Target/NVPTX/NVPTXISelDAGToDAG.cpp
M llvm/lib/Target/NVPTX/NVPTXISelDAGToDAG.h
M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
M llvm/lib/Target/NVPTX/NVPTXISelLowering.h
M llvm/lib/Target/NVPTX/NVPTXInstrInfo.td
M llvm/lib/Target/NVPTX/NVPTXIntrinsics.td
M llvm/lib/Target/NVPTX/NVPTXRegisterInfo.td
M llvm/lib/Target/NVPTX/NVPTXSubtarget.h
M llvm/lib/Target/NVPTX/NVPTXTargetTransformInfo.h
M llvm/lib/Target/NVPTX/NVPTXUtilities.h
M llvm/lib/Target/PowerPC/MCTargetDesc/PPCELFObjectWriter.cpp
M llvm/lib/Target/PowerPC/MCTargetDesc/PPCELFStreamer.cpp
M llvm/lib/Target/PowerPC/PPCAsmPrinter.cpp
M llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
M llvm/lib/Target/RISCV/CMakeLists.txt
M llvm/lib/Target/RISCV/Disassembler/RISCVDisassembler.cpp
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVAsmBackend.cpp
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVAsmBackend.h
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/RISCVFeatures.td
M llvm/lib/Target/RISCV/RISCVFrameLowering.cpp
M llvm/lib/Target/RISCV/RISCVFrameLowering.h
M llvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/lib/Target/RISCV/RISCVISelLowering.h
M llvm/lib/Target/RISCV/RISCVInstrFormats.td
M llvm/lib/Target/RISCV/RISCVInstrInfo.cpp
M llvm/lib/Target/RISCV/RISCVInstrInfo.td
M llvm/lib/Target/RISCV/RISCVInstrInfoP.td
M llvm/lib/Target/RISCV/RISCVInstrInfoXAndes.td
M llvm/lib/Target/RISCV/RISCVInstrInfoXqci.td
M llvm/lib/Target/RISCV/RISCVInstrInfoZicbo.td
A llvm/lib/Target/RISCV/RISCVInterleavedAccess.cpp
M llvm/lib/Target/RISCV/RISCVOptWInstrs.cpp
M llvm/lib/Target/RISCV/RISCVSchedAndes45.td
M llvm/lib/Target/RISCV/RISCVVLOptimizer.cpp
M llvm/lib/Target/RISCV/RISCVVectorMaskDAGMutation.cpp
M llvm/lib/Target/RISCV/RISCVVectorPeephole.cpp
M llvm/lib/Target/SPIRV/MCTargetDesc/SPIRVInstPrinter.cpp
M llvm/lib/Target/Sparc/MCTargetDesc/SparcELFObjectWriter.cpp
M llvm/lib/Target/Sparc/MCTargetDesc/SparcMCCodeEmitter.cpp
M llvm/lib/Target/Sparc/Sparc.td
M llvm/lib/Target/Sparc/SparcISelLowering.cpp
A llvm/lib/Target/Sparc/SparcInstrCrypto.td
M llvm/lib/Target/Sparc/SparcInstrInfo.td
M llvm/lib/Target/Sparc/SparcTargetObjectFile.cpp
M llvm/lib/Target/SystemZ/Disassembler/SystemZDisassembler.cpp
M llvm/lib/Target/SystemZ/MCTargetDesc/SystemZHLASMAsmStreamer.cpp
M llvm/lib/Target/SystemZ/MCTargetDesc/SystemZHLASMAsmStreamer.h
M llvm/lib/Target/SystemZ/SystemZFrameLowering.cpp
M llvm/lib/Target/TargetLoweringObjectFile.cpp
M llvm/lib/Target/VE/MCTargetDesc/VEAsmBackend.cpp
M llvm/lib/Target/VE/MCTargetDesc/VEELFObjectWriter.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyInstrSIMD.td
M llvm/lib/Target/WebAssembly/WebAssemblyLowerEmscriptenEHSjLj.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp
M llvm/lib/Target/X86/GISel/X86LegalizerInfo.cpp
M llvm/lib/Target/X86/GISel/X86LegalizerInfo.h
M llvm/lib/Target/X86/MCTargetDesc/X86ATTInstPrinter.cpp
M llvm/lib/Target/X86/MCTargetDesc/X86ATTInstPrinter.h
M llvm/lib/Target/X86/MCTargetDesc/X86AsmBackend.cpp
M llvm/lib/Target/X86/MCTargetDesc/X86InstPrinterCommon.cpp
M llvm/lib/Target/X86/MCTargetDesc/X86InstPrinterCommon.h
M llvm/lib/Target/X86/MCTargetDesc/X86MachObjectWriter.cpp
M llvm/lib/Target/X86/X86.td
M llvm/lib/Target/X86/X86CallFrameOptimization.cpp
M llvm/lib/Target/X86/X86ExpandPseudo.cpp
M llvm/lib/Target/X86/X86FrameLowering.cpp
M llvm/lib/Target/X86/X86ISelDAGToDAG.cpp
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/lib/Target/X86/X86InstrGISel.td
M llvm/lib/Target/X86/X86InstrPredicates.td
M llvm/lib/Target/X86/X86Subtarget.cpp
M llvm/lib/Target/X86/X86Subtarget.h
M llvm/lib/Target/X86/X86TargetMachine.cpp
M llvm/lib/Target/X86/X86WinEHState.cpp
M llvm/lib/Target/Xtensa/MCTargetDesc/XtensaAsmBackend.cpp
M llvm/lib/TargetParser/ARMTargetParser.cpp
M llvm/lib/TargetParser/TargetParser.cpp
M llvm/lib/TargetParser/Triple.cpp
M llvm/lib/TargetParser/X86TargetParser.cpp
M llvm/lib/TextAPI/TextStubV5.cpp
M llvm/lib/Transforms/Coroutines/CoroSplit.cpp
M llvm/lib/Transforms/IPO/Attributor.cpp
M llvm/lib/Transforms/IPO/AttributorAttributes.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/MemProfContextDisambiguation.cpp
M llvm/lib/Transforms/IPO/OpenMPOpt.cpp
M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
M llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
M llvm/lib/Transforms/InstCombine/InstCombineInternal.h
M llvm/lib/Transforms/InstCombine/InstCombineLoadStoreAlloca.cpp
M llvm/lib/Transforms/InstCombine/InstCombineVectorOps.cpp
M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
M llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
M llvm/lib/Transforms/Instrumentation/GCOVProfiling.cpp
M llvm/lib/Transforms/Instrumentation/HWAddressSanitizer.cpp
M llvm/lib/Transforms/Instrumentation/MemorySanitizer.cpp
M llvm/lib/Transforms/Instrumentation/ValueProfilePlugins.inc
M llvm/lib/Transforms/Scalar/GVN.cpp
M llvm/lib/Transforms/Scalar/GVNSink.cpp
M llvm/lib/Transforms/Scalar/LoopInterchange.cpp
M llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp
M llvm/lib/Transforms/Scalar/LoopUnrollPass.cpp
M llvm/lib/Transforms/Scalar/MemCpyOptimizer.cpp
M llvm/lib/Transforms/Scalar/SROA.cpp
M llvm/lib/Transforms/Scalar/SimplifyCFGPass.cpp
M llvm/lib/Transforms/Scalar/SpeculativeExecution.cpp
M llvm/lib/Transforms/Utils/CloneFunction.cpp
M llvm/lib/Transforms/Utils/Local.cpp
M llvm/lib/Transforms/Utils/MemoryTaggingSupport.cpp
M llvm/lib/Transforms/Utils/PromoteMemoryToRegister.cpp
M llvm/lib/Transforms/Utils/ScalarEvolutionExpander.cpp
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/lib/Transforms/Vectorize/VPlan.h
M llvm/lib/Transforms/Vectorize/VPlanAnalysis.cpp
M llvm/lib/Transforms/Vectorize/VPlanConstruction.cpp
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/lib/Transforms/Vectorize/VPlanTransforms.h
M llvm/test/Analysis/CostModel/AArch64/arith-overflow.ll
M llvm/test/Analysis/CostModel/AArch64/cmp.ll
M llvm/test/Analysis/CostModel/AArch64/fcmp.ll
M llvm/test/Analysis/CostModel/AArch64/fshl.ll
M llvm/test/Analysis/CostModel/AArch64/fshr.ll
M llvm/test/Analysis/CostModel/AArch64/reduce-add.ll
M llvm/test/Analysis/CostModel/AArch64/reduce-and.ll
M llvm/test/Analysis/CostModel/AArch64/reduce-or.ll
M llvm/test/Analysis/CostModel/AArch64/reduce-xor.ll
M llvm/test/Analysis/CostModel/AArch64/shuffle-other.ll
M llvm/test/Analysis/CostModel/AArch64/shuffle-select.ll
M llvm/test/Analysis/CostModel/AArch64/sve-cmpsel.ll
M llvm/test/Analysis/CostModel/AArch64/sve-div.ll
M llvm/test/Analysis/CostModel/AArch64/sve-fcmp.ll
M llvm/test/Analysis/CostModel/AArch64/sve-intrinsics.ll
M llvm/test/Analysis/CostModel/AArch64/vector-select.ll
M llvm/test/Analysis/CostModel/AMDGPU/reduce-and.ll
M llvm/test/Analysis/CostModel/AMDGPU/reduce-or.ll
M llvm/test/Analysis/CostModel/ARM/arith-overflow.ll
M llvm/test/Analysis/CostModel/ARM/arith-ssat.ll
M llvm/test/Analysis/CostModel/ARM/arith-usat.ll
M llvm/test/Analysis/CostModel/ARM/cmps.ll
M llvm/test/Analysis/CostModel/ARM/intrinsic-cost-kinds.ll
M llvm/test/Analysis/CostModel/ARM/mve-abs.ll
M llvm/test/Analysis/CostModel/ARM/mve-minmax.ll
M llvm/test/Analysis/CostModel/ARM/select.ll
M llvm/test/Analysis/DependenceAnalysis/FlipFlopBaseAddress.ll
M llvm/test/Analysis/IR2Vec/Inputs/dummy_2D_vocab.json
A llvm/test/Analysis/IR2Vec/Inputs/dummy_3D_nonzero_arg_vocab.json
A llvm/test/Analysis/IR2Vec/Inputs/dummy_3D_nonzero_opc_vocab.json
A llvm/test/Analysis/IR2Vec/Inputs/dummy_3D_nonzero_type_vocab.json
A llvm/test/Analysis/IR2Vec/Inputs/reference_default_vocab_print.txt
A llvm/test/Analysis/IR2Vec/Inputs/reference_wtd1_vocab_print.txt
A llvm/test/Analysis/IR2Vec/Inputs/reference_wtd2_vocab_print.txt
M llvm/test/Analysis/IR2Vec/basic.ll
M llvm/test/Analysis/IR2Vec/dbg-inst.ll
M llvm/test/Analysis/IR2Vec/if-else.ll
M llvm/test/Analysis/IR2Vec/unreachable.ll
M llvm/test/Analysis/IR2Vec/vocab-test.ll
A llvm/test/Analysis/LoopAccessAnalysis/accesses-completely-before-or-after.ll
M llvm/test/Analysis/LoopAccessAnalysis/depend_diff_types.ll
M llvm/test/Analysis/LoopAccessAnalysis/different_strides.ll
M llvm/test/Analysis/LoopAccessAnalysis/non-constant-strides-backward.ll
M llvm/test/Analysis/UniformityAnalysis/AMDGPU/intrinsics.ll
M llvm/test/Bindings/llvm-c/debug_info_new_format.ll
M llvm/test/CodeGen/AArch64/GlobalISel/combine-sdiv.mir
M llvm/test/CodeGen/AArch64/GlobalISel/legalizer-info-validation.mir
M llvm/test/CodeGen/AArch64/active_lane_mask.ll
M llvm/test/CodeGen/AArch64/arm64-neon-mul-div-cte.ll
M llvm/test/CodeGen/AArch64/arm64-vector-insertion.ll
M llvm/test/CodeGen/AArch64/arm64-zip.ll
M llvm/test/CodeGen/AArch64/combine-mul.ll
A llvm/test/CodeGen/AArch64/combine-sdiv.ll
M llvm/test/CodeGen/AArch64/fast-isel-cmp-vec.ll
M llvm/test/CodeGen/AArch64/fsincos.ll
M llvm/test/CodeGen/AArch64/llvm.frexp.ll
M llvm/test/CodeGen/AArch64/llvm.sincos.ll
M llvm/test/CodeGen/AArch64/load-combine.ll
A llvm/test/CodeGen/AArch64/pr148949.ll
A llvm/test/CodeGen/AArch64/saturating-vec-smull.ll
M llvm/test/CodeGen/AArch64/select_const.ll
M llvm/test/CodeGen/AArch64/sign-return-address.ll
M llvm/test/CodeGen/AArch64/spill-fold.mir
M llvm/test/CodeGen/AArch64/spillfill-sve.mir
M llvm/test/CodeGen/AArch64/sve-pseudos-expand-undef.mir
A llvm/test/CodeGen/AArch64/unsupported-object-format-err.ll
M llvm/test/CodeGen/AArch64/vecreduce-fadd.ll
M llvm/test/CodeGen/AArch64/zext-to-tbl.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/andn2.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-fold-binop-into-select.mir
A llvm/test/CodeGen/AMDGPU/GlobalISel/known-bits-sbfe.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/orn2.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/sdiv.i32.ll
R llvm/test/CodeGen/AMDGPU/amdgpu-codegenprepare-i16-to-i32.ll
A llvm/test/CodeGen/AMDGPU/branch-relaxation-gfx1250.ll
A llvm/test/CodeGen/AMDGPU/bug-multi-operands-to-update-after-fold.mir
M llvm/test/CodeGen/AMDGPU/code-size-estimate.ll
M llvm/test/CodeGen/AMDGPU/copy_phys_vgpr64.mir
M llvm/test/CodeGen/AMDGPU/fma.f64.ll
A llvm/test/CodeGen/AMDGPU/fold-commute-sgpr.mir
M llvm/test/CodeGen/AMDGPU/gds-atomic.ll
A llvm/test/CodeGen/AMDGPU/global-address.ll
M llvm/test/CodeGen/AMDGPU/global-load-xcnt.ll
M llvm/test/CodeGen/AMDGPU/inflate-reg-class-vgpr-mfma-to-av-with-load-source.mir
M llvm/test/CodeGen/AMDGPU/inflate-reg-class-vgpr-mfma-to-av.mir
A llvm/test/CodeGen/AMDGPU/literal64.ll
M llvm/test/CodeGen/AMDGPU/llc-pipeline-npm.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.ds.ordered.add.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.ds.ordered.swap.ll
A llvm/test/CodeGen/AMDGPU/llvm.amdgcn.rcp.bf16.ll
A llvm/test/CodeGen/AMDGPU/llvm.amdgcn.s.wait.gfx1250.ll
A llvm/test/CodeGen/AMDGPU/llvm.amdgcn.sqrt.bf16.ll
A llvm/test/CodeGen/AMDGPU/llvm.amdgcn.tanh.ll
A llvm/test/CodeGen/AMDGPU/llvm.amdgcn.wmma.gfx1250.w32.ll
A llvm/test/CodeGen/AMDGPU/llvm.amdgcn.wmma.imm.gfx1250.w32.ll
A llvm/test/CodeGen/AMDGPU/llvm.amdgcn.wmma.imod.gfx1250.w32.ll
A llvm/test/CodeGen/AMDGPU/llvm.amdgcn.wmma.index.gfx1250.w32.ll
A llvm/test/CodeGen/AMDGPU/llvm.sqrt.bf16.ll
A llvm/test/CodeGen/AMDGPU/merge-tbuffer-gfx10.mir
A llvm/test/CodeGen/AMDGPU/merge-tbuffer-gfx11.mir
A llvm/test/CodeGen/AMDGPU/merge-tbuffer-gfx9.mir
R llvm/test/CodeGen/AMDGPU/merge-tbuffer.mir
M llvm/test/CodeGen/AMDGPU/opencl-printf.ll
M llvm/test/CodeGen/AMDGPU/peephole-fold-imm.mir
A llvm/test/CodeGen/AMDGPU/shrink-fma-f64.mir
M llvm/test/CodeGen/AMDGPU/twoaddr-fma-f64.mir
M llvm/test/CodeGen/AMDGPU/v_mov_b64_expansion.mir
M llvm/test/CodeGen/ARM/fast-isel-align.ll
M llvm/test/CodeGen/ARM/fp16-promote.ll
M llvm/test/CodeGen/ARM/llvm.frexp.ll
A llvm/test/CodeGen/ARM/stack-protector-target.ll
M llvm/test/CodeGen/ARM/struct_byval.ll
M llvm/test/CodeGen/ARM/trap.ll
R llvm/test/CodeGen/ARM/varargs-spill-stack-align-nacl.ll
A llvm/test/CodeGen/AVR/pseudo/SPWRITE.mir
A llvm/test/CodeGen/DirectX/ShaderFlags/lifetimes-noint64op.ll
M llvm/test/CodeGen/DirectX/flatten-array.ll
M llvm/test/CodeGen/DirectX/flatten-bug-117273.ll
M llvm/test/CodeGen/DirectX/legalize-i8.ll
M llvm/test/CodeGen/DirectX/legalize-lifetimes-valver-1.6.ll
A llvm/test/CodeGen/DirectX/legalize-load-store-array-alloca.ll
M llvm/test/CodeGen/DirectX/legalize-memcpy.ll
M llvm/test/CodeGen/DirectX/legalize-memset.ll
M llvm/test/CodeGen/DirectX/llc-pipeline.ll
M llvm/test/CodeGen/DirectX/llc-vector-load-scalarize.ll
M llvm/test/CodeGen/DirectX/scalar-bug-117273.ll
M llvm/test/CodeGen/DirectX/scalar-store.ll
M llvm/test/CodeGen/DirectX/scalarize-alloca.ll
A llvm/test/CodeGen/Generic/fp128-math-libcalls.ll
A llvm/test/CodeGen/Hexagon/addsat.ll
A llvm/test/CodeGen/Hexagon/fast-math-libcalls.ll
A llvm/test/CodeGen/Hexagon/llvm.exp10.ll
A llvm/test/CodeGen/Hexagon/llvm.frexp.ll
A llvm/test/CodeGen/Hexagon/thread-pointer.ll
A llvm/test/CodeGen/LoongArch/stack-protector-target.ll
M llvm/test/CodeGen/MIR/AMDGPU/target-flags.mir
M llvm/test/CodeGen/MLRegAlloc/dev-mode-extra-features-logging.ll
M llvm/test/CodeGen/Mips/fastcc.ll
M llvm/test/CodeGen/Mips/fp-indexed-ls.ll
M llvm/test/CodeGen/Mips/indirect-jump-hazard/long-branch.ll
M llvm/test/CodeGen/Mips/ldexp.ll
M llvm/test/CodeGen/Mips/longbranch.ll
R llvm/test/CodeGen/Mips/nacl-align.ll
R llvm/test/CodeGen/Mips/nacl-branch-delay.ll
R llvm/test/CodeGen/Mips/nacl-reserved-regs.ll
M llvm/test/CodeGen/NVPTX/LoadStoreVectorizer.ll
M llvm/test/CodeGen/NVPTX/aggregate-return.ll
M llvm/test/CodeGen/NVPTX/atomicrmw-expand.ll
M llvm/test/CodeGen/NVPTX/atomics-sm70.ll
M llvm/test/CodeGen/NVPTX/atomics-sm90.ll
M llvm/test/CodeGen/NVPTX/bf16-instructions.ll
M llvm/test/CodeGen/NVPTX/bf16x2-instructions.ll
M llvm/test/CodeGen/NVPTX/cmpxchg-sm60.ll
M llvm/test/CodeGen/NVPTX/cmpxchg-sm70.ll
M llvm/test/CodeGen/NVPTX/cmpxchg-sm90.ll
M llvm/test/CodeGen/NVPTX/cmpxchg.ll
M llvm/test/CodeGen/NVPTX/cmpxchg.py
M llvm/test/CodeGen/NVPTX/distributed-shared-cluster.ll
M llvm/test/CodeGen/NVPTX/extractelement.ll
M llvm/test/CodeGen/NVPTX/f16x2-instructions.ll
A llvm/test/CodeGen/NVPTX/f32x2-instructions.ll
A llvm/test/CodeGen/NVPTX/fp-contract-f32x2.ll
M llvm/test/CodeGen/NVPTX/i16x2-instructions.ll
M llvm/test/CodeGen/NVPTX/i8x4-instructions.ll
M llvm/test/CodeGen/NVPTX/ldg-invariant-256.ll
M llvm/test/CodeGen/NVPTX/ldg-invariant.ll
M llvm/test/CodeGen/NVPTX/ldparam-v4.ll
M llvm/test/CodeGen/NVPTX/load-store-256-addressing-invariant.ll
M llvm/test/CodeGen/NVPTX/load-store-256-addressing.ll
M llvm/test/CodeGen/NVPTX/load-store-vectors-256.ll
M llvm/test/CodeGen/NVPTX/load-store-vectors.ll
M llvm/test/CodeGen/NVPTX/load-with-non-coherent-cache.ll
M llvm/test/CodeGen/NVPTX/misaligned-vector-ldst.ll
A llvm/test/CodeGen/NVPTX/no-stack-protector-libcall-error.ll
M llvm/test/CodeGen/NVPTX/read-global-variable-constant.ll
M llvm/test/CodeGen/NVPTX/reduction-intrinsics.ll
M llvm/test/CodeGen/NVPTX/sext-setcc.ll
M llvm/test/CodeGen/NVPTX/vec-param-load.ll
M llvm/test/CodeGen/NVPTX/vector-args.ll
M llvm/test/CodeGen/NVPTX/vector-loads.ll
M llvm/test/CodeGen/NVPTX/vector-stores.ll
M llvm/test/CodeGen/PowerPC/copysignl.ll
M llvm/test/CodeGen/PowerPC/exp10-libcall.ll
M llvm/test/CodeGen/PowerPC/ldexp-libcall.ll
M llvm/test/CodeGen/PowerPC/ldexp.ll
M llvm/test/CodeGen/PowerPC/llvm.frexp.ll
A llvm/test/CodeGen/PowerPC/stack-protector-target.ll
M llvm/test/CodeGen/RISCV/GlobalISel/div-by-constant.ll
M llvm/test/CodeGen/RISCV/GlobalISel/legalizer-info-validation.mir
M llvm/test/CodeGen/RISCV/attributes.ll
M llvm/test/CodeGen/RISCV/features-info.ll
M llvm/test/CodeGen/RISCV/fpenv-xlen.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vsadd-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vsaddu-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vssub-vp.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vssubu-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vl-opt-instrs.ll
M llvm/test/CodeGen/RISCV/rvv/vmerge-peephole.mir
M llvm/test/CodeGen/RISCV/sextw-removal.ll
A llvm/test/CodeGen/RISCV/stack-probing-frame-setup.mir
M llvm/test/CodeGen/RISCV/stack-protector-target.ll
A llvm/test/CodeGen/RISCV/xandesbfhcvt.ll
M llvm/test/CodeGen/RISCV/xqciac.ll
M llvm/test/CodeGen/RISCV/xqcibm-cto-clo-brev.ll
M llvm/test/CodeGen/RISCV/xqcibm-insert.ll
A llvm/test/CodeGen/RISCV/xqcicli.ll
M llvm/test/CodeGen/SPARC/llvm.sincos.ll
A llvm/test/CodeGen/SPARC/stack-protector-target.ll
M llvm/test/CodeGen/SystemZ/fp-half-libcall.ll
A llvm/test/CodeGen/Thumb2/LowOverheadLoops/lsr-le-cost.ll
M llvm/test/CodeGen/Thumb2/LowOverheadLoops/sibling-loops.ll
M llvm/test/CodeGen/Thumb2/mve-pred-vselect.ll
M llvm/test/CodeGen/Thumb2/pacbti-m-outliner-1.ll
A llvm/test/CodeGen/WebAssembly/simd-relaxed-fma.ll
M llvm/test/CodeGen/WinEH/lit.local.cfg
M llvm/test/CodeGen/WinEH/wineh-cloning.ll
M llvm/test/CodeGen/WinEH/wineh-demotion.ll
M llvm/test/CodeGen/WinEH/wineh-empty-seh-scope.ll
M llvm/test/CodeGen/WinEH/wineh-nested-unwind.ll
M llvm/test/CodeGen/WinEH/wineh-no-demotion.ll
M llvm/test/CodeGen/WinEH/wineh-noret-cleanup.ll
A llvm/test/CodeGen/WinEH/wineh-reuse-catch-alloca.ll
M llvm/test/CodeGen/X86/coalesce-commutative-implicit-def.mir
M llvm/test/CodeGen/X86/constructor.ll
M llvm/test/CodeGen/X86/div-rem-pair-recomposition-unsigned.ll
A llvm/test/CodeGen/X86/dollar-name-asm.ll
M llvm/test/CodeGen/X86/dollar-name.ll
M llvm/test/CodeGen/X86/exp10-libcall.ll
M llvm/test/CodeGen/X86/fast-isel-x32.ll
M llvm/test/CodeGen/X86/flt-rounds.ll
M llvm/test/CodeGen/X86/frameaddr.ll
M llvm/test/CodeGen/X86/freeze-unary.ll
M llvm/test/CodeGen/X86/i128-fp128-abi.ll
M llvm/test/CodeGen/X86/invalid-operand-bundle-call.ll
M llvm/test/CodeGen/X86/invalid-operand-bundle-callbr.ll
M llvm/test/CodeGen/X86/invalid-operand-bundle-invoke.ll
M llvm/test/CodeGen/X86/kcfi.ll
M llvm/test/CodeGen/X86/ldexp-f80.ll
M llvm/test/CodeGen/X86/ldexp-libcall.ll
M llvm/test/CodeGen/X86/ldexp-not-readonly.ll
M llvm/test/CodeGen/X86/ldexp-strict.ll
M llvm/test/CodeGen/X86/ldexp-wrong-signature.ll
M llvm/test/CodeGen/X86/ldexp-wrong-signature2.ll
M llvm/test/CodeGen/X86/ldexp.ll
M llvm/test/CodeGen/X86/lea-2.ll
M llvm/test/CodeGen/X86/lea-3.ll
M llvm/test/CodeGen/X86/lea-4.ll
M llvm/test/CodeGen/X86/lea-5.ll
M llvm/test/CodeGen/X86/lea.ll
M llvm/test/CodeGen/X86/llvm.frexp.f80.ll
M llvm/test/CodeGen/X86/llvm.frexp.ll
M llvm/test/CodeGen/X86/sincos-stack-args.ll
M llvm/test/CodeGen/X86/sincos.ll
M llvm/test/CodeGen/X86/stack-align2.ll
A llvm/test/CodeGen/X86/stack-protector-target-openbsd.ll
M llvm/test/CodeGen/X86/test-shrink-bug.ll
M llvm/test/CodeGen/X86/unreachable-mbb-undef-phi.mir
M llvm/test/CodeGen/X86/x86-64-baseptr.ll
M llvm/test/CodeGen/X86/x86-64-stack-and-frame-ptr.ll
A llvm/test/CodeGen/XCore/llvm.exp10.ll
A llvm/test/CodeGen/XCore/llvm.frexp.ll
A llvm/test/CodeGen/XCore/llvm.sincos.ll
M llvm/test/DebugInfo/ARM/hardware-loop-phi-insertion.ll
A llvm/test/DebugInfo/COFF/AArch64/codeview-sve.ll
M llvm/test/DebugInfo/KeyInstructions/Generic/verify.ll
M llvm/test/Instrumentation/MemorySanitizer/X86/avx-intrinsics-x86.ll
M llvm/test/Instrumentation/MemorySanitizer/X86/avx512-intrinsics-upgrade.ll
M llvm/test/Instrumentation/MemorySanitizer/X86/avx512-intrinsics.ll
M llvm/test/Instrumentation/MemorySanitizer/X86/avx512bw-intrinsics-upgrade.ll
M llvm/test/Instrumentation/MemorySanitizer/X86/avx512bw-intrinsics.ll
M llvm/test/Instrumentation/MemorySanitizer/X86/avx512vl-intrinsics.ll
M llvm/test/Instrumentation/MemorySanitizer/X86/x86-vpermi2.ll
M llvm/test/Instrumentation/MemorySanitizer/i386/avx-intrinsics-i386.ll
M llvm/test/Instrumentation/MemorySanitizer/or.ll
M llvm/test/MC/AArch64/armv9.6a-ras.s
A llvm/test/MC/AMDGPU/fixup64.s
M llvm/test/MC/AMDGPU/gfx1250_asm_sop1.s
M llvm/test/MC/AMDGPU/gfx1250_asm_sopp.s
M llvm/test/MC/AMDGPU/gfx1250_asm_vop1-fake16.s
M llvm/test/MC/AMDGPU/gfx1250_asm_vop1.s
M llvm/test/MC/AMDGPU/gfx1250_asm_vop1_dpp16-fake16.s
M llvm/test/MC/AMDGPU/gfx1250_asm_vop1_dpp16.s
M llvm/test/MC/AMDGPU/gfx1250_asm_vop1_dpp8-fake16.s
M llvm/test/MC/AMDGPU/gfx1250_asm_vop1_dpp8.s
A llvm/test/MC/AMDGPU/gfx1250_asm_vop2.s
A llvm/test/MC/AMDGPU/gfx1250_asm_vop2_err.s
M llvm/test/MC/AMDGPU/gfx1250_asm_vop3_from_vop1-fake16.s
M llvm/test/MC/AMDGPU/gfx1250_asm_vop3_from_vop1.s
M llvm/test/MC/AMDGPU/gfx1250_asm_vop3_from_vop1_dpp16-fake16.s
M llvm/test/MC/AMDGPU/gfx1250_asm_vop3_from_vop1_dpp16.s
M llvm/test/MC/AMDGPU/gfx1250_asm_vop3_from_vop1_dpp8-fake16.s
M llvm/test/MC/AMDGPU/gfx1250_asm_vop3_from_vop1_dpp8.s
M llvm/test/MC/AMDGPU/gfx1250_asm_vopd.s
M llvm/test/MC/AMDGPU/gfx1250_asm_vopd3.s
A llvm/test/MC/AMDGPU/gfx1250_asm_wmma_w32.s
A llvm/test/MC/AMDGPU/gfx1250_asm_wmma_w32_err.s
M llvm/test/MC/AMDGPU/gfx1250_err.s
R llvm/test/MC/ARM/AlignedBundling/group-bundle-arm.s
R llvm/test/MC/ARM/AlignedBundling/illegal-subtarget-change.s
R llvm/test/MC/ARM/AlignedBundling/lit.local.cfg
R llvm/test/MC/ARM/AlignedBundling/pad-align-to-bundle-end.s
R llvm/test/MC/ARM/AlignedBundling/subtarget-change.s
M llvm/test/MC/ARM/arm_instructions.s
M llvm/test/MC/AsmParser/AArch64/directive-parse-err.s
M llvm/test/MC/Disassembler/AArch64/armv9.6a-ras.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx1250_dasm_sop1.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx1250_dasm_sopp.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx1250_dasm_vop1.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx1250_dasm_vop1_dpp16.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx1250_dasm_vop1_dpp8.txt
A llvm/test/MC/Disassembler/AMDGPU/gfx1250_dasm_vop2.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx1250_dasm_vop3_from_vop1.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx1250_dasm_vop3_from_vop1_dpp16.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx1250_dasm_vop3_from_vop1_dpp8.txt
A llvm/test/MC/Disassembler/AMDGPU/gfx1250_dasm_wmma_w32.txt
A llvm/test/MC/Disassembler/Sparc/sparc-crypto.txt
M llvm/test/MC/ELF/mc-dump.s
R llvm/test/MC/Mips/nacl-mask.s
M llvm/test/MC/RISCV/Relocations/mc-dump.s
M llvm/test/MC/RISCV/rv32p-valid.s
M llvm/test/MC/RISCV/rv64p-valid.s
A llvm/test/MC/RISCV/xqci-fixups.s
M llvm/test/MC/RISCV/xqcibi-relocations.s
M llvm/test/MC/RISCV/xqcilb-relocations.s
M llvm/test/MC/RISCV/xqcili-relocations.s
M llvm/test/MC/RISCV/xqcilia-valid.s
A llvm/test/MC/Sparc/sparc-crypto.s
R llvm/test/MC/X86/AlignedBundling/align-mode-argument-error.s
R llvm/test/MC/X86/AlignedBundling/asm-printing-bundle-directives.s
R llvm/test/MC/X86/AlignedBundling/autogen-inst-offset-align-to-end.s
R llvm/test/MC/X86/AlignedBundling/autogen-inst-offset-padding.s
R llvm/test/MC/X86/AlignedBundling/bundle-group-too-large-error.s
R llvm/test/MC/X86/AlignedBundling/bundle-lock-option-error.s
R llvm/test/MC/X86/AlignedBundling/bundle-subtarget-change-error.s
R llvm/test/MC/X86/AlignedBundling/different-sections.s
R llvm/test/MC/X86/AlignedBundling/labeloffset.s
R llvm/test/MC/X86/AlignedBundling/lit.local.cfg
R llvm/test/MC/X86/AlignedBundling/lock-without-bundle-mode-error.s
R llvm/test/MC/X86/AlignedBundling/long-nop-pad.s
R llvm/test/MC/X86/AlignedBundling/misaligned-bundle-group.s
R llvm/test/MC/X86/AlignedBundling/misaligned-bundle.s
R llvm/test/MC/X86/AlignedBundling/nesting.s
R llvm/test/MC/X86/AlignedBundling/pad-align-to-bundle-end.s
R llvm/test/MC/X86/AlignedBundling/pad-bundle-groups.s
R llvm/test/MC/X86/AlignedBundling/relax-at-bundle-end.s
R llvm/test/MC/X86/AlignedBundling/relax-in-bundle-group.s
R llvm/test/MC/X86/AlignedBundling/rodata-section.s
R llvm/test/MC/X86/AlignedBundling/section-alignment.s
R llvm/test/MC/X86/AlignedBundling/single-inst-bundling.s
R llvm/test/MC/X86/AlignedBundling/switch-section-locked-error.s
R llvm/test/MC/X86/AlignedBundling/unlock-without-lock-error.s
R llvm/test/MC/X86/align-branch-bundle.s
M llvm/test/TableGen/GlobalISelEmitter/GlobalISelEmitter.td
M llvm/test/TableGen/RuntimeLibcallEmitter.td
A llvm/test/ThinLTO/X86/memprof_callee_type_mismatch.ll
M llvm/test/Transforms/Coroutines/coro-split-dbg-labels.ll
M llvm/test/Transforms/GVN/metadata.ll
M llvm/test/Transforms/InferFunctionAttrs/no-proto.ll
A llvm/test/Transforms/InstCombine/AArch64/aarch64-sme-in-streaming-mode.ll
M llvm/test/Transforms/InstCombine/AMDGPU/ptr-replace-alloca.ll
M llvm/test/Transforms/InstCombine/X86/blend_x86.ll
A llvm/test/Transforms/InstCombine/fold-icmp-without-constant-into-phi.ll
M llvm/test/Transforms/InstCombine/fold-shuffle-ext.ll
M llvm/test/Transforms/InstCombine/freeze.ll
A llvm/test/Transforms/InstCombine/ptrauth-call.ll
A llvm/test/Transforms/InstCombine/ptrauth-intrinsics-call.ll
A llvm/test/Transforms/InstSimplify/ConstProp/WebAssembly/any_all_true.ll
M llvm/test/Transforms/InterleavedAccess/RISCV/addrspace.ll
M llvm/test/Transforms/InterleavedAccess/RISCV/interleaved-accesses.ll
A llvm/test/Transforms/LoopInterchange/reductions-non-wrapped-operations.ll
A llvm/test/Transforms/LoopInterchange/reductions-with-nowraps.ll
M llvm/test/Transforms/LoopStrengthReduce/optimizemax_debugloc.ll
A llvm/test/Transforms/LoopUnroll/AArch64/vector.ll
M llvm/test/Transforms/LoopVectorize/AArch64/conditional-branches-cost.ll
M llvm/test/Transforms/LoopVectorize/AArch64/fmax-without-fast-math-flags.ll
A llvm/test/Transforms/LoopVectorize/AArch64/fmin-without-fast-math-flags.ll
M llvm/test/Transforms/LoopVectorize/AArch64/induction-costs.ll
M llvm/test/Transforms/LoopVectorize/AArch64/loop-vectorization-factors.ll
M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-dot-product-neon.ll
M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-dot-product.ll
M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce.ll
A llvm/test/Transforms/LoopVectorize/AArch64/predicated-costs.ll
M llvm/test/Transforms/LoopVectorize/ARM/mve-reg-pressure-vmla.ll
M llvm/test/Transforms/LoopVectorize/RISCV/divrem.ll
M llvm/test/Transforms/LoopVectorize/RISCV/first-order-recurrence-scalable-vf1.ll
M llvm/test/Transforms/LoopVectorize/RISCV/force-vect-msg.ll
M llvm/test/Transforms/LoopVectorize/RISCV/low-trip-count.ll
M llvm/test/Transforms/LoopVectorize/RISCV/masked_gather_scatter.ll
M llvm/test/Transforms/LoopVectorize/RISCV/reg-usage.ll
M llvm/test/Transforms/LoopVectorize/RISCV/riscv-interleaved.ll
M llvm/test/Transforms/LoopVectorize/RISCV/riscv-unroll.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-reductions.ll
M llvm/test/Transforms/LoopVectorize/RISCV/uniform-load-store.ll
M llvm/test/Transforms/LoopVectorize/RISCV/unroll-in-loop-vectorizer.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-fixed-order-recurrence.ll
M llvm/test/Transforms/LoopVectorize/X86/induction-costs.ll
A llvm/test/Transforms/LoopVectorize/dereferenceable-info-from-assumption-variable-size.ll
M llvm/test/Transforms/LoopVectorize/early_exit_store_legality.ll
M llvm/test/Transforms/LoopVectorize/first-order-recurrence-chains.ll
M llvm/test/Transforms/LoopVectorize/first-order-recurrence-dead-instructions.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/fmax-without-fast-math-flags-interleave.ll
M llvm/test/Transforms/LoopVectorize/fmax-without-fast-math-flags.ll
A llvm/test/Transforms/LoopVectorize/fmin-without-fast-math-flags.ll
M llvm/test/Transforms/LoopVectorize/global_alias.ll
M llvm/test/Transforms/LoopVectorize/optsize.ll
M llvm/test/Transforms/LoopVectorize/scalable-first-order-recurrence.ll
M llvm/test/Transforms/LoopVectorize/single-early-exit-deref-assumptions.ll
M llvm/test/Transforms/LoopVectorize/vplan-printing.ll
M llvm/test/Transforms/PhaseOrdering/AArch64/quant_4x4.ll
M llvm/test/Transforms/PhaseOrdering/ARM/arm_mult_q15.ll
M llvm/test/Transforms/PhaseOrdering/X86/blendv-select.ll
M llvm/test/Transforms/PhaseOrdering/X86/fmaddsub.ll
M llvm/test/Transforms/SLPVectorizer/AArch64/InstructionsState-is-invalid-0.ll
M llvm/test/Transforms/SLPVectorizer/AArch64/alternate-vectorization-split-node.ll
M llvm/test/Transforms/SLPVectorizer/AArch64/ext-trunc.ll
M llvm/test/Transforms/SLPVectorizer/AArch64/external-use-icmp.ll
A llvm/test/Transforms/SLPVectorizer/AArch64/extract-subvector-long-input.ll
M llvm/test/Transforms/SLPVectorizer/AArch64/extractelements-to-shuffle.ll
M llvm/test/Transforms/SLPVectorizer/AArch64/gather-buildvector-with-minbitwidth-user.ll
M llvm/test/Transforms/SLPVectorizer/AArch64/getelementptr.ll
M llvm/test/Transforms/SLPVectorizer/AArch64/getelementptr2.ll
M llvm/test/Transforms/SLPVectorizer/AArch64/loadorder.ll
M llvm/test/Transforms/SLPVectorizer/AArch64/memory-runtime-checks.ll
M llvm/test/Transforms/SLPVectorizer/AArch64/multiple_reduction.ll
A llvm/test/Transforms/SLPVectorizer/AArch64/phi-node-bitwidt-op-not.ll
M llvm/test/Transforms/SLPVectorizer/AArch64/reduce-fadd.ll
M llvm/test/Transforms/SLPVectorizer/AArch64/shuffle-vectors-mask-size.ll
M llvm/test/Transforms/SLPVectorizer/AArch64/splat-loads.ll
M llvm/test/Transforms/SLPVectorizer/AArch64/unreachable-blocks-with-phis.ll
M llvm/test/Transforms/SLPVectorizer/AArch64/vec3-calls.ll
M llvm/test/Transforms/SLPVectorizer/AArch64/vector-getelementptr.ll
M llvm/test/Transforms/SLPVectorizer/AArch64/vectorizable-selects-uniform-cmps.ll
M llvm/test/Transforms/SLPVectorizer/RISCV/combined-loads-stored.ll
M llvm/test/Transforms/SLPVectorizer/RISCV/complex-loads.ll
M llvm/test/Transforms/SLPVectorizer/RISCV/gather-insert-point-restore.ll
M llvm/test/Transforms/SLPVectorizer/RISCV/gather-node-with-no-users.ll
M llvm/test/Transforms/SLPVectorizer/RISCV/horizontal-list.ll
M llvm/test/Transforms/SLPVectorizer/RISCV/loads-ordering.ll
M llvm/test/Transforms/SLPVectorizer/RISCV/reductions.ll
M llvm/test/Transforms/SLPVectorizer/RISCV/revec-getGatherCost.ll
M llvm/test/Transforms/SLPVectorizer/RISCV/revec.ll
M llvm/test/Transforms/SLPVectorizer/RISCV/segmented-loads.ll
M llvm/test/Transforms/SLPVectorizer/RISCV/unordered-loads-operands.ll
M llvm/test/Transforms/SLPVectorizer/SystemZ/pr34619.ll
M llvm/test/Transforms/SLPVectorizer/SystemZ/reuse-non-power-of-2-reorder.ll
M llvm/test/Transforms/SLPVectorizer/SystemZ/revec-fix-128169.ll
M llvm/test/Transforms/SLPVectorizer/X86/alternate-cast-inseltpoison.ll
M llvm/test/Transforms/SLPVectorizer/X86/alternate-cast.ll
M llvm/test/Transforms/SLPVectorizer/X86/alternate-fp-inseltpoison.ll
M llvm/test/Transforms/SLPVectorizer/X86/alternate-fp.ll
M llvm/test/Transforms/SLPVectorizer/X86/alternate-int-inseltpoison.ll
M llvm/test/Transforms/SLPVectorizer/X86/alternate-int.ll
M llvm/test/Transforms/SLPVectorizer/X86/bool-mask.ll
M llvm/test/Transforms/SLPVectorizer/X86/buildvector-reused-with-bv-subvector.ll
M llvm/test/Transforms/SLPVectorizer/X86/buildvector-schedule-for-subvector.ll
M llvm/test/Transforms/SLPVectorizer/X86/cast-operand-extracted.ll
M llvm/test/Transforms/SLPVectorizer/X86/entry-no-bundle-but-extra-use-on-vec.ll
M llvm/test/Transforms/SLPVectorizer/X86/ext-used-scalar-different-bitwidth.ll
M llvm/test/Transforms/SLPVectorizer/X86/external-reduced-value-vectorized.ll
A llvm/test/Transforms/SLPVectorizer/X86/extract-subvector-long-input.ll
M llvm/test/Transforms/SLPVectorizer/X86/extractelemets-extended-by-poison.ll
M llvm/test/Transforms/SLPVectorizer/X86/full-match-with-poison-scalar.ll
M llvm/test/Transforms/SLPVectorizer/X86/full-matched-bv-with-subvectors.ll
M llvm/test/Transforms/SLPVectorizer/X86/gather-node-same-as-vect-but-order.ll
M llvm/test/Transforms/SLPVectorizer/X86/horizontal-list.ll
M llvm/test/Transforms/SLPVectorizer/X86/horizontal-minmax.ll
A llvm/test/Transforms/SLPVectorizer/X86/icmp-altopcode-after-reordering.ll
M llvm/test/Transforms/SLPVectorizer/X86/identity-match-splat-less-defined.ll
M llvm/test/Transforms/SLPVectorizer/X86/insert-subvector.ll
M llvm/test/Transforms/SLPVectorizer/X86/inst_size_bug.ll
M llvm/test/Transforms/SLPVectorizer/X86/landing-pad-for-split-node.ll
M llvm/test/Transforms/SLPVectorizer/X86/malformed_phis.ll
M llvm/test/Transforms/SLPVectorizer/X86/matched-nodes-updated.ll
M llvm/test/Transforms/SLPVectorizer/X86/matched-shuffled-entries.ll
M llvm/test/Transforms/SLPVectorizer/X86/minbitwidth-transformed-operand.ll
M llvm/test/Transforms/SLPVectorizer/X86/multi-node-reuse-in-bv.ll
M llvm/test/Transforms/SLPVectorizer/X86/non-load-reduced-as-part-of-bv.ll
M llvm/test/Transforms/SLPVectorizer/X86/non-power-2-num-elems-reused.ll
M llvm/test/Transforms/SLPVectorizer/X86/non-power-of-2-order-detection.ll
M llvm/test/Transforms/SLPVectorizer/X86/non-power-of-2-subvectors-insert.ll
M llvm/test/Transforms/SLPVectorizer/X86/non-schedulable-instructions-become-schedulable.ll
M llvm/test/Transforms/SLPVectorizer/X86/non-schedulable-split-node.ll
A llvm/test/Transforms/SLPVectorizer/X86/phi-node-bitwidt-op-not.ll
M llvm/test/Transforms/SLPVectorizer/X86/phi-node-reshuffled-part.ll
M llvm/test/Transforms/SLPVectorizer/X86/phi-nodes-incoming-same-blocks.ll
M llvm/test/Transforms/SLPVectorizer/X86/reduced-value-vectorized-later.ll
M llvm/test/Transforms/SLPVectorizer/X86/reduction-logical.ll
M llvm/test/Transforms/SLPVectorizer/X86/reduction-with-removed-extracts.ll
M llvm/test/Transforms/SLPVectorizer/X86/remark-partial-loads-vectorize.ll
M llvm/test/Transforms/SLPVectorizer/X86/reorder-possible-strided-node.ll
M llvm/test/Transforms/SLPVectorizer/X86/reorder-reused-subvector.ll
M llvm/test/Transforms/SLPVectorizer/X86/replaced-external-in-reduction.ll
M llvm/test/Transforms/SLPVectorizer/X86/resched.ll
M llvm/test/Transforms/SLPVectorizer/X86/resized-bv-values-non-power-of2-node.ll
M llvm/test/Transforms/SLPVectorizer/X86/revec-SplitVectorize.ll
M llvm/test/Transforms/SLPVectorizer/X86/revec-getStoreMinimumVF.ll
M llvm/test/Transforms/SLPVectorizer/X86/revec-load-compress.ll
M llvm/test/Transforms/SLPVectorizer/X86/revec-reduced-value-vectorized-later.ll
M llvm/test/Transforms/SLPVectorizer/X86/same-values-sub-node-with-poisons.ll
M llvm/test/Transforms/SLPVectorizer/X86/split-load8_2-unord.ll
M llvm/test/Transforms/SLPVectorizer/X86/split-node-full-match.ll
M llvm/test/Transforms/SLPVectorizer/X86/split-node-no-reorder-copy.ll
M llvm/test/Transforms/SLPVectorizer/X86/split-node-parent-operands-in-spill.ll
M llvm/test/Transforms/SLPVectorizer/X86/split-node-reorder-node-with-ops.ll
M llvm/test/Transforms/SLPVectorizer/X86/split-vector-operand-with-reuses.ll
M llvm/test/Transforms/SLPVectorizer/X86/subvector-minbitwidth-unsigned-value.ll
M llvm/test/Transforms/SLPVectorizer/X86/tiny-tree.ll
M llvm/test/Transforms/SLPVectorizer/X86/trunc-node-reused.ll
M llvm/test/Transforms/SLPVectorizer/X86/vec3-calls.ll
M llvm/test/Transforms/SLPVectorizer/alternate-opcode-sindle-bv.ll
M llvm/test/Transforms/SLPVectorizer/extract-many-users-buildvector.ll
R llvm/test/Transforms/SLPVectorizer/extract-subvector-long-input.ll
M llvm/test/Transforms/SLPVectorizer/gathered-consecutive-loads-different-types.ll
R llvm/test/Transforms/SLPVectorizer/icmp-altopcode-after-reordering.ll
M llvm/test/Transforms/SLPVectorizer/partial-register-extract.ll
R llvm/test/Transforms/SLPVectorizer/phi-node-bitwidt-op-not.ll
M llvm/test/Transforms/SLPVectorizer/reduction-whole-regs-loads.ll
M llvm/test/Transforms/SLPVectorizer/resized-alt-shuffle-after-minbw.ll
M llvm/test/Transforms/SLPVectorizer/revec-insertelement.ll
M llvm/test/Transforms/SLPVectorizer/revec-reduction-logical.ll
M llvm/test/Transforms/SLPVectorizer/revec-shufflevector.ll
M llvm/test/Transforms/SLPVectorizer/revec.ll
A llvm/test/Transforms/SafeStack/NVPTX/lit.local.cfg
A llvm/test/Transforms/SafeStack/NVPTX/safestack-libcall-error.ll
A llvm/test/Transforms/SafeStack/NVPTX/safestack-pointer-address-libcall-error.ll
M llvm/test/Transforms/SimplifyCFG/ARM/phi-eliminate.ll
M llvm/test/Transforms/VectorCombine/AArch64/load-extractelement-scalarization.ll
M llvm/test/Verifier/assume-bundles.ll
A llvm/test/tools/dxil-dis/lifetimes.ll
A llvm/test/tools/llc/new-pm/start-stop-inserted.ll
M llvm/test/tools/llvm-mca/AArch64/Neoverse/V2-neon-instructions.s
M llvm/test/tools/llvm-objcopy/ELF/strip-preserve-atime.test
A llvm/test/tools/llvm-objdump/ELF/RISCV/rv32-plt.test
A llvm/test/tools/llvm-objdump/ELF/RISCV/rv64-plt.test
M llvm/test/tools/llvm-objdump/ELF/program-headers.test
M llvm/test/tools/llvm-readobj/ELF/section-types.test
A llvm/test/tools/llvm-readtapi/stubify-v4-to-v5.test
M llvm/test/tools/yaml2obj/ELF/program-header.yaml
M llvm/tools/llc/llc.cpp
M llvm/tools/llvm-c-test/debuginfo.c
M llvm/tools/llvm-dwarfdump/Statistics.cpp
M llvm/tools/llvm-exegesis/lib/SnippetFile.cpp
M llvm/tools/llvm-objdump/ELFDump.cpp
M llvm/tools/llvm-readobj/ELFDumper.cpp
M llvm/tools/llvm-readobj/ObjDumper.cpp
M llvm/tools/llvm-shlib/CMakeLists.txt
M llvm/unittests/Analysis/FunctionPropertiesAnalysisTest.cpp
M llvm/unittests/Analysis/IR2VecTest.cpp
M llvm/unittests/Analysis/ScalarEvolutionTest.cpp
M llvm/unittests/BinaryFormat/CMakeLists.txt
A llvm/unittests/BinaryFormat/SFrameTest.cpp
M llvm/unittests/Frontend/OpenMPIRBuilderTest.cpp
M llvm/unittests/FuzzMutate/RandomIRBuilderTest.cpp
M llvm/unittests/IR/InstructionsTest.cpp
M llvm/unittests/IR/IntrinsicsTest.cpp
M llvm/unittests/MC/SystemZ/CMakeLists.txt
A llvm/unittests/MC/SystemZ/SystemZMCDisassemblerTest.cpp
M llvm/unittests/TargetParser/RISCVISAInfoTest.cpp
M llvm/unittests/TargetParser/TargetParserTest.cpp
M llvm/unittests/Transforms/Utils/LocalTest.cpp
M llvm/utils/TableGen/Basic/RuntimeLibcallsEmitter.cpp
M llvm/utils/TableGen/CompressInstEmitter.cpp
M llvm/utils/TableGen/DecoderEmitter.cpp
M llvm/utils/gn/secondary/clang-tools-extra/clang-tidy/llvm/BUILD.gn
M llvm/utils/gn/secondary/clang-tools-extra/clang-tidy/readability/BUILD.gn
M llvm/utils/gn/secondary/clang/lib/Basic/BUILD.gn
M llvm/utils/gn/secondary/clang/lib/CodeGen/BUILD.gn
M llvm/utils/gn/secondary/clang/lib/Driver/BUILD.gn
M llvm/utils/gn/secondary/clang/lib/Headers/BUILD.gn
M llvm/utils/gn/secondary/clang/tools/libclang/BUILD.gn
M llvm/utils/gn/secondary/compiler-rt/lib/builtins/BUILD.gn
M llvm/utils/gn/secondary/compiler-rt/lib/builtins/sources.gni
M llvm/utils/gn/secondary/compiler-rt/test/builtins/BUILD.gn
M llvm/utils/gn/secondary/libcxx/include/BUILD.gn
M llvm/utils/gn/secondary/lldb/source/Plugins/Language/CPlusPlus/BUILD.gn
M llvm/utils/gn/secondary/llvm/lib/Target/Mips/MCTargetDesc/BUILD.gn
M llvm/utils/gn/secondary/llvm/lib/Target/RISCV/BUILD.gn
M llvm/utils/gn/secondary/llvm/unittests/BinaryFormat/BUILD.gn
M llvm/utils/gn/secondary/llvm/unittests/MC/SystemZ/BUILD.gn
M llvm/utils/gn/secondary/llvm/version.gni
M llvm/utils/lit/lit/__init__.py
M llvm/utils/mlgo-utils/mlgo/__init__.py
M llvm/utils/release/github-upload-release.py
M llvm/utils/remote-exec.py
M mlir/cmake/modules/AddMLIR.cmake
M mlir/docs/Tutorials/transform/Ch1.md
M mlir/include/mlir/Analysis/SliceAnalysis.h
M mlir/include/mlir/Bindings/Python/NanobindAdaptors.h
A mlir/include/mlir/Conversion/ComplexToROCDLLibraryCalls/ComplexToROCDLLibraryCalls.h
M mlir/include/mlir/Conversion/Passes.h
M mlir/include/mlir/Conversion/Passes.td
A mlir/include/mlir/Conversion/XeVMToLLVM/XeVMToLLVM.h
M mlir/include/mlir/Dialect/Affine/Analysis/AffineAnalysis.h
M mlir/include/mlir/Dialect/Bufferization/IR/BufferizationOps.td
M mlir/include/mlir/Dialect/OpenACC/OpenACCTypeInterfaces.td
M mlir/include/mlir/Dialect/OpenMP/OpenMPClauses.td
M mlir/include/mlir/Dialect/OpenMP/OpenMPEnums.td
M mlir/include/mlir/Dialect/OpenMP/OpenMPOps.td
M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVArithmeticOps.td
M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVBase.td
M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVImageOps.td
M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVStructureOps.td
M mlir/include/mlir/Dialect/Tosa/IR/TosaComplianceData.h.inc
M mlir/include/mlir/IR/Builders.h
M mlir/include/mlir/IR/ImplicitLocOpBuilder.h
M mlir/include/mlir/IR/OpDefinition.h
M mlir/include/mlir/InitAllExtensions.h
M mlir/include/mlir/Interfaces/ControlFlowInterfaces.td
M mlir/include/mlir/TableGen/Class.h
M mlir/lib/Analysis/SliceAnalysis.cpp
M mlir/lib/Conversion/CMakeLists.txt
A mlir/lib/Conversion/ComplexToROCDLLibraryCalls/CMakeLists.txt
A mlir/lib/Conversion/ComplexToROCDLLibraryCalls/ComplexToROCDLLibraryCalls.cpp
M mlir/lib/Conversion/ControlFlowToLLVM/ControlFlowToLLVM.cpp
M mlir/lib/Conversion/MemRefToLLVM/MemRefToLLVM.cpp
M mlir/lib/Conversion/SCFToControlFlow/SCFToControlFlow.cpp
M mlir/lib/Conversion/SPIRVToLLVM/SPIRVToLLVM.cpp
M mlir/lib/Conversion/TosaToLinalg/TosaToLinalgNamed.cpp
M mlir/lib/Conversion/TosaToTensor/TosaToTensor.cpp
A mlir/lib/Conversion/XeVMToLLVM/CMakeLists.txt
A mlir/lib/Conversion/XeVMToLLVM/XeVMToLLVM.cpp
M mlir/lib/Debug/BreakpointManagers/FileLineColLocBreakpointManager.cpp
M mlir/lib/Debug/ExecutionContext.cpp
M mlir/lib/Debug/Observers/ActionProfiler.cpp
M mlir/lib/Dialect/AMDGPU/Transforms/EmulateAtomics.cpp
M mlir/lib/Dialect/AMX/Transforms/LegalizeForLLVMExport.cpp
M mlir/lib/Dialect/Affine/Analysis/Utils.cpp
M mlir/lib/Dialect/Arith/IR/ArithCanonicalization.td
M mlir/lib/Dialect/Arith/IR/ArithOps.cpp
M mlir/lib/Dialect/Arith/IR/InferIntRangeInterfaceImpls.cpp
M mlir/lib/Dialect/Arith/Transforms/EmulateNarrowType.cpp
M mlir/lib/Dialect/Arith/Transforms/ExpandOps.cpp
M mlir/lib/Dialect/Arith/Transforms/ShardingInterfaceImpl.cpp
M mlir/lib/Dialect/ArmNeon/IR/ArmNeonDialect.cpp
M mlir/lib/Dialect/ArmNeon/Transforms/LowerContractionToNeonI8MMPattern.cpp
M mlir/lib/Dialect/ArmSME/IR/ArmSME.cpp
M mlir/lib/Dialect/ArmSME/IR/Utils.cpp
M mlir/lib/Dialect/ArmSME/Transforms/TileAllocation.cpp
M mlir/lib/Dialect/ArmSVE/IR/ArmSVEDialect.cpp
M mlir/lib/Dialect/ArmSVE/Transforms/LegalizeForLLVMExport.cpp
M mlir/lib/Dialect/ArmSVE/Transforms/LowerContractionToSVEI8MMPattern.cpp
M mlir/lib/Dialect/Async/IR/Async.cpp
M mlir/lib/Dialect/Async/Transforms/AsyncRuntimeRefCounting.cpp
M mlir/lib/Dialect/Async/Transforms/AsyncRuntimeRefCountingOpt.cpp
M mlir/lib/Dialect/Async/Transforms/AsyncToAsyncRuntime.cpp
M mlir/lib/Dialect/Complex/IR/ComplexDialect.cpp
M mlir/lib/Dialect/ControlFlow/Transforms/BufferizableOpInterfaceImpl.cpp
M mlir/lib/Dialect/DLTI/DLTI.cpp
M mlir/lib/Dialect/EmitC/IR/EmitC.cpp
M mlir/lib/Dialect/EmitC/Transforms/Transforms.cpp
M mlir/lib/Dialect/Func/IR/FuncOps.cpp
M mlir/lib/Dialect/Func/TransformOps/FuncTransformOps.cpp
M mlir/lib/Dialect/IRDL/IR/IRDL.cpp
M mlir/lib/Dialect/IRDL/IRDLLoading.cpp
M mlir/lib/Dialect/Index/IR/IndexOps.cpp
M mlir/lib/Dialect/LLVMIR/IR/LLVMAttrs.cpp
M mlir/lib/Dialect/LLVMIR/IR/LLVMDialect.cpp
M mlir/lib/Dialect/LLVMIR/IR/LLVMInterfaces.cpp
M mlir/lib/Dialect/LLVMIR/IR/LLVMTypes.cpp
M mlir/lib/Dialect/LLVMIR/IR/NVVMDialect.cpp
M mlir/lib/Dialect/LLVMIR/IR/ROCDLDialect.cpp
M mlir/lib/Dialect/LLVMIR/Transforms/DIExpressionRewriter.cpp
M mlir/lib/Dialect/LLVMIR/Transforms/DIScopeForLLVMFuncOp.cpp
M mlir/lib/Dialect/LLVMIR/Transforms/LegalizeForExport.cpp
M mlir/lib/Dialect/MLProgram/Transforms/PipelineGlobalOps.cpp
M mlir/lib/Dialect/MPI/IR/MPI.cpp
M mlir/lib/Dialect/Math/IR/MathDialect.cpp
M mlir/lib/Dialect/Math/Transforms/ExpandPatterns.cpp
M mlir/lib/Dialect/Math/Transforms/PolynomialApproximation.cpp
M mlir/lib/Dialect/MemRef/IR/MemRefDialect.cpp
M mlir/lib/Dialect/MemRef/IR/MemRefMemorySlot.cpp
M mlir/lib/Dialect/MemRef/TransformOps/MemRefTransformOps.cpp
M mlir/lib/Dialect/MemRef/Transforms/ComposeSubView.cpp
M mlir/lib/Dialect/MemRef/Transforms/EmulateNarrowType.cpp
M mlir/lib/Dialect/MemRef/Transforms/ExpandOps.cpp
M mlir/lib/Dialect/MemRef/Transforms/FlattenMemRefs.cpp
M mlir/lib/Dialect/MemRef/Transforms/FoldMemRefAliasOps.cpp
M mlir/lib/Dialect/MemRef/Transforms/IndependenceTransforms.cpp
M mlir/lib/Dialect/MemRef/Transforms/MultiBuffer.cpp
M mlir/lib/Dialect/MemRef/Transforms/NormalizeMemRefs.cpp
M mlir/lib/Dialect/MemRef/Transforms/RuntimeOpVerification.cpp
M mlir/lib/Dialect/MemRef/Utils/MemRefUtils.cpp
M mlir/lib/Dialect/Mesh/IR/MeshOps.cpp
M mlir/lib/Dialect/Mesh/Transforms/ShardingPropagation.cpp
M mlir/lib/Dialect/Mesh/Transforms/Simplifications.cpp
M mlir/lib/Dialect/Mesh/Transforms/Spmdization.cpp
M mlir/lib/Dialect/NVGPU/IR/NVGPUDialect.cpp
M mlir/lib/Dialect/NVGPU/Transforms/CreateAsyncGroups.cpp
M mlir/lib/Dialect/NVGPU/Transforms/MmaSyncTF32Transform.cpp
M mlir/lib/Dialect/NVGPU/Transforms/OptimizeSharedMemory.cpp
M mlir/lib/Dialect/NVGPU/Utils/MMAUtils.cpp
M mlir/lib/Dialect/OpenMP/IR/OpenMPDialect.cpp
M mlir/lib/Dialect/PDL/IR/PDL.cpp
M mlir/lib/Dialect/PDLInterp/IR/PDLInterp.cpp
M mlir/lib/Dialect/Ptr/IR/PtrAttrs.cpp
M mlir/lib/Dialect/Ptr/IR/PtrDialect.cpp
M mlir/lib/Dialect/Ptr/IR/PtrTypes.cpp
M mlir/lib/Dialect/Quant/IR/QuantDialectBytecode.cpp
M mlir/lib/Dialect/Quant/IR/QuantTypes.cpp
M mlir/lib/Dialect/Quant/Transforms/NormalizeQuantTypes.cpp
M mlir/lib/Dialect/Quant/Transforms/StripFuncQuantTypes.cpp
M mlir/lib/Dialect/SCF/IR/SCF.cpp
M mlir/lib/Dialect/SCF/TransformOps/SCFTransformOps.cpp
M mlir/lib/Dialect/SCF/Transforms/BufferDeallocationOpInterfaceImpl.cpp
M mlir/lib/Dialect/SCF/Transforms/BufferizableOpInterfaceImpl.cpp
M mlir/lib/Dialect/SCF/Transforms/LoopSpecialization.cpp
M mlir/lib/Dialect/SCF/Transforms/ParallelLoopCollapsing.cpp
M mlir/lib/Dialect/SCF/Transforms/UpliftWhileToFor.cpp
M mlir/lib/Dialect/SCF/Utils/AffineCanonicalizationUtils.cpp
M mlir/lib/Dialect/SCF/Utils/Utils.cpp
M mlir/lib/Dialect/SMT/IR/SMTAttributes.cpp
M mlir/lib/Dialect/SPIRV/IR/CMakeLists.txt
M mlir/lib/Dialect/SPIRV/IR/CooperativeMatrixOps.cpp
A mlir/lib/Dialect/SPIRV/IR/DotProductOps.cpp
M mlir/lib/Dialect/SPIRV/IR/ImageOps.cpp
R mlir/lib/Dialect/SPIRV/IR/IntegerDotProductOps.cpp
M mlir/lib/Dialect/SPIRV/IR/SPIRVCanonicalization.cpp
M mlir/lib/Dialect/SPIRV/IR/SPIRVDialect.cpp
M mlir/lib/Dialect/SPIRV/IR/SPIRVEnums.cpp
M mlir/lib/Dialect/SPIRV/IR/SPIRVOps.cpp
M mlir/lib/Dialect/SPIRV/IR/SPIRVTypes.cpp
M mlir/lib/Dialect/SPIRV/IR/TargetAndABI.cpp
M mlir/lib/Dialect/SPIRV/Linking/ModuleCombiner/ModuleCombiner.cpp
M mlir/lib/Dialect/SPIRV/Transforms/CanonicalizeGLPass.cpp
M mlir/lib/Dialect/SPIRV/Transforms/LowerABIAttributesPass.cpp
M mlir/lib/Dialect/SPIRV/Transforms/RewriteInsertsPass.cpp
M mlir/lib/Dialect/SPIRV/Transforms/SPIRVConversion.cpp
M mlir/lib/Dialect/SPIRV/Transforms/UnifyAliasedResourcePass.cpp
M mlir/lib/Dialect/SPIRV/Transforms/UpdateVCEPass.cpp
M mlir/lib/Dialect/SPIRV/Utils/LayoutUtils.cpp
M mlir/lib/Dialect/Shape/IR/Shape.cpp
M mlir/lib/Dialect/Shape/Transforms/BufferizableOpInterfaceImpl.cpp
M mlir/lib/Dialect/Shape/Transforms/OutlineShapeComputation.cpp
M mlir/lib/Dialect/Shape/Transforms/ShapeToShapeLowering.cpp
M mlir/lib/Dialect/SparseTensor/IR/SparseTensorDialect.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/BufferizableOpInterfaceImpl.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/SparseAssembler.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/SparseReinterpretMap.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/SparseVectorization.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/Sparsification.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/SparsificationAndBufferizationPass.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/StageSparseOperations.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/Utils/CodegenUtils.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/Utils/IterationGraphSorter.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/Utils/LoopEmitter.cpp
M mlir/lib/Dialect/SparseTensor/Transforms/Utils/SparseTensorDescriptor.cpp
M mlir/lib/Dialect/Tensor/Extensions/MeshShardingExtensions.cpp
M mlir/lib/Dialect/Tensor/IR/TensorDialect.cpp
M mlir/lib/Dialect/Tensor/IR/TensorInferTypeOpInterfaceImpl.cpp
M mlir/lib/Dialect/Tensor/IR/TensorOps.cpp
M mlir/lib/Dialect/Tensor/IR/TensorTilingInterfaceImpl.cpp
M mlir/lib/Dialect/Tensor/Transforms/BufferizableOpInterfaceImpl.cpp
M mlir/lib/Dialect/Tensor/Transforms/ConcatOpPatterns.cpp
M mlir/lib/Dialect/Tensor/Transforms/EmptyOpPatterns.cpp
M mlir/lib/Dialect/Tensor/Transforms/ExtractSliceFromReshapeUtils.cpp
M mlir/lib/Dialect/Tensor/Transforms/FoldTensorSubsetOps.cpp
M mlir/lib/Dialect/Tensor/Transforms/IndependenceTransforms.cpp
M mlir/lib/Dialect/Tensor/Transforms/ReshapePatterns.cpp
M mlir/lib/Dialect/Tensor/Transforms/RuntimeOpVerification.cpp
M mlir/lib/Dialect/Tensor/Utils/Utils.cpp
M mlir/lib/Dialect/Tosa/IR/ShardingInterfaceImpl.cpp
M mlir/lib/Dialect/Tosa/IR/TosaCanonicalizations.cpp
M mlir/lib/Dialect/Tosa/IR/TosaOps.cpp
M mlir/lib/Dialect/Tosa/Transforms/TosaDecomposeDepthwise.cpp
M mlir/lib/Dialect/Tosa/Transforms/TosaDecomposeTransposeConv.cpp
M mlir/lib/Dialect/Tosa/Transforms/TosaFolders.cpp
M mlir/lib/Dialect/Tosa/Transforms/TosaInferShapes.cpp
M mlir/lib/Dialect/Tosa/Transforms/TosaLayerwiseConstantFoldPass.cpp
M mlir/lib/Dialect/Tosa/Transforms/TosaMakeBroadcastable.cpp
M mlir/lib/Dialect/Tosa/Transforms/TosaOptionalDecompositions.cpp
M mlir/lib/Dialect/Tosa/Transforms/TosaProfileCompliance.cpp
M mlir/lib/Dialect/Tosa/Transforms/TosaReduceTransposes.cpp
M mlir/lib/Dialect/Traits.cpp
M mlir/lib/Dialect/Transform/DebugExtension/DebugExtensionOps.cpp
M mlir/lib/Dialect/Transform/IR/TransformDialect.cpp
M mlir/lib/Dialect/Transform/IR/TransformOps.cpp
M mlir/lib/Dialect/Transform/LoopExtension/LoopExtensionOps.cpp
M mlir/lib/Dialect/Transform/PDLExtension/PDLExtensionOps.cpp
M mlir/lib/Dialect/Transform/Transforms/CheckUses.cpp
M mlir/lib/Dialect/Transform/Transforms/InferEffects.cpp
M mlir/lib/Dialect/Transform/Transforms/TransformInterpreterUtils.cpp
M mlir/lib/Dialect/Utils/ReshapeOpsUtils.cpp
M mlir/lib/Dialect/Vector/IR/ScalableValueBoundsConstraintSet.cpp
M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
M mlir/lib/Dialect/Vector/TransformOps/VectorTransformOps.cpp
M mlir/lib/Dialect/Vector/Transforms/LowerVectorContract.cpp
M mlir/lib/Dialect/Vector/Transforms/LowerVectorGather.cpp
M mlir/lib/Dialect/Vector/Transforms/LowerVectorScan.cpp
M mlir/lib/Dialect/Vector/Transforms/LowerVectorTransfer.cpp
M mlir/lib/Dialect/Vector/Transforms/LowerVectorTranspose.cpp
M mlir/lib/Dialect/Vector/Transforms/VectorDistribute.cpp
M mlir/lib/Dialect/Vector/Transforms/VectorEmulateNarrowType.cpp
M mlir/lib/Dialect/Vector/Transforms/VectorLinearize.cpp
M mlir/lib/Dialect/Vector/Transforms/VectorMaskElimination.cpp
M mlir/lib/Dialect/Vector/Transforms/VectorTransferSplitRewritePatterns.cpp
M mlir/lib/Dialect/Vector/Transforms/VectorTransforms.cpp
M mlir/lib/Dialect/X86Vector/IR/X86VectorDialect.cpp
M mlir/lib/Dialect/X86Vector/Transforms/AVXTranspose.cpp
M mlir/lib/Dialect/X86Vector/Transforms/LegalizeForLLVMExport.cpp
M mlir/lib/Dialect/XeGPU/IR/XeGPUDialect.cpp
M mlir/lib/Dialect/XeGPU/Transforms/XeGPUBlocking.cpp
M mlir/lib/Dialect/XeGPU/Transforms/XeGPUPropagateLayout.cpp
M mlir/lib/Dialect/XeGPU/Transforms/XeGPUSubgroupDistribute.cpp
M mlir/lib/Dialect/XeGPU/Transforms/XeGPUUnroll.cpp
M mlir/lib/IR/AttributeDetail.h
M mlir/lib/IR/MLIRContext.cpp
M mlir/lib/Interfaces/ControlFlowInterfaces.cpp
M mlir/lib/Interfaces/LoopLikeInterface.cpp
M mlir/lib/Interfaces/SideEffectInterfaces.cpp
M mlir/lib/Pass/Pass.cpp
M mlir/lib/Pass/PassCrashRecovery.cpp
M mlir/lib/Pass/PassTiming.cpp
M mlir/lib/Query/Matcher/ErrorBuilder.cpp
M mlir/lib/Query/Query.cpp
M mlir/lib/Reducer/ReductionNode.cpp
M mlir/lib/Reducer/ReductionTreePass.cpp
M mlir/lib/Rewrite/FrozenRewritePatternSet.cpp
M mlir/lib/Support/Timing.cpp
M mlir/lib/Target/LLVMIR/Dialect/NVVM/NVVMToLLVMIRTranslation.cpp
M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
M mlir/lib/Target/SPIRV/Deserialization/DeserializeOps.cpp
M mlir/lib/Target/SPIRV/Deserialization/Deserializer.cpp
M mlir/lib/Target/SPIRV/Deserialization/Deserializer.h
M mlir/lib/Target/SPIRV/Serialization/SerializeOps.cpp
M mlir/lib/Target/SPIRV/Serialization/Serializer.cpp
M mlir/lib/Target/SPIRV/Serialization/Serializer.h
M mlir/lib/Tools/PDLL/CodeGen/CPPGen.cpp
M mlir/lib/Tools/PDLL/ODS/Context.cpp
M mlir/lib/Tools/PDLL/ODS/Dialect.cpp
M mlir/lib/Tools/PDLL/Parser/Parser.cpp
M mlir/lib/Tools/lsp-server-support/Logging.cpp
M mlir/lib/Tools/lsp-server-support/Protocol.cpp
M mlir/lib/Tools/lsp-server-support/Transport.cpp
M mlir/lib/Tools/mlir-opt/MlirOptMain.cpp
M mlir/lib/Tools/mlir-pdll-lsp-server/LSPServer.cpp
M mlir/lib/Tools/mlir-pdll-lsp-server/Protocol.cpp
M mlir/lib/Tools/mlir-reduce/MlirReduceMain.cpp
M mlir/lib/Tools/mlir-translate/Translation.cpp
M mlir/lib/Tools/tblgen-lsp-server/LSPServer.cpp
M mlir/lib/Transforms/Utils/DialectConversion.cpp
A mlir/test/Conversion/ComplexToROCDLLibraryCalls/complex-to-rocdl-library-calls.mlir
M mlir/test/Conversion/VectorToSPIRV/vector-to-spirv.mlir
A mlir/test/Conversion/XeVMToLLVM/xevm-to-llvm.mlir
R mlir/test/Dialect/Affine/loop-fusion-transformation.mlir
A mlir/test/Dialect/Affine/loop-fusion-utilities.mlir
M mlir/test/Dialect/Affine/slicing-utils.mlir
M mlir/test/Dialect/Arith/canonicalize.mlir
M mlir/test/Dialect/ControlFlow/invalid.mlir
M mlir/test/Dialect/MemRef/emulate-narrow-type.mlir
M mlir/test/Dialect/OpenMP/invalid.mlir
M mlir/test/Dialect/OpenMP/ops.mlir
M mlir/test/Dialect/SPIRV/IR/arithmetic-ops.mlir
M mlir/test/Dialect/SPIRV/IR/availability.mlir
M mlir/test/Dialect/SPIRV/IR/image-ops.mlir
M mlir/test/Dialect/SPIRV/IR/structure-ops.mlir
M mlir/test/Dialect/Tosa/canonicalize.mlir
M mlir/test/Dialect/Tosa/tosa-infer-shapes.mlir
M mlir/test/Dialect/Vector/canonicalize.mlir
M mlir/test/Dialect/Vector/linearize.mlir
M mlir/test/Dialect/Vector/vector-emulate-narrow-type.mlir
M mlir/test/Dialect/Vector/vector-sink.mlir
M mlir/test/Dialect/Vector/vector-warp-distribute.mlir
A mlir/test/Target/LLVMIR/openmp-composite-simd-if.mlir
M mlir/test/Target/LLVMIR/openmp-llvm.mlir
M mlir/test/Target/LLVMIR/openmp-reduction.mlir
M mlir/test/Target/LLVMIR/openmp-todo.mlir
M mlir/test/Target/SPIRV/arithmetic-ops.mlir
M mlir/test/Target/SPIRV/constant.mlir
M mlir/test/Target/SPIRV/image-ops.mlir
M mlir/test/Target/SPIRV/spec-constant.mlir
M mlir/test/lib/Dialect/Affine/TestLoopFusion.cpp
M mlir/test/mlir-tblgen/op-decl-and-defs.td
M mlir/test/python/dialects/python_test.py
M mlir/test/python/lib/PythonTestModuleNanobind.cpp
M mlir/tools/mlir-tblgen/OpDefinitionsGen.cpp
M mlir/unittests/IR/CMakeLists.txt
A mlir/unittests/IR/DistinctAttributeAllocatorTest.cpp
M offload/liboffload/API/Kernel.td
M offload/liboffload/API/Symbol.td
M offload/liboffload/src/OffloadImpl.cpp
M offload/plugins-nextgen/cuda/src/rtl.cpp
M offload/tools/offload-tblgen/DocGen.cpp
M offload/tools/offload-tblgen/PrintGen.cpp
M offload/unittests/OffloadAPI/CMakeLists.txt
M offload/unittests/OffloadAPI/common/Fixtures.hpp
M offload/unittests/OffloadAPI/device_code/global.c
M offload/unittests/OffloadAPI/event/olWaitEvent.cpp
R offload/unittests/OffloadAPI/kernel/olGetKernel.cpp
M offload/unittests/OffloadAPI/kernel/olLaunchKernel.cpp
M offload/unittests/OffloadAPI/memory/olMemcpy.cpp
A offload/unittests/OffloadAPI/symbol/olGetSymbol.cpp
A offload/unittests/OffloadAPI/symbol/olGetSymbolInfo.cpp
A offload/unittests/OffloadAPI/symbol/olGetSymbolInfoSize.cpp
M third-party/unittest/CMakeLists.txt
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
M utils/bazel/llvm-project-overlay/libc/test/src/math/BUILD.bazel
M utils/bazel/llvm-project-overlay/libc/test/src/math/smoke/BUILD.bazel
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
M utils/bazel/llvm-project-overlay/mlir/python/BUILD.bazel
Log Message:
-----------
Rebase
Created using spr 1.3.5
Compare: https://github.com/llvm/llvm-project/compare/c18b0692912b...894197a9d523
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